From 05a2c6d88d9fc58377b45f9a5c0317a01841a14a Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Fri, 27 Apr 2018 16:52:12 +0800 Subject: [PATCH 001/113] Add Django --- .gitignore | 174 +++++++++++++++++++++++++++++++++++ auction/__init__.py | 0 auction/settings.py | 121 ++++++++++++++++++++++++ auction/urls.py | 22 +++++ auction/wsgi.py | 16 ++++ login/__init__.py | 0 login/admin.py | 3 + login/apps.py | 5 + login/migrations/__init__.py | 0 login/models.py | 3 + login/tests.py | 3 + login/urls.py | 9 ++ login/views.py | 13 +++ manage.py | 15 +++ templates/auction/index.html | 1 + 15 files changed, 385 insertions(+) create mode 100644 auction/__init__.py create mode 100644 auction/settings.py create mode 100644 auction/urls.py create mode 100644 auction/wsgi.py create mode 100644 login/__init__.py create mode 100644 login/admin.py create mode 100644 login/apps.py create mode 100644 login/migrations/__init__.py create mode 100644 login/models.py create mode 100644 login/tests.py create mode 100644 login/urls.py create mode 100644 login/views.py create mode 100755 manage.py create mode 100644 templates/auction/index.html diff --git a/.gitignore b/.gitignore index 7bbc71c0..399fe2ec 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,180 @@ eggs/ lib/ lib64/ parts/ +# Created by https://www.gitignore.io/api/node,python,django + +### Django ### +*.log +*.pot +*.pyc +__pycache__/ +local_settings.py +db.sqlite3 +media + +# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/ +# in your Git repository. Update and uncomment the following line accordingly. +# /staticfiles/ + +### Node ### +# Logs +logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Typescript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + + +### Python ### +# Byte-compiled / optimized / DLL files +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +.pytest_cache/ +nosetests.xml +coverage.xml +*.cover +.hypothesis/ + +# Translations +*.mo + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule.* + +# SageMath parsed files +*.sage.py + +# Environments +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ + + +# End of https://www.gitignore.io/api/node,python,django sdist/ var/ wheels/ diff --git a/auction/__init__.py b/auction/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/auction/settings.py b/auction/settings.py new file mode 100644 index 00000000..bbc2249c --- /dev/null +++ b/auction/settings.py @@ -0,0 +1,121 @@ +""" +Django settings for auction project. + +Generated by 'django-admin startproject' using Django 2.0.4. + +For more information on this file, see +https://docs.djangoproject.com/en/2.0/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/2.0/ref/settings/ +""" + +import os + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/2.0/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = '-64!(_&y@a-$jgi#o@4z!h5k2j_t)$jypg9_&7_fh$bcln^q!o' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + 'login', + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'auction.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': ['templates'], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'auction.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/2.0/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + } +} + + +# Password validation +# https://docs.djangoproject.com/en/2.0/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/2.0/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'UTC' + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/2.0/howto/static-files/ + +STATIC_URL = '/static/' diff --git a/auction/urls.py b/auction/urls.py new file mode 100644 index 00000000..aecff177 --- /dev/null +++ b/auction/urls.py @@ -0,0 +1,22 @@ +"""auction URL Configuration + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/2.0/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import path, include + +urlpatterns = [ + path('login/', include('login.urls')), + path('admin/', admin.site.urls), +] diff --git a/auction/wsgi.py b/auction/wsgi.py new file mode 100644 index 00000000..95d1bf4e --- /dev/null +++ b/auction/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for auction project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/2.0/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "auction.settings") + +application = get_wsgi_application() diff --git a/login/__init__.py b/login/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/login/admin.py b/login/admin.py new file mode 100644 index 00000000..8c38f3f3 --- /dev/null +++ b/login/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/login/apps.py b/login/apps.py new file mode 100644 index 00000000..be1c1733 --- /dev/null +++ b/login/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class LoginConfig(AppConfig): + name = 'login' diff --git a/login/migrations/__init__.py b/login/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/login/models.py b/login/models.py new file mode 100644 index 00000000..71a83623 --- /dev/null +++ b/login/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/login/tests.py b/login/tests.py new file mode 100644 index 00000000..7ce503c2 --- /dev/null +++ b/login/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/login/urls.py b/login/urls.py new file mode 100644 index 00000000..0f5260cb --- /dev/null +++ b/login/urls.py @@ -0,0 +1,9 @@ +from django.contrib import admin +from django.urls import path, include + +from . import views + +app_name = 'login' +urlpatterns = [ + path('', views.index, name='index') +] \ No newline at end of file diff --git a/login/views.py b/login/views.py new file mode 100644 index 00000000..637f3566 --- /dev/null +++ b/login/views.py @@ -0,0 +1,13 @@ +import json +from django.shortcuts import render, get_object_or_404 +from django.http import HttpResponse, Http404, HttpResponseRedirect +from django.template import loader +from django.urls import reverse + +def index(request): + name = request.POST.get('name') + context = { + 'name': name + } + # return HttpResponse(json.dumps(context)) + return render(request, 'auction/index.html', context) \ No newline at end of file diff --git a/manage.py b/manage.py new file mode 100755 index 00000000..5c766e7b --- /dev/null +++ b/manage.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +import os +import sys + +if __name__ == "__main__": + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "auction.settings") + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) diff --git a/templates/auction/index.html b/templates/auction/index.html new file mode 100644 index 00000000..e489db2c --- /dev/null +++ b/templates/auction/index.html @@ -0,0 +1 @@ +

monkaS

\ No newline at end of file From 55232be3c9e3164b302501333108b3420a674f20 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 27 Apr 2018 18:37:43 +0800 Subject: [PATCH 002/113] Add vue to the project --- .postcssrc.js | 9 + assets/0.055c4506e5fa2ce98be5.hot-update.js | 18 + assets/0.9b96dedcef6f8cc83741.hot-update.js | 18 + assets/055c4506e5fa2ce98be5.hot-update.json | 1 + assets/0f6d5a904b348950aa9e.hot-update.json | 1 + assets/9b96dedcef6f8cc83741.hot-update.json | 1 + assets/app.js | 929 ++ assets/fdb1ce3a0a5c7acd9947.hot-update.json | 1 + auction/settings.py | 7 +- auction/urls.py | 4 +- config/dev.env.js | 7 + config/index.js | 69 + config/prod.env.js | 4 + index.html | 12 + login/urls.py | 3 +- login/views.py | 8 +- package-lock.json | 11747 ++++++++++++++++++ package.json | 66 + src/App.vue | 19 + src/assets/logo.png | Bin 0 -> 6849 bytes src/components/LogIn.vue | 88 + src/main.js | 21 + src/router/index.js | 15 + src/stylesheet/main.css | 17 + src/stylesheet/main.scss | 8 + templates/auction/index.html | 1 - templates/index.html | 12 + 27 files changed, 13081 insertions(+), 5 deletions(-) create mode 100644 .postcssrc.js create mode 100644 assets/0.055c4506e5fa2ce98be5.hot-update.js create mode 100644 assets/0.9b96dedcef6f8cc83741.hot-update.js create mode 100644 assets/055c4506e5fa2ce98be5.hot-update.json create mode 100644 assets/0f6d5a904b348950aa9e.hot-update.json create mode 100644 assets/9b96dedcef6f8cc83741.hot-update.json create mode 100644 assets/app.js create mode 100644 assets/fdb1ce3a0a5c7acd9947.hot-update.json create mode 100644 config/dev.env.js create mode 100644 config/index.js create mode 100644 config/prod.env.js create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/App.vue create mode 100644 src/assets/logo.png create mode 100644 src/components/LogIn.vue create mode 100644 src/main.js create mode 100644 src/router/index.js create mode 100644 src/stylesheet/main.css create mode 100644 src/stylesheet/main.scss delete mode 100644 templates/auction/index.html create mode 100644 templates/index.html diff --git a/.postcssrc.js b/.postcssrc.js new file mode 100644 index 00000000..249472da --- /dev/null +++ b/.postcssrc.js @@ -0,0 +1,9 @@ +// https://github.com/michael-ciniawsky/postcss-load-config + +module.exports = { + "plugins": { + // to edit target browsers: use "browserslist" field in package.json + "postcss-import": {}, + "autoprefixer": {} + } +} diff --git a/assets/0.055c4506e5fa2ce98be5.hot-update.js b/assets/0.055c4506e5fa2ce98be5.hot-update.js new file mode 100644 index 00000000..2dc6400a --- /dev/null +++ b/assets/0.055c4506e5fa2ce98be5.hot-update.js @@ -0,0 +1,18 @@ +webpackHotUpdate(0,{ + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsczwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5Vc2VybmFtZTwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInVzZXJuYW1lXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5Db25maXJtIFBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXHRcXHRcXHRcXHRcXHQ8ZGl2IHYtc2hvdz1cXFwiIWlzUmVnaXN0ZXJcXFwiIGNsYXNzPVxcXCJtZC1sYXlvdXRcXFwiPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxzcGFuPkxvZyBJbjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXG5cXHRcXHRcXHRcXHRcXHQ8bWQtYnV0dG9uIEBjbGljaz1cXFwibG9naW5cXFwiIGNsYXNzPVxcXCJtZC1yYWlzZWRcXFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+UmVnaXN0ZXI8L21kLWJ1dHRvbj5cXG5cXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXHRcXHQ8L2Rpdj5cXG5cXHQ8L2Rpdj5cXG48L3RlbXBsYXRlPlxcblxcbjxzY3JpcHQ+XFxuXFx0ZXhwb3J0IGRlZmF1bHQge1xcblxcdFxcdGRhdGEoKXtcXG5cXHRcXHRcXHRyZXR1cm4ge1xcblxcdFxcdFxcdFxcdHVzZXJuYW1lOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRwYXNzd29yZDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0ZW1haWw6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdGlzUmVnaXN0ZXI6IHRydWUsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46ZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRsZXQgdXNlcm5hbWUgPSBcXFwiYm9qb2x1aXNcXFwiO1xcblxcdFxcdFxcdFxcdGxldCBwYXNzd29yZCA9IFxcXCIxMjM0XFxcIjtcXG5cXG5cXHRcXHRcXHRcXHRpZih0aGlzLnVzZXJuYW1lID09IHVzZXJuYW1lICYmIHRoaXMucGFzc3dvcmQgPT0gcGFzc3dvcmQpe1xcblxcdFxcdFxcdFxcdFxcdGFsZXJ0KFxcXCJWYWxpZFxcXCIpO1xcblxcdFxcdFxcdFxcdH1lbHNle1xcblxcdFxcdFxcdFxcdFxcdGFsZXJ0KFxcXCJXcm9uZ1xcXCIpO1xcblxcdFxcdFxcdFxcdH1cXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC50aXRsZSB7XFxuXFx0XFx0Zm9udC1zaXplOiA1ZW07XFxuXFx0fVxcblxcdC5sb2dpbmJveCB7XFxuXFx0XFx0bWFyZ2luOiA1JTtcXG5cXHRcXHRtYXJnaW4tdG9wOiA3JTtcXG5cXHRcXHRwYWRkaW5nOiA1JTtcXG5cXHR9XFxuXFx0LmRlc2Mge1xcblxcdFxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG5cXHR9XFxuPC9zdHlsZT5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Emails\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbHNcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlVzZXJuYW1lXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0udXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS51c2VybmFtZSA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwidXNlcm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJQYXNzd29yZFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiQ29uZmlybSBQYXNzd29yZFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAhX3ZtLmlzUmVnaXN0ZXIsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiIWlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiTG9nIEluXCIpXSksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcIm1kLWJ1dHRvblwiLFxuICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcIm1kLXJhaXNlZFwiLCBvbjogeyBjbGljazogX3ZtLmxvZ2luIH0gfSxcbiAgICAgICAgICAgICAgW192bS5fdihcIkxvZyBJblwiKV1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiUmVnaXN0ZXJcIildXG4gICAgICAgICAgICApXG4gICAgICAgICAgXSxcbiAgICAgICAgICAxXG4gICAgICAgIClcbiAgICAgIF1cbiAgICApXG4gIF0pXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW1xuICBmdW5jdGlvbigpIHtcbiAgICB2YXIgX3ZtID0gdGhpc1xuICAgIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICAgIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICAgIHJldHVybiBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7IHN0YXRpY0NsYXNzOiBcIiBtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXJcIiB9LFxuICAgICAgW19jKFwic3BhblwiLCB7IHN0YXRpY0NsYXNzOiBcIiB0aXRsZVwiIH0sIFtfdm0uX3YoXCJlQXVjdGlvblwiKV0pXVxuICAgIClcbiAgfVxuXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTUxYjBlYjA5XCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); + +/***/ }) + +}) \ No newline at end of file diff --git a/assets/0.9b96dedcef6f8cc83741.hot-update.js b/assets/0.9b96dedcef6f8cc83741.hot-update.js new file mode 100644 index 00000000..e2807c54 --- /dev/null +++ b/assets/0.9b96dedcef6f8cc83741.hot-update.js @@ -0,0 +1,18 @@ +webpackHotUpdate(0,{ + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogdHJ1ZSxcXG5cXHRcXHRcXHRcXHRjb25maXJtTWF0Y2g6IHRydWUsXFxuXFx0XFx0XFx0fTtcXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjpmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdGxldCB1c2VybmFtZSA9IFxcXCJib2pvbHVpc1xcXCI7XFxuXFx0XFx0XFx0XFx0bGV0IHBhc3N3b3JkID0gXFxcIjEyMzRcXFwiO1xcblxcblxcdFxcdFxcdFxcdGlmKHRoaXMudXNlcm5hbWUgPT0gdXNlcm5hbWUgJiYgdGhpcy5wYXNzd29yZCA9PSBwYXNzd29yZCl7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); + +/***/ }) + +}) \ No newline at end of file diff --git a/assets/055c4506e5fa2ce98be5.hot-update.json b/assets/055c4506e5fa2ce98be5.hot-update.json new file mode 100644 index 00000000..05bfd789 --- /dev/null +++ b/assets/055c4506e5fa2ce98be5.hot-update.json @@ -0,0 +1 @@ +{"h":"9b96dedcef6f8cc83741","c":{"0":true}} \ No newline at end of file diff --git a/assets/0f6d5a904b348950aa9e.hot-update.json b/assets/0f6d5a904b348950aa9e.hot-update.json new file mode 100644 index 00000000..52abd569 --- /dev/null +++ b/assets/0f6d5a904b348950aa9e.hot-update.json @@ -0,0 +1 @@ +{"h":"1d739cf56c2926b9aa9b","c":{"1":false}} \ No newline at end of file diff --git a/assets/9b96dedcef6f8cc83741.hot-update.json b/assets/9b96dedcef6f8cc83741.hot-update.json new file mode 100644 index 00000000..0072fa47 --- /dev/null +++ b/assets/9b96dedcef6f8cc83741.hot-update.json @@ -0,0 +1 @@ +{"h":"a435a52d44b0d5b18c30","c":{"0":true}} \ No newline at end of file diff --git a/assets/app.js b/assets/app.js new file mode 100644 index 00000000..b136c1ce --- /dev/null +++ b/assets/app.js @@ -0,0 +1,929 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ function hotDisposeChunk(chunkId) { +/******/ delete installedChunks[chunkId]; +/******/ } +/******/ var parentHotUpdateCallback = window["webpackHotUpdate"]; +/******/ window["webpackHotUpdate"] = +/******/ function webpackHotUpdateCallback(chunkId, moreModules) { // eslint-disable-line no-unused-vars +/******/ hotAddUpdateChunk(chunkId, moreModules); +/******/ if(parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules); +/******/ } ; +/******/ +/******/ function hotDownloadUpdateChunk(chunkId) { // eslint-disable-line no-unused-vars +/******/ var head = document.getElementsByTagName("head")[0]; +/******/ var script = document.createElement("script"); +/******/ script.type = "text/javascript"; +/******/ script.charset = "utf-8"; +/******/ script.src = __webpack_require__.p + "" + chunkId + "." + hotCurrentHash + ".hot-update.js"; +/******/ ; +/******/ head.appendChild(script); +/******/ } +/******/ +/******/ function hotDownloadManifest(requestTimeout) { // eslint-disable-line no-unused-vars +/******/ requestTimeout = requestTimeout || 10000; +/******/ return new Promise(function(resolve, reject) { +/******/ if(typeof XMLHttpRequest === "undefined") +/******/ return reject(new Error("No browser support")); +/******/ try { +/******/ var request = new XMLHttpRequest(); +/******/ var requestPath = __webpack_require__.p + "" + hotCurrentHash + ".hot-update.json"; +/******/ request.open("GET", requestPath, true); +/******/ request.timeout = requestTimeout; +/******/ request.send(null); +/******/ } catch(err) { +/******/ return reject(err); +/******/ } +/******/ request.onreadystatechange = function() { +/******/ if(request.readyState !== 4) return; +/******/ if(request.status === 0) { +/******/ // timeout +/******/ reject(new Error("Manifest request to " + requestPath + " timed out.")); +/******/ } else if(request.status === 404) { +/******/ // no update available +/******/ resolve(); +/******/ } else if(request.status !== 200 && request.status !== 304) { +/******/ // other failure +/******/ reject(new Error("Manifest request to " + requestPath + " failed.")); +/******/ } else { +/******/ // success +/******/ try { +/******/ var update = JSON.parse(request.responseText); +/******/ } catch(e) { +/******/ reject(e); +/******/ return; +/******/ } +/******/ resolve(update); +/******/ } +/******/ }; +/******/ }); +/******/ } +/******/ +/******/ +/******/ +/******/ var hotApplyOnUpdate = true; +/******/ var hotCurrentHash = "a435a52d44b0d5b18c30"; // eslint-disable-line no-unused-vars +/******/ var hotRequestTimeout = 10000; +/******/ var hotCurrentModuleData = {}; +/******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars +/******/ var hotCurrentParents = []; // eslint-disable-line no-unused-vars +/******/ var hotCurrentParentsTemp = []; // eslint-disable-line no-unused-vars +/******/ +/******/ function hotCreateRequire(moduleId) { // eslint-disable-line no-unused-vars +/******/ var me = installedModules[moduleId]; +/******/ if(!me) return __webpack_require__; +/******/ var fn = function(request) { +/******/ if(me.hot.active) { +/******/ if(installedModules[request]) { +/******/ if(installedModules[request].parents.indexOf(moduleId) < 0) +/******/ installedModules[request].parents.push(moduleId); +/******/ } else { +/******/ hotCurrentParents = [moduleId]; +/******/ hotCurrentChildModule = request; +/******/ } +/******/ if(me.children.indexOf(request) < 0) +/******/ me.children.push(request); +/******/ } else { +/******/ console.warn("[HMR] unexpected require(" + request + ") from disposed module " + moduleId); +/******/ hotCurrentParents = []; +/******/ } +/******/ return __webpack_require__(request); +/******/ }; +/******/ var ObjectFactory = function ObjectFactory(name) { +/******/ return { +/******/ configurable: true, +/******/ enumerable: true, +/******/ get: function() { +/******/ return __webpack_require__[name]; +/******/ }, +/******/ set: function(value) { +/******/ __webpack_require__[name] = value; +/******/ } +/******/ }; +/******/ }; +/******/ for(var name in __webpack_require__) { +/******/ if(Object.prototype.hasOwnProperty.call(__webpack_require__, name) && name !== "e") { +/******/ Object.defineProperty(fn, name, ObjectFactory(name)); +/******/ } +/******/ } +/******/ fn.e = function(chunkId) { +/******/ if(hotStatus === "ready") +/******/ hotSetStatus("prepare"); +/******/ hotChunksLoading++; +/******/ return __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) { +/******/ finishChunkLoading(); +/******/ throw err; +/******/ }); +/******/ +/******/ function finishChunkLoading() { +/******/ hotChunksLoading--; +/******/ if(hotStatus === "prepare") { +/******/ if(!hotWaitingFilesMap[chunkId]) { +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if(hotChunksLoading === 0 && hotWaitingFiles === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ } +/******/ }; +/******/ return fn; +/******/ } +/******/ +/******/ function hotCreateModule(moduleId) { // eslint-disable-line no-unused-vars +/******/ var hot = { +/******/ // private stuff +/******/ _acceptedDependencies: {}, +/******/ _declinedDependencies: {}, +/******/ _selfAccepted: false, +/******/ _selfDeclined: false, +/******/ _disposeHandlers: [], +/******/ _main: hotCurrentChildModule !== moduleId, +/******/ +/******/ // Module API +/******/ active: true, +/******/ accept: function(dep, callback) { +/******/ if(typeof dep === "undefined") +/******/ hot._selfAccepted = true; +/******/ else if(typeof dep === "function") +/******/ hot._selfAccepted = dep; +/******/ else if(typeof dep === "object") +/******/ for(var i = 0; i < dep.length; i++) +/******/ hot._acceptedDependencies[dep[i]] = callback || function() {}; +/******/ else +/******/ hot._acceptedDependencies[dep] = callback || function() {}; +/******/ }, +/******/ decline: function(dep) { +/******/ if(typeof dep === "undefined") +/******/ hot._selfDeclined = true; +/******/ else if(typeof dep === "object") +/******/ for(var i = 0; i < dep.length; i++) +/******/ hot._declinedDependencies[dep[i]] = true; +/******/ else +/******/ hot._declinedDependencies[dep] = true; +/******/ }, +/******/ dispose: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ addDisposeHandler: function(callback) { +/******/ hot._disposeHandlers.push(callback); +/******/ }, +/******/ removeDisposeHandler: function(callback) { +/******/ var idx = hot._disposeHandlers.indexOf(callback); +/******/ if(idx >= 0) hot._disposeHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ // Management API +/******/ check: hotCheck, +/******/ apply: hotApply, +/******/ status: function(l) { +/******/ if(!l) return hotStatus; +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ addStatusHandler: function(l) { +/******/ hotStatusHandlers.push(l); +/******/ }, +/******/ removeStatusHandler: function(l) { +/******/ var idx = hotStatusHandlers.indexOf(l); +/******/ if(idx >= 0) hotStatusHandlers.splice(idx, 1); +/******/ }, +/******/ +/******/ //inherit from previous dispose call +/******/ data: hotCurrentModuleData[moduleId] +/******/ }; +/******/ hotCurrentChildModule = undefined; +/******/ return hot; +/******/ } +/******/ +/******/ var hotStatusHandlers = []; +/******/ var hotStatus = "idle"; +/******/ +/******/ function hotSetStatus(newStatus) { +/******/ hotStatus = newStatus; +/******/ for(var i = 0; i < hotStatusHandlers.length; i++) +/******/ hotStatusHandlers[i].call(null, newStatus); +/******/ } +/******/ +/******/ // while downloading +/******/ var hotWaitingFiles = 0; +/******/ var hotChunksLoading = 0; +/******/ var hotWaitingFilesMap = {}; +/******/ var hotRequestedFilesMap = {}; +/******/ var hotAvailableFilesMap = {}; +/******/ var hotDeferred; +/******/ +/******/ // The update info +/******/ var hotUpdate, hotUpdateNewHash; +/******/ +/******/ function toModuleId(id) { +/******/ var isNumber = (+id) + "" === id; +/******/ return isNumber ? +id : id; +/******/ } +/******/ +/******/ function hotCheck(apply) { +/******/ if(hotStatus !== "idle") throw new Error("check() is only allowed in idle status"); +/******/ hotApplyOnUpdate = apply; +/******/ hotSetStatus("check"); +/******/ return hotDownloadManifest(hotRequestTimeout).then(function(update) { +/******/ if(!update) { +/******/ hotSetStatus("idle"); +/******/ return null; +/******/ } +/******/ hotRequestedFilesMap = {}; +/******/ hotWaitingFilesMap = {}; +/******/ hotAvailableFilesMap = update.c; +/******/ hotUpdateNewHash = update.h; +/******/ +/******/ hotSetStatus("prepare"); +/******/ var promise = new Promise(function(resolve, reject) { +/******/ hotDeferred = { +/******/ resolve: resolve, +/******/ reject: reject +/******/ }; +/******/ }); +/******/ hotUpdate = {}; +/******/ var chunkId = 0; +/******/ { // eslint-disable-line no-lone-blocks +/******/ /*globals chunkId */ +/******/ hotEnsureUpdateChunk(chunkId); +/******/ } +/******/ if(hotStatus === "prepare" && hotChunksLoading === 0 && hotWaitingFiles === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ return promise; +/******/ }); +/******/ } +/******/ +/******/ function hotAddUpdateChunk(chunkId, moreModules) { // eslint-disable-line no-unused-vars +/******/ if(!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId]) +/******/ return; +/******/ hotRequestedFilesMap[chunkId] = false; +/******/ for(var moduleId in moreModules) { +/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { +/******/ hotUpdate[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if(--hotWaitingFiles === 0 && hotChunksLoading === 0) { +/******/ hotUpdateDownloaded(); +/******/ } +/******/ } +/******/ +/******/ function hotEnsureUpdateChunk(chunkId) { +/******/ if(!hotAvailableFilesMap[chunkId]) { +/******/ hotWaitingFilesMap[chunkId] = true; +/******/ } else { +/******/ hotRequestedFilesMap[chunkId] = true; +/******/ hotWaitingFiles++; +/******/ hotDownloadUpdateChunk(chunkId); +/******/ } +/******/ } +/******/ +/******/ function hotUpdateDownloaded() { +/******/ hotSetStatus("ready"); +/******/ var deferred = hotDeferred; +/******/ hotDeferred = null; +/******/ if(!deferred) return; +/******/ if(hotApplyOnUpdate) { +/******/ // Wrap deferred object in Promise to mark it as a well-handled Promise to +/******/ // avoid triggering uncaught exception warning in Chrome. +/******/ // See https://bugs.chromium.org/p/chromium/issues/detail?id=465666 +/******/ Promise.resolve().then(function() { +/******/ return hotApply(hotApplyOnUpdate); +/******/ }).then( +/******/ function(result) { +/******/ deferred.resolve(result); +/******/ }, +/******/ function(err) { +/******/ deferred.reject(err); +/******/ } +/******/ ); +/******/ } else { +/******/ var outdatedModules = []; +/******/ for(var id in hotUpdate) { +/******/ if(Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ outdatedModules.push(toModuleId(id)); +/******/ } +/******/ } +/******/ deferred.resolve(outdatedModules); +/******/ } +/******/ } +/******/ +/******/ function hotApply(options) { +/******/ if(hotStatus !== "ready") throw new Error("apply() is only allowed in ready status"); +/******/ options = options || {}; +/******/ +/******/ var cb; +/******/ var i; +/******/ var j; +/******/ var module; +/******/ var moduleId; +/******/ +/******/ function getAffectedStuff(updateModuleId) { +/******/ var outdatedModules = [updateModuleId]; +/******/ var outdatedDependencies = {}; +/******/ +/******/ var queue = outdatedModules.slice().map(function(id) { +/******/ return { +/******/ chain: [id], +/******/ id: id +/******/ }; +/******/ }); +/******/ while(queue.length > 0) { +/******/ var queueItem = queue.pop(); +/******/ var moduleId = queueItem.id; +/******/ var chain = queueItem.chain; +/******/ module = installedModules[moduleId]; +/******/ if(!module || module.hot._selfAccepted) +/******/ continue; +/******/ if(module.hot._selfDeclined) { +/******/ return { +/******/ type: "self-declined", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ if(module.hot._main) { +/******/ return { +/******/ type: "unaccepted", +/******/ chain: chain, +/******/ moduleId: moduleId +/******/ }; +/******/ } +/******/ for(var i = 0; i < module.parents.length; i++) { +/******/ var parentId = module.parents[i]; +/******/ var parent = installedModules[parentId]; +/******/ if(!parent) continue; +/******/ if(parent.hot._declinedDependencies[moduleId]) { +/******/ return { +/******/ type: "declined", +/******/ chain: chain.concat([parentId]), +/******/ moduleId: moduleId, +/******/ parentId: parentId +/******/ }; +/******/ } +/******/ if(outdatedModules.indexOf(parentId) >= 0) continue; +/******/ if(parent.hot._acceptedDependencies[moduleId]) { +/******/ if(!outdatedDependencies[parentId]) +/******/ outdatedDependencies[parentId] = []; +/******/ addAllToSet(outdatedDependencies[parentId], [moduleId]); +/******/ continue; +/******/ } +/******/ delete outdatedDependencies[parentId]; +/******/ outdatedModules.push(parentId); +/******/ queue.push({ +/******/ chain: chain.concat([parentId]), +/******/ id: parentId +/******/ }); +/******/ } +/******/ } +/******/ +/******/ return { +/******/ type: "accepted", +/******/ moduleId: updateModuleId, +/******/ outdatedModules: outdatedModules, +/******/ outdatedDependencies: outdatedDependencies +/******/ }; +/******/ } +/******/ +/******/ function addAllToSet(a, b) { +/******/ for(var i = 0; i < b.length; i++) { +/******/ var item = b[i]; +/******/ if(a.indexOf(item) < 0) +/******/ a.push(item); +/******/ } +/******/ } +/******/ +/******/ // at begin all updates modules are outdated +/******/ // the "outdated" status can propagate to parents if they don't accept the children +/******/ var outdatedDependencies = {}; +/******/ var outdatedModules = []; +/******/ var appliedUpdate = {}; +/******/ +/******/ var warnUnexpectedRequire = function warnUnexpectedRequire() { +/******/ console.warn("[HMR] unexpected require(" + result.moduleId + ") to disposed module"); +/******/ }; +/******/ +/******/ for(var id in hotUpdate) { +/******/ if(Object.prototype.hasOwnProperty.call(hotUpdate, id)) { +/******/ moduleId = toModuleId(id); +/******/ var result; +/******/ if(hotUpdate[id]) { +/******/ result = getAffectedStuff(moduleId); +/******/ } else { +/******/ result = { +/******/ type: "disposed", +/******/ moduleId: id +/******/ }; +/******/ } +/******/ var abortError = false; +/******/ var doApply = false; +/******/ var doDispose = false; +/******/ var chainInfo = ""; +/******/ if(result.chain) { +/******/ chainInfo = "\nUpdate propagation: " + result.chain.join(" -> "); +/******/ } +/******/ switch(result.type) { +/******/ case "self-declined": +/******/ if(options.onDeclined) +/******/ options.onDeclined(result); +/******/ if(!options.ignoreDeclined) +/******/ abortError = new Error("Aborted because of self decline: " + result.moduleId + chainInfo); +/******/ break; +/******/ case "declined": +/******/ if(options.onDeclined) +/******/ options.onDeclined(result); +/******/ if(!options.ignoreDeclined) +/******/ abortError = new Error("Aborted because of declined dependency: " + result.moduleId + " in " + result.parentId + chainInfo); +/******/ break; +/******/ case "unaccepted": +/******/ if(options.onUnaccepted) +/******/ options.onUnaccepted(result); +/******/ if(!options.ignoreUnaccepted) +/******/ abortError = new Error("Aborted because " + moduleId + " is not accepted" + chainInfo); +/******/ break; +/******/ case "accepted": +/******/ if(options.onAccepted) +/******/ options.onAccepted(result); +/******/ doApply = true; +/******/ break; +/******/ case "disposed": +/******/ if(options.onDisposed) +/******/ options.onDisposed(result); +/******/ doDispose = true; +/******/ break; +/******/ default: +/******/ throw new Error("Unexception type " + result.type); +/******/ } +/******/ if(abortError) { +/******/ hotSetStatus("abort"); +/******/ return Promise.reject(abortError); +/******/ } +/******/ if(doApply) { +/******/ appliedUpdate[moduleId] = hotUpdate[moduleId]; +/******/ addAllToSet(outdatedModules, result.outdatedModules); +/******/ for(moduleId in result.outdatedDependencies) { +/******/ if(Object.prototype.hasOwnProperty.call(result.outdatedDependencies, moduleId)) { +/******/ if(!outdatedDependencies[moduleId]) +/******/ outdatedDependencies[moduleId] = []; +/******/ addAllToSet(outdatedDependencies[moduleId], result.outdatedDependencies[moduleId]); +/******/ } +/******/ } +/******/ } +/******/ if(doDispose) { +/******/ addAllToSet(outdatedModules, [result.moduleId]); +/******/ appliedUpdate[moduleId] = warnUnexpectedRequire; +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Store self accepted outdated modules to require them later by the module system +/******/ var outdatedSelfAcceptedModules = []; +/******/ for(i = 0; i < outdatedModules.length; i++) { +/******/ moduleId = outdatedModules[i]; +/******/ if(installedModules[moduleId] && installedModules[moduleId].hot._selfAccepted) +/******/ outdatedSelfAcceptedModules.push({ +/******/ module: moduleId, +/******/ errorHandler: installedModules[moduleId].hot._selfAccepted +/******/ }); +/******/ } +/******/ +/******/ // Now in "dispose" phase +/******/ hotSetStatus("dispose"); +/******/ Object.keys(hotAvailableFilesMap).forEach(function(chunkId) { +/******/ if(hotAvailableFilesMap[chunkId] === false) { +/******/ hotDisposeChunk(chunkId); +/******/ } +/******/ }); +/******/ +/******/ var idx; +/******/ var queue = outdatedModules.slice(); +/******/ while(queue.length > 0) { +/******/ moduleId = queue.pop(); +/******/ module = installedModules[moduleId]; +/******/ if(!module) continue; +/******/ +/******/ var data = {}; +/******/ +/******/ // Call dispose handlers +/******/ var disposeHandlers = module.hot._disposeHandlers; +/******/ for(j = 0; j < disposeHandlers.length; j++) { +/******/ cb = disposeHandlers[j]; +/******/ cb(data); +/******/ } +/******/ hotCurrentModuleData[moduleId] = data; +/******/ +/******/ // disable module (this disables requires from this module) +/******/ module.hot.active = false; +/******/ +/******/ // remove module from cache +/******/ delete installedModules[moduleId]; +/******/ +/******/ // when disposing there is no need to call dispose handler +/******/ delete outdatedDependencies[moduleId]; +/******/ +/******/ // remove "parents" references from all children +/******/ for(j = 0; j < module.children.length; j++) { +/******/ var child = installedModules[module.children[j]]; +/******/ if(!child) continue; +/******/ idx = child.parents.indexOf(moduleId); +/******/ if(idx >= 0) { +/******/ child.parents.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ +/******/ // remove outdated dependency from module children +/******/ var dependency; +/******/ var moduleOutdatedDependencies; +/******/ for(moduleId in outdatedDependencies) { +/******/ if(Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)) { +/******/ module = installedModules[moduleId]; +/******/ if(module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ for(j = 0; j < moduleOutdatedDependencies.length; j++) { +/******/ dependency = moduleOutdatedDependencies[j]; +/******/ idx = module.children.indexOf(dependency); +/******/ if(idx >= 0) module.children.splice(idx, 1); +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Not in "apply" phase +/******/ hotSetStatus("apply"); +/******/ +/******/ hotCurrentHash = hotUpdateNewHash; +/******/ +/******/ // insert new code +/******/ for(moduleId in appliedUpdate) { +/******/ if(Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) { +/******/ modules[moduleId] = appliedUpdate[moduleId]; +/******/ } +/******/ } +/******/ +/******/ // call accept handlers +/******/ var error = null; +/******/ for(moduleId in outdatedDependencies) { +/******/ if(Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)) { +/******/ module = installedModules[moduleId]; +/******/ if(module) { +/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; +/******/ var callbacks = []; +/******/ for(i = 0; i < moduleOutdatedDependencies.length; i++) { +/******/ dependency = moduleOutdatedDependencies[i]; +/******/ cb = module.hot._acceptedDependencies[dependency]; +/******/ if(cb) { +/******/ if(callbacks.indexOf(cb) >= 0) continue; +/******/ callbacks.push(cb); +/******/ } +/******/ } +/******/ for(i = 0; i < callbacks.length; i++) { +/******/ cb = callbacks[i]; +/******/ try { +/******/ cb(moduleOutdatedDependencies); +/******/ } catch(err) { +/******/ if(options.onErrored) { +/******/ options.onErrored({ +/******/ type: "accept-errored", +/******/ moduleId: moduleId, +/******/ dependencyId: moduleOutdatedDependencies[i], +/******/ error: err +/******/ }); +/******/ } +/******/ if(!options.ignoreErrored) { +/******/ if(!error) +/******/ error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // Load self accepted modules +/******/ for(i = 0; i < outdatedSelfAcceptedModules.length; i++) { +/******/ var item = outdatedSelfAcceptedModules[i]; +/******/ moduleId = item.module; +/******/ hotCurrentParents = [moduleId]; +/******/ try { +/******/ __webpack_require__(moduleId); +/******/ } catch(err) { +/******/ if(typeof item.errorHandler === "function") { +/******/ try { +/******/ item.errorHandler(err); +/******/ } catch(err2) { +/******/ if(options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-error-handler-errored", +/******/ moduleId: moduleId, +/******/ error: err2, +/******/ orginalError: err, // TODO remove in webpack 4 +/******/ originalError: err +/******/ }); +/******/ } +/******/ if(!options.ignoreErrored) { +/******/ if(!error) +/******/ error = err2; +/******/ } +/******/ if(!error) +/******/ error = err; +/******/ } +/******/ } else { +/******/ if(options.onErrored) { +/******/ options.onErrored({ +/******/ type: "self-accept-errored", +/******/ moduleId: moduleId, +/******/ error: err +/******/ }); +/******/ } +/******/ if(!options.ignoreErrored) { +/******/ if(!error) +/******/ error = err; +/******/ } +/******/ } +/******/ } +/******/ } +/******/ +/******/ // handle errors in accept handlers and self accepted module load +/******/ if(error) { +/******/ hotSetStatus("fail"); +/******/ return Promise.reject(error); +/******/ } +/******/ +/******/ hotSetStatus("idle"); +/******/ return new Promise(function(resolve) { +/******/ resolve(outdatedModules); +/******/ }); +/******/ } +/******/ +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {}, +/******/ hot: hotCreateModule(moduleId), +/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp), +/******/ children: [] +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId)); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/static"; +/******/ +/******/ // __webpack_hash__ +/******/ __webpack_require__.h = function() { return hotCurrentHash; }; +/******/ +/******/ // Load entry module and return exports +/******/ return hotCreateRequire("./src/main.js")(__webpack_require__.s = "./src/main.js"); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBpZD1cImFwcFwiPlxuICAgIDxyb3V0ZXItdmlldy8+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ0FwcCdcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5AaW1wb3J0IFwiLi9zdHlsZXNoZWV0L21haW4uY3NzXCI7XG48L3N0eWxlPlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIj5cbkBpbXBvcnQgXCIuL3N0eWxlc2hlZXQvbWFpbi5zY3NzXCI7XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBBcHAudnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: true,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tlet username = \"bojoluis\";\n\t\t\tlet password = \"1234\";\n\n\t\t\tif (this.username == username && this.password == password) {\n\t\t\t\talert(\"Valid\");\n\t\t\t} else {\n\t\t\t\talert(\"Wrong\");\n\t\t\t}\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBjbGFzcz1cIm1kLWxheW91dCBtZC1ndXR0ZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCIgdGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXIgbWQtZ3V0dGVyXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2dpbmJveCBtZC1lbGV2YXRpb24tMiBsb2dpbmJveCBtZC1sYXlvdXQtaXRlbVwiPlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiaXNSZWdpc3RlclwiIGNsYXNzPVwibWQtbGF5b3V0XCI+XG5cdFx0XHRcdFx0XHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJ1c2VybmFtZVwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+Q29uZmlybSBQYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiIWlzUmVnaXN0ZXJcIiBjbGFzcz1cIm1kLWxheW91dFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4+TG9nIEluPC9zcGFuPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwidXNlcm5hbWVcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPlJlZ2lzdGVyPC9tZC1idXR0b24+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiB0cnVlLFxuXHRcdFx0XHRjb25maXJtTWF0Y2g6IHRydWUsXG5cdFx0XHR9O1xuXHRcdH0sXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0bG9naW46ZnVuY3Rpb24oKXtcblx0XHRcdFx0bGV0IHVzZXJuYW1lID0gXCJib2pvbHVpc1wiO1xuXHRcdFx0XHRsZXQgcGFzc3dvcmQgPSBcIjEyMzRcIjtcblxuXHRcdFx0XHRpZih0aGlzLnVzZXJuYW1lID09IHVzZXJuYW1lICYmIHRoaXMucGFzc3dvcmQgPT0gcGFzc3dvcmQpe1xuXHRcdFx0XHRcdGFsZXJ0KFwiVmFsaWRcIik7XG5cdFx0XHRcdH1lbHNle1xuXHRcdFx0XHRcdGFsZXJ0KFwiV3JvbmdcIik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9LFxuXHRcdGNhbGN1bGF0ZWQ6IHtcblx0XHR9XG5cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC50aXRsZSB7XG5cdFx0Zm9udC1zaXplOiA1ZW07XG5cdH1cblx0LmxvZ2luYm94IHtcblx0XHRtYXJnaW46IDUlO1xuXHRcdG1hcmdpbi10b3A6IDclO1xuXHRcdHBhZGRpbmc6IDUlO1xuXHR9XG5cdC5kZXNjIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFWQTtBQVlBO0FBQ0E7QUF2QkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/theme/default.css": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \":root{--md-theme-default-primary:#448aff;--md-theme-default-accent:#ff5252;--md-theme-default-theme:\\\"light\\\"}.md-theme-default :not(input):not(textarea)::-moz-selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default :not(input):not(textarea)::selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default a:not(.md-button){color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-theme-default a:not(.md-button):hover{color:rgba(68,138,255,0.8);color:var(--md-theme-default-primary-on-background, rgba(68,138,255,0.8))}.md-theme-default a:not(.md-button).md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-theme-default a:not(.md-button).md-accent:hover{color:rgba(255,82,82,0.8);color:var(--md-theme-default-accent-on-background, rgba(255,82,82,0.8))}html.md-theme-default{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-theme-default .md-caption,.md-theme-default .md-display-1,.md-theme-default .md-display-2,.md-theme-default .md-display-3,.md-theme-default .md-display-4{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background-variant, rgba(0,0,0,0.54))}.md-scrollbar.md-theme-default::-webkit-scrollbar-corner,.md-scrollbar.md-theme-default::-webkit-scrollbar-track{background:#e1e1e1;background:var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1)}.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb{background:#757575;background:var(--md-theme-default-scrollbar-on-background-variant, #757575)}.md-app:not(.md-overlap).md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-autocomplete-loading{background-color:rgba(255,255,255,0.54);background-color:var(--md-theme-default-background, rgba(255,255,255,0.54))}.md-autocomplete.md-theme-default.md-autocomplete-box{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-background, rgba(255,255,255,0.12))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);-webkit-text-fill-color:#fff;-webkit-text-fill-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));-webkit-text-fill-color:rgba(0,0,0,0.38);-webkit-text-fill-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-autocomplete-box-content.md-theme-default:after{background-color:#fff;background-color:var(--md-theme-default-background, #fff);border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-avatar.md-theme-default.md-avatar-icon{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-icon-disabled, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-avatar.md-theme-default.md-accent.md-avatar-icon{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-shift{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-type-shift>.md-ripple .md-ripple-wave{background-color:#116aff;background-color:var(--md-theme-default-primary-on-primary, #116aff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-accent.md-type-shift>.md-ripple .md-ripple-wave{background-color:#ff1f1f;background-color:var(--md-theme-default-accent-on-accent, #ff1f1f)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-image{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-image{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-raised[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-button.md-theme-default.md-raised:not([disabled]){background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-raised:not([disabled]).md-primary{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12))}.md-button.md-theme-default.md-fab:not([disabled]){background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default[disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-button.md-theme-default[disabled] .md-icon-font{color:rgba(0,0,0,0.38);color:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-button.md-theme-default[disabled] .md-icon-image{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-card.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-expand .md-card-actions{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54));fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54))}.md-card.md-theme-default>.md-card-area:after{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-card.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-primary>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-primary, rgba(255,255,255,0.12))}.md-card.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-accent>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-accent, rgba(255,255,255,0.12))}.md-checkbox.md-theme-default.md-checked .md-checkbox-container{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after{border-color:#fff;border-color:var(--md-theme-default-background, #fff)}.md-checkbox.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default .md-checkbox-container{border-color:rgba(0,0,0,0.54)}.md-checkbox.md-theme-default.md-disabled .md-checkbox-container{border-color:rgba(0,0,0,0.26)}.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container{border-color:rgba(0,0,0,0.26);background-color:rgba(0,0,0,0.26)}.md-chip.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary, rgba(0,0,0,0.87))}.md-chip.md-theme-default .md-icon.md-icon-image svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-primary, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon{fill:#fff;fill:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-chip.md-theme-default.md-primary .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover{color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff);background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-chip.md-theme-default.md-accent .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-disabled{background-color:rgba(0,0,0,0.1);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.1));color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent, rgba(0,0,0,0.54))}.md-chips.md-theme-default .md-clear{background-color:rgba(0,0,0,0.2)}.md-content.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-content.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-content.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-app .md-content.md-theme-default{border-left-color:rgba(0,0,0,0.12);border-left-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-header{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after,.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-week{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-datepicker-dialog.md-theme-default .md-datepicker-disabled{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-datepicker-dialog.md-theme-default .md-datepicker-today{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-divider.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-drawer.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-drawer.md-theme-default.md-persistent-mini{border-right-color:rgba(0,0,0,0.12);border-right-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default.md-rounded{background-color:rgba(0,0,0,0.06);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.06))}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-field.md-theme-default:after{background-color:rgba(0,0,0,0.42)}.md-field.md-theme-default:before{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default .md-helper-text,.md-field.md-theme-default .md-count,.md-field.md-theme-default label{color:rgba(0,0,0,0.54)}.md-field.md-theme-default .md-input::-webkit-input-placeholder,.md-field.md-theme-default .md-textarea::-webkit-input-placeholder{color:rgba(0,0,0,0.54)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-has-value .md-input,.md-field.md-theme-default.md-has-value .md-textarea{-webkit-text-fill-color:rgba(0,0,0,0.87)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after{border-color:rgba(0,0,0,0.42)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default.md-disabled:after{background-image:linear-gradient(to right, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.38) 33%, transparent 0%)}.md-field.md-theme-default.md-disabled label,.md-field.md-theme-default.md-disabled .md-input,.md-field.md-theme-default.md-disabled .md-textarea{color:rgba(0,0,0,0.42)}.md-field.md-theme-default>.md-icon:after{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa)}.md-field.md-theme-default.md-invalid:after{background-color:#ff1744;background-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before{border-color:#ff1744;border-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid label{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-error{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-date-icon,.md-field.md-theme-default.md-invalid .md-date-icon svg{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-highlight .md-input,.md-field.md-theme-default.md-highlight .md-textarea{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused>.md-icon,.md-field.md-theme-default.md-highlight>.md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff);fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused label{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-disabled .md-icon svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-icon.md-theme-default.md-icon-image svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-image svg.md-primary{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-image svg.md-accent{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-icon.md-theme-default.md-icon-font{color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-font.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-font.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-list.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default .md-highlight .md-list-item-container{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-list.md-theme-default .md-list-item-container{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default [disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-list.md-theme-default .md-selected .md-list-item-content,.md-list.md-theme-default .router-link-exact-active .md-list-item-content{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-list-item-expand.md-active{border-color:rgba(0,0,0,0.12);border-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-menu-item.md-theme-default.md-primary .md-list-item-link,.md-menu-item.md-theme-default.md-primary .md-list-item-router,.md-menu-item.md-theme-default.md-primary .md-list-item-button{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-menu-item.md-theme-default.md-accent .md-list-item-link,.md-menu-item.md-theme-default.md-accent .md-list-item-router,.md-menu-item.md-theme-default.md-accent .md-list-item-button{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-progress-bar.md-theme-default.md-indeterminate,.md-progress-bar.md-theme-default.md-query{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-indeterminate.md-accent,.md-progress-bar.md-theme-default.md-query.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-determinate{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-determinate.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer{border-color:rgba(68,138,255,0.38);border-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer{border-color:rgba(255,82,82,0.38);border-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-spinner.md-theme-default .md-progress-spinner-circle{stroke:#448aff;stroke:var(--md-theme-default-primary, #448aff)}.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle{stroke:#ff5252;stroke:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default .md-radio-container{border-color:rgba(0,0,0,0.54)}.md-radio.md-theme-default.md-disabled .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after{background-color:rgba(0,0,0,0.26)}.md-snackbar.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);background-color:#323232}.md-steppers.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-icon:after,.md-steppers.md-theme-default .md-stepper-icon:before,.md-steppers.md-theme-default .md-stepper-number:after,.md-steppers.md-theme-default .md-stepper-number:before,.md-steppers.md-theme-default .md-stepper:after,.md-steppers.md-theme-default .md-stepper:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-number{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-header .md-button-content{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-steppers.md-theme-default .md-stepper-header .md-button-content:after,.md-steppers.md-theme-default .md-stepper-header .md-button-content:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content,.md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-steppervariant, #ff1744)}.md-subheader.md-theme-default{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-subheader.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-switch.md-theme-default.md-checked .md-switch-container{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-switch.md-theme-default.md-checked .md-switch-thumb{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked.md-primary .md-switch-container{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default .md-switch-container{background-color:rgba(0,0,0,0.38)}.md-switch.md-theme-default .md-switch-thumb{background-color:#f5f5f5;background-color:var(--md-theme-default-switchvariant, #f5f5f5)}.md-switch.md-theme-default.md-disabled .md-switch-container{background-color:rgba(0,0,0,0.12)}.md-switch.md-theme-default.md-disabled .md-switch-thumb{background-color:#bdbdbd;background-color:var(--md-theme-default-switchvariant, #bdbdbd)}.md-table.md-theme-default .md-table-content,.md-table.md-theme-default .md-table-alternate-header{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));background-color:rgba(255,82,82,0.2);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.2))}.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell{background-color:rgba(0,0,0,0.08);background-color:var(--md-theme-default-highlight-on-background, rgba(0,0,0,0.08))}.md-table.md-theme-default .md-table-row.md-selected,.md-table.md-theme-default .md-table-row.md-selected-single{background-color:#f5f5f5;background-color:var(--md-theme-default-rowvariant, #f5f5f5)}.md-table.md-theme-default .md-table-row.md-selected.md-primary,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-table.md-theme-default .md-table-row td{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-table-head{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-table.md-theme-default .md-table-fixed-header-active{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-sortable:hover,.md-table.md-theme-default .md-sortable.md-sorted{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-sortable:hover svg,.md-table.md-theme-default .md-sortable.md-sorted svg{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-table-pagination{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87));background-color:#f5f5f5;background-color:var(--md-theme-default-toolbarvariant, #f5f5f5)}.md-toolbar.md-theme-default .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-title,.md-toolbar.md-theme-default .md-display-1,.md-toolbar.md-theme-default .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-title,.md-toolbar.md-theme-default.md-primary .md-display-1,.md-toolbar.md-theme-default.md-primary .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-title,.md-toolbar.md-theme-default.md-accent .md-display-1,.md-toolbar.md-theme-default.md-accent .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-transparent{background-color:transparent;color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-title,.md-toolbar.md-theme-default.md-transparent .md-display-1,.md-toolbar.md-theme-default.md-transparent .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-tooltip.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-tooltip, #fff);background-color:rgba(97,97,97,0.9);background-color:var(--md-theme-default-tooltip-on-background, rgba(97,97,97,0.9))}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/default.css\"],\"names\":[],\"mappings\":\"AAAA,MAAM,mCAAmC,kCAAkC,gCAAgC,CAAC,4DAAuD,yBAAyB,uEAAuE,WAAW,0DAA0D,CAA5N,uDAAuD,yBAAyB,uEAAuE,WAAW,0DAA0D,CAAC,oCAAoC,cAAc,4DAA4D,CAAC,0CAA0C,2BAA2B,yEAAyE,CAAC,8CAA8C,cAAc,2DAA2D,CAAC,oDAAoD,0BAA0B,uEAAuE,CAAC,sBAAsB,yBAAyB,qEAAqE,uBAAuB,kFAAkF,CAAC,8JAA8J,uBAAuB,iFAAiF,CAAC,iHAAiH,mBAAmB,sFAAsF,CAAC,wDAAwD,mBAAmB,2EAA2E,CAAC,0CAA0C,sBAAsB,yDAAyD,CAAC,0EAA0E,cAAc,4DAA4D,CAAC,mDAAmD,wCAAwC,2EAA2E,CAAC,sDAAsD,sBAAsB,yDAAyD,CAAC,uEAAuE,uBAAuB,uEAAuE,CAAC,kEAAkE,wCAAwC,2EAA2E,CAAC,gJAAgJ,WAAW,4DAA4D,6BAA6B,6EAA6E,CAAC,sEAAsE,UAAU,0DAA0D,CAAC,6EAA6E,sBAAsB,yDAAyD,CAAC,sKAAsK,uBAAuB,wEAAwE,yCAAyC,yFAAyF,CAAC,iFAAiF,sBAAsB,sEAAsE,CAAC,oDAAoD,sBAAsB,0DAA0D,qCAAqC,qEAAqE,CAAC,2CAA2C,kCAAkC,yEAAyE,WAAW,iEAAiE,CAAC,oDAAoD,WAAW,kEAAkE,UAAU,gEAAgE,CAAC,uCAAuC,yBAAyB,yDAAyD,CAAC,sDAAsD,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,+DAA+D,WAAW,4DAA4D,UAAU,0DAA0D,CAAC,sCAAsC,yBAAyB,wDAAwD,CAAC,qDAAqD,yBAAyB,yDAAyD,WAAW,0DAA0D,CAAC,8DAA8D,WAAW,2DAA2D,UAAU,yDAAyD,CAAC,8CAA8C,sBAAsB,yDAAyD,CAAC,4EAA4E,cAAc,4DAA4D,CAAC,qFAAqF,cAAc,4DAA4D,CAAC,yFAAyF,aAAa,2DAA2D,CAAC,8CAA8C,yBAAyB,0DAA0D,4BAA4B,4EAA4E,CAAC,yEAAyE,yBAAyB,oEAAoE,CAAC,uDAAuD,WAAW,mDAAmD,CAAC,2DAA2D,UAAU,kDAAkD,CAAC,kEAAkE,WAAW,2DAA2D,CAAC,sFAAsF,WAAW,2DAA2D,CAAC,0FAA0F,UAAU,0DAA0D,CAAC,wDAAwD,sBAAsB,yDAAyD,CAAC,sFAAsF,cAAc,2DAA2D,CAAC,+FAA+F,cAAc,2DAA2D,CAAC,mGAAmG,aAAa,0DAA0D,CAAC,wDAAwD,yBAAyB,yDAAyD,4BAA4B,2EAA2E,CAAC,mFAAmF,yBAAyB,kEAAkE,CAAC,iEAAiE,WAAW,kDAAkD,CAAC,qEAAqE,UAAU,iDAAiD,CAAC,4EAA4E,WAAW,0DAA0D,CAAC,gGAAgG,WAAW,0DAA0D,CAAC,oGAAoG,UAAU,yDAAyD,CAAC,4BAA4B,uBAAuB,0EAA0E,CAAC,uCAAuC,cAAc,4DAA4D,CAAC,qDAAqD,cAAc,4DAA4D,CAAC,sDAAsD,aAAa,2DAA2D,CAAC,sCAAsC,cAAc,2DAA2D,CAAC,oDAAoD,cAAc,2DAA2D,CAAC,qDAAqD,aAAa,0DAA0D,CAAC,gDAAgD,kCAAkC,6FAA6F,uBAAuB,wDAAwD,CAAC,sDAAsD,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,iEAAiE,WAAW,4DAA4D,yBAAyB,yDAAyD,CAAC,+EAA+E,WAAW,2DAA2D,CAAC,gFAAgF,UAAU,0DAA0D,CAAC,gEAAgE,WAAW,2DAA2D,yBAAyB,wDAAwD,CAAC,8EAA8E,WAAW,0DAA0D,CAAC,+EAA+E,UAAU,yDAAyD,CAAC,6CAA6C,kCAAkC,4FAA4F,CAAC,mDAAmD,yBAAyB,wDAAwD,CAAC,iEAAiE,WAAW,0DAA0D,CAAC,kEAAkE,UAAU,yDAAyD,CAAC,8DAA8D,yBAAyB,yDAAyD,CAAC,4EAA4E,WAAW,2DAA2D,CAAC,6EAA6E,UAAU,0DAA0D,CAAC,sCAAsC,uBAAuB,sEAAsE,CAAC,oDAAoD,uBAAuB,2EAA2E,CAAC,qDAAqD,sBAAsB,0EAA0E,CAAC,0BAA0B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,2DAA2D,sBAAsB,yDAAyD,CAAC,6KAA6K,uBAAuB,0EAA0E,CAAC,6NAA6N,uBAAuB,2EAA2E,sBAAsB,yEAAyE,CAAC,8CAA8C,kCAAkC,gFAAgF,CAAC,qCAAqC,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,sEAAsE,yBAAyB,yDAAyD,CAAC,mMAAmM,WAAW,2DAA2D,CAAC,mPAAmP,6BAA6B,8EAA8E,4BAA4B,4EAA4E,CAAC,yDAAyD,wCAAwC,mFAAmF,CAAC,oCAAoC,yBAAyB,yDAAyD,WAAW,0DAA0D,CAAC,qEAAqE,yBAAyB,wDAAwD,CAAC,iMAAiM,WAAW,0DAA0D,CAAC,iPAAiP,6BAA6B,6EAA6E,4BAA4B,2EAA2E,CAAC,wDAAwD,wCAAwC,kFAAkF,CAAC,gEAAgE,yBAAyB,yDAAyD,qBAAqB,oDAAoD,CAAC,sEAAsE,kBAAkB,qDAAqD,CAAC,oDAAoD,cAAc,6CAA6C,CAAC,2EAA2E,yBAAyB,0DAA0D,qBAAqB,qDAAqD,CAAC,+DAA+D,cAAc,8CAA8C,CAAC,qDAAqD,6BAA6B,CAAC,iEAAiE,6BAA6B,CAAC,4EAA4E,8BAA8B,iCAAiC,CAAC,0BAA0B,kCAAkC,qEAAqE,uBAAuB,4DAA4D,CAAC,qDAAqD,WAAW,iEAAiE,UAAU,+DAA+D,CAAC,8HAA8H,kCAAkC,gEAAgE,WAAW,wDAAwD,CAAC,gJAAgJ,UAAU,uDAAuD,CAAC,gKAAgK,wCAAwC,4EAA4E,uBAAuB,kEAAkE,CAAC,0LAA0L,sBAAsB,kEAAkE,uBAAuB,kEAAkE,CAAC,qCAAqC,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,sDAAsD,WAAW,qDAAqD,kCAAkC,mEAAmE,CAAC,oJAAoJ,WAAW,yDAAyD,kCAAkC,+DAA+D,CAAC,sLAAsL,wCAAwC,2EAA2E,CAAC,oCAAoC,yBAAyB,yDAAyD,WAAW,0DAA0D,CAAC,qDAAqD,WAAW,qDAAqD,kCAAkC,mEAAmE,CAAC,kJAAkJ,kCAAkC,gEAAgE,WAAW,wDAAwD,CAAC,oLAAoL,wCAAwC,2EAA2E,CAAC,sCAAsC,iCAAiC,oEAAoE,uBAAuB,2DAA2D,CAAC,qCAAqC,gCAAgC,CAAC,6BAA6B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,wCAAwC,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,uCAAuC,yBAAyB,yDAAyD,WAAW,0DAA0D,CAAC,qCAAqC,mCAAmC,iFAAiF,CAAC,uCAAuC,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,6DAA6D,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,iJAAiJ,sBAAsB,yDAAyD,CAAC,kEAAkE,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,2DAA2D,uBAAuB,yEAAyE,CAAC,+DAA+D,uBAAuB,sEAAsE,CAAC,4DAA4D,cAAc,4DAA4D,CAAC,wNAAwN,kCAAkC,kEAAkE,CAAC,wFAAwF,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,mLAAmL,cAAc,4DAA4D,CAAC,oEAAoE,qCAAqC,mFAAmF,CAAC,4BAA4B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,6BAA6B,kCAAkC,kEAAkE,CAAC,4BAA4B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,+CAA+C,oCAAoC,kFAAkF,CAAC,wEAAwE,sBAAsB,qEAAqE,CAAC,mEAAmE,uBAAuB,sEAAsE,CAAC,4CAA4C,kCAAkC,mEAAmE,CAAC,mFAAmF,aAAa,2DAA2D,CAAC,8EAA8E,cAAc,4DAA4D,CAAC,kFAAkF,aAAa,0DAA0D,CAAC,6EAA6E,cAAc,2DAA2D,CAAC,iCAAiC,iCAAiC,CAAC,kCAAkC,yBAAyB,yDAAyD,CAAC,iHAAiH,sBAAsB,CAAC,mIAAmI,sBAAsB,CAAC,0MAA0M,wCAAwC,CAAC,mEAAmE,6BAA6B,CAAC,oEAAoE,qBAAqB,qDAAqD,CAAC,6CAA6C,qGAAqG,CAAC,kJAAkJ,sBAAsB,CAAC,0CAA0C,yBAAyB,oEAAoE,CAAC,4CAA4C,yBAAyB,8DAA8D,CAAC,+EAA+E,qBAAqB,0DAA0D,CAAC,4CAA4C,cAAc,mDAAmD,CAAC,gDAAgD,cAAc,mDAAmD,CAAC,4GAA4G,cAAc,oDAAoD,aAAa,kDAAkD,CAAC,0MAA0M,cAAc,4DAA4D,CAAC,gGAAgG,cAAc,6DAA6D,aAAa,2DAA2D,CAAC,4CAA4C,cAAc,4DAA4D,CAAC,oDAAoD,sBAAsB,qEAAqE,CAAC,4CAA4C,sBAAsB,iEAAiE,CAAC,uDAAuD,aAAa,2DAA2D,CAAC,sDAAsD,aAAa,0DAA0D,CAAC,uCAAuC,uBAAuB,kEAAkE,CAAC,kDAAkD,cAAc,4DAA4D,CAAC,iDAAiD,cAAc,2DAA2D,CAAC,0BAA0B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,0EAA0E,uBAAuB,yEAAyE,CAAC,0EAA0E,uBAAuB,yEAAyE,CAAC,gEAAgE,kCAAkC,gFAAgF,CAAC,kDAAkD,uBAAuB,0EAA0E,CAAC,mGAAmG,kCAAkC,iFAAiF,uBAAuB,0EAA0E,CAAC,qCAAqC,uBAAuB,sEAAsE,CAAC,uIAAuI,cAAc,4DAA4D,CAAC,yDAAyD,8BAA8B,4EAA4E,CAAC,2LAA2L,cAAc,4DAA4D,CAAC,wLAAwL,cAAc,2DAA2D,CAAC,8FAA8F,uCAAuC,2EAA2E,CAAC,8SAA8S,yBAAyB,yDAAyD,CAAC,kHAAkH,sCAAsC,yEAAyE,CAAC,sVAAsV,yBAAyB,wDAAwD,CAAC,iDAAiD,uCAAuC,2EAA2E,CAAC,uEAAuE,yBAAyB,yDAAyD,CAAC,2DAA2D,sCAAsC,yEAAyE,CAAC,iFAAiF,yBAAyB,wDAAwD,CAAC,kEAAkE,yBAAyB,yDAAyD,CAAC,mEAAmE,uCAAuC,2EAA2E,CAAC,oEAAoE,mCAAmC,uEAAuE,CAAC,4EAA4E,yBAAyB,wDAAwD,CAAC,6EAA6E,sCAAsC,yEAAyE,CAAC,8EAA8E,kCAAkC,qEAAqE,CAAC,kEAAkE,eAAe,+CAA+C,CAAC,4EAA4E,eAAe,8CAA8C,CAAC,0DAA0D,qBAAqB,oDAAoD,CAAC,gEAAgE,yBAAyB,wDAAwD,CAAC,iDAAiD,cAAc,6CAA6C,CAAC,qEAAqE,qBAAqB,qDAAqD,CAAC,2EAA2E,yBAAyB,yDAAyD,CAAC,4DAA4D,cAAc,8CAA8C,CAAC,+CAA+C,6BAA6B,CAAC,2DAA2D,6BAA6B,CAAC,sEAAsE,6BAA6B,CAAC,4EAA4E,iCAAiC,CAAC,8BAA8B,WAAW,iEAAiE,wBAAwB,CAAC,8BAA8B,sBAAsB,0DAA0D,uBAAuB,0EAA0E,CAAC,2TAA2T,kCAAkC,gFAAgF,CAAC,iDAAiD,kCAAkC,mFAAmF,WAAW,6DAA6D,CAAC,qDAAqD,WAAW,8DAA8D,UAAU,4DAA4D,CAAC,oEAAoE,uBAAuB,uEAAuE,CAAC,qJAAqJ,kCAAkC,gFAAgF,CAAC,0JAA0J,uBAAuB,0EAA0E,CAAC,0JAA0J,yBAAyB,wEAAwE,WAAW,2DAA2D,CAAC,kKAAkK,WAAW,4DAA4D,UAAU,0DAA0D,CAAC,6EAA6E,cAAc,qDAAqD,CAAC,uEAAuE,cAAc,sDAAsD,aAAa,oDAAoD,CAAC,+BAA+B,uBAAuB,yEAAyE,CAAC,0CAA0C,cAAc,4DAA4D,CAAC,4DAA4D,sCAAsC,yEAAyE,CAAC,wDAAwD,yBAAyB,wDAAwD,CAAC,kDAAkD,cAAc,6CAA6C,CAAC,uEAAuE,uCAAuC,2EAA2E,CAAC,mEAAmE,yBAAyB,yDAAyD,CAAC,6DAA6D,cAAc,8CAA8C,CAAC,iDAAiD,iCAAiC,CAAC,6CAA6C,yBAAyB,+DAA+D,CAAC,6DAA6D,iCAAiC,CAAC,yDAAyD,yBAAyB,+DAA+D,CAAC,mGAAmG,sBAAsB,yDAAyD,CAAC,wEAAwE,uBAAuB,2EAA2E,qCAAqC,wEAAwE,CAAC,kFAAkF,kCAAkC,kFAAkF,CAAC,iHAAiH,yBAAyB,4DAA4D,CAAC,uIAAuI,yBAAyB,wEAAwE,WAAW,2DAA2D,CAAC,6JAA6J,UAAU,CAAC,qLAAqL,sBAAsB,iBAAiB,CAAC,iMAAiM,qBAAqB,qDAAqD,CAAC,qIAAqI,yBAAyB,uEAAuE,WAAW,0DAA0D,CAAC,2JAA2J,UAAU,CAAC,mLAAmL,sBAAsB,iBAAiB,CAAC,+LAA+L,qBAAqB,oDAAoD,CAAC,4CAA4C,kCAAkC,gFAAgF,CAAC,0CAA0C,uBAAuB,yEAAyE,CAAC,yDAAyD,qCAAqC,mFAAmF,CAAC,gGAAgG,uBAAuB,0EAA0E,CAAC,wGAAwG,uBAAuB,2EAA2E,sBAAsB,yEAAyE,CAAC,gDAAgD,kCAAkC,gFAAgF,CAAC,8CAA8C,sBAAsB,uEAAuE,CAAC,yDAAyD,sBAAsB,yEAAyE,CAAC,mEAAmE,uBAAuB,0EAA0E,CAAC,kEAAkE,sBAAsB,yEAAyE,CAAC,sEAAsE,qBAAqB,wEAAwE,CAAC,mEAAmE,cAAc,4DAA4D,CAAC,4EAA4E,cAAc,4DAA4D,CAAC,gFAAgF,aAAa,2DAA2D,CAAC,6CAA6C,yBAAyB,uEAAuE,CAAC,yDAAyD,yBAAyB,uEAAuE,CAAC,oEAAoE,4BAA4B,4EAA4E,CAAC,8EAA8E,6BAA6B,6EAA6E,CAAC,6EAA6E,4BAA4B,4EAA4E,CAAC,iFAAiF,2BAA2B,2EAA2E,CAAC,8EAA8E,WAAW,2DAA2D,CAAC,uFAAuF,WAAW,2DAA2D,CAAC,2FAA2F,UAAU,0DAA0D,CAAC,wDAAwD,sBAAsB,sEAAsE,CAAC,wDAAwD,yBAAyB,sEAAsE,CAAC,mEAAmE,4BAA4B,2EAA2E,CAAC,6EAA6E,6BAA6B,4EAA4E,CAAC,4EAA4E,4BAA4B,2EAA2E,CAAC,gFAAgF,2BAA2B,0EAA0E,CAAC,6EAA6E,WAAW,0DAA0D,CAAC,sFAAsF,WAAW,0DAA0D,CAAC,0FAA0F,UAAU,yDAAyD,CAAC,uDAAuD,sBAAsB,qEAAqE,CAAC,8CAA8C,sBAAsB,uEAAuE,CAAC,yDAAyD,sBAAsB,yEAAyE,CAAC,mEAAmE,uBAAuB,0EAA0E,CAAC,kEAAkE,sBAAsB,yEAAyE,CAAC,sEAAsE,qBAAqB,wEAAwE,CAAC,mEAAmE,cAAc,4DAA4D,CAAC,4EAA4E,cAAc,4DAA4D,CAAC,gFAAgF,aAAa,2DAA2D,CAAC,6CAA6C,yBAAyB,uEAAuE,CAAC,yDAAyD,yBAAyB,uEAAuE,CAAC,oEAAoE,4BAA4B,4EAA4E,CAAC,8EAA8E,6BAA6B,6EAA6E,CAAC,6EAA6E,4BAA4B,4EAA4E,CAAC,iFAAiF,2BAA2B,2EAA2E,CAAC,8EAA8E,WAAW,2DAA2D,CAAC,uFAAuF,WAAW,2DAA2D,CAAC,2FAA2F,UAAU,0DAA0D,CAAC,wDAAwD,sBAAsB,sEAAsE,CAAC,wDAAwD,yBAAyB,sEAAsE,CAAC,mEAAmE,4BAA4B,2EAA2E,CAAC,6EAA6E,6BAA6B,4EAA4E,CAAC,4EAA4E,4BAA4B,2EAA2E,CAAC,gFAAgF,2BAA2B,0EAA0E,CAAC,6EAA6E,WAAW,0DAA0D,CAAC,sFAAsF,WAAW,0DAA0D,CAAC,0FAA0F,UAAU,yDAAyD,CAAC,uDAAuD,sBAAsB,qEAAqE,CAAC,6BAA6B,uBAAuB,mFAAmF,yBAAyB,gEAAgE,CAAC,sCAAsC,uBAAuB,kFAAkF,CAAC,0CAA0C,sBAAsB,iFAAiF,CAAC,6HAA6H,uBAAuB,kFAAkF,CAAC,wCAAwC,yBAAyB,0DAA0D,WAAW,2DAA2D,CAAC,iDAAiD,WAAW,2DAA2D,CAAC,qDAAqD,UAAU,0DAA0D,CAAC,mFAAmF,WAAW,2DAA2D,CAAC,8JAA8J,WAAW,2DAA2D,CAAC,uCAAuC,yBAAyB,yDAAyD,WAAW,0DAA0D,CAAC,gDAAgD,WAAW,0DAA0D,CAAC,oDAAoD,UAAU,yDAAyD,CAAC,kFAAkF,WAAW,0DAA0D,CAAC,2JAA2J,WAAW,0DAA0D,CAAC,4CAA4C,6BAA6B,uBAAuB,0EAA0E,CAAC,qDAAqD,uBAAuB,0EAA0E,CAAC,yDAAyD,sBAAsB,yEAAyE,CAAC,0KAA0K,uBAAuB,0EAA0E,CAAC,6BAA6B,WAAW,4DAA4D,oCAAoC,kFAAkF,CAAC\",\"file\":\"default.css\",\"sourcesContent\":[\":root{--md-theme-default-primary:#448aff;--md-theme-default-accent:#ff5252;--md-theme-default-theme:\\\"light\\\"}.md-theme-default :not(input):not(textarea)::selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default a:not(.md-button){color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-theme-default a:not(.md-button):hover{color:rgba(68,138,255,0.8);color:var(--md-theme-default-primary-on-background, rgba(68,138,255,0.8))}.md-theme-default a:not(.md-button).md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-theme-default a:not(.md-button).md-accent:hover{color:rgba(255,82,82,0.8);color:var(--md-theme-default-accent-on-background, rgba(255,82,82,0.8))}html.md-theme-default{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-theme-default .md-caption,.md-theme-default .md-display-1,.md-theme-default .md-display-2,.md-theme-default .md-display-3,.md-theme-default .md-display-4{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background-variant, rgba(0,0,0,0.54))}.md-scrollbar.md-theme-default::-webkit-scrollbar-corner,.md-scrollbar.md-theme-default::-webkit-scrollbar-track{background:#e1e1e1;background:var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1)}.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb{background:#757575;background:var(--md-theme-default-scrollbar-on-background-variant, #757575)}.md-app:not(.md-overlap).md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-autocomplete-loading{background-color:rgba(255,255,255,0.54);background-color:var(--md-theme-default-background, rgba(255,255,255,0.54))}.md-autocomplete.md-theme-default.md-autocomplete-box{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-background, rgba(255,255,255,0.12))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);-webkit-text-fill-color:#fff;-webkit-text-fill-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));-webkit-text-fill-color:rgba(0,0,0,0.38);-webkit-text-fill-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-autocomplete-box-content.md-theme-default:after{background-color:#fff;background-color:var(--md-theme-default-background, #fff);border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-avatar.md-theme-default.md-avatar-icon{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-icon-disabled, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-avatar.md-theme-default.md-accent.md-avatar-icon{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-shift{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-type-shift>.md-ripple .md-ripple-wave{background-color:#116aff;background-color:var(--md-theme-default-primary-on-primary, #116aff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-accent.md-type-shift>.md-ripple .md-ripple-wave{background-color:#ff1f1f;background-color:var(--md-theme-default-accent-on-accent, #ff1f1f)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-image{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-image{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-raised[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-button.md-theme-default.md-raised:not([disabled]){background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-raised:not([disabled]).md-primary{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12))}.md-button.md-theme-default.md-fab:not([disabled]){background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default[disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-button.md-theme-default[disabled] .md-icon-font{color:rgba(0,0,0,0.38);color:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-button.md-theme-default[disabled] .md-icon-image{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-card.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-expand .md-card-actions{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54));fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54))}.md-card.md-theme-default>.md-card-area:after{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-card.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-primary>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-primary, rgba(255,255,255,0.12))}.md-card.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-accent>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-accent, rgba(255,255,255,0.12))}.md-checkbox.md-theme-default.md-checked .md-checkbox-container{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after{border-color:#fff;border-color:var(--md-theme-default-background, #fff)}.md-checkbox.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default .md-checkbox-container{border-color:rgba(0,0,0,0.54)}.md-checkbox.md-theme-default.md-disabled .md-checkbox-container{border-color:rgba(0,0,0,0.26)}.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container{border-color:rgba(0,0,0,0.26);background-color:rgba(0,0,0,0.26)}.md-chip.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary, rgba(0,0,0,0.87))}.md-chip.md-theme-default .md-icon.md-icon-image svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-primary, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon{fill:#fff;fill:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-chip.md-theme-default.md-primary .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover{color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff);background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-chip.md-theme-default.md-accent .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-disabled{background-color:rgba(0,0,0,0.1);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.1));color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent, rgba(0,0,0,0.54))}.md-chips.md-theme-default .md-clear{background-color:rgba(0,0,0,0.2)}.md-content.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-content.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-content.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-app .md-content.md-theme-default{border-left-color:rgba(0,0,0,0.12);border-left-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-header{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after,.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-week{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-datepicker-dialog.md-theme-default .md-datepicker-disabled{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-datepicker-dialog.md-theme-default .md-datepicker-today{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-divider.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-drawer.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-drawer.md-theme-default.md-persistent-mini{border-right-color:rgba(0,0,0,0.12);border-right-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default.md-rounded{background-color:rgba(0,0,0,0.06);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.06))}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-field.md-theme-default:after{background-color:rgba(0,0,0,0.42)}.md-field.md-theme-default:before{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default .md-helper-text,.md-field.md-theme-default .md-count,.md-field.md-theme-default label{color:rgba(0,0,0,0.54)}.md-field.md-theme-default .md-input::-webkit-input-placeholder,.md-field.md-theme-default .md-textarea::-webkit-input-placeholder{color:rgba(0,0,0,0.54)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-has-value .md-input,.md-field.md-theme-default.md-has-value .md-textarea{-webkit-text-fill-color:rgba(0,0,0,0.87)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after{border-color:rgba(0,0,0,0.42)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default.md-disabled:after{background-image:linear-gradient(to right, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.38) 33%, transparent 0%)}.md-field.md-theme-default.md-disabled label,.md-field.md-theme-default.md-disabled .md-input,.md-field.md-theme-default.md-disabled .md-textarea{color:rgba(0,0,0,0.42)}.md-field.md-theme-default>.md-icon:after{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa)}.md-field.md-theme-default.md-invalid:after{background-color:#ff1744;background-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before{border-color:#ff1744;border-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid label{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-error{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-date-icon,.md-field.md-theme-default.md-invalid .md-date-icon svg{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-highlight .md-input,.md-field.md-theme-default.md-highlight .md-textarea{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused>.md-icon,.md-field.md-theme-default.md-highlight>.md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff);fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused label{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-disabled .md-icon svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-icon.md-theme-default.md-icon-image svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-image svg.md-primary{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-image svg.md-accent{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-icon.md-theme-default.md-icon-font{color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-font.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-font.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-list.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default .md-highlight .md-list-item-container{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-list.md-theme-default .md-list-item-container{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default [disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-list.md-theme-default .md-selected .md-list-item-content,.md-list.md-theme-default .router-link-exact-active .md-list-item-content{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-list-item-expand.md-active{border-color:rgba(0,0,0,0.12);border-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-menu-item.md-theme-default.md-primary .md-list-item-link,.md-menu-item.md-theme-default.md-primary .md-list-item-router,.md-menu-item.md-theme-default.md-primary .md-list-item-button{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-menu-item.md-theme-default.md-accent .md-list-item-link,.md-menu-item.md-theme-default.md-accent .md-list-item-router,.md-menu-item.md-theme-default.md-accent .md-list-item-button{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-progress-bar.md-theme-default.md-indeterminate,.md-progress-bar.md-theme-default.md-query{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-indeterminate.md-accent,.md-progress-bar.md-theme-default.md-query.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-determinate{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-determinate.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer{border-color:rgba(68,138,255,0.38);border-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer{border-color:rgba(255,82,82,0.38);border-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-spinner.md-theme-default .md-progress-spinner-circle{stroke:#448aff;stroke:var(--md-theme-default-primary, #448aff)}.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle{stroke:#ff5252;stroke:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default .md-radio-container{border-color:rgba(0,0,0,0.54)}.md-radio.md-theme-default.md-disabled .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after{background-color:rgba(0,0,0,0.26)}.md-snackbar.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);background-color:#323232}.md-steppers.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-icon:after,.md-steppers.md-theme-default .md-stepper-icon:before,.md-steppers.md-theme-default .md-stepper-number:after,.md-steppers.md-theme-default .md-stepper-number:before,.md-steppers.md-theme-default .md-stepper:after,.md-steppers.md-theme-default .md-stepper:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-number{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-header .md-button-content{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-steppers.md-theme-default .md-stepper-header .md-button-content:after,.md-steppers.md-theme-default .md-stepper-header .md-button-content:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content,.md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-steppervariant, #ff1744)}.md-subheader.md-theme-default{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-subheader.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-switch.md-theme-default.md-checked .md-switch-container{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-switch.md-theme-default.md-checked .md-switch-thumb{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked.md-primary .md-switch-container{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default .md-switch-container{background-color:rgba(0,0,0,0.38)}.md-switch.md-theme-default .md-switch-thumb{background-color:#f5f5f5;background-color:var(--md-theme-default-switchvariant, #f5f5f5)}.md-switch.md-theme-default.md-disabled .md-switch-container{background-color:rgba(0,0,0,0.12)}.md-switch.md-theme-default.md-disabled .md-switch-thumb{background-color:#bdbdbd;background-color:var(--md-theme-default-switchvariant, #bdbdbd)}.md-table.md-theme-default .md-table-content,.md-table.md-theme-default .md-table-alternate-header{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));background-color:rgba(255,82,82,0.2);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.2))}.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell{background-color:rgba(0,0,0,0.08);background-color:var(--md-theme-default-highlight-on-background, rgba(0,0,0,0.08))}.md-table.md-theme-default .md-table-row.md-selected,.md-table.md-theme-default .md-table-row.md-selected-single{background-color:#f5f5f5;background-color:var(--md-theme-default-rowvariant, #f5f5f5)}.md-table.md-theme-default .md-table-row.md-selected.md-primary,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-table.md-theme-default .md-table-row td{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-table-head{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-table.md-theme-default .md-table-fixed-header-active{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-sortable:hover,.md-table.md-theme-default .md-sortable.md-sorted{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-sortable:hover svg,.md-table.md-theme-default .md-sortable.md-sorted svg{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-table-pagination{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87));background-color:#f5f5f5;background-color:var(--md-theme-default-toolbarvariant, #f5f5f5)}.md-toolbar.md-theme-default .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-title,.md-toolbar.md-theme-default .md-display-1,.md-toolbar.md-theme-default .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-title,.md-toolbar.md-theme-default.md-primary .md-display-1,.md-toolbar.md-theme-default.md-primary .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-title,.md-toolbar.md-theme-default.md-accent .md-display-1,.md-toolbar.md-theme-default.md-accent .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-transparent{background-color:transparent;color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-title,.md-toolbar.md-theme-default.md-transparent .md-display-1,.md-toolbar.md-theme-default.md-transparent .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-tooltip.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-tooltip, #fff);background-color:rgba(97,97,97,0.9);background-color:var(--md-theme-default-tooltip-on-background, rgba(97,97,97,0.9))}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzcz8wZTE5Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIjpyb290ey0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5OiM0NDhhZmY7LS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudDojZmY1MjUyOy0tbWQtdGhlbWUtZGVmYXVsdC10aGVtZTpcXFwibGlnaHRcXFwifS5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVye2NvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDY4LDEzOCwyNTUsMC44KSl9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVye2NvbG9yOnJnYmEoMjU1LDgyLDgyLDAuOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgyNTUsODIsODIsMC44KSl9aHRtbC5tZC10aGVtZS1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yLC5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTMsLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktNHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6I2UxZTFlMTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLWJhY2tncm91bmQtb24tYmFja2dyb3VuZC12YXJpYW50LCAjZTFlMWUxKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izc1NzU3NTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSl9Lm1kLWFwcDpub3QoLm1kLW92ZXJsYXApLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWF1dG9jb21wbGV0ZS1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCwubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiNmZmY7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjM4KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1hdXRvY29tcGxldGUtYm94LWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdDphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtYXZhdGFyLWljb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6IzExNmFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjMTE2YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW17Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmY1MjUyO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6I2ZmMWYxZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgI2ZmMWYxZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmNTI1MjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWRbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pe2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSl7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24taW1hZ2V7ZmlsbDpyZ2JhKDAsMCwwLDAuMzgpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpe2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2ZpbGw6cmdiYSgwLDAsMCwwLjU0KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQ+Lm1kLWNhcmQtYXJlYTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4xMikpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNTQpKTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjEyKSl9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtib3JkZXItY29sb3I6I2ZmNTI1Mjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKTtib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLDAsMCwwLjEyKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeSwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtcHJpbWFyeSwgI2ZmZik7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb257ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjg3KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjg3KSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC44Nyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LDI1NSwyNTUsMC44NykpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWlucHV0LWFjdGlvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1kaXNhYmxlZCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuODcpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuODcpKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwwLDAsMC4xKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtY2hpcHMubWQtdGhlbWUtZGVmYXVsdCAubWQtY2xlYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWZvb3RlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2Vla3tjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjI2KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uOmhvdmVyLC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXBlcnNpc3RlbnQtbWluaXtib3JkZXItcmlnaHQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4yNik7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMjYpKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4wNikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oZWxwZXItdGV4dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtY291bnQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMCwwLDAsMC41NCl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhey13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnJnYmEoMCwwLDAsMC44Nyl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwwLDAsMC4zOCkgMCUsIHJnYmEoMCwwLDAsMC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYXtjb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Pi5tZC1pY29uOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMTc0NDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNmZjE3NDQ7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIGxhYmVse2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9ye2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIC5tZC1kYXRlLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO2ZpbGw6I2ZmMTc0NDtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWF7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZD4ubWQtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQ+Lm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgbGFiZWx7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1wcmltYXJ5e2ZpbGw6IzQ0OGFmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLWFjY2VudHtmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250Lm1kLWFjY2VudHtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMil7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlciwubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5e2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50LC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMjU1LDgyLDgyLDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdCAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1jaXJjbGV7c3Ryb2tlOiM0NDhhZmY7c3Ryb2tlOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle3N0cm9rZTojZmY1MjUyO3N0cm9rZTp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1zbmFja2Jhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzJ9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlciBzdmd7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZil9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtYnV0dG9uLWNvbnRlbnR7Y29sb3I6I2ZmMTc0NDtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7ZmlsbDojZmYxNzQ0O2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCl9Lm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDgyLDgyLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZXtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zOCl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjZjVmNWY1KX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2JkYmRiZDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2JkYmRiZCl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciAubWQtdGFibGUtdG9vbGJhcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpO2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4yKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdzpob3Zlcjpub3QoLm1kLWhlYWRlci1yb3cpIC5tZC10YWJsZS1jZWxse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4wOCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnksLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1yaXBwbGUsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWhlYWR7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZle2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtc29ydGFibGU6aG92ZXIsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciBzdmcsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmd7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKTtmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcGFnaW5hdGlvbntib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjcpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpe2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOm5vdCgubWQtcmFpc2VkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjg3KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbHRpcC5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdG9vbHRpcCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDk3LDk3LDk3LDAuOSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2x0aXAtb24tYmFja2dyb3VuZCwgcmdiYSg5Nyw5Nyw5NywwLjkpKX1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQSxNQUFNLG1DQUFtQyxrQ0FBa0MsZ0NBQWdDLENBQUMsNERBQXVELHlCQUF5Qix1RUFBdUUsV0FBVywwREFBMEQsQ0FBNU4sdURBQXVELHlCQUF5Qix1RUFBdUUsV0FBVywwREFBMEQsQ0FBQyxvQ0FBb0MsY0FBYyw0REFBNEQsQ0FBQywwQ0FBMEMsMkJBQTJCLHlFQUF5RSxDQUFDLDhDQUE4QyxjQUFjLDJEQUEyRCxDQUFDLG9EQUFvRCwwQkFBMEIsdUVBQXVFLENBQUMsc0JBQXNCLHlCQUF5QixxRUFBcUUsdUJBQXVCLGtGQUFrRixDQUFDLDhKQUE4Six1QkFBdUIsaUZBQWlGLENBQUMsaUhBQWlILG1CQUFtQixzRkFBc0YsQ0FBQyx3REFBd0QsbUJBQW1CLDJFQUEyRSxDQUFDLDBDQUEwQyxzQkFBc0IseURBQXlELENBQUMsMEVBQTBFLGNBQWMsNERBQTRELENBQUMsbURBQW1ELHdDQUF3QywyRUFBMkUsQ0FBQyxzREFBc0Qsc0JBQXNCLHlEQUF5RCxDQUFDLHVFQUF1RSx1QkFBdUIsdUVBQXVFLENBQUMsa0VBQWtFLHdDQUF3QywyRUFBMkUsQ0FBQyxnSkFBZ0osV0FBVyw0REFBNEQsNkJBQTZCLDZFQUE2RSxDQUFDLHNF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Q0FBQyxvREFBb0QsVUFBVSx5REFBeUQsQ0FBQyxrRkFBa0YsV0FBVywwREFBMEQsQ0FBQywySkFBMkosV0FBVywwREFBMEQsQ0FBQyw0Q0FBNEMsNkJBQTZCLHVCQUF1QiwwRUFBMEUsQ0FBQyxxREFBcUQsdUJBQXVCLDBFQUEwRSxDQUFDLHlEQUF5RCxzQkFBc0IseUVBQXlFLENBQUMsMEtBQTBLLHVCQUF1QiwwRUFBMEUsQ0FBQyw2QkFBNkIsV0FBVyw0REFBNEQsb0NBQW9DLGtGQUFrRixDQUFDXCIsXCJmaWxlXCI6XCJkZWZhdWx0LmNzc1wiLFwic291cmNlc0NvbnRlbnRcIjpbXCI6cm9vdHstLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTojNDQ4YWZmOy0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6I2ZmNTI1MjstLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6XFxcImxpZ2h0XFxcIn0ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVye2NvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDY4LDEzOCwyNTUsMC44KSl9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVye2NvbG9yOnJnYmEoMjU1LDgyLDgyLDAuOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgyNTUsODIsODIsMC44KSl9aHRtbC5tZC10aGVtZS1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yLC5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTMsLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktNHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6I2UxZTFlMTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLWJhY2tncm91bmQtb24tYmFja2dyb3VuZC12YXJpYW50LCAjZTFlMWUxKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izc1NzU3NTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSl9Lm1kLWFwcDpub3QoLm1kLW92ZXJsYXApLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWF1dG9jb21wbGV0ZS1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCwubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiNmZmY7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjM4KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1hdXRvY29tcGxldGUtYm94LWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdDphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtYXZhdGFyLWljb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6IzExNmFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjMTE2YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW17Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmY1MjUyO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6I2ZmMWYxZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgI2ZmMWYxZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmNTI1MjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWRbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pe2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSl7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24taW1hZ2V7ZmlsbDpyZ2JhKDAsMCwwLDAuMzgpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpe2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2ZpbGw6cmdiYSgwLDAsMCwwLjU0KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQ+Lm1kLWNhcmQtYXJlYTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4xMikpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNTQpKTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjEyKSl9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtib3JkZXItY29sb3I6I2ZmNTI1Mjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKTtib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLDAsMCwwLjEyKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeSwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtcHJpbWFyeSwgI2ZmZik7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb257ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjg3KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjg3KSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC44Nyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LDI1NSwyNTUsMC44NykpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWlucHV0LWFjdGlvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1kaXNhYmxlZCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuODcpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuODcpKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwwLDAsMC4xKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtY2hpcHMubWQtdGhlbWUtZGVmYXVsdCAubWQtY2xlYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWZvb3RlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2Vla3tjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjI2KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uOmhvdmVyLC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXBlcnNpc3RlbnQtbWluaXtib3JkZXItcmlnaHQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4yNik7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMjYpKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4wNikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oZWxwZXItdGV4dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtY291bnQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMCwwLDAsMC41NCl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhey13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnJnYmEoMCwwLDAsMC44Nyl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwwLDAsMC4zOCkgMCUsIHJnYmEoMCwwLDAsMC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYXtjb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Pi5tZC1pY29uOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMTc0NDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNmZjE3NDQ7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIGxhYmVse2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9ye2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIC5tZC1kYXRlLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO2ZpbGw6I2ZmMTc0NDtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWF7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZD4ubWQtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQ+Lm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgbGFiZWx7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1wcmltYXJ5e2ZpbGw6IzQ0OGFmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLWFjY2VudHtmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250Lm1kLWFjY2VudHtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMil7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlciwubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5e2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50LC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMjU1LDgyLDgyLDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdCAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1jaXJjbGV7c3Ryb2tlOiM0NDhhZmY7c3Ryb2tlOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle3N0cm9rZTojZmY1MjUyO3N0cm9rZTp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1zbmFja2Jhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzJ9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlciBzdmd7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZil9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtYnV0dG9uLWNvbnRlbnR7Y29sb3I6I2ZmMTc0NDtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7ZmlsbDojZmYxNzQ0O2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCl9Lm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDgyLDgyLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZXtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zOCl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjZjVmNWY1KX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2JkYmRiZDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2JkYmRiZCl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciAubWQtdGFibGUtdG9vbGJhcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpO2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4yKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdzpob3Zlcjpub3QoLm1kLWhlYWRlci1yb3cpIC5tZC10YWJsZS1jZWxse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4wOCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnksLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1yaXBwbGUsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWhlYWR7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZle2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtc29ydGFibGU6aG92ZXIsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciBzdmcsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmd7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKTtmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcGFnaW5hdGlvbntib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjcpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpe2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOm5vdCgubWQtcmFpc2VkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjg3KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbHRpcC5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdG9vbHRpcCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDk3LDk3LDk3LDAuOSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2x0aXAtb24tYmFja2dyb3VuZCwgcmdiYSg5Nyw5Nyw5NywwLjkpKX1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/theme/default.css\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/vue-material.min.css": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"/*!\\n * vue-material v1.0.0-beta-7\\n * Made with <3 by marcosmoura 2017\\n * Released under the MIT License.\\n */html{height:100%;box-sizing:border-box;transition:background-color .3s cubic-bezier(.25,.8,.25,1)}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,Noto Sans,-apple-system,BlinkMacSystemFont,sans-serif}a:not(.md-button){transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:color,background-color,opacity}audio,canvas,embed,iframe,img,object,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar{width:8px;height:8px;border-radius:8px}.md-scrollbar::-webkit-scrollbar-thumb{border-radius:8px}.md-scrollbar::-webkit-scrollbar-button{display:none}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button){text-decoration:none}a:not(.md-button):hover{text-decoration:underline}button:focus{outline:none}.md-app{display:flex;overflow:hidden;position:relative}.md-app.md-fixed .md-app-scroller{overflow:auto}.md-app.md-fixed-last,.md-app.md-flexible,.md-app.md-overlap,.md-app.md-reveal{transform:translateZ(0)}.md-app.md-fixed-last .md-app-toolbar,.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar,.md-app.md-reveal .md-app-toolbar{position:absolute;top:0}.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar{min-height:0}.md-app.md-flexible .md-toolbar-row:first-child{z-index:2}.md-app.md-flexible .md-toolbar-row:last-child{position:fixed;bottom:0;z-index:1}.md-app.md-flexible .md-display-1{position:fixed}.md-app.md-overlap .md-app-toolbar{z-index:1}.md-app.md-overlap .md-app-content{margin:-64px 24px 24px;position:relative;z-index:2}.md-app-content{padding:16px}.md-app-content>p:first-child{margin-top:0}.md-app-content>p:last-child{margin-bottom:0}.md-app-container{display:flex;overflow:auto;transform:translate3D(0,0,0);transition:padding-left .4s cubic-bezier(.4,0,.2,1);will-change:padding-left}.md-app-container,.md-app-scroller{flex:1}@media (max-width:944px){.md-app.md-overlap .md-app-content{margin:-64px 16px 16px}}@media (max-width:600px){.md-app.md-overlap .md-app-content{margin:-64px 8px 8px}}@media (min-width:600px){.md-app-drawer.md-permanent-card+.md-app-scroller .md-content{padding-left:0;border-left:none}.md-app-content{border-left:1px solid transparent}}.md-app-internal-drawer,.md-app-side-drawer .md-app-container{flex-direction:column}.md-app-internal-drawer .md-app-scroller{overflow:auto}.md-no-elevation{box-shadow:none!important}.md-fixed-last .md-reveal-active,.md-flexible .md-reveal-active,.md-overlap .md-reveal-active,.md-reveal .md-reveal-active{transform:translate3d(0,calc(100% + 10px),0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,transform;will-change:height,box-shadow,transform}.md-overlap .md-app-toolbar{height:196px}.md-fixed-last-active{transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,transform;will-change:height,box-shadow,transform}.md-overlap-off{z-index:3!important}.md-app-content{height:100%}.md-app-content .md-card{margin-right:16px;margin-left:16px;overflow:visible}.md-autocomplete .md-menu{width:100%;display:flex}.md-autocomplete-loading{display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;z-index:9}.md-field.md-inline.md-autocomplete-box{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);padding-top:2px;border-radius:2px}.md-field.md-inline.md-autocomplete-box.md-focused{z-index:11}.md-field.md-inline.md-autocomplete-box:after,.md-field.md-inline.md-autocomplete-box:before{display:none}.md-toolbar .md-field.md-inline.md-autocomplete-box{min-height:40px;height:40px;margin:0;box-shadow:none}.md-field.md-inline.md-autocomplete-box .md-menu{align-items:center}.md-field.md-inline.md-autocomplete-box .md-input{padding-left:16px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box .md-input-action,.md-field.md-inline.md-autocomplete-box label{top:50%;transform:translateY(-50%)}.md-field.md-inline.md-autocomplete-box .md-input-action{right:8px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box label{margin-top:2px;left:16px}.md-autocomplete-box-content:after{height:6px;position:absolute;top:-6px;right:0;left:0;z-index:11;border-bottom:1px solid;content:\\\"\\\"}.md-avatar{width:40px;min-width:40px;height:40px;margin:auto;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:24px;letter-spacing:-.05em;vertical-align:middle}.md-avatar.md-large{min-width:64px;min-height:64px;border-radius:64px;font-size:32px}.md-avatar.md-large .md-icon{font-size:40px!important}.md-avatar.md-small{width:24px;min-width:24px;height:24px;border-radius:24px;font-size:14px}.md-avatar.md-small .md-icon{font-size:16px!important}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ripple{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;border-radius:50%}.md-bottom-bar{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);width:100%;transition:background-color .5s cubic-bezier(.4,0,.2,1)}.md-bottom-bar>.md-ripple{display:flex;flex-wrap:wrap}.md-bottom-bar.md-type-fixed{justify-content:center}.md-bottom-bar.md-type-fixed .md-bottom-bar-item{min-width:80px;max-width:168px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color;will-change:color}.md-bottom-bar.md-type-fixed .md-bottom-bar-item .md-bottom-bar-label{transform:scale(.8571) translate3D(0,4px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-ripple{padding-top:6px}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-icon{transform:translate3d(0,-2px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-label{transform:translate3D(0,3px,0)}.md-bottom-bar.md-type-shift{justify-content:center}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter-active{transition-duration:1.1s!important}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter{opacity:1}.md-bottom-bar.md-type-shift .md-bottom-bar-item{min-width:56px;max-width:96px;flex:1 1 32px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:padding,min-width,max-width,flex,color;will-change:padding,min-width,max-width,flex,color}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-ripple{padding:16px}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-label{opacity:0;transform:scale(.7) translate3d(0,6px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;flex:1 1 72px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-ripple{padding:6px 0 10px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-icon{transform:translateZ(0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-label{opacity:1;transform:translate3d(0,3px,0)}.md-bottom-bar .md-bottom-bar-item{height:56px;margin:0;flex:1;cursor:pointer;border-radius:0;font-size:14px;font-weight:400;line-height:1em;text-transform:none}.md-bottom-bar .md-bottom-bar-item .md-ripple{padding:8px 12px 10px;transition:padding .3s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-bottom-bar .md-bottom-bar-item .md-button-content{position:static;display:flex;flex-direction:column;align-items:center}.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-icon,.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-label{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-ripple{width:100%;height:100%;position:relative;z-index:4;overflow:hidden;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0)}.md-ripple-wave{position:absolute;z-index:1;pointer-events:none;background:currentColor;border-radius:50%;opacity:0;transform:scale(2) translateZ(0)}.md-ripple-wave.md-centered{top:50%;left:50%}.md-ripple-wave~*{position:relative;z-index:2}.md-ripple-enter-active{transition:.8s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform;will-change:opacity,transform}.md-ripple-enter-active.md-centered{transition-duration:1.2s}.md-ripple-enter{opacity:.26;transform:scale(.26) translateZ(0)}.md-button,.md-button-clean{margin:0;padding:0;display:inline-block;position:relative;overflow:hidden;outline:none;background:transparent;border:0;border-radius:0;transition:.4s cubic-bezier(.4,0,.2,1);font-family:inherit;line-height:normal;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button{min-width:88px;height:36px;margin:6px 8px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:2px;font-size:14px;font-weight:500}.md-button:active{outline:none}.md-button[disabled]{pointer-events:none}.md-button:not([disabled]){cursor:pointer}.md-button:not([disabled]).md-focused:before,.md-button:not([disabled]):active:before,.md-button:not([disabled]):hover:before{background-color:currentColor;opacity:.12}.md-button:not([disabled]).md-focused.md-accent:before,.md-button:not([disabled]).md-focused.md-primary:before,.md-button:not([disabled]):active:before{opacity:.2}.md-button:not([disabled]).md-ripple-off:active:before{opacity:.26}.md-button.md-plain.md-button.md-raised:not([disabled]){color:rgba(0,0,0,.87);background-color:#fff}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-font{color:rgba(0,0,0,.87)}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-image{fill:rgba(0,0,0,.87)}.md-button::-moz-focus-inner{padding:0;border:0}.md-button:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,opacity;content:\\\" \\\"}.md-button.md-dense{height:32px;font-size:13px}.md-button.md-raised:not([disabled]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]):active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]).md-ripple-off:active:before{opacity:.2}.md-button+.md-button{margin-left:0}.md-button .md-ripple{padding:0 8px;display:flex;justify-content:center;align-items:center}.md-button-spaced .md-ripple{padding:0 16px}.md-fab,.md-fab .md-ripple,.md-fab:before,.md-icon-button,.md-icon-button .md-ripple,.md-icon-button:before{border-radius:50%}.md-fab.md-dense .md-ripple-wave,.md-fab.md-mini .md-ripple-wave,.md-icon-button .md-ripple-wave{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px}.md-icon-button.md-dense{width:32px;min-width:32px;height:32px}.md-icon-button .md-ripple-enter-active{transition-duration:1.2s}.md-fab{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);width:56px;height:56px;min-width:0;overflow:hidden}.md-fab:active{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-fab.md-dense,.md-fab.md-mini{width:40px;height:40px}.md-fab.md-fab-top-left,.md-fab.md-fab-top-right{position:absolute;top:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right{position:absolute;bottom:24px}.md-fab.md-fab-bottom-center,.md-fab.md-fab-top-center{position:absolute;left:50%;transform:translateX(-50%);top:24px}.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-right{right:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-top-left{left:24px}.md-fab.md-fixed{position:fixed}.md-fab .md-ripple{padding:0}.md-button-content{position:relative;z-index:2}.md-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;z-index:1;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color}.md-card.md-with-hover{cursor:pointer;transition:background-color .3s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.25,.8,.25,1);will-change:background-color,box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card.md-expand-active .md-card-expand-trigger.md-icon-button{transform:rotate(180deg)}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card-header{padding:16px}.md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card-header:last-child{margin-bottom:8px}.md-card-header.md-card-header-flex{display:flex;justify-content:space-between}.md-card-header+.md-card-content{padding-top:0}.md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card-header>img{border-radius:50%}.md-card-header .md-avatar,.md-card-header>img{margin-right:16px;float:left}.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-title{font-size:14px}.md-card-header .md-avatar~.md-subhead,.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-subhead,.md-card-header>img~.md-title{font-weight:500;line-height:20px}.md-card-header .md-button{margin:0}.md-card-header .md-button:last-child{margin-right:-4px}.md-card-header .md-button+.md-button{margin-left:8px}.md-card-header .md-card-header-text{flex:1}.md-card-header .md-card-media{width:80px;height:80px;margin-left:16px;flex:0 0 80px}.md-card-header .md-card-media.md-medium{width:120px;height:120px;flex:0 0 120px}.md-card-header .md-card-media.md-big{width:160px;height:160px;flex:0 0 160px}.md-card-media{position:relative}.md-card-media.md-ratio-16-9{overflow:hidden}.md-card-media.md-ratio-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-16-9 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media.md-ratio-4-3{overflow:hidden}.md-card-media.md-ratio-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-4-3 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media.md-ratio-1-1{overflow:hidden}.md-card-media.md-ratio-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-1-1 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media+.md-card-header{padding-top:24px}.md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card-media img{width:100%}.md-card-media-actions{padding:16px;display:flex;justify-content:space-between}.md-card-media-actions .md-card-media{max-width:240px;max-height:240px;flex:1}.md-card-media-actions .md-card-actions{margin-left:16px;flex-direction:column;justify-content:flex-start;align-items:center}.md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card-media-cover{position:relative;color:#fff}.md-card-media-cover.md-solid .md-card-area{background-color:rgba(0,0,0,.54)}.md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card-media-cover .md-card-area,.md-card-media-cover .md-card-header{display:flex;flex-direction:column}.md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card-media-cover .md-subhead{opacity:1}.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:#fff!important}.md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card-content:last-of-type{padding-bottom:24px}.md-card-expand{overflow:hidden}.md-card-expand .md-card-actions{position:relative;z-index:2}.md-card-expand .md-card-expand-content{position:relative;z-index:1}.md-card-expand-trigger.md-icon-button{transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card-expand-content{overflow:hidden;transform:translate3D(0,0,0);transition:.4s cubic-bezier(.4,0,.2,1);transition-property:opacity,margin-top;will-change:opacity,margin-top}.md-card-actions{padding:8px;display:flex;align-items:center}.md-card-actions.md-alignment-right{justify-content:flex-end}.md-card-actions.md-alignment-left{justify-content:flex-start}.md-card-actions.md-alignment-space-between{justify-content:space-between}.md-card-actions .md-button{margin:0}.md-card-actions .md-button:first-child{margin-left:0}.md-card-actions .md-button:last-child{margin-right:0}.md-card-actions .md-button+.md-button{margin-left:4px}.md-checkbox{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid transparent;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:after,.md-checkbox .md-checkbox-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;transform:translate(-50%,-50%)}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;top:0;left:5px;z-index:6;border:2px solid transparent;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1)}.md-checkbox .md-checkbox-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%);border-radius:50%}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox.md-disabled.md-checked .md-checkbox-container{border-color:transparent!important}.md-checkbox.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-chips.md-field{padding-top:12px;flex-wrap:wrap}.md-chips.md-field.md-has-value label{top:-6px}.md-chips.md-field .md-chip{margin-bottom:4px}.md-chips.md-field .md-chip:last-of-type{margin-right:8px}.md-chips.md-field .md-input{min-width:128px}.md-field{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:flex;position:relative;font-family:inherit}.md-field:after,.md-field:before{position:absolute;bottom:0;right:0;left:0;z-index:1;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:border,opacity,transform;content:\\\" \\\"}.md-field:after{height:1px}.md-field:before{height:2px;z-index:2;opacity:0;transform:scaleX(.12)}.md-field label{position:absolute;top:23px;left:0;pointer-events:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;font-size:16px;line-height:20px}.md-field .md-input,.md-field .md-textarea{width:100%;height:32px;padding:0;display:block;flex:1;border:none;background:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,padding-top,color;font-family:inherit;font-size:1px;line-height:32px}.md-field .md-input[type=date],.md-field .md-textarea[type=date]{font-size:16px}.md-field .md-input[disabled],.md-field .md-textarea[disabled]{cursor:default}.md-field .md-input:focus,.md-field .md-textarea:focus{outline:none}.md-field .md-input::-webkit-input-placeholder,.md-field .md-textarea::-webkit-input-placeholder{font-size:16px;text-shadow:none;-webkit-text-fill-color:initial;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,color}.md-field .md-textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-field .md-count,.md-field .md-error,.md-field .md-helper-text{height:20px;position:absolute;bottom:-22px;font-size:12px;transition:.3s cubic-bezier(.4,0,.2,1)}.md-field .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0)}.md-field .md-count{right:0}.md-field .md-input-action{width:32px;min-width:32px;height:32px;margin:0;position:absolute;top:16px;right:0;transition:.4s cubic-bezier(.4,0,.2,1)}.md-field .md-input-action.md-input-action-enter-active,.md-field .md-input-action.md-input-action-leave-active{opacity:0}.md-field .md-input-action.md-input-action-enter-to{opacity:1}.md-field>.md-icon{margin:4px auto;position:relative;z-index:3;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-field>.md-icon:last-of-type:not(:first-child):after{display:none}.md-field>.md-icon:after{width:37px;height:4px;position:absolute;left:-1px;bottom:-5px;transition:.3s cubic-bezier(.4,0,.2,1);content:\\\"\\\"}.md-field>.md-icon~label{left:36px}.md-field>.md-icon~.md-file,.md-field>.md-icon~.md-input,.md-field>.md-icon~.md-textarea{margin-left:12px}.md-field+.md-has-textarea:not(.md-autogrow){margin-top:36px}.md-field.md-has-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-field.md-has-placeholder .md-input,.md-field.md-has-placeholder .md-textarea{font-size:16px}.md-field.md-has-textarea:not(.md-autogrow):after,.md-field.md-has-textarea:not(.md-autogrow):before{height:auto;pointer-events:none;top:0;bottom:0;transform:none;background:none!important;border:1px solid transparent;border-radius:3px}.md-field.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-has-textarea:not(.md-autogrow) label{top:16px;left:16px}.md-field.md-has-textarea:not(.md-autogrow) .md-textarea{min-height:100px;padding:0 16px;resize:vertical}.md-field.md-has-textarea:not(.md-autogrow)>.md-icon{position:absolute;top:6px;right:6px;z-index:3}.md-field.md-has-textarea:not(.md-autogrow) .md-count{right:6px;bottom:2px}.md-field.md-has-textarea:not(.md-autogrow) .md-clear{top:6px;right:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused label,.md-field.md-has-textarea:not(.md-autogrow).md-has-value label{top:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused .md-textarea,.md-field.md-has-textarea:not(.md-autogrow).md-has-value .md-textarea{padding-top:10px}.md-field.md-has-file:after,.md-field.md-has-file:before,.md-field.md-has-file label{left:36px}.md-field.md-has-file .md-input{margin-left:12px}.md-field.md-focused:before,.md-field.md-highlight:before{opacity:1;transform:scaleX(1);transition:.3s cubic-bezier(.4,0,.2,1);transition-property:border,opacity,transform}.md-field.md-focused label,.md-field.md-has-value label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-field.md-focused .md-input,.md-field.md-focused .md-textarea,.md-field.md-has-value .md-input,.md-field.md-has-value .md-textarea{font-size:16px}.md-field.md-inline label{pointer-events:none}.md-field.md-inline.md-focused label{top:23px;font-size:16px}.md-field.md-inline.md-has-value label{opacity:0}.md-field.md-disabled:after{background:0 100% repeat-x;background-size:4px 1px}.md-field.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px}.md-field.md-has-password .md-toggle-password svg{width:22px;height:22px}.md-field.md-clearable .md-input{padding-right:30px}@keyframes a{10%,90%{transform:translate3d(-1px,0,0)}30%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.md-field.md-invalid.md-has-value label:not(:focus){animation:a .4s cubic-bezier(.4,0,.2,1) both;-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px}.md-field.md-invalid.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-invalid .md-error{opacity:1;transform:translateZ(0)}.md-field.md-invalid .md-helper-text{opacity:0;transform:translate3d(0,-8px,0)}.md-field.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-icon{width:24px;min-width:24px;height:24px;font-size:24px!important;margin:auto;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;align-items:center;justify-content:center;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;font-size:48px!important}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;font-size:72px!important}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;font-size:96px!important}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;font-size:120px!important}.md-icon-image svg{height:100%;flex:1;transition:fill .4s cubic-bezier(.4,0,.2,1)}.md-icon{transition:color .4s cubic-bezier(.4,0,.2,1);direction:ltr;font-family:Material Icons;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-style:normal;letter-spacing:normal;line-height:1;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;white-space:nowrap;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-svg-loader{display:block}.md-svg-loader svg{width:100%}.md-chip{height:32px;padding:0 12px;display:inline-block;cursor:default;border-radius:32px;transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:background-color,color,opacity,transform,box-shadow;will-change:background-color,color,opacity,transform,box-shadow;font-size:13px;line-height:32px;vertical-align:middle;white-space:nowrap}.md-chip:focus{outline:none}.md-chip.md-chip-enter-active,.md-chip.md-chip-leave-active{opacity:0;transform:transformZ(0) scale(.8)}.md-chip.md-chip-enter-to{opacity:1;transform:transformZ(0) scale(1)}.md-chip.md-clickable:not(.md-disabled):active,.md-chip.md-deletable:not(.md-disabled):active,.md-chip.md-focused{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-chip.md-clickable{padding:0;cursor:pointer}.md-chip.md-clickable>.md-ripple{padding:0 12px}.md-chip.md-deletable{padding-right:32px;position:relative}.md-chip.md-deletable.md-clickable{padding-right:0}.md-chip.md-deletable.md-clickable>.md-ripple{padding-right:32px}.md-chip.md-disabled{cursor:default}.md-chip+.md-chip{margin-left:4px}.md-chip .md-button.md-input-action{width:18px;min-width:18px;height:18px;margin:0;position:absolute;top:50%;right:7px;z-index:5;transform:translate3D(0,-50%,0);transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1);font-size:18px}.md-chip .md-button.md-input-action .md-ripple{padding:0}.md-chip .md-button.md-input-action .md-button-content{height:14px}.md-chip .md-button.md-input-action .md-icon{width:14px;min-width:14px;height:14px;font-size:14px!important;vertical-align:top}.md-chip .md-button.md-input-action .md-icon svg{transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1)}.md-datepicker-overlay{opacity:0}.md-datepicker .md-date-icon{cursor:pointer}.md-datepicker input[type=date]::-webkit-calendar-picker-indicator,.md-datepicker input[type=date]::-webkit-clear-button,.md-datepicker input[type=date]::-webkit-inner-spin-button{display:none}@media (max-width:600px){.md-datepicker-overlay{opacity:1}}.md-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;background:rgba(0,0,0,.6);transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity;will-change:opacity}.md-overlay.md-fixed,body>.md-overlay{position:fixed}.md-overlay-enter,.md-overlay-leave-active{opacity:0}.md-datepicker-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);display:flex;overflow:hidden;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;transform-origin:top left;transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-datepicker-dialog-leave-active{opacity:0}.md-datepicker-dialog-enter{opacity:0;transform:scale(.9)}.md-datepicker-dialog-enter .md-datepicker-body .md-datepicker-calendar{opacity:0;transform:translate3D(0,10%,0)}.md-datepicker-header{min-width:150px;padding:16px}.md-datepicker-header .md-datepicker-year-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:16px;font-weight:700;letter-spacing:.01em;line-height:24px}.md-datepicker-header .md-datepicker-date-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:32px;font-weight:900;letter-spacing:0;line-height:1.2em}.md-datepicker-header .md-datepicker-dayname{display:block}.md-datepicker-header .md-selected{opacity:1}.md-datepicker-body{width:320px;position:relative;overflow:hidden;transition:width .3s cubic-bezier(.25,.8,.25,1);will-change:width}.md-datepicker-body .md-button{margin:0}.md-datepicker-body-header{padding:8px;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;right:0;left:0;pointer-events:none}.md-datepicker-body-header:after,.md-datepicker-body-header:before{width:48px;height:48px;position:absolute;top:0;z-index:2;pointer-events:none;content:\\\" \\\"}.md-datepicker-body-header:after{left:0}.md-datepicker-body-header:before{right:0}.md-datepicker-body-header .md-button{pointer-events:auto;z-index:3}.md-datepicker-body-header-enter .md-button:first-child,.md-datepicker-body-header-leave-active .md-button:first-child{transform:translate3d(-150%,0,0)}.md-datepicker-body-header-enter .md-button:last-child,.md-datepicker-body-header-leave-active .md-button:last-child{transform:translate3d(150%,0,0)}.md-datepicker-body-content{overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1);will-change:height}.md-datepicker-panel{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-calendar.md-datepicker-view-enter,.md-datepicker-calendar.md-datepicker-view-leave-active{transform:translate3d(0,100%,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter{transform:translate3D(-100%,0,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter .md-datepicker-month-trigger{transform:translate3D(-30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter,.md-datepicker-calendar.md-previous .md-datepicker-month-leave-active{transform:translate3D(100%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter .md-datepicker-month-trigger{transform:translate3D(30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-leave-active{transform:translate3D(-100%,0,0)}.md-datepicker-month{top:8px;bottom:auto;flex-direction:column;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-month .md-datepicker-month-trigger{min-height:32px;margin:0 46px 10px;flex:1;border-radius:0;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}.md-datepicker-week{display:flex;align-items:center}.md-datepicker-week span{flex:1;font-size:12px;text-align:center}.md-datepicker-days{display:flex;flex-wrap:wrap}.md-datepicker-days .md-datepicker-day,.md-datepicker-days .md-datepicker-empty{margin:1px 0;display:flex;align-items:center;justify-content:center;flex:0 1 14.28571%}.md-datepicker-days .md-datepicker-day-button{width:30px;min-width:30px;height:30px;cursor:pointer;border-radius:30px;transition:.3s cubic-bezier(.4,0,.2,1);line-height:30px;text-align:center}.md-datepicker-days .md-datepicker-selected,.md-datepicker-days .md-datepicker-today{font-weight:700}.md-datepicker-days .md-datepicker-disabled{pointer-events:none}.md-datepicker-month-selector{padding:6px 8px 10px;flex-wrap:wrap;bottom:auto;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-month-selector.md-datepicker-view-enter,.md-datepicker-month-selector.md-datepicker-view-leave-active{transform:translate3d(0,-100%,0)}.md-datepicker-month-selector .md-datepicker-year-trigger{width:100%;margin:0 0 8px;flex:1 1 100%}.md-datepicker-month-button,.md-datepicker-year-button{height:36px;margin:3px 0;cursor:pointer;transition:.3s cubic-bezier(.4,0,.2,1);line-height:36px;font-weight:500;text-align:center;text-transform:uppercase}.md-datepicker-month-button{flex:1 1 33.3333%;border-radius:2px;font-size:13px}.md-datepicker-year-selector{flex-direction:column;overflow:auto;bottom:52px;border-bottom:1px solid}.md-datepicker-year-selector.md-datepicker-view-enter,.md-datepicker-year-selector.md-datepicker-view-leave-active{transform:translate3d(0,-100%,0)}.md-datepicker-year-selector .md-button{min-height:36px}.md-datepicker-year-button{font-size:16px}.md-datepicker-year-button.md-datepicker-selected{font-size:24px}@media (max-width:600px){.md-datepicker-dialog{flex-direction:column;top:50%!important;left:50%!important;transform:translate3D(-50%,-50%,0);transform-origin:center center}.md-datepicker-dialog-enter{transform:translate3D(-50%,-50%,0) scale(.9)}.md-datepicker-header{min-width:auto;padding:16px 20px}.md-datepicker-header .md-datepicker-dayname{display:inline-block}.md-datepicker-body{width:296px}.md-datepicker-month{padding:0 6px}}.md-popover.md-rendering{opacity:0;transition:none!important}.md-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);min-width:280px;max-width:80%;max-height:80%;margin:auto;display:flex;flex-flow:column;overflow:hidden;position:fixed;top:50%;left:50%;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;transform:translate(-50%,-50%);transform-origin:center center;transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-dialog>.md-dialog-actions,.md-dialog>.md-dialog-content,.md-dialog>.md-dialog-tabs,.md-dialog>.md-dialog-title{transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-dialog-enter-active,.md-dialog-leave-active{opacity:0;transform:translate(-50%,-50%) scale(.9)}.md-dialog-enter-active>.md-dialog-actions,.md-dialog-enter-active>.md-dialog-content,.md-dialog-enter-active>.md-dialog-tabs,.md-dialog-enter-active>.md-dialog-title,.md-dialog-leave-active>.md-dialog-actions,.md-dialog-leave-active>.md-dialog-content,.md-dialog-leave-active>.md-dialog-tabs,.md-dialog-leave-active>.md-dialog-title{opacity:0;transform:scale(.95) translate3D(0,10%,0)}.md-dialog-container{display:flex;flex-flow:column}.md-dialog-container,.md-dialog-container .md-tabs{flex:1}.md-dialog-container .md-tabs-navigation{padding:0 12px}@media (max-width:600px){.md-dialog-container .md-tab{padding:12px}.md-dialog-fullscreen{max-width:100%;max-height:100%;position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;transform:none}.md-dialog-fullscreen.md-dialog-enter{opacity:0;transform:translate3D(0,30%,0)}.md-dialog-fullscreen.md-dialog-leave-active{opacity:0;transform:translate3D(0,0,0)}}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;flex:1;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:flex;align-items:center;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);will-change:margin-left}.md-divider.md-inset{margin-left:72px}.md-drawer{position:absolute;top:0;bottom:0;left:0;z-index:7;transform:translate3D(-100%,0,0);transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform,box-shadow;width:400px;max-width:calc(100vw - 56px);overflow-x:hidden;overflow-y:auto}.md-drawer.md-right{right:0;left:auto;transform:translate3D(100%,0,0)}.md-drawer.md-fixed{position:fixed}.md-drawer.md-active{transform:translate3D(0,0,0);transition-timing-function:cubic-bezier(.4,0,.2,1)}.md-drawer.md-temporary+.md-app-container .md-content{border-left:none}.md-drawer.md-temporary.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-drawer.md-persistent:not(.md-active)+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini{border-right:1px solid;transform:translate3D(0,64px,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:transform,width;will-change:transform,box-shadow}.md-drawer.md-persistent-mini.md-active+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini:not(.md-active){width:70px!important;z-index:1;white-space:nowrap}.md-drawer.md-persistent-mini:not(.md-active) .md-toolbar{display:none}.md-drawer.md-persistent-mini:not(.md-active) .md-list-item-content{padding:0 23px}.md-drawer.md-persistent-mini.md-active{position:relative;transform:translate3D(0,0,0);white-space:normal}.md-drawer .md-list-item-container{font-size:14px;text-transform:none}@media (max-width:600px){.md-drawer{width:320px}.md-drawer.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}}@media (min-width:600px){.md-drawer:not(.md-temporary)~.md-overlay{background:none;pointer-events:none}.md-drawer.md-permanent{position:relative;transform:translate3D(0,0,0)}.md-drawer.md-permanent-full{z-index:3}.md-drawer.md-permanent-full .md-list{padding-top:0}.md-drawer.md-permanent-card,.md-drawer.md-permanent-clipped{z-index:1}.md-drawer.md-permanent-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;margin:8px;z-index:1}}@media (min-width:960px){.md-drawer.md-permanent-card{margin:16px}}@media (min-width:1280px){.md-drawer.md-permanent-card{margin:24px}}.md-elevation-0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.md-elevation-1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.md-elevation-2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-elevation-3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-elevation-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-elevation-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-elevation-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-elevation-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-elevation-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-elevation-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-elevation-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-elevation-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-elevation-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-elevation-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-elevation-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-elevation-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-elevation-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-elevation-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-elevation-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-elevation-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-elevation-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-elevation-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-elevation-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-elevation-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-elevation-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.md-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:420px;padding:36px;margin:0 auto;position:relative;transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1);will-change:transform,opacity}.md-empty-state.md-rounded{max-width:auto;border-radius:50%}.md-empty-state.md-rounded .md-empty-state-container{padding:40px;position:absolute;top:0;right:0;bottom:0;left:0}.md-empty-state .md-button{margin:.5em 0 0}.md-empty-state-enter{opacity:0;transform:scale(.87)}.md-empty-state-enter .md-empty-state-container{opacity:0}.md-empty-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:opacity .4s cubic-bezier(.4,0,.2,1);will-change:opacity}.md-empty-state-icon{width:160px;min-width:160px;height:160px;font-size:160px!important;margin:0}.md-empty-state-label{font-size:26px;font-weight:500;line-height:40px}.md-empty-state-description{margin:1em 0;font-size:16px;line-height:24px}.md-menu.md-select{display:flex;flex:1}.md-menu.md-select:not(.md-disabled) .md-icon,.md-menu.md-select:not(.md-disabled) .md-input{cursor:pointer;outline:none}.md-menu.md-select .md-input{flex:1}.md-menu.md-select .md-input-fake,.md-menu.md-select select{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-menu-content.md-select-menu{width:100%}.md-menu-content.md-select-menu.md-menu-content-enter{transform:translate3d(0,-8px,0) scaleY(.3)}.md-menu-content.md-select-menu .md-list{transition:opacity .3s cubic-bezier(.55,0,.55,.2)}.md-menu-content.md-select-menu .md-dense .md-ripple.md-list-item-content{font-size:14px}.md-menu{display:inline-block}.md-menu>.md-button{margin:0}.md-menu-content{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);min-width:112px;max-width:280px;max-height:35vh;display:flex;flex-direction:column;position:absolute;z-index:8;border-radius:2px;transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,top,left!important}.md-menu-content.md-shallow{position:fixed!important;top:-9999em!important;left:-9999em!important;pointer-events:none}.md-menu-content.md-menu-content-enter-active{opacity:1;transform:translateZ(0)}.md-menu-content.md-menu-content-leave-active{transition:opacity .4s cubic-bezier(.4,0,.2,1);opacity:0}.md-menu-content.md-menu-content-enter.md-menu-content-top-start{transform-origin:bottom left;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-top-end{transform-origin:bottom right;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-start{transform-origin:left top;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-end{transform-origin:left bottom;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-start{transform-origin:top left;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-end{transform-origin:top right;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-start{transform-origin:right top;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-end{transform-origin:right bottom;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter .md-list{opacity:0}.md-menu-content.md-menu-content-medium{min-width:168px}.md-menu-content.md-menu-content-big{min-width:224px}.md-menu-content.md-menu-content-huge{min-width:280px}.md-menu-content-container{flex:1;overflow:auto}.md-menu-content-container .md-list{transition:opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity;font-family:Roboto,sans-serif;text-transform:none;white-space:nowrap}@media (max-width:944px){.md-menu-content-container .md-list{font-size:14px}}.md-list{margin:0;padding:8px 0;display:flex;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list .md-divider{margin-top:-1px}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-optgroup .md-subheader{text-transform:uppercase}.md-optgroup .md-ripple.md-list-item-content{padding-left:24px}.md-file{display:flex;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-highlight-text{flex:1}.md-highlight-text-match{font-weight:500}.md-image{display:flex;justify-content:center;align-items:center}.md-layout{display:flex;flex-wrap:wrap}.md-layout .md-layout{flex:1}.md-layout .md-layout-nowrap{flex-wrap:nowrap}.md-layout.md-centered{width:100%;max-width:1200px;margin:0 auto}.md-layout.md-gutter{margin-right:-20px;margin-left:-20px}.md-layout.md-gutter>.md-layout-item{padding-right:20px;padding-left:20px}@media (max-width:1264px){.md-layout.md-gutter{margin-right:-12px;margin-left:-12px}.md-layout.md-gutter>.md-layout-item{padding-right:12px;padding-left:12px}}@media (max-width:944px){.md-layout.md-gutter{margin-right:-8px;margin-left:-8px}.md-layout.md-gutter>.md-layout-item{padding-right:8px;padding-left:8px}}@media (max-width:600px){.md-layout.md-gutter{margin-right:-4px;margin-left:-4px}.md-layout.md-gutter>.md-layout-item{padding-right:4px;padding-left:4px}}.md-layout.md-alignment-top-left{justify-content:flex-start;align-items:flex-start}.md-layout.md-alignment-top-center{justify-content:center;align-items:flex-start}.md-layout.md-alignment-top-right{justify-content:flex-end;align-items:flex-start}.md-layout.md-alignment-top-space-around{justify-content:space-around;align-items:flex-start}.md-layout.md-alignment-top-space-between{justify-content:space-between;align-items:flex-start}.md-layout.md-alignment-center-left{justify-content:flex-start;align-items:center}.md-layout.md-alignment-center,.md-layout.md-alignment-center-center{justify-content:center;align-items:center}.md-layout.md-alignment-center-right{justify-content:flex-end;align-items:center}.md-layout.md-alignment-center-space-around{justify-content:space-around;align-items:center}.md-layout.md-alignment-center-space-between{justify-content:space-between;align-items:center}.md-layout.md-alignment-bottom-left{justify-content:flex-start;align-items:flex-end}.md-layout.md-alignment-bottom-center{justify-content:center;align-items:flex-end}.md-layout.md-alignment-bottom-right{justify-content:flex-end;align-items:flex-end}.md-layout.md-alignment-bottom-space-around{justify-content:space-around;align-items:flex-end}.md-layout.md-alignment-bottom-space-between{justify-content:space-between;align-items:flex-end}.md-layout.md-alignment-space-around-left{justify-content:flex-start;align-items:space-around}.md-layout.md-alignment-space-around-center{justify-content:center;align-items:space-around}.md-layout.md-alignment-space-around-right{justify-content:flex-end;align-items:space-around}.md-layout.md-alignment-space-around-space-around{justify-content:space-around;align-items:space-around}.md-layout.md-alignment-space-around-space-between{justify-content:space-between;align-items:space-around}.md-layout.md-alignment-space-between-left{justify-content:flex-start;align-items:space-between}.md-layout.md-alignment-space-between-center{justify-content:center;align-items:space-between}.md-layout.md-alignment-space-between-right{justify-content:flex-end;align-items:space-between}.md-layout.md-alignment-space-between-space-around{justify-content:space-around;align-items:space-between}.md-layout.md-alignment-space-between-space-between{justify-content:space-between;align-items:space-between}.md-layout-item,.md-layout-item.md-size{flex:1 1}.md-layout-item.md-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}@media (max-width:1264px){.md-layout-item.md-medium-size{flex:1 1}.md-layout-item.md-medium-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-medium-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-medium-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-medium-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-medium-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-medium-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-medium-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-medium-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-medium-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-medium-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-medium-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-medium-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-medium-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-medium-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-medium-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-medium-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-medium-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-medium-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-medium-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-medium-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-medium-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-medium-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:944px){.md-layout-item.md-small-size{flex:1 1}.md-layout-item.md-small-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-small-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-small-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-small-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-small-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-small-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-small-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-small-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-small-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-small-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-small-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-small-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-small-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-small-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-small-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-small-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-small-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-small-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-small-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-small-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-small-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-small-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:600px){.md-layout-item.md-xsmall-size{flex:1 1}.md-layout-item.md-xsmall-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-xsmall-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-xsmall-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-xsmall-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-xsmall-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-xsmall-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-xsmall-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-xsmall-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-xsmall-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-xsmall-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-xsmall-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-xsmall-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-xsmall-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-xsmall-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-xsmall-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-xsmall-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-xsmall-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-xsmall-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-xsmall-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-xsmall-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-xsmall-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-xsmall-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}.md-hide{display:none}@media (max-width:1264px){.md-medium-hide{display:none}}@media (max-width:944px){.md-small-hide{display:none}}@media (max-width:600px){.md-xsmall-hide{display:none}}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-inset .md-list-item-content{padding-left:72px}.md-list-item .md-icon{margin:0;transition-property:color,margin-right}.md-list-item-container{width:100%;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item-container:not(.md-list-item-default):not([disabled]){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.md-list-item-container.md-button-clean:hover{opacity:1;text-decoration:none}.md-list-item-content{min-height:48px;padding:4px 16px;display:flex;align-items:center;justify-content:space-between;transition:padding .4s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-list.md-dense .md-list-item-content{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item-content>.md-avatar{margin-top:0;margin-bottom:0}.md-list.md-dense .md-list-item-content>.md-avatar:not(.md-small){width:36px;min-width:36px;height:36px}.md-list.md-dense .md-list-item-content>.md-avatar:first-child{margin-right:20px}.md-list.md-double-line .md-list-item-content{min-height:72px}.md-list.md-double-line.md-dense .md-list-item-content{min-height:60px}.md-list.md-triple-line .md-list-item-content{min-height:88px}.md-list.md-triple-line.md-dense .md-list-item-content{min-height:76px}.md-list-item-content .md-list-action{margin:0 -10px 0 0}.md-list-item-content .md-list-action:last-of-type{margin:0 -10px 0 16px}.md-list.md-triple-line .md-list-item-content .md-list-action:last-of-type{align-self:flex-start}.md-list-item-content>.md-icon:first-child{margin-right:32px}.md-list-item-content>.md-icon:last-child{margin-left:16px}.md-list-item-content>.md-checkbox,.md-list-item-content>.md-radio{margin:0}.md-list-item-content>.md-checkbox:first-child,.md-list-item-content>.md-radio:first-child{margin-right:36px}.md-list-item-content>.md-switch{margin:0}.md-list-item-content>.md-switch:first-child{margin-right:22px}.md-list-item-content>.md-avatar{margin:4px 0}.md-list-item-content>.md-avatar:first-child{margin-right:16px}.md-list-item-text{flex:1;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;line-height:1.25em;white-space:nowrap}.md-list.md-dense .md-list-item-text{font-size:13px}.md-list-item-text *{width:100%;margin:0;overflow:hidden;line-height:1.25em;text-overflow:ellipsis}.md-list-item-text :nth-child(2),.md-list-item-text :nth-child(3){font-size:14px}.md-list.md-dense .md-list-item-text *{font-size:13px}.md-list-item-expand{border-top:1px solid transparent;border-bottom:1px solid transparent;transition:border .4s cubic-bezier(.25,.8,.25,1);will-change:border}.md-list-item-expand.md-active .md-list-expand-icon{perspective:1000px;perspective-origin:50% 50%;transform:rotateX(180deg)}.md-list-item-expand.md-active .md-list-expand{opacity:1;transform:translate3D(0,0,0)}.md-list-item-expand .md-list-expand{height:0;opacity:0;overflow:hidden;transform:translate3D(0,-24px,0);transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:transform,opacity;will-change:transform,opacity}.md-list-item-expand .md-list-expand-icon{transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}@keyframes b{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(.5,0,.7,.5);transform:translateX(0)}60%{animation-timing-function:cubic-bezier(.3,.38,.55,.96);transform:translateX(83.67%)}to{transform:translateX(200.61%)}}@keyframes c{0%{transform:scaleX(.08)}35%{animation-timing-function:cubic-bezier(.33,.12,.79,1);transform:scaleX(.08)}70%{animation-timing-function:cubic-bezier(.06,.11,.6,1);transform:scaleX(.66)}to{transform:scaleX(.08)}}@keyframes d{0%{animation-timing-function:cubic-bezier(.15,0,.52,.41);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(.31,.28,.8,.73);transform:translateX(37.65%)}50%{animation-timing-function:cubic-bezier(.4,.63,.6,.9);transform:translateX(84.39%)}to{transform:translateX(160.28%)}}@keyframes e{0%{animation-timing-function:cubic-bezier(.15,0,.52,.41);transform:scaleX(.08)}20%{animation-timing-function:cubic-bezier(.31,.28,.8,.73);transform:scaleX(.46)}45%{animation-timing-function:cubic-bezier(.4,.63,.6,.9);transform:scaleX(.73)}to{transform:scaleX(.08)}}@keyframes f{to{transform:translate3D(-8px,0,0)}}.md-progress-bar{height:5px;overflow:hidden;position:relative;transform:translateZ(0) scaleY(1);transform-origin:top center;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-progress-bar.md-indeterminate .md-progress-bar-track,.md-progress-bar.md-query .md-progress-bar-track{left:-150%;animation:b 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-query .md-progress-bar-track:after{animation:c 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill,.md-progress-bar.md-query .md-progress-bar-fill{left:-55%;animation:d 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-query .md-progress-bar-fill:after{animation:e 2s infinite linear}.md-progress-bar.md-buffer .md-progress-bar-buffer,.md-progress-bar.md-buffer .md-progress-bar-fill,.md-progress-bar.md-buffer .md-progress-bar-track,.md-progress-bar.md-determinate .md-progress-bar-buffer,.md-progress-bar.md-determinate .md-progress-bar-fill,.md-progress-bar.md-determinate .md-progress-bar-track{transition:.25s cubic-bezier(.25,.8,.25,1)}.md-progress-bar.md-determinate .md-progress-bar-track{display:none}.md-progress-bar.md-buffer .md-progress-bar-buffer{border-top:4px dotted;animation:f .25s infinite linear}.md-progress-bar.md-query{transform:rotate(180deg)}.md-progress-bar-enter,.md-progress-bar-leave-active{opacity:.5;transform:translateZ(0) scaleY(0)}.md-progress-bar-buffer,.md-progress-bar-fill,.md-progress-bar-track{transform-origin:top left}.md-progress-bar-buffer,.md-progress-bar-buffer:after,.md-progress-bar-fill,.md-progress-bar-fill:after,.md-progress-bar-track,.md-progress-bar-track:after{width:100%;height:100%;position:absolute;will-change:transform}.md-progress-bar-buffer:after,.md-progress-bar-fill:after,.md-progress-bar-track:after{display:inline-block;left:0;content:\\\" \\\"}@keyframes g{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes h{0%{opacity:0;transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{transform:rotate(270deg) translateZ(0)}}.md-progress-spinner{display:inline-flex;position:relative}.md-progress-spinner.md-indeterminate{animation:g 2s linear infinite}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active{transition-duration:.4s}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter .md-progress-spinner-draw,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active .md-progress-spinner-draw{opacity:0;transform:scale(.1)}.md-progress-spinner.md-indeterminate .md-progress-spinner-circle{animation:4s infinite cubic-bezier(.25,.8,.25,1)}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active{transition-duration:2s}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active .md-progress-spinner-draw,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active .md-progress-spinner-draw{animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-progress-spinner.md-determinate .md-progress-spinner-draw{transition:none}.md-progress-spinner-draw{overflow:visible;transform:scale(1) rotate(-90deg);transform-origin:center;transition:.4s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform}.md-progress-spinner-circle{fill:none;transform-origin:center;transition:stroke-dashoffset .25s cubic-bezier(.25,.8,.25,1);will-change:stroke-dashoffset,stroke-dasharray,stroke-width,animation-name,r}.md-radio{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;min-width:20px;height:20px;position:relative;border:2px solid transparent;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:focus{outline:none}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;transform:translate(-50%,-50%)}.md-radio .md-radio-container:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;opacity:0;transform:scale3D(.38,.38,1);content:\\\" \\\"}.md-radio .md-radio-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%);border-radius:50%}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-snackbar{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);min-width:288px;max-width:568px;min-height:48px;max-height:80px;padding:14px 24px;display:flex;align-items:center;position:fixed;z-index:12;border-radius:2px;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,color,opacity,transform}.md-snackbar.md-position-center{margin:0 auto;right:0;bottom:0;left:0}.md-snackbar.md-position-center.md-snackbar-enter,.md-snackbar.md-position-center.md-snackbar-leave-active{transform:translate3D(0,calc(100% + 8px),0)}.md-snackbar.md-position-left{bottom:24px;left:24px}.md-snackbar.md-position-left.md-snackbar-enter,.md-snackbar.md-position-left.md-snackbar-leave-active{transform:translate3D(0,calc(100% + 32px),0)}.md-snackbar-enter,.md-snackbar-enter .md-snackbar-content,.md-snackbar-leave-active,.md-snackbar-leave-active .md-snackbar-content{opacity:0}.md-snackbar-content{flex:1;display:flex;align-items:center;justify-content:space-between;transition:opacity .38s cubic-bezier(.55,0,.55,.2)}.md-snackbar-content .md-button{min-width:0;margin:-8px -8px -8px 36px}.md-snackbar-content .md-button+.md-button{margin-left:16px}@media (max-width:600px){.md-snackbar{left:0;transform:none;border-radius:0}.md-snackbar-content .md-button{margin-left:12px}}.md-speed-dial{display:inline-flex;flex-direction:column}.md-speed-dial.md-top-left,.md-speed-dial.md-top-right{position:absolute;top:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-bottom-right{position:absolute;bottom:24px}.md-speed-dial.md-bottom-center,.md-speed-dial.md-top-center{position:absolute;left:50%;transform:translateX(-50%)}.md-speed-dial.md-top-center{top:24px}.md-speed-dial.md-bottom-center{bottom:24px}.md-speed-dial.md-bottom-right,.md-speed-dial.md-top-right{right:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-top-left{left:24px}.md-speed-dial.md-fixed{position:fixed}.md-speed-dial.md-direction-top.md-effect-fling .md-speed-dial-content .md-button{transform:translate3d(0,50%,0) scale(.8)}.md-speed-dial.md-direction-top .md-speed-dial-target{order:2;margin-bottom:0!important}.md-speed-dial.md-direction-top .md-speed-dial-content{order:1}.md-speed-dial.md-direction-top .md-speed-dial-content .md-button:first-child{margin-top:0}.md-speed-dial.md-direction-bottom.md-effect-fling .md-speed-dial-content .md-button{transform:translate3d(0,-50%,0) scale(.8)}.md-speed-dial.md-direction-bottom .md-speed-dial-target{order:1;margin-top:0!important}.md-speed-dial.md-direction-bottom .md-speed-dial-content{order:2}.md-speed-dial.md-direction-bottom .md-speed-dial-content .md-button:last-child{margin-bottom:0}.md-speed-dial.md-effect-scale .md-speed-dial-content .md-button{transform:scale(.3)}.md-speed-dial.md-active .md-morph-initial,.md-speed-dial.md-with-hover:hover .md-morph-initial{opacity:0;transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7)}.md-speed-dial.md-active .md-morph-final,.md-speed-dial.md-with-hover:hover .md-morph-final{opacity:1;transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1)}.md-speed-dial.md-active .md-speed-dial-content .md-button,.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button{pointer-events:auto;opacity:1;transform:translateZ(0) scale(1)!important;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"]{transition-delay:0s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"]{transition-delay:.1s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"]{transition-delay:.2s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"]{transition-delay:.3s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"]{transition-delay:.4s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"]{transition-delay:.5s}.md-speed-dial .md-button{margin:6px 0}.md-speed-dial .md-speed-dial-content .md-button{pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:opacity,transform}.md-speed-dial .md-morph-final,.md-speed-dial .md-morph-initial{position:absolute;top:50%;left:50%;transform:translate3D(-50%,-50%,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform;will-change:opacity,transform}.md-speed-dial .md-morph-final{opacity:0;transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg)}.md-speed-dial-target{z-index:1}.md-speed-dial-content{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2}.md-speed-dial-content,.md-steppers{transition:.3s cubic-bezier(.4,0,.2,1)}.md-steppers{transition-property:color,background-color;will-change:color,background-color}.md-steppers.md-no-transition *{transition:none!important}.md-steppers.md-dynamic-height .md-steppers-wrapper{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-steppers.md-horizontal.md-alternative .md-stepper-header{height:104px}.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-number:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-number:after{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-ripple{justify-content:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content{padding-top:16px;flex-direction:column}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:before{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-text{height:32px;justify-content:flex-start;text-align:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number{margin:0 8px 8px;position:relative}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{width:9999%;height:1px;position:absolute;top:50%;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after{left:calc(100% + 8px)}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{right:32px}.md-steppers.md-vertical .md-stepper-header{height:56px}.md-steppers.md-vertical .md-stepper-header .md-ripple{padding:0 24px 0 16px}.md-steppers.md-vertical .md-steppers-container{flex-direction:column}.md-steppers.md-vertical .md-button-content:after,.md-steppers.md-vertical .md-button-content:before{content:none}.md-steppers.md-vertical .md-stepper-icon,.md-steppers.md-vertical .md-stepper-number{margin-right:12px}.md-steppers.md-vertical .md-stepper{padding:0;position:relative}.md-steppers.md-vertical .md-stepper:last-of-type:after{content:none}.md-steppers.md-vertical .md-stepper:after{width:1px;position:absolute;top:48px;bottom:-8px;left:36px;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers-navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:flex}.md-steppers-navigation .md-stepper-header{width:auto}.md-stepper-header{width:100%;height:72px;margin:0;flex:1;border-radius:0;font-weight:400;text-align:left;text-transform:none}.md-stepper-header:first-of-type .md-button-content:before,.md-stepper-header:last-of-type .md-button-content:after{content:none}.md-stepper-header.md-active,.md-stepper-header.md-error{font-weight:500}.md-stepper-header .md-ripple{padding:0 16px;justify-content:flex-start}.md-stepper-header .md-button-content{padding:0 8px;display:flex;align-items:center;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-header .md-button-content:after,.md-stepper-header .md-button-content:before{height:1px;position:absolute;top:50%;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-stepper-header .md-button-content:after{width:9999%;left:100%}.md-stepper-header .md-button-content:before{width:16px;left:-16px}.md-stepper-header .md-button-content svg{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,fill;will-change:color,fill}.md-stepper-text{display:flex;flex-direction:column;justify-content:center;line-height:16px;white-space:nowrap}.md-stepper-icon,.md-stepper-number{margin-right:8px;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-number{width:24px;height:24px;border-radius:24px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:12px;line-height:24px;text-align:center}.md-stepper-done{width:20px;height:20px}.md-stepper-done,.md-stepper-editable{transform:translateY(-1px)}.md-stepper-editable{width:14px;height:14px}.md-stepper-description,.md-stepper-error{font-size:12px;font-weight:400;line-height:16px}.md-stepper-description{opacity:.54}.md-steppers-wrapper{overflow:hidden;transition:none;will-change:height}.md-steppers-container{display:flex;align-items:flex-start;flex-wrap:nowrap;transform:translateZ(0);transition:transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-stepper{width:100%;flex:1 0 100%;padding:16px 24px}@media (max-width:944px){.md-stepper{padding:8px 16px}}.md-steppers.md-vertical .md-stepper-content{padding:0 24px 0 60px;height:0;overflow:hidden;opacity:0;transform:translate3D(0,-20px,0);transition:.35s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform,height,padding-bottom;will-change:opacity,transform,height,padding-bottom}.md-steppers.md-vertical .md-stepper-content.md-active{height:auto;padding-bottom:40px;opacity:1;transform:translate3D(0,0,0)}.md-subheader{min-height:48px;padding:0 16px;display:flex;align-items:center;flex-flow:row wrap;font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-switch:not(.md-disabled),.md-switch:not(.md-disabled) .md-switch-label{cursor:pointer}.md-switch .md-switch-container{width:34px;min-width:34px;height:14px;margin:3px 0;display:flex;align-items:center;position:relative;border-radius:14px;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);width:20px;height:20px;position:relative;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb:before{width:48px;height:48px;top:50%;left:50%;z-index:5;content:\\\" \\\"}.md-switch .md-switch-thumb .md-ripple,.md-switch .md-switch-thumb:before{position:absolute;transform:translate(-50%,-50%)}.md-switch .md-switch-thumb .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;border-radius:50%}.md-switch .md-switch-thumb input{position:absolute;left:-999em}.md-switch .md-switch-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-switch.md-checked .md-switch-thumb{transform:translate3d(15px,0,0)}.md-switch.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-table{display:flex;flex-flow:column wrap;overflow-x:auto}.md-table .md-table-fixed-header{position:relative}.md-table .md-table-fixed-header-active{border-bottom:1px solid}.md-table .md-table-content{flex:1;overflow-x:auto;transition:height .3s cubic-bezier(.4,0,.2,1)}.md-table .md-table-empty{display:flex;align-items:center;justify-content:center}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table-head{padding:0;position:relative;font-size:12px;line-height:16px;text-align:left}.md-table-head:last-child .md-table-head-label{padding-right:24px}.md-table-head.md-numeric{text-align:right}.md-table-head.md-sortable:first-of-type .md-table-sortable-icon,.md-table-head.md-table-cell-selection+.md-sortable .md-table-sortable-icon{right:8px;left:auto}.md-table-head .md-icon{width:16px;height:16px;font-size:16px}.md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table-head .md-icon:first-child{margin-left:0}.md-table-head .md-icon:last-child{margin-right:0}.md-sortable{cursor:pointer}.md-sortable.md-sorted .md-table-sortable-icon,.md-sortable:hover .md-table-sortable-icon{opacity:1}.md-sortable.md-sorted-desc .md-table-sortable-icon{transform:translateY(-50%) rotate(180deg)}.md-table-head-container{height:56px;padding:14px 0}.md-table-head-container,.md-table-head-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-table-head-label{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;line-height:28px}.md-table-sortable-icon{position:absolute;top:50%;left:0;transition:.3s cubic-bezier(.4,0,.2,1);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:2;will-change:opacity,transform}.md-table-alternate-header-enter,.md-table-alternate-header-leave-active{opacity:0;transform:translate3d(0,-100%,0)}.md-table-alternate-header-enter-active{transition:.3s cubic-bezier(.4,0,.2,1)}.md-table-alternate-header-leave-active{transition:.2s cubic-bezier(.4,0,1,1)}.md-table-row{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:background-color,font-weight;will-change:background-color,font-weight}.md-table-row.md-has-selection{cursor:pointer}.md-table-row.md-selected-single{font-weight:500}tbody .md-table-row td{border-top:1px solid}.md-table-cell-selection{width:66px}.md-table-cell-selection+td .md-table-cell-container,.md-table-cell-selection+th .md-table-head-label{padding-left:0}.md-table-cell-selection .md-table-cell-container,.md-table-cell-selection .md-table-cell-label,.md-table-cell-selection .md-table-head-container,.md-table-cell-selection .md-table-head-label{padding:0;display:flex;align-items:center;justify-content:center;overflow:visible}.md-table-cell-selection .md-checkbox{margin:0}.md-table-cell-selection .md-checkbox .md-checkbox-container{width:18px;min-width:18px;height:18px}.md-table-cell-selection .md-checkbox .md-checkbox-container:after{top:-1px;left:4px}.md-table-toolbar{padding-left:24px}.md-table-toolbar .md-title{flex:1;font-size:20px}.md-toolbar,.md-toolbar-row{width:100%;min-height:64px;display:flex;align-items:center;align-content:center;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,background-color,box-shadow,transform,color,min-height;will-change:opacity,background-color,box-shadow,transform,color,min-height}.md-toolbar{padding:0 16px;flex-flow:row wrap;position:relative;z-index:2}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-large .md-toolbar-row,.md-toolbar.md-medium .md-toolbar-row{min-height:64px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-large{min-height:128px;align-content:inherit}.md-toolbar.md-large.md-dense{min-height:96px}.md-toolbar.md-large.md-dense .md-toolbar-row+.md-toolbar-row{min-height:32px}.md-toolbar .md-toolbar-offset{margin-left:56px}.md-toolbar .md-button,.md-toolbar .md-icon{z-index:1}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:24px}.md-toolbar .md-button+.md-button,.md-toolbar .md-button:last-child{margin-right:0}.md-toolbar .md-button:first-child{margin-left:0}.md-toolbar .md-display-1,.md-toolbar .md-display-2,.md-toolbar .md-title{margin:0;margin-left:8px;overflow:hidden;font-weight:400;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.md-toolbar .md-display-1{padding:12px 0}.md-toolbar .md-field{margin-top:2px;margin-bottom:14px;padding-top:16px}.md-toolbar-row{align-self:flex-start}.md-toolbar-section-end,.md-toolbar-section-start{display:flex;align-items:center;flex:1}.md-toolbar-section-start{justify-content:flex-start;order:0}.md-toolbar-section-end{justify-content:flex-end;order:10}@media (max-width:944px){.md-toolbar,.md-toolbar-row{min-height:48px}.md-toolbar{padding:0 8px}.md-toolbar .md-toolbar-offset{margin-left:48px}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:16px}}@media (max-width:600px){.md-toolbar,.md-toolbar-row{min-height:56px}}.md-table-empty-state{padding-left:24px}.md-table-cell{height:48px;position:relative;transition:.3s cubic-bezier(.4,0,.2,1);font-size:13px;line-height:18px}.md-table-cell.md-numeric{text-align:right}.md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table-cell-container{padding:6px 32px 6px 24px}.md-table-pagination{height:56px;display:flex;flex:1;align-items:center;justify-content:flex-end;border-top:1px solid;font-size:12px}.md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-pagination .md-field{width:48px;min-width:36px;margin:-16px 24px 0 32px}.md-table-pagination .md-field:after,.md-table-pagination .md-field:before{display:none}.md-table-pagination .md-field .md-select-value{font-size:13px}.md-menu-content.md-pagination-select{max-width:82px;min-width:56px;margin-top:5px}.md-tabs{display:flex;flex-direction:column}.md-tabs.md-no-transition *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-tabs.md-transparent .md-tabs-navigation{background-color:transparent!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .35s cubic-bezier(.25,.8,.25,1)}.md-tabs.md-alignment-left .md-tabs-navigation{justify-content:flex-start}.md-tabs.md-alignment-right .md-tabs-navigation{justify-content:flex-end}.md-tabs.md-alignment-centered .md-tabs-navigation,.md-tabs.md-alignment-fixed .md-tabs-navigation{justify-content:center}.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{max-width:264px;min-width:160px;flex:1}.md-toolbar .md-tabs{padding-left:48px}.md-tabs-navigation{display:flex;position:relative}.md-tabs-navigation .md-button{max-width:264px;min-width:72px;height:48px;margin:0;cursor:pointer;border-radius:0;font-size:13px}.md-tabs-navigation .md-button-content{position:static}.md-tabs-navigation .md-icon-label{height:72px}.md-tabs-navigation .md-icon-label .md-button-content{display:flex;flex-direction:column;justify-content:center}.md-tabs-navigation .md-icon-label .md-tab-icon+.md-tab-label{margin-top:10px}.md-tabs-navigation .md-ripple{padding:0 24px}.md-tabs-indicator{height:2px;position:absolute;bottom:0;left:0;transform:translateZ(0);will-change:left,right}.md-tabs-indicator.md-tabs-indicator-left{transition:left .3s cubic-bezier(.4,0,.2,1),right .35s cubic-bezier(.4,0,.2,1)}.md-tabs-indicator.md-tabs-indicator-right{transition:right .3s cubic-bezier(.4,0,.2,1),left .35s cubic-bezier(.4,0,.2,1)}.md-tabs-content{overflow:hidden;transition:none;will-change:height}.md-tabs-container{display:flex;align-items:flex-start;flex-wrap:nowrap;transform:translateZ(0);transition:transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-tab{width:100%;flex:1 0 100%;padding:16px}@media (max-width:944px){.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{min-width:72px}.md-toolbar .md-tabs{margin:0 -8px;padding-left:0}.md-tabs-navigation .md-ripple{padding:0 12px}.md-tab{padding:8px}}.md-tooltip{height:22px;padding:0 8px;position:fixed;z-index:8;pointer-events:none;border-radius:2px;transition:.15s cubic-bezier(0,0,.2,1);transition-property:opacity,transform;will-change:opacity,transform,top,left!important;font-size:10px;line-height:22px;text-transform:none;white-space:nowrap}.md-tooltip.md-tooltip-leave-active{transition-timing-function:cubic-bezier(.4,0,1,1)}.md-tooltip.md-tooltip-enter,.md-tooltip.md-tooltip-leave-active{opacity:0}.md-tooltip.md-tooltip-enter.md-tooltip-top,.md-tooltip.md-tooltip-leave-active.md-tooltip-top{transform:translate3d(0,4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-right,.md-tooltip.md-tooltip-leave-active.md-tooltip-right{transform:translate3d(-4px,0,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-bottom,.md-tooltip.md-tooltip-leave-active.md-tooltip-bottom{transform:translate3d(0,-4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-left,.md-tooltip.md-tooltip-leave-active.md-tooltip-left{transform:translate3d(4px,0,0) scale(.95)}@media (max-width:944px){.md-tooltip{height:32px;font-size:14px;line-height:32px}}\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/vue-material.min.css\"],\"names\":[],\"mappings\":\"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\",\"file\":\"vue-material.min.css\",\"sourcesContent\":[\"/*!\\n * vue-material v1.0.0-beta-7\\n * Made with <3 by marcosmoura 2017\\n * Released under the MIT License.\\n */html{height:100%;box-sizing:border-box;transition:background-color .3s cubic-bezier(.25,.8,.25,1)}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,Noto Sans,-apple-system,BlinkMacSystemFont,sans-serif}a:not(.md-button){transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:color,background-color,opacity}audio,canvas,embed,iframe,img,object,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar{width:8px;height:8px;border-radius:8px}.md-scrollbar::-webkit-scrollbar-thumb{border-radius:8px}.md-scrollbar::-webkit-scrollbar-button{display:none}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button){text-decoration:none}a:not(.md-button):hover{text-decoration:underline}button:focus{outline:none}.md-app{display:-webkit-box;display:flex;overflow:hidden;position:relative}.md-app.md-fixed .md-app-scroller{overflow:auto}.md-app.md-fixed-last,.md-app.md-flexible,.md-app.md-overlap,.md-app.md-reveal{-webkit-transform:translateZ(0);transform:translateZ(0)}.md-app.md-fixed-last .md-app-toolbar,.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar,.md-app.md-reveal .md-app-toolbar{position:absolute;top:0}.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar{min-height:0}.md-app.md-flexible .md-toolbar-row:first-child{z-index:2}.md-app.md-flexible .md-toolbar-row:last-child{position:fixed;bottom:0;z-index:1}.md-app.md-flexible .md-display-1{position:fixed}.md-app.md-overlap .md-app-toolbar{z-index:1}.md-app.md-overlap .md-app-content{margin:-64px 24px 24px;position:relative;z-index:2}.md-app-content{padding:16px}.md-app-content>p:first-child{margin-top:0}.md-app-content>p:last-child{margin-bottom:0}.md-app-container{display:-webkit-box;display:flex;overflow:auto;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition:padding-left .4s cubic-bezier(.4,0,.2,1);will-change:padding-left}.md-app-container,.md-app-scroller{-webkit-box-flex:1;flex:1}@media (max-width:944px){.md-app.md-overlap .md-app-content{margin:-64px 16px 16px}}@media (max-width:600px){.md-app.md-overlap .md-app-content{margin:-64px 8px 8px}}@media (min-width:600px){.md-app-drawer.md-permanent-card+.md-app-scroller .md-content{padding-left:0;border-left:none}.md-app-content{border-left:1px solid transparent}}.md-app-internal-drawer,.md-app-side-drawer .md-app-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-app-internal-drawer .md-app-scroller{overflow:auto}.md-no-elevation{box-shadow:none!important}.md-fixed-last .md-reveal-active,.md-flexible .md-reveal-active,.md-overlap .md-reveal-active,.md-reveal .md-reveal-active{-webkit-transform:translate3d(0,calc(100% + 10px),0);transform:translate3d(0,calc(100% + 10px),0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,-webkit-transform;transition-property:box-shadow,transform;transition-property:box-shadow,transform,-webkit-transform;will-change:height,box-shadow,transform}.md-overlap .md-app-toolbar{height:196px}.md-fixed-last-active{transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,-webkit-transform;transition-property:box-shadow,transform;transition-property:box-shadow,transform,-webkit-transform;will-change:height,box-shadow,transform}.md-overlap-off{z-index:3!important}.md-app-content{height:100%}.md-app-content .md-card{margin-right:16px;margin-left:16px;overflow:visible}.md-autocomplete .md-menu{width:100%;display:-webkit-box;display:flex}.md-autocomplete-loading{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;z-index:9}.md-field.md-inline.md-autocomplete-box{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);padding-top:2px;border-radius:2px}.md-field.md-inline.md-autocomplete-box.md-focused{z-index:11}.md-field.md-inline.md-autocomplete-box:after,.md-field.md-inline.md-autocomplete-box:before{display:none}.md-toolbar .md-field.md-inline.md-autocomplete-box{min-height:40px;height:40px;margin:0;box-shadow:none}.md-field.md-inline.md-autocomplete-box .md-menu{-webkit-box-align:center;align-items:center}.md-field.md-inline.md-autocomplete-box .md-input{padding-left:16px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box .md-input-action,.md-field.md-inline.md-autocomplete-box label{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-field.md-inline.md-autocomplete-box .md-input-action{right:8px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box label{margin-top:2px;left:16px}.md-autocomplete-box-content:after{height:6px;position:absolute;top:-6px;right:0;left:0;z-index:11;border-bottom:1px solid;content:\\\"\\\"}.md-avatar{width:40px;min-width:40px;height:40px;margin:auto;display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:24px;letter-spacing:-.05em;vertical-align:middle}.md-avatar.md-large{min-width:64px;min-height:64px;border-radius:64px;font-size:32px}.md-avatar.md-large .md-icon{font-size:40px!important}.md-avatar.md-small{width:24px;min-width:24px;height:24px;border-radius:24px;font-size:14px}.md-avatar.md-small .md-icon{font-size:16px!important}.md-avatar .md-icon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ripple{cursor:pointer;display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;border-radius:50%}.md-bottom-bar{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);width:100%;transition:background-color .5s cubic-bezier(.4,0,.2,1)}.md-bottom-bar>.md-ripple{display:-webkit-box;display:flex;flex-wrap:wrap}.md-bottom-bar.md-type-fixed{-webkit-box-pack:center;justify-content:center}.md-bottom-bar.md-type-fixed .md-bottom-bar-item{min-width:80px;max-width:168px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color;will-change:color}.md-bottom-bar.md-type-fixed .md-bottom-bar-item .md-bottom-bar-label{-webkit-transform:scale(.8571) translate3D(0,4px,0);transform:scale(.8571) translate3D(0,4px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-ripple{padding-top:6px}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-icon{-webkit-transform:translate3d(0,-2px,0);transform:translate3d(0,-2px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-label{-webkit-transform:translate3D(0,3px,0);transform:translate3D(0,3px,0)}.md-bottom-bar.md-type-shift{-webkit-box-pack:center;justify-content:center}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter-active{transition-duration:1.1s!important}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter{opacity:1}.md-bottom-bar.md-type-shift .md-bottom-bar-item{min-width:56px;max-width:96px;-webkit-box-flex:1;flex:1 1 32px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:padding,min-width,max-width,color,-webkit-box-flex;transition-property:padding,min-width,max-width,flex,color;transition-property:padding,min-width,max-width,flex,color,-webkit-box-flex;will-change:padding,min-width,max-width,flex,color}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-ripple{padding:16px}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-icon{-webkit-transform:translate3d(0,8px,0);transform:translate3d(0,8px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-label{opacity:0;-webkit-transform:scale(.7) translate3d(0,6px,0);transform:scale(.7) translate3d(0,6px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-webkit-box-flex:1;flex:1 1 72px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-ripple{padding:6px 0 10px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-icon{-webkit-transform:translateZ(0);transform:translateZ(0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-label{opacity:1;-webkit-transform:translate3d(0,3px,0);transform:translate3d(0,3px,0)}.md-bottom-bar .md-bottom-bar-item{height:56px;margin:0;-webkit-box-flex:1;flex:1;cursor:pointer;border-radius:0;font-size:14px;font-weight:400;line-height:1em;text-transform:none}.md-bottom-bar .md-bottom-bar-item .md-ripple{padding:8px 12px 10px;transition:padding .3s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-bottom-bar .md-bottom-bar-item .md-button-content{position:static;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center}.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-icon,.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-label{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-ripple{width:100%;height:100%;position:relative;z-index:4;overflow:hidden;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0)}.md-ripple-wave{position:absolute;z-index:1;pointer-events:none;background:currentColor;border-radius:50%;opacity:0;-webkit-transform:scale(2) translateZ(0);transform:scale(2) translateZ(0)}.md-ripple-wave.md-centered{top:50%;left:50%}.md-ripple-wave~*{position:relative;z-index:2}.md-ripple-enter-active{transition:.8s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform}.md-ripple-enter-active.md-centered{transition-duration:1.2s}.md-ripple-enter{opacity:.26;-webkit-transform:scale(.26) translateZ(0);transform:scale(.26) translateZ(0)}.md-button,.md-button-clean{margin:0;padding:0;display:inline-block;position:relative;overflow:hidden;outline:none;background:transparent;border:0;border-radius:0;transition:.4s cubic-bezier(.4,0,.2,1);font-family:inherit;line-height:normal;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button{min-width:88px;height:36px;margin:6px 8px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:2px;font-size:14px;font-weight:500}.md-button:active{outline:none}.md-button[disabled]{pointer-events:none}.md-button:not([disabled]){cursor:pointer}.md-button:not([disabled]).md-focused:before,.md-button:not([disabled]):active:before,.md-button:not([disabled]):hover:before{background-color:currentColor;opacity:.12}.md-button:not([disabled]).md-focused.md-accent:before,.md-button:not([disabled]).md-focused.md-primary:before,.md-button:not([disabled]):active:before{opacity:.2}.md-button:not([disabled]).md-ripple-off:active:before{opacity:.26}.md-button.md-plain.md-button.md-raised:not([disabled]){color:rgba(0,0,0,.87);background-color:#fff}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-font{color:rgba(0,0,0,.87)}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-image{fill:rgba(0,0,0,.87)}.md-button::-moz-focus-inner{padding:0;border:0}.md-button:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,opacity;content:\\\" \\\"}.md-button.md-dense{height:32px;font-size:13px}.md-button.md-raised:not([disabled]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]):active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]).md-ripple-off:active:before{opacity:.2}.md-button+.md-button{margin-left:0}.md-button .md-ripple{padding:0 8px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.md-button-spaced .md-ripple{padding:0 16px}.md-fab,.md-fab .md-ripple,.md-fab:before,.md-icon-button,.md-icon-button .md-ripple,.md-icon-button:before{border-radius:50%}.md-fab.md-dense .md-ripple-wave,.md-fab.md-mini .md-ripple-wave,.md-icon-button .md-ripple-wave{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px}.md-icon-button.md-dense{width:32px;min-width:32px;height:32px}.md-icon-button .md-ripple-enter-active{transition-duration:1.2s}.md-fab{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);width:56px;height:56px;min-width:0;overflow:hidden}.md-fab:active{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-fab.md-dense,.md-fab.md-mini{width:40px;height:40px}.md-fab.md-fab-top-left,.md-fab.md-fab-top-right{position:absolute;top:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right{position:absolute;bottom:24px}.md-fab.md-fab-bottom-center,.md-fab.md-fab-top-center{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:24px}.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-right{right:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-top-left{left:24px}.md-fab.md-fixed{position:fixed}.md-fab .md-ripple{padding:0}.md-button-content{position:relative;z-index:2}.md-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;z-index:1;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color}.md-card.md-with-hover{cursor:pointer;transition:background-color .3s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.25,.8,.25,1);will-change:background-color,box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card.md-expand-active .md-card-expand-trigger.md-icon-button{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card-header{padding:16px}.md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card-header:last-child{margin-bottom:8px}.md-card-header.md-card-header-flex{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.md-card-header+.md-card-content{padding-top:0}.md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card-header>img{border-radius:50%}.md-card-header .md-avatar,.md-card-header>img{margin-right:16px;float:left}.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-title{font-size:14px}.md-card-header .md-avatar~.md-subhead,.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-subhead,.md-card-header>img~.md-title{font-weight:500;line-height:20px}.md-card-header .md-button{margin:0}.md-card-header .md-button:last-child{margin-right:-4px}.md-card-header .md-button+.md-button{margin-left:8px}.md-card-header .md-card-header-text{-webkit-box-flex:1;flex:1}.md-card-header .md-card-media{width:80px;height:80px;margin-left:16px;-webkit-box-flex:0;flex:0 0 80px}.md-card-header .md-card-media.md-medium{width:120px;height:120px;-webkit-box-flex:0;flex:0 0 120px}.md-card-header .md-card-media.md-big{width:160px;height:160px;-webkit-box-flex:0;flex:0 0 160px}.md-card-media{position:relative}.md-card-media.md-ratio-16-9{overflow:hidden}.md-card-media.md-ratio-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-16-9 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media.md-ratio-4-3{overflow:hidden}.md-card-media.md-ratio-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-4-3 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media.md-ratio-1-1{overflow:hidden}.md-card-media.md-ratio-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-1-1 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media+.md-card-header{padding-top:24px}.md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card-media img{width:100%}.md-card-media-actions{padding:16px;display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.md-card-media-actions .md-card-media{max-width:240px;max-height:240px;-webkit-box-flex:1;flex:1}.md-card-media-actions .md-card-actions{margin-left:16px;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:start;justify-content:flex-start;-webkit-box-align:center;align-items:center}.md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card-media-cover{position:relative;color:#fff}.md-card-media-cover.md-solid .md-card-area{background-color:rgba(0,0,0,.54)}.md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card-media-cover .md-card-area,.md-card-media-cover .md-card-header{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card-media-cover .md-subhead{opacity:1}.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:#fff!important}.md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card-content:last-of-type{padding-bottom:24px}.md-card-expand{overflow:hidden}.md-card-expand .md-card-actions{position:relative;z-index:2}.md-card-expand .md-card-expand-content{position:relative;z-index:1}.md-card-expand-trigger.md-icon-button{transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card-expand-content{overflow:hidden;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition:.4s cubic-bezier(.4,0,.2,1);transition-property:opacity,margin-top;will-change:opacity,margin-top}.md-card-actions{padding:8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.md-card-actions.md-alignment-right{-webkit-box-pack:end;justify-content:flex-end}.md-card-actions.md-alignment-left{-webkit-box-pack:start;justify-content:flex-start}.md-card-actions.md-alignment-space-between{-webkit-box-pack:justify;justify-content:space-between}.md-card-actions .md-button{margin:0}.md-card-actions .md-button:first-child{margin-left:0}.md-card-actions .md-button:last-child{margin-right:0}.md-card-actions .md-button+.md-button{margin-left:4px}.md-checkbox{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid transparent;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:after,.md-checkbox .md-checkbox-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;top:0;left:5px;z-index:6;border:2px solid transparent;border-top:0;border-left:0;opacity:0;-webkit-transform:rotate(45deg) scale3D(.15,.15,1);transform:rotate(45deg) scale3D(.15,.15,1)}.md-checkbox .md-checkbox-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border-radius:50%}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;-webkit-transform:rotate(45deg) scale3D(1,1,1);transform:rotate(45deg) scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox.md-disabled.md-checked .md-checkbox-container{border-color:transparent!important}.md-checkbox.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-chips.md-field{padding-top:12px;flex-wrap:wrap}.md-chips.md-field.md-has-value label{top:-6px}.md-chips.md-field .md-chip{margin-bottom:4px}.md-chips.md-field .md-chip:last-of-type{margin-right:8px}.md-chips.md-field .md-input{min-width:128px}.md-field{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-webkit-box;display:flex;position:relative;font-family:inherit}.md-field:after,.md-field:before{position:absolute;bottom:0;right:0;left:0;z-index:1;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s,-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:border,opacity,transform;content:\\\" \\\"}.md-field:after{height:1px}.md-field:before{height:2px;z-index:2;opacity:0;-webkit-transform:scaleX(.12);transform:scaleX(.12)}.md-field label{position:absolute;top:23px;left:0;pointer-events:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;font-size:16px;line-height:20px}.md-field .md-input,.md-field .md-textarea{width:100%;height:32px;padding:0;display:block;-webkit-box-flex:1;flex:1;border:none;background:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,padding-top,color;font-family:inherit;font-size:1px;line-height:32px}.md-field .md-input[type=date],.md-field .md-textarea[type=date]{font-size:16px}.md-field .md-input[disabled],.md-field .md-textarea[disabled]{cursor:default}.md-field .md-input:focus,.md-field .md-textarea:focus{outline:none}.md-field .md-input::-webkit-input-placeholder,.md-field .md-textarea::-webkit-input-placeholder{font-size:16px;text-shadow:none;-webkit-text-fill-color:initial;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,color}.md-field .md-textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-field .md-count,.md-field .md-error,.md-field .md-helper-text{height:20px;position:absolute;bottom:-22px;font-size:12px;transition:.3s cubic-bezier(.4,0,.2,1)}.md-field .md-error{display:block!important;left:0;opacity:0;-webkit-transform:translate3d(0,-8px,0);transform:translate3d(0,-8px,0)}.md-field .md-count{right:0}.md-field .md-input-action{width:32px;min-width:32px;height:32px;margin:0;position:absolute;top:16px;right:0;transition:.4s cubic-bezier(.4,0,.2,1)}.md-field .md-input-action.md-input-action-enter-active,.md-field .md-input-action.md-input-action-leave-active{opacity:0}.md-field .md-input-action.md-input-action-enter-to{opacity:1}.md-field>.md-icon{margin:4px auto;position:relative;z-index:3;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-field>.md-icon:last-of-type:not(:first-child):after{display:none}.md-field>.md-icon:after{width:37px;height:4px;position:absolute;left:-1px;bottom:-5px;transition:.3s cubic-bezier(.4,0,.2,1);content:\\\"\\\"}.md-field>.md-icon~label{left:36px}.md-field>.md-icon~.md-file,.md-field>.md-icon~.md-input,.md-field>.md-icon~.md-textarea{margin-left:12px}.md-field+.md-has-textarea:not(.md-autogrow){margin-top:36px}.md-field.md-has-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-field.md-has-placeholder .md-input,.md-field.md-has-placeholder .md-textarea{font-size:16px}.md-field.md-has-textarea:not(.md-autogrow):after,.md-field.md-has-textarea:not(.md-autogrow):before{height:auto;pointer-events:none;top:0;bottom:0;-webkit-transform:none;transform:none;background:none!important;border:1px solid transparent;border-radius:3px}.md-field.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-has-textarea:not(.md-autogrow) label{top:16px;left:16px}.md-field.md-has-textarea:not(.md-autogrow) .md-textarea{min-height:100px;padding:0 16px;resize:vertical}.md-field.md-has-textarea:not(.md-autogrow)>.md-icon{position:absolute;top:6px;right:6px;z-index:3}.md-field.md-has-textarea:not(.md-autogrow) .md-count{right:6px;bottom:2px}.md-field.md-has-textarea:not(.md-autogrow) .md-clear{top:6px;right:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused label,.md-field.md-has-textarea:not(.md-autogrow).md-has-value label{top:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused .md-textarea,.md-field.md-has-textarea:not(.md-autogrow).md-has-value .md-textarea{padding-top:10px}.md-field.md-has-file:after,.md-field.md-has-file:before,.md-field.md-has-file label{left:36px}.md-field.md-has-file .md-input{margin-left:12px}.md-field.md-focused:before,.md-field.md-highlight:before{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1);transition:.3s cubic-bezier(.4,0,.2,1);transition-property:border,opacity,-webkit-transform;transition-property:border,opacity,transform;transition-property:border,opacity,transform,-webkit-transform}.md-field.md-focused label,.md-field.md-has-value label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-field.md-focused .md-input,.md-field.md-focused .md-textarea,.md-field.md-has-value .md-input,.md-field.md-has-value .md-textarea{font-size:16px}.md-field.md-inline label{pointer-events:none}.md-field.md-inline.md-focused label{top:23px;font-size:16px}.md-field.md-inline.md-has-value label{opacity:0}.md-field.md-disabled:after{background:0 100% repeat-x;background-size:4px 1px}.md-field.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px}.md-field.md-has-password .md-toggle-password svg{width:22px;height:22px}.md-field.md-clearable .md-input{padding-right:30px}@-webkit-keyframes a{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}30%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}@keyframes a{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}30%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}.md-field.md-invalid.md-has-value label:not(:focus){-webkit-animation:a .4s cubic-bezier(.4,0,.2,1) both;animation:a .4s cubic-bezier(.4,0,.2,1) both;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.md-field.md-invalid.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-invalid .md-error{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}.md-field.md-invalid .md-helper-text{opacity:0;-webkit-transform:translate3d(0,-8px,0);transform:translate3d(0,-8px,0)}.md-field.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-icon{width:24px;min-width:24px;height:24px;font-size:24px!important;margin:auto;display:-webkit-inline-box;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;font-size:48px!important}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;font-size:72px!important}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;font-size:96px!important}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;font-size:120px!important}.md-icon-image svg{height:100%;-webkit-box-flex:1;flex:1;transition:fill .4s cubic-bezier(.4,0,.2,1)}.md-icon{transition:color .4s cubic-bezier(.4,0,.2,1);direction:ltr;font-family:Material Icons;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-style:normal;letter-spacing:normal;line-height:1;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;white-space:nowrap;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-svg-loader{display:block}.md-svg-loader svg{width:100%}.md-chip{height:32px;padding:0 12px;display:inline-block;cursor:default;border-radius:32px;transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:background-color,color,opacity,box-shadow,-webkit-transform;transition-property:background-color,color,opacity,transform,box-shadow;transition-property:background-color,color,opacity,transform,box-shadow,-webkit-transform;will-change:background-color,color,opacity,transform,box-shadow;font-size:13px;line-height:32px;vertical-align:middle;white-space:nowrap}.md-chip:focus{outline:none}.md-chip.md-chip-enter-active,.md-chip.md-chip-leave-active{opacity:0;-webkit-transform:transformZ(0) scale(.8);transform:transformZ(0) scale(.8)}.md-chip.md-chip-enter-to{opacity:1;-webkit-transform:transformZ(0) scale(1);transform:transformZ(0) scale(1)}.md-chip.md-clickable:not(.md-disabled):active,.md-chip.md-deletable:not(.md-disabled):active,.md-chip.md-focused{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-chip.md-clickable{padding:0;cursor:pointer}.md-chip.md-clickable>.md-ripple{padding:0 12px}.md-chip.md-deletable{padding-right:32px;position:relative}.md-chip.md-deletable.md-clickable{padding-right:0}.md-chip.md-deletable.md-clickable>.md-ripple{padding-right:32px}.md-chip.md-disabled{cursor:default}.md-chip+.md-chip{margin-left:4px}.md-chip .md-button.md-input-action{width:18px;min-width:18px;height:18px;margin:0;position:absolute;top:50%;right:7px;z-index:5;-webkit-transform:translate3D(0,-50%,0);transform:translate3D(0,-50%,0);transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1);font-size:18px}.md-chip .md-button.md-input-action .md-ripple{padding:0}.md-chip .md-button.md-input-action .md-button-content{height:14px}.md-chip .md-button.md-input-action .md-icon{width:14px;min-width:14px;height:14px;font-size:14px!important;vertical-align:top}.md-chip .md-button.md-input-action .md-icon svg{transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1)}.md-datepicker-overlay{opacity:0}.md-datepicker .md-date-icon{cursor:pointer}.md-datepicker input[type=date]::-webkit-calendar-picker-indicator,.md-datepicker input[type=date]::-webkit-clear-button,.md-datepicker input[type=date]::-webkit-inner-spin-button{display:none}@media (max-width:600px){.md-datepicker-overlay{opacity:1}}.md-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;background:rgba(0,0,0,.6);transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity;will-change:opacity}.md-overlay.md-fixed,body>.md-overlay{position:fixed}.md-overlay-enter,.md-overlay-leave-active{opacity:0}.md-datepicker-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);display:-webkit-box;display:flex;overflow:hidden;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;-webkit-transform-origin:top left;transform-origin:top left;transition:opacity .2s cubic-bezier(.25,.8,.25,1),-webkit-transform .35s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1),-webkit-transform .35s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-datepicker-dialog-leave-active{opacity:0}.md-datepicker-dialog-enter{opacity:0;-webkit-transform:scale(.9);transform:scale(.9)}.md-datepicker-dialog-enter .md-datepicker-body .md-datepicker-calendar{opacity:0;-webkit-transform:translate3D(0,10%,0);transform:translate3D(0,10%,0)}.md-datepicker-header{min-width:150px;padding:16px}.md-datepicker-header .md-datepicker-year-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:16px;font-weight:700;letter-spacing:.01em;line-height:24px}.md-datepicker-header .md-datepicker-date-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:32px;font-weight:900;letter-spacing:0;line-height:1.2em}.md-datepicker-header .md-datepicker-dayname{display:block}.md-datepicker-header .md-selected{opacity:1}.md-datepicker-body{width:320px;position:relative;overflow:hidden;transition:width .3s cubic-bezier(.25,.8,.25,1);will-change:width}.md-datepicker-body .md-button{margin:0}.md-datepicker-body-header{padding:8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;position:absolute;top:0;right:0;left:0;pointer-events:none}.md-datepicker-body-header:after,.md-datepicker-body-header:before{width:48px;height:48px;position:absolute;top:0;z-index:2;pointer-events:none;content:\\\" \\\"}.md-datepicker-body-header:after{left:0}.md-datepicker-body-header:before{right:0}.md-datepicker-body-header .md-button{pointer-events:auto;z-index:3}.md-datepicker-body-header-enter .md-button:first-child,.md-datepicker-body-header-leave-active .md-button:first-child{-webkit-transform:translate3d(-150%,0,0);transform:translate3d(-150%,0,0)}.md-datepicker-body-header-enter .md-button:last-child,.md-datepicker-body-header-leave-active .md-button:last-child{-webkit-transform:translate3d(150%,0,0);transform:translate3d(150%,0,0)}.md-datepicker-body-content{overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1);will-change:height}.md-datepicker-panel{display:-webkit-box;display:flex;position:absolute;top:0;right:0;bottom:0;left:0;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-calendar.md-datepicker-view-enter,.md-datepicker-calendar.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter{-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter .md-datepicker-month-trigger{-webkit-transform:translate3D(-30%,0,0);transform:translate3D(-30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter,.md-datepicker-calendar.md-previous .md-datepicker-month-leave-active{-webkit-transform:translate3D(100%,0,0);transform:translate3D(100%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter .md-datepicker-month-trigger{-webkit-transform:translate3D(30%,0,0);transform:translate3D(30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-leave-active{-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0)}.md-datepicker-month{top:8px;bottom:auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-month .md-datepicker-month-trigger{min-height:32px;margin:0 46px 10px;-webkit-box-flex:1;flex:1;border-radius:0;transition:-webkit-transform .45s cubic-bezier(.4,0,.2,1);transition:transform .45s cubic-bezier(.4,0,.2,1);transition:transform .45s cubic-bezier(.4,0,.2,1),-webkit-transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}.md-datepicker-week{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.md-datepicker-week span{-webkit-box-flex:1;flex:1;font-size:12px;text-align:center}.md-datepicker-days{display:-webkit-box;display:flex;flex-wrap:wrap}.md-datepicker-days .md-datepicker-day,.md-datepicker-days .md-datepicker-empty{margin:1px 0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-flex:0;flex:0 1 14.28571%}.md-datepicker-days .md-datepicker-day-button{width:30px;min-width:30px;height:30px;cursor:pointer;border-radius:30px;transition:.3s cubic-bezier(.4,0,.2,1);line-height:30px;text-align:center}.md-datepicker-days .md-datepicker-selected,.md-datepicker-days .md-datepicker-today{font-weight:700}.md-datepicker-days .md-datepicker-disabled{pointer-events:none}.md-datepicker-month-selector{padding:6px 8px 10px;flex-wrap:wrap;bottom:auto;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-month-selector.md-datepicker-view-enter,.md-datepicker-month-selector.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-datepicker-month-selector .md-datepicker-year-trigger{width:100%;margin:0 0 8px;-webkit-box-flex:1;flex:1 1 100%}.md-datepicker-month-button,.md-datepicker-year-button{height:36px;margin:3px 0;cursor:pointer;transition:.3s cubic-bezier(.4,0,.2,1);line-height:36px;font-weight:500;text-align:center;text-transform:uppercase}.md-datepicker-month-button{-webkit-box-flex:1;flex:1 1 33.3333%;border-radius:2px;font-size:13px}.md-datepicker-year-selector{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;overflow:auto;bottom:52px;border-bottom:1px solid}.md-datepicker-year-selector.md-datepicker-view-enter,.md-datepicker-year-selector.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-datepicker-year-selector .md-button{min-height:36px}.md-datepicker-year-button{font-size:16px}.md-datepicker-year-button.md-datepicker-selected{font-size:24px}@media (max-width:600px){.md-datepicker-dialog{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;top:50%!important;left:50%!important;-webkit-transform:translate3D(-50%,-50%,0);transform:translate3D(-50%,-50%,0);-webkit-transform-origin:center center;transform-origin:center center}.md-datepicker-dialog-enter{-webkit-transform:translate3D(-50%,-50%,0) scale(.9);transform:translate3D(-50%,-50%,0) scale(.9)}.md-datepicker-header{min-width:auto;padding:16px 20px}.md-datepicker-header .md-datepicker-dayname{display:inline-block}.md-datepicker-body{width:296px}.md-datepicker-month{padding:0 6px}}.md-popover.md-rendering{opacity:0;transition:none!important}.md-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);min-width:280px;max-width:80%;max-height:80%;margin:auto;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:hidden;position:fixed;top:50%;left:50%;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center;transition:opacity .15s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1);transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-dialog>.md-dialog-actions,.md-dialog>.md-dialog-content,.md-dialog>.md-dialog-tabs,.md-dialog>.md-dialog-title{transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-dialog-enter-active,.md-dialog-leave-active{opacity:0;-webkit-transform:translate(-50%,-50%) scale(.9);transform:translate(-50%,-50%) scale(.9)}.md-dialog-enter-active>.md-dialog-actions,.md-dialog-enter-active>.md-dialog-content,.md-dialog-enter-active>.md-dialog-tabs,.md-dialog-enter-active>.md-dialog-title,.md-dialog-leave-active>.md-dialog-actions,.md-dialog-leave-active>.md-dialog-content,.md-dialog-leave-active>.md-dialog-tabs,.md-dialog-leave-active>.md-dialog-title{opacity:0;-webkit-transform:scale(.95) translate3D(0,10%,0);transform:scale(.95) translate3D(0,10%,0)}.md-dialog-container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column}.md-dialog-container,.md-dialog-container .md-tabs{-webkit-box-flex:1;flex:1}.md-dialog-container .md-tabs-navigation{padding:0 12px}@media (max-width:600px){.md-dialog-container .md-tab{padding:12px}.md-dialog-fullscreen{max-width:100%;max-height:100%;position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;-webkit-transform:none;transform:none}.md-dialog-fullscreen.md-dialog-enter{opacity:0;-webkit-transform:translate3D(0,30%,0);transform:translate3D(0,30%,0)}.md-dialog-fullscreen.md-dialog-leave-active{opacity:0;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-webkit-box-flex:1;flex:1;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);will-change:margin-left}.md-divider.md-inset{margin-left:72px}.md-drawer{position:absolute;top:0;bottom:0;left:0;z-index:7;-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0);transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform,box-shadow;width:400px;max-width:calc(100vw - 56px);overflow-x:hidden;overflow-y:auto}.md-drawer.md-right{right:0;left:auto;-webkit-transform:translate3D(100%,0,0);transform:translate3D(100%,0,0)}.md-drawer.md-fixed{position:fixed}.md-drawer.md-active{-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition-timing-function:cubic-bezier(.4,0,.2,1)}.md-drawer.md-temporary+.md-app-container .md-content{border-left:none}.md-drawer.md-temporary.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-drawer.md-persistent:not(.md-active)+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini{border-right:1px solid;-webkit-transform:translate3D(0,64px,0);transform:translate3D(0,64px,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:width,-webkit-transform;transition-property:transform,width;transition-property:transform,width,-webkit-transform;will-change:transform,box-shadow}.md-drawer.md-persistent-mini.md-active+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini:not(.md-active){width:70px!important;z-index:1;white-space:nowrap}.md-drawer.md-persistent-mini:not(.md-active) .md-toolbar{display:none}.md-drawer.md-persistent-mini:not(.md-active) .md-list-item-content{padding:0 23px}.md-drawer.md-persistent-mini.md-active{position:relative;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);white-space:normal}.md-drawer .md-list-item-container{font-size:14px;text-transform:none}@media (max-width:600px){.md-drawer{width:320px}.md-drawer.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}}@media (min-width:600px){.md-drawer:not(.md-temporary)~.md-overlay{background:none;pointer-events:none}.md-drawer.md-permanent{position:relative;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-drawer.md-permanent-full{z-index:3}.md-drawer.md-permanent-full .md-list{padding-top:0}.md-drawer.md-permanent-card,.md-drawer.md-permanent-clipped{z-index:1}.md-drawer.md-permanent-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;margin:8px;z-index:1}}@media (min-width:960px){.md-drawer.md-permanent-card{margin:16px}}@media (min-width:1280px){.md-drawer.md-permanent-card{margin:24px}}.md-elevation-0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.md-elevation-1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.md-elevation-2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-elevation-3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-elevation-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-elevation-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-elevation-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-elevation-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-elevation-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-elevation-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-elevation-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-elevation-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-elevation-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-elevation-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-elevation-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-elevation-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-elevation-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-elevation-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-elevation-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-elevation-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-elevation-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-elevation-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-elevation-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-elevation-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-elevation-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.md-empty-state{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;text-align:center;max-width:420px;padding:36px;margin:0 auto;position:relative;transition:opacity .15s cubic-bezier(0,0,.2,1),-webkit-transform .3s cubic-bezier(0,0,.2,1);transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1);transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1),-webkit-transform .3s cubic-bezier(0,0,.2,1);will-change:transform,opacity}.md-empty-state.md-rounded{max-width:auto;border-radius:50%}.md-empty-state.md-rounded .md-empty-state-container{padding:40px;position:absolute;top:0;right:0;bottom:0;left:0}.md-empty-state .md-button{margin:.5em 0 0}.md-empty-state-enter{opacity:0;-webkit-transform:scale(.87);transform:scale(.87)}.md-empty-state-enter .md-empty-state-container{opacity:0}.md-empty-state-container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;text-align:center;transition:opacity .4s cubic-bezier(.4,0,.2,1);will-change:opacity}.md-empty-state-icon{width:160px;min-width:160px;height:160px;font-size:160px!important;margin:0}.md-empty-state-label{font-size:26px;font-weight:500;line-height:40px}.md-empty-state-description{margin:1em 0;font-size:16px;line-height:24px}.md-menu.md-select{display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1}.md-menu.md-select:not(.md-disabled) .md-icon,.md-menu.md-select:not(.md-disabled) .md-input{cursor:pointer;outline:none}.md-menu.md-select .md-input{-webkit-box-flex:1;flex:1}.md-menu.md-select .md-input-fake,.md-menu.md-select select{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-menu-content.md-select-menu{width:100%}.md-menu-content.md-select-menu.md-menu-content-enter{-webkit-transform:translate3d(0,-8px,0) scaleY(.3);transform:translate3d(0,-8px,0) scaleY(.3)}.md-menu-content.md-select-menu .md-list{transition:opacity .3s cubic-bezier(.55,0,.55,.2)}.md-menu-content.md-select-menu .md-dense .md-ripple.md-list-item-content{font-size:14px}.md-menu{display:inline-block}.md-menu>.md-button{margin:0}.md-menu-content{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);min-width:112px;max-width:280px;max-height:35vh;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:8;border-radius:2px;transition:opacity .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1);transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,top,left!important}.md-menu-content.md-shallow{position:fixed!important;top:-9999em!important;left:-9999em!important;pointer-events:none}.md-menu-content.md-menu-content-enter-active{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}.md-menu-content.md-menu-content-leave-active{transition:opacity .4s cubic-bezier(.4,0,.2,1);opacity:0}.md-menu-content.md-menu-content-enter.md-menu-content-top-start{-webkit-transform-origin:bottom left;transform-origin:bottom left;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-top-end{-webkit-transform-origin:bottom right;transform-origin:bottom right;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-start{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-end{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-start{-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-end{-webkit-transform-origin:top right;transform-origin:top right;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-start{-webkit-transform-origin:right top;transform-origin:right top;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-end{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter .md-list{opacity:0}.md-menu-content.md-menu-content-medium{min-width:168px}.md-menu-content.md-menu-content-big{min-width:224px}.md-menu-content.md-menu-content-huge{min-width:280px}.md-menu-content-container{-webkit-box-flex:1;flex:1;overflow:auto}.md-menu-content-container .md-list{transition:opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity;font-family:Roboto,sans-serif;text-transform:none;white-space:nowrap}@media (max-width:944px){.md-menu-content-container .md-list{font-size:14px}}.md-list{margin:0;padding:8px 0;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list .md-divider{margin-top:-1px}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-optgroup .md-subheader{text-transform:uppercase}.md-optgroup .md-ripple.md-list-item-content{padding-left:24px}.md-file{display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-highlight-text{-webkit-box-flex:1;flex:1}.md-highlight-text-match{font-weight:500}.md-image{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.md-layout{display:flex;flex-wrap:wrap}.md-layout .md-layout{flex:1}.md-layout .md-layout-nowrap{flex-wrap:nowrap}.md-layout.md-centered{width:100%;max-width:1200px;margin:0 auto}.md-layout.md-gutter{margin-right:-20px;margin-left:-20px}.md-layout.md-gutter>.md-layout-item{padding-right:20px;padding-left:20px}@media (max-width:1264px){.md-layout.md-gutter{margin-right:-12px;margin-left:-12px}.md-layout.md-gutter>.md-layout-item{padding-right:12px;padding-left:12px}}@media (max-width:944px){.md-layout.md-gutter{margin-right:-8px;margin-left:-8px}.md-layout.md-gutter>.md-layout-item{padding-right:8px;padding-left:8px}}@media (max-width:600px){.md-layout.md-gutter{margin-right:-4px;margin-left:-4px}.md-layout.md-gutter>.md-layout-item{padding-right:4px;padding-left:4px}}.md-layout.md-alignment-top-left{justify-content:flex-start;align-items:flex-start}.md-layout.md-alignment-top-center{justify-content:center;align-items:flex-start}.md-layout.md-alignment-top-right{justify-content:flex-end;align-items:flex-start}.md-layout.md-alignment-top-space-around{justify-content:space-around;align-items:flex-start}.md-layout.md-alignment-top-space-between{justify-content:space-between;align-items:flex-start}.md-layout.md-alignment-center-left{justify-content:flex-start;align-items:center}.md-layout.md-alignment-center,.md-layout.md-alignment-center-center{justify-content:center;align-items:center}.md-layout.md-alignment-center-right{justify-content:flex-end;align-items:center}.md-layout.md-alignment-center-space-around{justify-content:space-around;align-items:center}.md-layout.md-alignment-center-space-between{justify-content:space-between;align-items:center}.md-layout.md-alignment-bottom-left{justify-content:flex-start;align-items:flex-end}.md-layout.md-alignment-bottom-center{justify-content:center;align-items:flex-end}.md-layout.md-alignment-bottom-right{justify-content:flex-end;align-items:flex-end}.md-layout.md-alignment-bottom-space-around{justify-content:space-around;align-items:flex-end}.md-layout.md-alignment-bottom-space-between{justify-content:space-between;align-items:flex-end}.md-layout.md-alignment-space-around-left{justify-content:flex-start;align-items:space-around}.md-layout.md-alignment-space-around-center{justify-content:center;align-items:space-around}.md-layout.md-alignment-space-around-right{justify-content:flex-end;align-items:space-around}.md-layout.md-alignment-space-around-space-around{justify-content:space-around;align-items:space-around}.md-layout.md-alignment-space-around-space-between{justify-content:space-between;align-items:space-around}.md-layout.md-alignment-space-between-left{justify-content:flex-start;align-items:space-between}.md-layout.md-alignment-space-between-center{justify-content:center;align-items:space-between}.md-layout.md-alignment-space-between-right{justify-content:flex-end;align-items:space-between}.md-layout.md-alignment-space-between-space-around{justify-content:space-around;align-items:space-between}.md-layout.md-alignment-space-between-space-between{justify-content:space-between;align-items:space-between}.md-layout-item,.md-layout-item.md-size{flex:1 1}.md-layout-item.md-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}@media (max-width:1264px){.md-layout-item.md-medium-size{flex:1 1}.md-layout-item.md-medium-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-medium-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-medium-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-medium-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-medium-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-medium-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-medium-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-medium-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-medium-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-medium-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-medium-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-medium-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-medium-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-medium-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-medium-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-medium-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-medium-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-medium-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-medium-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-medium-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-medium-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-medium-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:944px){.md-layout-item.md-small-size{flex:1 1}.md-layout-item.md-small-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-small-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-small-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-small-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-small-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-small-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-small-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-small-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-small-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-small-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-small-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-small-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-small-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-small-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-small-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-small-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-small-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-small-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-small-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-small-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-small-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-small-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:600px){.md-layout-item.md-xsmall-size{flex:1 1}.md-layout-item.md-xsmall-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-xsmall-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-xsmall-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-xsmall-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-xsmall-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-xsmall-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-xsmall-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-xsmall-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-xsmall-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-xsmall-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-xsmall-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-xsmall-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-xsmall-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-xsmall-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-xsmall-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-xsmall-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-xsmall-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-xsmall-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-xsmall-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-xsmall-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-xsmall-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-xsmall-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}.md-hide{display:none}@media (max-width:1264px){.md-medium-hide{display:none}}@media (max-width:944px){.md-small-hide{display:none}}@media (max-width:600px){.md-xsmall-hide{display:none}}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-inset .md-list-item-content{padding-left:72px}.md-list-item .md-icon{margin:0;transition-property:color,margin-right}.md-list-item-container{width:100%;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item-container:not(.md-list-item-default):not([disabled]){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.md-list-item-container.md-button-clean:hover{opacity:1;text-decoration:none}.md-list-item-content{min-height:48px;padding:4px 16px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;transition:padding .4s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-list.md-dense .md-list-item-content{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item-content>.md-avatar{margin-top:0;margin-bottom:0}.md-list.md-dense .md-list-item-content>.md-avatar:not(.md-small){width:36px;min-width:36px;height:36px}.md-list.md-dense .md-list-item-content>.md-avatar:first-child{margin-right:20px}.md-list.md-double-line .md-list-item-content{min-height:72px}.md-list.md-double-line.md-dense .md-list-item-content{min-height:60px}.md-list.md-triple-line .md-list-item-content{min-height:88px}.md-list.md-triple-line.md-dense .md-list-item-content{min-height:76px}.md-list-item-content .md-list-action{margin:0 -10px 0 0}.md-list-item-content .md-list-action:last-of-type{margin:0 -10px 0 16px}.md-list.md-triple-line .md-list-item-content .md-list-action:last-of-type{align-self:flex-start}.md-list-item-content>.md-icon:first-child{margin-right:32px}.md-list-item-content>.md-icon:last-child{margin-left:16px}.md-list-item-content>.md-checkbox,.md-list-item-content>.md-radio{margin:0}.md-list-item-content>.md-checkbox:first-child,.md-list-item-content>.md-radio:first-child{margin-right:36px}.md-list-item-content>.md-switch{margin:0}.md-list-item-content>.md-switch:first-child{margin-right:22px}.md-list-item-content>.md-avatar{margin:4px 0}.md-list-item-content>.md-avatar:first-child{margin-right:16px}.md-list-item-text{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:start;align-items:flex-start;overflow:hidden;line-height:1.25em;white-space:nowrap}.md-list.md-dense .md-list-item-text{font-size:13px}.md-list-item-text *{width:100%;margin:0;overflow:hidden;line-height:1.25em;text-overflow:ellipsis}.md-list-item-text :nth-child(2),.md-list-item-text :nth-child(3){font-size:14px}.md-list.md-dense .md-list-item-text *{font-size:13px}.md-list-item-expand{border-top:1px solid transparent;border-bottom:1px solid transparent;transition:border .4s cubic-bezier(.25,.8,.25,1);will-change:border}.md-list-item-expand.md-active .md-list-expand-icon{-webkit-perspective:1000px;perspective:1000px;-webkit-perspective-origin:50% 50%;perspective-origin:50% 50%;-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}.md-list-item-expand.md-active .md-list-expand{opacity:1;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-list-item-expand .md-list-expand{height:0;opacity:0;overflow:hidden;-webkit-transform:translate3D(0,-24px,0);transform:translate3D(0,-24px,0);transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-list-item-expand .md-list-expand-icon{transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}@-webkit-keyframes b{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(.5,0,.7,.5);animation-timing-function:cubic-bezier(.5,0,.7,.5);-webkit-transform:translateX(0);transform:translateX(0)}60%{-webkit-animation-timing-function:cubic-bezier(.3,.38,.55,.96);animation-timing-function:cubic-bezier(.3,.38,.55,.96);-webkit-transform:translateX(83.67%);transform:translateX(83.67%)}to{-webkit-transform:translateX(200.61%);transform:translateX(200.61%)}}@keyframes b{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(.5,0,.7,.5);animation-timing-function:cubic-bezier(.5,0,.7,.5);-webkit-transform:translateX(0);transform:translateX(0)}60%{-webkit-animation-timing-function:cubic-bezier(.3,.38,.55,.96);animation-timing-function:cubic-bezier(.3,.38,.55,.96);-webkit-transform:translateX(83.67%);transform:translateX(83.67%)}to{-webkit-transform:translateX(200.61%);transform:translateX(200.61%)}}@-webkit-keyframes c{0%{-webkit-transform:scaleX(.08);transform:scaleX(.08)}35%{-webkit-animation-timing-function:cubic-bezier(.33,.12,.79,1);animation-timing-function:cubic-bezier(.33,.12,.79,1);-webkit-transform:scaleX(.08);transform:scaleX(.08)}70%{-webkit-animation-timing-function:cubic-bezier(.06,.11,.6,1);animation-timing-function:cubic-bezier(.06,.11,.6,1);-webkit-transform:scaleX(.66);transform:scaleX(.66)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@keyframes c{0%{-webkit-transform:scaleX(.08);transform:scaleX(.08)}35%{-webkit-animation-timing-function:cubic-bezier(.33,.12,.79,1);animation-timing-function:cubic-bezier(.33,.12,.79,1);-webkit-transform:scaleX(.08);transform:scaleX(.08)}70%{-webkit-animation-timing-function:cubic-bezier(.06,.11,.6,1);animation-timing-function:cubic-bezier(.06,.11,.6,1);-webkit-transform:scaleX(.66);transform:scaleX(.66)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@-webkit-keyframes d{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:translateX(37.65%);transform:translateX(37.65%)}50%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:translateX(84.39%);transform:translateX(84.39%)}to{-webkit-transform:translateX(160.28%);transform:translateX(160.28%)}}@keyframes d{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:translateX(37.65%);transform:translateX(37.65%)}50%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:translateX(84.39%);transform:translateX(84.39%)}to{-webkit-transform:translateX(160.28%);transform:translateX(160.28%)}}@-webkit-keyframes e{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:scaleX(.08);transform:scaleX(.08)}20%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:scaleX(.46);transform:scaleX(.46)}45%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:scaleX(.73);transform:scaleX(.73)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@keyframes e{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:scaleX(.08);transform:scaleX(.08)}20%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:scaleX(.46);transform:scaleX(.46)}45%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:scaleX(.73);transform:scaleX(.73)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@-webkit-keyframes f{to{-webkit-transform:translate3D(-8px,0,0);transform:translate3D(-8px,0,0)}}@keyframes f{to{-webkit-transform:translate3D(-8px,0,0);transform:translate3D(-8px,0,0)}}.md-progress-bar{height:5px;overflow:hidden;position:relative;-webkit-transform:translateZ(0) scaleY(1);transform:translateZ(0) scaleY(1);-webkit-transform-origin:top center;transform-origin:top center;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-progress-bar.md-indeterminate .md-progress-bar-track,.md-progress-bar.md-query .md-progress-bar-track{left:-150%;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-query .md-progress-bar-track:after{-webkit-animation:c 2s infinite linear;animation:c 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill,.md-progress-bar.md-query .md-progress-bar-fill{left:-55%;-webkit-animation:d 2s infinite linear;animation:d 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-query .md-progress-bar-fill:after{-webkit-animation:e 2s infinite linear;animation:e 2s infinite linear}.md-progress-bar.md-buffer .md-progress-bar-buffer,.md-progress-bar.md-buffer .md-progress-bar-fill,.md-progress-bar.md-buffer .md-progress-bar-track,.md-progress-bar.md-determinate .md-progress-bar-buffer,.md-progress-bar.md-determinate .md-progress-bar-fill,.md-progress-bar.md-determinate .md-progress-bar-track{transition:.25s cubic-bezier(.25,.8,.25,1)}.md-progress-bar.md-determinate .md-progress-bar-track{display:none}.md-progress-bar.md-buffer .md-progress-bar-buffer{border-top:4px dotted;-webkit-animation:f .25s infinite linear;animation:f .25s infinite linear}.md-progress-bar.md-query{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.md-progress-bar-enter,.md-progress-bar-leave-active{opacity:.5;-webkit-transform:translateZ(0) scaleY(0);transform:translateZ(0) scaleY(0)}.md-progress-bar-buffer,.md-progress-bar-fill,.md-progress-bar-track{-webkit-transform-origin:top left;transform-origin:top left}.md-progress-bar-buffer,.md-progress-bar-buffer:after,.md-progress-bar-fill,.md-progress-bar-fill:after,.md-progress-bar-track,.md-progress-bar-track:after{width:100%;height:100%;position:absolute;will-change:transform}.md-progress-bar-buffer:after,.md-progress-bar-fill:after,.md-progress-bar-track:after{display:inline-block;left:0;content:\\\" \\\"}@-webkit-keyframes g{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes g{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes h{0%{opacity:0;-webkit-transform:rotate(-90deg) translateZ(0);transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{-webkit-transform:rotate(270deg) translateZ(0);transform:rotate(270deg) translateZ(0)}}@keyframes h{0%{opacity:0;-webkit-transform:rotate(-90deg) translateZ(0);transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{-webkit-transform:rotate(270deg) translateZ(0);transform:rotate(270deg) translateZ(0)}}.md-progress-spinner{display:-webkit-inline-box;display:inline-flex;position:relative}.md-progress-spinner.md-indeterminate{-webkit-animation:g 2s linear infinite;animation:g 2s linear infinite}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active{transition-duration:.4s}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter .md-progress-spinner-draw,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active .md-progress-spinner-draw{opacity:0;-webkit-transform:scale(.1);transform:scale(.1)}.md-progress-spinner.md-indeterminate .md-progress-spinner-circle{-webkit-animation:4s infinite cubic-bezier(.25,.8,.25,1);animation:4s infinite cubic-bezier(.25,.8,.25,1)}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active{transition-duration:2s}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active .md-progress-spinner-draw,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active .md-progress-spinner-draw{-webkit-animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards;animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-progress-spinner.md-determinate .md-progress-spinner-draw{transition:none}.md-progress-spinner-draw{overflow:visible;-webkit-transform:scale(1) rotate(-90deg);transform:scale(1) rotate(-90deg);-webkit-transform-origin:center;transform-origin:center;transition:.4s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform}.md-progress-spinner-circle{fill:none;-webkit-transform-origin:center;transform-origin:center;transition:stroke-dashoffset .25s cubic-bezier(.25,.8,.25,1);will-change:stroke-dashoffset,stroke-dasharray,stroke-width,animation-name,r}.md-radio{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;min-width:20px;height:20px;position:relative;border:2px solid transparent;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:focus{outline:none}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-radio .md-radio-container:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;opacity:0;-webkit-transform:scale3D(.38,.38,1);transform:scale3D(.38,.38,1);content:\\\" \\\"}.md-radio .md-radio-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border-radius:50%}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;-webkit-transform:scale3D(1,1,1);transform:scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-snackbar{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);min-width:288px;max-width:568px;min-height:48px;max-height:80px;padding:14px 24px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:fixed;z-index:12;border-radius:2px;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,color,opacity,transform}.md-snackbar.md-position-center{margin:0 auto;right:0;bottom:0;left:0}.md-snackbar.md-position-center.md-snackbar-enter,.md-snackbar.md-position-center.md-snackbar-leave-active{-webkit-transform:translate3D(0,calc(100% + 8px),0);transform:translate3D(0,calc(100% + 8px),0)}.md-snackbar.md-position-left{bottom:24px;left:24px}.md-snackbar.md-position-left.md-snackbar-enter,.md-snackbar.md-position-left.md-snackbar-leave-active{-webkit-transform:translate3D(0,calc(100% + 32px),0);transform:translate3D(0,calc(100% + 32px),0)}.md-snackbar-enter,.md-snackbar-enter .md-snackbar-content,.md-snackbar-leave-active,.md-snackbar-leave-active .md-snackbar-content{opacity:0}.md-snackbar-content{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;transition:opacity .38s cubic-bezier(.55,0,.55,.2)}.md-snackbar-content .md-button{min-width:0;margin:-8px -8px -8px 36px}.md-snackbar-content .md-button+.md-button{margin-left:16px}@media (max-width:600px){.md-snackbar{left:0;-webkit-transform:none;transform:none;border-radius:0}.md-snackbar-content .md-button{margin-left:12px}}.md-speed-dial{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-speed-dial.md-top-left,.md-speed-dial.md-top-right{position:absolute;top:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-bottom-right{position:absolute;bottom:24px}.md-speed-dial.md-bottom-center,.md-speed-dial.md-top-center{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.md-speed-dial.md-top-center{top:24px}.md-speed-dial.md-bottom-center{bottom:24px}.md-speed-dial.md-bottom-right,.md-speed-dial.md-top-right{right:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-top-left{left:24px}.md-speed-dial.md-fixed{position:fixed}.md-speed-dial.md-direction-top.md-effect-fling .md-speed-dial-content .md-button{-webkit-transform:translate3d(0,50%,0) scale(.8);transform:translate3d(0,50%,0) scale(.8)}.md-speed-dial.md-direction-top .md-speed-dial-target{-webkit-box-ordinal-group:3;order:2;margin-bottom:0!important}.md-speed-dial.md-direction-top .md-speed-dial-content{-webkit-box-ordinal-group:2;order:1}.md-speed-dial.md-direction-top .md-speed-dial-content .md-button:first-child{margin-top:0}.md-speed-dial.md-direction-bottom.md-effect-fling .md-speed-dial-content .md-button{-webkit-transform:translate3d(0,-50%,0) scale(.8);transform:translate3d(0,-50%,0) scale(.8)}.md-speed-dial.md-direction-bottom .md-speed-dial-target{-webkit-box-ordinal-group:2;order:1;margin-top:0!important}.md-speed-dial.md-direction-bottom .md-speed-dial-content{-webkit-box-ordinal-group:3;order:2}.md-speed-dial.md-direction-bottom .md-speed-dial-content .md-button:last-child{margin-bottom:0}.md-speed-dial.md-effect-scale .md-speed-dial-content .md-button{-webkit-transform:scale(.3);transform:scale(.3)}.md-speed-dial.md-active .md-morph-initial,.md-speed-dial.md-with-hover:hover .md-morph-initial{opacity:0;-webkit-transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7);transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7)}.md-speed-dial.md-active .md-morph-final,.md-speed-dial.md-with-hover:hover .md-morph-final{opacity:1;-webkit-transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1);transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1)}.md-speed-dial.md-active .md-speed-dial-content .md-button,.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button{pointer-events:auto;opacity:1;-webkit-transform:translateZ(0) scale(1)!important;transform:translateZ(0) scale(1)!important;transition:opacity .2s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .3s cubic-bezier(.25,.8,.25,1)}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"]{transition-delay:0s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"]{transition-delay:.1s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"]{transition-delay:.2s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"]{transition-delay:.3s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"]{transition-delay:.4s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"]{transition-delay:.5s}.md-speed-dial .md-button{margin:6px 0}.md-speed-dial .md-speed-dial-content .md-button{pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s,-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:opacity,transform}.md-speed-dial .md-morph-final,.md-speed-dial .md-morph-initial{position:absolute;top:50%;left:50%;-webkit-transform:translate3D(-50%,-50%,0);transform:translate3D(-50%,-50%,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform}.md-speed-dial .md-morph-final{opacity:0;-webkit-transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg);transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg)}.md-speed-dial-target{z-index:1}.md-speed-dial-content{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;position:relative;z-index:2}.md-speed-dial-content,.md-steppers{transition:.3s cubic-bezier(.4,0,.2,1)}.md-steppers{transition-property:color,background-color;will-change:color,background-color}.md-steppers.md-no-transition *{transition:none!important}.md-steppers.md-dynamic-height .md-steppers-wrapper{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-steppers.md-horizontal.md-alternative .md-stepper-header{height:104px}.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-number:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-number:after{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-ripple{-webkit-box-pack:center;justify-content:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content{padding-top:16px;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:before{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-text{height:32px;-webkit-box-pack:start;justify-content:flex-start;text-align:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number{margin:0 8px 8px;position:relative}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{width:9999%;height:1px;position:absolute;top:50%;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after{left:calc(100% + 8px)}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{right:32px}.md-steppers.md-vertical .md-stepper-header{height:56px}.md-steppers.md-vertical .md-stepper-header .md-ripple{padding:0 24px 0 16px}.md-steppers.md-vertical .md-steppers-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-steppers.md-vertical .md-button-content:after,.md-steppers.md-vertical .md-button-content:before{content:none}.md-steppers.md-vertical .md-stepper-icon,.md-steppers.md-vertical .md-stepper-number{margin-right:12px}.md-steppers.md-vertical .md-stepper{padding:0;position:relative}.md-steppers.md-vertical .md-stepper:last-of-type:after{content:none}.md-steppers.md-vertical .md-stepper:after{width:1px;position:absolute;top:48px;bottom:-8px;left:36px;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers-navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:-webkit-box;display:flex}.md-steppers-navigation .md-stepper-header{width:auto}.md-stepper-header{width:100%;height:72px;margin:0;-webkit-box-flex:1;flex:1;border-radius:0;font-weight:400;text-align:left;text-transform:none}.md-stepper-header:first-of-type .md-button-content:before,.md-stepper-header:last-of-type .md-button-content:after{content:none}.md-stepper-header.md-active,.md-stepper-header.md-error{font-weight:500}.md-stepper-header .md-ripple{padding:0 16px;-webkit-box-pack:start;justify-content:flex-start}.md-stepper-header .md-button-content{padding:0 8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-header .md-button-content:after,.md-stepper-header .md-button-content:before{height:1px;position:absolute;top:50%;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-stepper-header .md-button-content:after{width:9999%;left:100%}.md-stepper-header .md-button-content:before{width:16px;left:-16px}.md-stepper-header .md-button-content svg{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,fill;will-change:color,fill}.md-stepper-text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;line-height:16px;white-space:nowrap}.md-stepper-icon,.md-stepper-number{margin-right:8px;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-number{width:24px;height:24px;border-radius:24px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:12px;line-height:24px;text-align:center}.md-stepper-done{width:20px;height:20px}.md-stepper-done,.md-stepper-editable{-webkit-transform:translateY(-1px);transform:translateY(-1px)}.md-stepper-editable{width:14px;height:14px}.md-stepper-description,.md-stepper-error{font-size:12px;font-weight:400;line-height:16px}.md-stepper-description{opacity:.54}.md-steppers-wrapper{overflow:hidden;transition:none;will-change:height}.md-steppers-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;flex-wrap:nowrap;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1),-webkit-transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-stepper{width:100%;-webkit-box-flex:1;flex:1 0 100%;padding:16px 24px}@media (max-width:944px){.md-stepper{padding:8px 16px}}.md-steppers.md-vertical .md-stepper-content{padding:0 24px 0 60px;height:0;overflow:hidden;opacity:0;-webkit-transform:translate3D(0,-20px,0);transform:translate3D(0,-20px,0);transition:.35s cubic-bezier(.25,.8,.25,1);transition-property:opacity,height,padding-bottom,-webkit-transform;transition-property:opacity,transform,height,padding-bottom;transition-property:opacity,transform,height,padding-bottom,-webkit-transform;will-change:opacity,transform,height,padding-bottom}.md-steppers.md-vertical .md-stepper-content.md-active{height:auto;padding-bottom:40px;opacity:1;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-subheader{min-height:48px;padding:0 16px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-switch:not(.md-disabled),.md-switch:not(.md-disabled) .md-switch-label{cursor:pointer}.md-switch .md-switch-container{width:34px;min-width:34px;height:14px;margin:3px 0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;border-radius:14px;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);width:20px;height:20px;position:relative;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb:before{width:48px;height:48px;top:50%;left:50%;z-index:5;content:\\\" \\\"}.md-switch .md-switch-thumb .md-ripple,.md-switch .md-switch-thumb:before{position:absolute;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-switch .md-switch-thumb .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;border-radius:50%}.md-switch .md-switch-thumb input{position:absolute;left:-999em}.md-switch .md-switch-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-switch.md-checked .md-switch-thumb{-webkit-transform:translate3d(15px,0,0);transform:translate3d(15px,0,0)}.md-switch.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-table{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column wrap;overflow-x:auto}.md-table .md-table-fixed-header{position:relative}.md-table .md-table-fixed-header-active{border-bottom:1px solid}.md-table .md-table-content{-webkit-box-flex:1;flex:1;overflow-x:auto;transition:height .3s cubic-bezier(.4,0,.2,1)}.md-table .md-table-empty{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table-head{padding:0;position:relative;font-size:12px;line-height:16px;text-align:left}.md-table-head:last-child .md-table-head-label{padding-right:24px}.md-table-head.md-numeric{text-align:right}.md-table-head.md-sortable:first-of-type .md-table-sortable-icon,.md-table-head.md-table-cell-selection+.md-sortable .md-table-sortable-icon{right:8px;left:auto}.md-table-head .md-icon{width:16px;height:16px;font-size:16px}.md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table-head .md-icon:first-child{margin-left:0}.md-table-head .md-icon:last-child{margin-right:0}.md-sortable{cursor:pointer}.md-sortable.md-sorted .md-table-sortable-icon,.md-sortable:hover .md-table-sortable-icon{opacity:1}.md-sortable.md-sorted-desc .md-table-sortable-icon{-webkit-transform:translateY(-50%) rotate(180deg);transform:translateY(-50%) rotate(180deg)}.md-table-head-container{height:56px;padding:14px 0}.md-table-head-container,.md-table-head-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-table-head-label{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;line-height:28px}.md-table-sortable-icon{position:absolute;top:50%;left:0;transition:.3s cubic-bezier(.4,0,.2,1);-webkit-transform:translateY(-50%);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:2;will-change:opacity,transform}.md-table-alternate-header-enter,.md-table-alternate-header-leave-active{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-table-alternate-header-enter-active{transition:.3s cubic-bezier(.4,0,.2,1)}.md-table-alternate-header-leave-active{transition:.2s cubic-bezier(.4,0,1,1)}.md-table-row{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:background-color,font-weight;will-change:background-color,font-weight}.md-table-row.md-has-selection{cursor:pointer}.md-table-row.md-selected-single{font-weight:500}tbody .md-table-row td{border-top:1px solid}.md-table-cell-selection{width:66px}.md-table-cell-selection+td .md-table-cell-container,.md-table-cell-selection+th .md-table-head-label{padding-left:0}.md-table-cell-selection .md-table-cell-container,.md-table-cell-selection .md-table-cell-label,.md-table-cell-selection .md-table-head-container,.md-table-cell-selection .md-table-head-label{padding:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;overflow:visible}.md-table-cell-selection .md-checkbox{margin:0}.md-table-cell-selection .md-checkbox .md-checkbox-container{width:18px;min-width:18px;height:18px}.md-table-cell-selection .md-checkbox .md-checkbox-container:after{top:-1px;left:4px}.md-table-toolbar{padding-left:24px}.md-table-toolbar .md-title{-webkit-box-flex:1;flex:1;font-size:20px}.md-toolbar,.md-toolbar-row{width:100%;min-height:64px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;align-content:center;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,background-color,box-shadow,color,min-height,-webkit-transform;transition-property:opacity,background-color,box-shadow,transform,color,min-height;transition-property:opacity,background-color,box-shadow,transform,color,min-height,-webkit-transform;will-change:opacity,background-color,box-shadow,transform,color,min-height}.md-toolbar{padding:0 16px;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;position:relative;z-index:2}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-large .md-toolbar-row,.md-toolbar.md-medium .md-toolbar-row{min-height:64px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-large{min-height:128px;align-content:inherit}.md-toolbar.md-large.md-dense{min-height:96px}.md-toolbar.md-large.md-dense .md-toolbar-row+.md-toolbar-row{min-height:32px}.md-toolbar .md-toolbar-offset{margin-left:56px}.md-toolbar .md-button,.md-toolbar .md-icon{z-index:1}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:24px}.md-toolbar .md-button+.md-button,.md-toolbar .md-button:last-child{margin-right:0}.md-toolbar .md-button:first-child{margin-left:0}.md-toolbar .md-display-1,.md-toolbar .md-display-2,.md-toolbar .md-title{margin:0;margin-left:8px;overflow:hidden;font-weight:400;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.md-toolbar .md-display-1{padding:12px 0}.md-toolbar .md-field{margin-top:2px;margin-bottom:14px;padding-top:16px}.md-toolbar-row{align-self:flex-start}.md-toolbar-section-end,.md-toolbar-section-start{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-flex:1;flex:1}.md-toolbar-section-start{-webkit-box-pack:start;justify-content:flex-start;-webkit-box-ordinal-group:1;order:0}.md-toolbar-section-end{-webkit-box-pack:end;justify-content:flex-end;-webkit-box-ordinal-group:11;order:10}@media (max-width:944px){.md-toolbar,.md-toolbar-row{min-height:48px}.md-toolbar{padding:0 8px}.md-toolbar .md-toolbar-offset{margin-left:48px}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:16px}}@media (max-width:600px){.md-toolbar,.md-toolbar-row{min-height:56px}}.md-table-empty-state{padding-left:24px}.md-table-cell{height:48px;position:relative;transition:.3s cubic-bezier(.4,0,.2,1);font-size:13px;line-height:18px}.md-table-cell.md-numeric{text-align:right}.md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table-cell-container{padding:6px 32px 6px 24px}.md-table-pagination{height:56px;display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;border-top:1px solid;font-size:12px}.md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-pagination .md-field{width:48px;min-width:36px;margin:-16px 24px 0 32px}.md-table-pagination .md-field:after,.md-table-pagination .md-field:before{display:none}.md-table-pagination .md-field .md-select-value{font-size:13px}.md-menu-content.md-pagination-select{max-width:82px;min-width:56px;margin-top:5px}.md-tabs{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-tabs.md-no-transition *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-tabs.md-transparent .md-tabs-navigation{background-color:transparent!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .35s cubic-bezier(.25,.8,.25,1)}.md-tabs.md-alignment-left .md-tabs-navigation{-webkit-box-pack:start;justify-content:flex-start}.md-tabs.md-alignment-right .md-tabs-navigation{-webkit-box-pack:end;justify-content:flex-end}.md-tabs.md-alignment-centered .md-tabs-navigation,.md-tabs.md-alignment-fixed .md-tabs-navigation{-webkit-box-pack:center;justify-content:center}.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{max-width:264px;min-width:160px;-webkit-box-flex:1;flex:1}.md-toolbar .md-tabs{padding-left:48px}.md-tabs-navigation{display:-webkit-box;display:flex;position:relative}.md-tabs-navigation .md-button{max-width:264px;min-width:72px;height:48px;margin:0;cursor:pointer;border-radius:0;font-size:13px}.md-tabs-navigation .md-button-content{position:static}.md-tabs-navigation .md-icon-label{height:72px}.md-tabs-navigation .md-icon-label .md-button-content{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center}.md-tabs-navigation .md-icon-label .md-tab-icon+.md-tab-label{margin-top:10px}.md-tabs-navigation .md-ripple{padding:0 24px}.md-tabs-indicator{height:2px;position:absolute;bottom:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:left,right}.md-tabs-indicator.md-tabs-indicator-left{transition:left .3s cubic-bezier(.4,0,.2,1),right .35s cubic-bezier(.4,0,.2,1)}.md-tabs-indicator.md-tabs-indicator-right{transition:right .3s cubic-bezier(.4,0,.2,1),left .35s cubic-bezier(.4,0,.2,1)}.md-tabs-content{overflow:hidden;transition:none;will-change:height}.md-tabs-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;flex-wrap:nowrap;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1),-webkit-transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-tab{width:100%;-webkit-box-flex:1;flex:1 0 100%;padding:16px}@media (max-width:944px){.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{min-width:72px}.md-toolbar .md-tabs{margin:0 -8px;padding-left:0}.md-tabs-navigation .md-ripple{padding:0 12px}.md-tab{padding:8px}}.md-tooltip{height:22px;padding:0 8px;position:fixed;z-index:8;pointer-events:none;border-radius:2px;transition:.15s cubic-bezier(0,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform,top,left!important;font-size:10px;line-height:22px;text-transform:none;white-space:nowrap}.md-tooltip.md-tooltip-leave-active{transition-timing-function:cubic-bezier(.4,0,1,1)}.md-tooltip.md-tooltip-enter,.md-tooltip.md-tooltip-leave-active{opacity:0}.md-tooltip.md-tooltip-enter.md-tooltip-top,.md-tooltip.md-tooltip-leave-active.md-tooltip-top{-webkit-transform:translate3d(0,4px,0) scale(.95);transform:translate3d(0,4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-right,.md-tooltip.md-tooltip-leave-active.md-tooltip-right{-webkit-transform:translate3d(-4px,0,0) scale(.95);transform:translate3d(-4px,0,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-bottom,.md-tooltip.md-tooltip-leave-active.md-tooltip-bottom{-webkit-transform:translate3d(0,-4px,0) scale(.95);transform:translate3d(0,-4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-left,.md-tooltip.md-tooltip-leave-active.md-tooltip-left{-webkit-transform:translate3d(4px,0,0) scale(.95);transform:translate3d(4px,0,0) scale(.95)}@media (max-width:944px){.md-tooltip{height:32px;font-size:14px;line-height:32px}}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzcz82ZDc4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIi8qIVxcbiAqIHZ1ZS1tYXRlcmlhbCB2MS4wLjAtYmV0YS03XFxuICogTWFkZSB3aXRoIDwzIGJ5IG1hcmNvc21vdXJhIDIwMTdcXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXFxuICovaHRtbHtoZWlnaHQ6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX1odG1sICosaHRtbCA6YWZ0ZXIsaHRtbCA6YmVmb3Jle2JveC1zaXppbmc6aW5oZXJpdH1ib2R5e21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10b3VjaC1jYWxsb3V0Om5vbmU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LWZhbWlseTpSb2JvdG8sTm90byBTYW5zLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LHNhbnMtc2VyaWZ9YTpub3QoLm1kLWJ1dHRvbil7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLG9wYWNpdHl9YXVkaW8sY2FudmFzLGVtYmVkLGlmcmFtZSxpbWcsb2JqZWN0LHZpZGVve21heC13aWR0aDoxMDAlO2ZvbnQtc3R5bGU6aXRhbGljO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1hdWRpbzpub3QoLm1kLWltYWdlKSxjYW52YXM6bm90KC5tZC1pbWFnZSksZW1iZWQ6bm90KC5tZC1pbWFnZSksaWZyYW1lOm5vdCgubWQtaW1hZ2UpLGltZzpub3QoLm1kLWltYWdlKSxvYmplY3Q6bm90KC5tZC1pbWFnZSksdmlkZW86bm90KC5tZC1pbWFnZSl7aGVpZ2h0OmF1dG99W3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3Vze291dGxpbmU6bm9uZSFpbXBvcnRhbnR9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9ue2Rpc3BsYXk6bm9uZX0ubWQtY2FwdGlvbntmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MTdweH0ubWQtYm9keS0xLGJvZHl7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWJvZHktMSwubWQtYm9keS0yLGJvZHl7Zm9udC1zaXplOjE0cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19Lm1kLWJvZHktMntmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjRweH0ubWQtc3ViaGVhZGluZ3tmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtdGl0bGV7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoyNnB4fS5tZC1oZWFkbGluZXtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4fS5tZC1kaXNwbGF5LTEsLm1kLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowfS5tZC1kaXNwbGF5LTF7Zm9udC1zaXplOjM0cHg7bGluZS1oZWlnaHQ6NDBweH0ubWQtZGlzcGxheS0ye2ZvbnQtc2l6ZTo0NXB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjQ4cHh9Lm1kLWRpc3BsYXktM3tmb250LXNpemU6NTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDo1OHB4fS5tZC1kaXNwbGF5LTR7Zm9udC1zaXplOjExMnB4O2ZvbnQtd2VpZ2h0OjMwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07bGluZS1oZWlnaHQ6MTEycHh9YTpub3QoLm1kLWJ1dHRvbil7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YTpub3QoLm1kLWJ1dHRvbik6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1idXR0b246Zm9jdXN7b3V0bGluZTpub25lfS5tZC1hcHB7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtYXBwLm1kLWZpeGVkIC5tZC1hcHAtc2Nyb2xsZXJ7b3ZlcmZsb3c6YXV0b30ubWQtYXBwLm1kLWZpeGVkLWxhc3QsLm1kLWFwcC5tZC1mbGV4aWJsZSwubWQtYXBwLm1kLW92ZXJsYXAsLm1kLWFwcC5tZC1yZXZlYWx7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWFwcC5tZC1maXhlZC1sYXN0IC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFyLC5tZC1hcHAubWQtcmV2ZWFsIC5tZC1hcHAtdG9vbGJhcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0ubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye21pbi1oZWlnaHQ6MH0ubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC10b29sYmFyLXJvdzpmaXJzdC1jaGlsZHt6LWluZGV4OjJ9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtdG9vbGJhci1yb3c6bGFzdC1jaGlsZHtwb3NpdGlvbjpmaXhlZDtib3R0b206MDt6LWluZGV4OjF9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtZGlzcGxheS0xe3Bvc2l0aW9uOmZpeGVkfS5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLXRvb2xiYXJ7ei1pbmRleDoxfS5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDI0cHggMjRweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWFwcC1jb250ZW50e3BhZGRpbmc6MTZweH0ubWQtYXBwLWNvbnRlbnQ+cDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9Lm1kLWFwcC1jb250ZW50PnA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9Lm1kLWFwcC1jb250YWluZXJ7ZGlzcGxheTpmbGV4O292ZXJmbG93OmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOnBhZGRpbmctbGVmdCAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6cGFkZGluZy1sZWZ0fS5tZC1hcHAtY29udGFpbmVyLC5tZC1hcHAtc2Nyb2xsZXJ7ZmxleDoxfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCAxNnB4IDE2cHh9fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCA4cHggOHB4fX1AbWVkaWEgKG1pbi13aWR0aDo2MDBweCl7Lm1kLWFwcC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmQrLm1kLWFwcC1zY3JvbGxlciAubWQtY29udGVudHtwYWRkaW5nLWxlZnQ6MDtib3JkZXItbGVmdDpub25lfS5tZC1hcHAtY29udGVudHtib3JkZXItbGVmdDoxcHggc29saWQgdHJhbnNwYXJlbnR9fS5tZC1hcHAtaW50ZXJuYWwtZHJhd2VyLC5tZC1hcHAtc2lkZS1kcmF3ZXIgLm1kLWFwcC1jb250YWluZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1hcHAtaW50ZXJuYWwtZHJhd2VyIC5tZC1hcHAtc2Nyb2xsZXJ7b3ZlcmZsb3c6YXV0b30ubWQtbm8tZWxldmF0aW9ue2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9Lm1kLWZpeGVkLWxhc3QgLm1kLXJldmVhbC1hY3RpdmUsLm1kLWZsZXhpYmxlIC5tZC1yZXZlYWwtYWN0aXZlLC5tZC1vdmVybGFwIC5tZC1yZXZlYWwtYWN0aXZlLC5tZC1yZXZlYWwgLm1kLXJldmVhbC1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsY2FsYygxMDAlICsgMTBweCksMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93LHRyYW5zZm9ybTt3aWxsLWNoYW5nZTpoZWlnaHQsYm94LXNoYWRvdyx0cmFuc2Zvcm19Lm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye2hlaWdodDoxOTZweH0ubWQtZml4ZWQtbGFzdC1hY3RpdmV7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93LHRyYW5zZm9ybTt3aWxsLWNoYW5nZTpoZWlnaHQsYm94LXNoYWRvdyx0cmFuc2Zvcm19Lm1kLW92ZXJsYXAtb2Zme3otaW5kZXg6MyFpbXBvcnRhbnR9Lm1kLWFwcC1jb250ZW50e2hlaWdodDoxMDAlfS5tZC1hcHAtY29udGVudCAubWQtY2FyZHttYXJnaW4tcmlnaHQ6MTZweDttYXJnaW4tbGVmdDoxNnB4O292ZXJmbG93OnZpc2libGV9Lm1kLWF1dG9jb21wbGV0ZSAubWQtbWVudXt3aWR0aDoxMDAlO2Rpc3BsYXk6ZmxleH0ubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6OX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO3BhZGRpbmctdG9wOjJweDtib3JkZXItcmFkaXVzOjJweH0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZHt6LWluZGV4OjExfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveDphZnRlciwubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3g6YmVmb3Jle2Rpc3BsYXk6bm9uZX0ubWQtdG9vbGJhciAubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7bWluLWhlaWdodDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjowO2JveC1zaGFkb3c6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLW1lbnV7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCAubWQtaW5wdXR7cGFkZGluZy1sZWZ0OjE2cHh9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgbGFiZWwsLm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb24sLm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IGxhYmVse3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb257cmlnaHQ6OHB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHttYXJnaW4tdG9wOjJweDtsZWZ0OjE2cHh9Lm1kLWF1dG9jb21wbGV0ZS1ib3gtY29udGVudDphZnRlcntoZWlnaHQ6NnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTE7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Y29udGVudDpcXFwiXFxcIn0ubWQtYXZhdGFye3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOmF1dG87ZGlzcGxheTppbmxpbmUtZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6NDBweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjtmb250LXNpemU6MjRweDtsZXR0ZXItc3BhY2luZzotLjA1ZW07dmVydGljYWwtYWxpZ246bWlkZGxlfS5tZC1hdmF0YXIubWQtbGFyZ2V7bWluLXdpZHRoOjY0cHg7bWluLWhlaWdodDo2NHB4O2JvcmRlci1yYWRpdXM6NjRweDtmb250LXNpemU6MzJweH0ubWQtYXZhdGFyLm1kLWxhcmdlIC5tZC1pY29ue2ZvbnQtc2l6ZTo0MHB4IWltcG9ydGFudH0ubWQtYXZhdGFyLm1kLXNtYWxse3dpZHRoOjI0cHg7bWluLXdpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoyNHB4O2ZvbnQtc2l6ZToxNHB4fS5tZC1hdmF0YXIubWQtc21hbGwgLm1kLWljb257Zm9udC1zaXplOjE2cHghaW1wb3J0YW50fS5tZC1hdmF0YXIgLm1kLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9Lm1kLWF2YXRhciBpbWd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmJsb2NrfS5tZC1hdmF0YXIgLm1kLXJpcHBsZXtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1ib3R0b20tYmFye2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTt3aWR0aDoxMDAlO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWJvdHRvbS1iYXI+Lm1kLXJpcHBsZXtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZHtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbXttaW4td2lkdGg6ODBweDttYXgtd2lkdGg6MTY4cHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcjt3aWxsLWNoYW5nZTpjb2xvcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJvdHRvbS1iYXItbGFiZWx7dHJhbnNmb3JtOnNjYWxlKC44NTcxKSB0cmFuc2xhdGUzRCgwLDRweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1yaXBwbGV7cGFkZGluZy10b3A6NnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnR7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzIWltcG9ydGFudH0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5OjF9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVte21pbi13aWR0aDo1NnB4O21heC13aWR0aDo5NnB4O2ZsZXg6MSAxIDMycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcjt3aWxsLWNoYW5nZTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjE2cHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC43KSB0cmFuc2xhdGUzZCgwLDZweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZle21pbi13aWR0aDo5NnB4O21heC13aWR0aDoxNjhweDtmbGV4OjEgMSA3MnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nOjZweCAwIDEwcHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29ue3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDNweCwwKX0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVte2hlaWdodDo1NnB4O21hcmdpbjowO2ZsZXg6MTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjFlbTt0ZXh0LXRyYW5zZm9ybTpub25lfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjhweCAxMnB4IDEwcHg7dHJhbnNpdGlvbjpwYWRkaW5nIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpYztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb24sLm1kLWJvdHRvbS1iYXIgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1yaXBwbGV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMTAwJSwjMDAwIDApfS5tZC1yaXBwbGUtd2F2ZXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDIpIHRyYW5zbGF0ZVooMCl9Lm1kLXJpcHBsZS13YXZlLm1kLWNlbnRlcmVke3RvcDo1MCU7bGVmdDo1MCV9Lm1kLXJpcHBsZS13YXZlfip7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1yaXBwbGUtZW50ZXItYWN0aXZle3RyYW5zaXRpb246LjhzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXJpcHBsZS1lbnRlci1hY3RpdmUubWQtY2VudGVyZWR7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjJzfS5tZC1yaXBwbGUtZW50ZXJ7b3BhY2l0eTouMjY7dHJhbnNmb3JtOnNjYWxlKC4yNikgdHJhbnNsYXRlWigwKX0ubWQtYnV0dG9uLC5tZC1idXR0b24tY2xlYW57bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOnRvcDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWJ1dHRvbnttaW4td2lkdGg6ODhweDtoZWlnaHQ6MzZweDttYXJnaW46NnB4IDhweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1idXR0b246YWN0aXZle291dGxpbmU6bm9uZX0ubWQtYnV0dG9uW2Rpc2FibGVkXXtwb2ludGVyLWV2ZW50czpub25lfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pe2N1cnNvcjpwb2ludGVyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmUsLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6aG92ZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO29wYWNpdHk6LjEyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQubWQtYWNjZW50OmJlZm9yZSwubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1mb2N1c2VkLm1kLXByaW1hcnk6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMn0ubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1yaXBwbGUtb2ZmOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMjZ9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5tZC1idXR0b24ubWQtcGxhaW4ubWQtYnV0dG9uLm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkgLm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZXtmaWxsOnJnYmEoMCwwLDAsLjg3KX0ubWQtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MH0ubWQtYnV0dG9uOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjE7b3BhY2l0eTowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3Isb3BhY2l0eTtjb250ZW50OlxcXCIgXFxcIn0ubWQtYnV0dG9uLm1kLWRlbnNle2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pOmFjdGl2ZXtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLXJpcHBsZS1vZmY6YWN0aXZlOmJlZm9yZXtvcGFjaXR5Oi4yfS5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDowfS5tZC1idXR0b24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYnV0dG9uLXNwYWNlZCAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4fS5tZC1mYWIsLm1kLWZhYiAubWQtcmlwcGxlLC5tZC1mYWI6YmVmb3JlLC5tZC1pY29uLWJ1dHRvbiwubWQtaWNvbi1idXR0b24gLm1kLXJpcHBsZSwubWQtaWNvbi1idXR0b246YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5tZC1mYWIubWQtZGVuc2UgLm1kLXJpcHBsZS13YXZlLC5tZC1mYWIubWQtbWluaSAubWQtcmlwcGxlLXdhdmUsLm1kLWljb24tYnV0dG9uIC5tZC1yaXBwbGUtd2F2ZXt0b3A6MCFpbXBvcnRhbnQ7cmlnaHQ6MCFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50O2xlZnQ6MCFpbXBvcnRhbnR9Lm1kLWljb24tYnV0dG9ue3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOjAgNnB4fS5tZC1pY29uLWJ1dHRvbi5tZC1kZW5zZXt3aWR0aDozMnB4O21pbi13aWR0aDozMnB4O2hlaWdodDozMnB4fS5tZC1pY29uLWJ1dHRvbiAubWQtcmlwcGxlLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLWZhYntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbn0ubWQtZmFiOmFjdGl2ZXtib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTJweCAxN3B4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjJweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1mYWIubWQtZGVuc2UsLm1kLWZhYi5tZC1taW5pe3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHh9Lm1kLWZhYi5tZC1mYWItdG9wLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tY2VudGVyLC5tZC1mYWIubWQtZmFiLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7dG9wOjI0cHh9Lm1kLWZhYi5tZC1mYWItYm90dG9tLXJpZ2h0LC5tZC1mYWIubWQtZmFiLXRvcC1yaWdodHtyaWdodDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLXRvcC1sZWZ0e2xlZnQ6MjRweH0ubWQtZmFiLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1mYWIgLm1kLXJpcHBsZXtwYWRkaW5nOjB9Lm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtY2FyZHtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7b3ZlcmZsb3c6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7Ym9yZGVyLXJhZGl1czoycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3J9Lm1kLWNhcmQubWQtd2l0aC1ob3ZlcntjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJveC1zaGFkb3cgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsYm94LXNoYWRvd30ubWQtY2FyZC5tZC13aXRoLWhvdmVyOmhvdmVye3otaW5kZXg6Mjtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNhcmQubWQtZXhwYW5kLWFjdGl2ZSAubWQtY2FyZC1leHBhbmQtdHJpZ2dlci5tZC1pY29uLWJ1dHRvbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9Lm1kLWNhcmQgLm1kLXN1YmhlYWQsLm1kLWNhcmQgLm1kLXN1YmhlYWRpbmcsLm1kLWNhcmQgLm1kLXRpdGxle21hcmdpbjowO2ZvbnQtd2VpZ2h0OjQwMH0ubWQtY2FyZCAubWQtc3ViaGVhZHtvcGFjaXR5Oi41NDtmb250LXNpemU6MTRweDtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoyMHB4fS5tZC1jYXJkIC5tZC1zdWJoZWFkKy5tZC10aXRsZXttYXJnaW4tdG9wOjRweH0ubWQtY2FyZCAubWQtdGl0bGV7Zm9udC1zaXplOjI0cHg7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDozMnB4fS5tZC1jYXJkLWFyZWEsLm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKTphZnRlcntoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKTpub3QoLm1kLWluc2V0KTphZnRlcntyaWdodDowO2xlZnQ6MH0ubWQtY2FyZD4ubWQtY2FyZC1hcmVhOm5vdCg6bGFzdC1jaGlsZCkubWQtaW5zZXQ6YWZ0ZXJ7cmlnaHQ6MTZweDtsZWZ0OjE2cHh9Lm1kLWNhcmQtaGVhZGVye3BhZGRpbmc6MTZweH0ubWQtY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQ+Lm1kLWNhcmQtaGVhZGVyLXRleHQ+Lm1kLXRpdGxlOmZpcnN0LWNoaWxkLC5tZC1jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZD4ubWQtdGl0bGU6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDo4cHh9Lm1kLWNhcmQtaGVhZGVyOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTo4cHh9Lm1kLWNhcmQtaGVhZGVyLm1kLWNhcmQtaGVhZGVyLWZsZXh7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1jb250ZW50e3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtaGVhZGVyKy5tZC1jYXJkLWFjdGlvbnM6bm90KDpsYXN0LWNoaWxkKXtwYWRkaW5nOjAgOHB4fS5tZC1jYXJkLWhlYWRlcj5pbWd7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWNhcmQtaGVhZGVyIC5tZC1hdmF0YXIsLm1kLWNhcmQtaGVhZGVyPmltZ3ttYXJnaW4tcmlnaHQ6MTZweDtmbG9hdDpsZWZ0fS5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC10aXRsZSwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC10aXRsZXtmb250LXNpemU6MTRweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhcn4ubWQtc3ViaGVhZCwubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhcn4ubWQtdGl0bGUsLm1kLWNhcmQtaGVhZGVyPmltZ34ubWQtc3ViaGVhZCwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC10aXRsZXtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDotNHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1oZWFkZXItdGV4dHtmbGV4OjF9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhe3dpZHRoOjgwcHg7aGVpZ2h0OjgwcHg7bWFyZ2luLWxlZnQ6MTZweDtmbGV4OjAgMCA4MHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1tZWRpYS5tZC1tZWRpdW17d2lkdGg6MTIwcHg7aGVpZ2h0OjEyMHB4O2ZsZXg6MCAwIDEyMHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1tZWRpYS5tZC1iaWd7d2lkdGg6MTYwcHg7aGVpZ2h0OjE2MHB4O2ZsZXg6MCAwIDE2MHB4fS5tZC1jYXJkLW1lZGlhe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTl7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTk6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6NTYuMjUlO2Rpc3BsYXk6YmxvY2s7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMTYtOSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby00LTN7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtMzpiZWZvcmV7d2lkdGg6MTAwJTtwYWRkaW5nLXRvcDo3NSU7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCIgXFxcIn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby00LTMgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7cmlnaHQ6MDtsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMS0xe292ZXJmbG93OmhpZGRlbn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby0xLTE6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6MTAwJTtkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTEtMSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1oZWFkZXJ7cGFkZGluZy10b3A6MjRweH0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1jb250ZW50Omxhc3QtY2hpbGR7cGFkZGluZy1ib3R0b206MTZweH0ubWQtY2FyZC1tZWRpYSBpbWd7d2lkdGg6MTAwJX0ubWQtY2FyZC1tZWRpYS1hY3Rpb25ze3BhZGRpbmc6MTZweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1tZWRpYXttYXgtd2lkdGg6MjQwcHg7bWF4LWhlaWdodDoyNDBweDtmbGV4OjF9Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1hY3Rpb25ze21hcmdpbi1sZWZ0OjE2cHg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtY2FyZC1tZWRpYS1hY3Rpb25zIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbjo4cHggMCAwfS5tZC1jYXJkLW1lZGlhLWNvdmVye3Bvc2l0aW9uOnJlbGF0aXZlO2NvbG9yOiNmZmZ9Lm1kLWNhcmQtbWVkaWEtY292ZXIubWQtc29saWQgLm1kLWNhcmQtYXJlYXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjU0KX0ubWQtY2FyZC1tZWRpYS1jb3Zlci5tZC10ZXh0LXNjcmltIC5tZC1jYXJkLWJhY2tkcm9we3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6MX0ubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hcmVhe3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6Mn0ubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hcmVhLC5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1hY3Rpb25ze3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLXN1YmhlYWR7b3BhY2l0eToxfS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb257Y29sb3I6I2ZmZiFpbXBvcnRhbnR9Lm1kLWNhcmQtY29udGVudHtwYWRkaW5nOjE2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjJweH0ubWQtY2FyZC1jb250ZW50Omxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbToyNHB4fS5tZC1jYXJkLWV4cGFuZHtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1leHBhbmQtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lm1kLWNhcmQtZXhwYW5kLXRyaWdnZXIubWQtaWNvbi1idXR0b257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtY2FyZC1leHBhbmQtY29udGVudHtvdmVyZmxvdzpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksbWFyZ2luLXRvcDt3aWxsLWNoYW5nZTpvcGFjaXR5LG1hcmdpbi10b3B9Lm1kLWNhcmQtYWN0aW9uc3twYWRkaW5nOjhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtY2FyZC1hY3Rpb25zLm1kLWFsaWdubWVudC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjRweH0ubWQtY2hlY2tib3h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGVja2JveDpub3QoLm1kLWRpc2FibGVkKSwubWQtY2hlY2tib3g6bm90KC5tZC1kaXNhYmxlZCkgLm1kLWNoZWNrYm94LWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVye3dpZHRoOjIwcHg7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt3aWR0aDo2cHg7aGVpZ2h0OjEzcHg7dG9wOjA7bGVmdDo1cHg7ei1pbmRleDo2O2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDowO2JvcmRlci1sZWZ0OjA7b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoLjE1LC4xNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2hlY2tib3gubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKSBzY2FsZTNEKDEsMSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3gubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm1kLWNoZWNrYm94Lm1kLXJlcXVpcmVkIGxhYmVsOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7cmlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWChjYWxjKDEwMCUgKyAycHgpKTtjb250ZW50OlxcXCIqXFxcIjtsaW5lLWhlaWdodDoxZW07dmVydGljYWwtYWxpZ246dG9wfS5tZC1jaGlwcy5tZC1maWVsZHtwYWRkaW5nLXRvcDoxMnB4O2ZsZXgtd3JhcDp3cmFwfS5tZC1jaGlwcy5tZC1maWVsZC5tZC1oYXMtdmFsdWUgbGFiZWx7dG9wOi02cHh9Lm1kLWNoaXBzLm1kLWZpZWxkIC5tZC1jaGlwe21hcmdpbi1ib3R0b206NHB4fS5tZC1jaGlwcy5tZC1maWVsZCAubWQtY2hpcDpsYXN0LW9mLXR5cGV7bWFyZ2luLXJpZ2h0OjhweH0ubWQtY2hpcHMubWQtZmllbGQgLm1kLWlucHV0e21pbi13aWR0aDoxMjhweH0ubWQtZmllbGR7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjQ4cHg7bWFyZ2luOjRweCAwIDI0cHg7cGFkZGluZy10b3A6MTZweDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6aW5oZXJpdH0ubWQtZmllbGQ6YWZ0ZXIsLm1kLWZpZWxkOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2xlZnQ6MDt6LWluZGV4OjE7dHJhbnNpdGlvbjpib3JkZXIgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1maWVsZDphZnRlcntoZWlnaHQ6MXB4fS5tZC1maWVsZDpiZWZvcmV7aGVpZ2h0OjJweDt6LWluZGV4OjI7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoLjEyKX0ubWQtZmllbGQgbGFiZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIzcHg7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjBweH0ubWQtZmllbGQgLm1kLWlucHV0LC5tZC1maWVsZCAubWQtdGV4dGFyZWF7d2lkdGg6MTAwJTtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jaztmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpub25lO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Zm9udC1zaXplLHBhZGRpbmctdG9wLGNvbG9yO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFweDtsaW5lLWhlaWdodDozMnB4fS5tZC1maWVsZCAubWQtaW5wdXRbdHlwZT1kYXRlXSwubWQtZmllbGQgLm1kLXRleHRhcmVhW3R5cGU9ZGF0ZV17Zm9udC1zaXplOjE2cHh9Lm1kLWZpZWxkIC5tZC1pbnB1dFtkaXNhYmxlZF0sLm1kLWZpZWxkIC5tZC10ZXh0YXJlYVtkaXNhYmxlZF17Y3Vyc29yOmRlZmF1bHR9Lm1kLWZpZWxkIC5tZC1pbnB1dDpmb2N1cywubWQtZmllbGQgLm1kLXRleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZX0ubWQtZmllbGQgLm1kLWlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC5tZC1maWVsZCAubWQtdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Zm9udC1zaXplOjE2cHg7dGV4dC1zaGFkb3c6bm9uZTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjppbml0aWFsO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Zm9udC1zaXplLGNvbG9yfS5tZC1maWVsZCAubWQtdGV4dGFyZWF7bWluLWhlaWdodDozMnB4O21heC1oZWlnaHQ6MjMwcHg7cGFkZGluZzo1cHggMDtyZXNpemU6bm9uZTtsaW5lLWhlaWdodDoxLjNlbX0ubWQtZmllbGQgLm1kLWNvdW50LC5tZC1maWVsZCAubWQtZXJyb3IsLm1kLWZpZWxkIC5tZC1oZWxwZXItdGV4dHtoZWlnaHQ6MjBweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206LTIycHg7Zm9udC1zaXplOjEycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWZpZWxkIC5tZC1lcnJvcntkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtsZWZ0OjA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCl9Lm1kLWZpZWxkIC5tZC1jb3VudHtyaWdodDowfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjMycHg7bWluLXdpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjE2cHg7cmlnaHQ6MDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtZmllbGQgLm1kLWlucHV0LWFjdGlvbi5tZC1pbnB1dC1hY3Rpb24tZW50ZXItYWN0aXZlLC5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1lbnRlci10b3tvcGFjaXR5OjF9Lm1kLWZpZWxkPi5tZC1pY29ue21hcmdpbjo0cHggYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjM7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLWZpZWxkPi5tZC1pY29uOmxhc3Qtb2YtdHlwZTpub3QoOmZpcnN0LWNoaWxkKTphZnRlcntkaXNwbGF5Om5vbmV9Lm1kLWZpZWxkPi5tZC1pY29uOmFmdGVye3dpZHRoOjM3cHg7aGVpZ2h0OjRweDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xcHg7Ym90dG9tOi01cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Y29udGVudDpcXFwiXFxcIn0ubWQtZmllbGQ+Lm1kLWljb25+bGFiZWx7bGVmdDozNnB4fS5tZC1maWVsZD4ubWQtaWNvbn4ubWQtZmlsZSwubWQtZmllbGQ+Lm1kLWljb25+Lm1kLWlucHV0LC5tZC1maWVsZD4ubWQtaWNvbn4ubWQtdGV4dGFyZWF7bWFyZ2luLWxlZnQ6MTJweH0ubWQtZmllbGQrLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KXttYXJnaW4tdG9wOjM2cHh9Lm1kLWZpZWxkLm1kLWhhcy1wbGFjZWhvbGRlciBsYWJlbHtwb2ludGVyLWV2ZW50czphdXRvO3RvcDoxMHB4O29wYWNpdHk6MDtmb250LXNpemU6MTJweH0ubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIC5tZC1pbnB1dCwubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIC5tZC10ZXh0YXJlYXtmb250LXNpemU6MTZweH0ubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVyLC5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3Jle2hlaWdodDphdXRvO3BvaW50ZXItZXZlbnRzOm5vbmU7dG9wOjA7Ym90dG9tOjA7dHJhbnNmb3JtOm5vbmU7YmFja2dyb3VuZDpub25lIWltcG9ydGFudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6M3B4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3Jle2JvcmRlci13aWR0aDoycHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSBsYWJlbHt0b3A6MTZweDtsZWZ0OjE2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtdGV4dGFyZWF7bWluLWhlaWdodDoxMDBweDtwYWRkaW5nOjAgMTZweDtyZXNpemU6dmVydGljYWx9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KT4ubWQtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3JpZ2h0OjZweDt6LWluZGV4OjN9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtY291bnR7cmlnaHQ6NnB4O2JvdHRvbToycHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtY2xlYXJ7dG9wOjZweDtyaWdodDo2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtaGFzLXZhbHVlIGxhYmVse3RvcDo2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpLm1kLWhhcy12YWx1ZSAubWQtdGV4dGFyZWF7cGFkZGluZy10b3A6MTBweH0ubWQtZmllbGQubWQtaGFzLWZpbGU6YWZ0ZXIsLm1kLWZpZWxkLm1kLWhhcy1maWxlOmJlZm9yZSwubWQtZmllbGQubWQtaGFzLWZpbGUgbGFiZWx7bGVmdDozNnB4fS5tZC1maWVsZC5tZC1oYXMtZmlsZSAubWQtaW5wdXR7bWFyZ2luLWxlZnQ6MTJweH0ubWQtZmllbGQubWQtZm9jdXNlZDpiZWZvcmUsLm1kLWZpZWxkLm1kLWhpZ2hsaWdodDpiZWZvcmV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3JkZXIsb3BhY2l0eSx0cmFuc2Zvcm19Lm1kLWZpZWxkLm1kLWZvY3VzZWQgbGFiZWwsLm1kLWZpZWxkLm1kLWhhcy12YWx1ZSBsYWJlbHtwb2ludGVyLWV2ZW50czphdXRvO3RvcDowO29wYWNpdHk6MTtmb250LXNpemU6MTJweH0ubWQtZmllbGQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLWZvY3VzZWQgLm1kLXRleHRhcmVhLC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUgbGFiZWx7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWZvY3VzZWQgbGFiZWx7dG9wOjIzcHg7Zm9udC1zaXplOjE2cHh9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1oYXMtdmFsdWUgbGFiZWx7b3BhY2l0eTowfS5tZC1maWVsZC5tZC1kaXNhYmxlZDphZnRlcntiYWNrZ3JvdW5kOjAgMTAwJSByZXBlYXQteDtiYWNrZ3JvdW5kLXNpemU6NHB4IDFweH0ubWQtZmllbGQubWQtaGFzLXBhc3N3b3JkIC5tZC10b2dnbGUtcGFzc3dvcmR7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDtib3R0b206LTJweH0ubWQtZmllbGQubWQtaGFzLXBhc3N3b3JkIC5tZC10b2dnbGUtcGFzc3dvcmQgc3Zne3dpZHRoOjIycHg7aGVpZ2h0OjIycHh9Lm1kLWZpZWxkLm1kLWNsZWFyYWJsZSAubWQtaW5wdXR7cGFkZGluZy1yaWdodDozMHB4fUBrZXlmcmFtZXMgYXsxMCUsOTAle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMXB4LDAsMCl9MzAlLDcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApfTQwJSw2MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDRweCwwLDApfX0ubWQtZmllbGQubWQtaW52YWxpZC5tZC1oYXMtdmFsdWUgbGFiZWw6bm90KDpmb2N1cyl7YW5pbWF0aW9uOmEgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpIGJvdGg7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtwZXJzcGVjdGl2ZToxMDAwcHh9Lm1kLWZpZWxkLm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZXtib3JkZXItd2lkdGg6MnB4fS5tZC1maWVsZC5tZC1pbnZhbGlkIC5tZC1lcnJvcntvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWZpZWxkLm1kLWludmFsaWQgLm1kLWhlbHBlci10ZXh0e29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApfS5tZC1maWVsZC5tZC1yZXF1aXJlZCBsYWJlbDphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O3JpZ2h0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtaWNvbnt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZvbnQtc2l6ZToyNHB4IWltcG9ydGFudDttYXJnaW46YXV0bztkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm1kLWljb24ubWQtc2l6ZS0yeHt3aWR0aDo0OHB4O21pbi13aWR0aDo0OHB4O2hlaWdodDo0OHB4O2ZvbnQtc2l6ZTo0OHB4IWltcG9ydGFudH0ubWQtaWNvbi5tZC1zaXplLTN4e3dpZHRoOjcycHg7bWluLXdpZHRoOjcycHg7aGVpZ2h0OjcycHg7Zm9udC1zaXplOjcycHghaW1wb3J0YW50fS5tZC1pY29uLm1kLXNpemUtNHh7d2lkdGg6OTZweDttaW4td2lkdGg6OTZweDtoZWlnaHQ6OTZweDtmb250LXNpemU6OTZweCFpbXBvcnRhbnR9Lm1kLWljb24ubWQtc2l6ZS01eHt3aWR0aDoxMjBweDttaW4td2lkdGg6MTIwcHg7aGVpZ2h0OjEyMHB4O2ZvbnQtc2l6ZToxMjBweCFpbXBvcnRhbnR9Lm1kLWljb24taW1hZ2Ugc3Zne2hlaWdodDoxMDAlO2ZsZXg6MTt0cmFuc2l0aW9uOmZpbGwgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1pY29ue3RyYW5zaXRpb246Y29sb3IgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2RpcmVjdGlvbjpsdHI7Zm9udC1mYW1pbHk6TWF0ZXJpYWwgSWNvbnM7LXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6XFxcImxpZ2FcXFwiO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpcXFwibGlnYVxcXCI7Zm9udC1zdHlsZTpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0OjE7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5O3RleHQtdHJhbnNmb3JtOm5vbmU7d29yZC13cmFwOm5vcm1hbDt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9Lm1kLXN2Zy1sb2FkZXJ7ZGlzcGxheTpibG9ja30ubWQtc3ZnLWxvYWRlciBzdmd7d2lkdGg6MTAwJX0ubWQtY2hpcHtoZWlnaHQ6MzJweDtwYWRkaW5nOjAgMTJweDtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6ZGVmYXVsdDtib3JkZXItcmFkaXVzOjMycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLWNvbG9yLGNvbG9yLG9wYWNpdHksdHJhbnNmb3JtLGJveC1zaGFkb3c7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93O2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjMycHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtY2hpcDpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoaXAubWQtY2hpcC1lbnRlci1hY3RpdmUsLm1kLWNoaXAubWQtY2hpcC1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2Zvcm1aKDApIHNjYWxlKC44KX0ubWQtY2hpcC5tZC1jaGlwLWVudGVyLXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKX0ubWQtY2hpcC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6YWN0aXZlLC5tZC1jaGlwLm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTphY3RpdmUsLm1kLWNoaXAubWQtZm9jdXNlZHtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNoaXAubWQtY2xpY2thYmxle3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0ubWQtY2hpcC5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtY2hpcC5tZC1kZWxldGFibGV7cGFkZGluZy1yaWdodDozMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGV7cGFkZGluZy1yaWdodDowfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nLXJpZ2h0OjMycHh9Lm1kLWNoaXAubWQtZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9Lm1kLWNoaXArLm1kLWNoaXB7bWFyZ2luLWxlZnQ6NHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjE4cHg7bWluLXdpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDo3cHg7ei1pbmRleDo1O3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC01MCUsMCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7Zm9udC1zaXplOjE4cHh9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjB9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLWJ1dHRvbi1jb250ZW50e2hlaWdodDoxNHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29ue3dpZHRoOjE0cHg7bWluLXdpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Zm9udC1zaXplOjE0cHghaW1wb3J0YW50O3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtY2hpcCAubWQtYnV0dG9uLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLWRhdGVwaWNrZXItb3ZlcmxheXtvcGFjaXR5OjB9Lm1kLWRhdGVwaWNrZXIgLm1kLWRhdGUtaWNvbntjdXJzb3I6cG9pbnRlcn0ubWQtZGF0ZXBpY2tlciBpbnB1dFt0eXBlPWRhdGVdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3IsLm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1jbGVhci1idXR0b24sLm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kYXRlcGlja2VyLW92ZXJsYXl7b3BhY2l0eToxfX0ubWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt3aWxsLWNoYW5nZTpvcGFjaXR5fS5tZC1vdmVybGF5Lm1kLWZpeGVkLGJvZHk+Lm1kLW92ZXJsYXl7cG9zaXRpb246Zml4ZWR9Lm1kLW92ZXJsYXktZW50ZXIsLm1kLW92ZXJsYXktbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtZGF0ZXBpY2tlci1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLHRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGxlZnQsdG9wfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45KX0ubWQtZGF0ZXBpY2tlci1kaWFsb2ctZW50ZXIgLm1kLWRhdGVwaWNrZXItYm9keSAubWQtZGF0ZXBpY2tlci1jYWxlbmRhcntvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMTAlLDApfS5tZC1kYXRlcGlja2VyLWhlYWRlcnttaW4td2lkdGg6MTUwcHg7cGFkZGluZzoxNnB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdHtjdXJzb3I6cG9pbnRlcjtvcGFjaXR5Oi41NDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoyNHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXRlLXNlbGVjdHtjdXJzb3I6cG9pbnRlcjtvcGFjaXR5Oi41NDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZTozMnB4O2ZvbnQtd2VpZ2h0OjkwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjEuMmVtfS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6YmxvY2t9Lm1kLWRhdGVwaWNrZXItaGVhZGVyIC5tZC1zZWxlY3RlZHtvcGFjaXR5OjF9Lm1kLWRhdGVwaWNrZXItYm9keXt3aWR0aDozMjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjp3aWR0aCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6d2lkdGh9Lm1kLWRhdGVwaWNrZXItYm9keSAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVye3BhZGRpbmc6OHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZTtjb250ZW50OlxcXCIgXFxcIn0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlcntsZWZ0OjB9Lm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YmVmb3Jle3JpZ2h0OjB9Lm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXIgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6M30ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1lbnRlciAubWQtYnV0dG9uOmZpcnN0LWNoaWxkLC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWxlYXZlLWFjdGl2ZSAubWQtYnV0dG9uOmZpcnN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUwJSwwLDApfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWVudGVyIC5tZC1idXR0b246bGFzdC1jaGlsZCwubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1sZWF2ZS1hY3RpdmUgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxNTAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItYm9keS1jb250ZW50e292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmhlaWdodH0ubWQtZGF0ZXBpY2tlci1wYW5lbHtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlciAubWQtZGF0ZXBpY2tlci1tb250aC10cmlnZ2Vye3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMzAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtbmV4dCAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlciwubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDMwJSwwLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLW5leHQgLm1kLWRhdGVwaWNrZXItbW9udGgtbGVhdmUtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMTAwJSwwLDApfS5tZC1kYXRlcGlja2VyLW1vbnRoe3RvcDo4cHg7Ym90dG9tOmF1dG87ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1kYXRlcGlja2VyLW1vbnRoIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7bWluLWhlaWdodDozMnB4O21hcmdpbjowIDQ2cHggMTBweDtmbGV4OjE7Ym9yZGVyLXJhZGl1czowO3RyYW5zaXRpb246dHJhbnNmb3JtIC40NXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC1kYXRlcGlja2VyLXdlZWt7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtZGF0ZXBpY2tlci13ZWVrIHNwYW57ZmxleDoxO2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246Y2VudGVyfS5tZC1kYXRlcGlja2VyLWRheXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS5tZC1kYXRlcGlja2VyLWRheXMgLm1kLWRhdGVwaWNrZXItZGF5LC5tZC1kYXRlcGlja2VyLWRheXMgLm1kLWRhdGVwaWNrZXItZW1wdHl7bWFyZ2luOjFweCAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4OjAgMSAxNC4yODU3MSV9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXktYnV0dG9ue3dpZHRoOjMwcHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozMHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLXRvZGF5e2ZvbnQtd2VpZ2h0OjcwMH0ubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3J7cGFkZGluZzo2cHggOHB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym90dG9tOmF1dG87dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLW1vbnRoLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IgLm1kLWRhdGVwaWNrZXIteWVhci10cmlnZ2Vye3dpZHRoOjEwMCU7bWFyZ2luOjAgMCA4cHg7ZmxleDoxIDEgMTAwJX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b257aGVpZ2h0OjM2cHg7bWFyZ2luOjNweCAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b257ZmxleDoxIDEgMzMuMzMzMyU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjEzcHh9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvcntmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6YXV0bztib3R0b206NTJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZH0ubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1lbnRlciwubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvciAubWQtYnV0dG9ue21pbi1oZWlnaHQ6MzZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbntmb250LXNpemU6MTZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2ZvbnQtc2l6ZToyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1kaWFsb2d7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcn0ubWQtZGF0ZXBpY2tlci1kaWFsb2ctZW50ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItaGVhZGVye21pbi13aWR0aDphdXRvO3BhZGRpbmc6MTZweCAyMHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6Mjk2cHh9Lm1kLWRhdGVwaWNrZXItbW9udGh7cGFkZGluZzowIDZweH19Lm1kLXBvcG92ZXIubWQtcmVuZGVyaW5ne29wYWNpdHk6MDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO21pbi13aWR0aDoyODBweDttYXgtd2lkdGg6ODAlO21heC1oZWlnaHQ6ODAlO21hcmdpbjphdXRvO2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpmaXhlZDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6MTA7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtwb2ludGVyLWV2ZW50czphdXRvO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxsZWZ0LHRvcH0ubWQtZGlhbG9nPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nPi5tZC1kaWFsb2ctY29udGVudCwubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZSwubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC45KX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLWFjdGlvbnMsLm1kLWRpYWxvZy1lbnRlci1hY3RpdmU+Lm1kLWRpYWxvZy1jb250ZW50LC5tZC1kaWFsb2ctZW50ZXItYWN0aXZlPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLXRpdGxlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZT4ubWQtZGlhbG9nLWNvbnRlbnQsLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmU+Lm1kLWRpYWxvZy10YWJzLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctdGl0bGV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguOTUpIHRyYW5zbGF0ZTNEKDAsMTAlLDApfS5tZC1kaWFsb2ctY29udGFpbmVye2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1ufS5tZC1kaWFsb2ctY29udGFpbmVyLC5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJze2ZsZXg6MX0ubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFicy1uYXZpZ2F0aW9ue3BhZGRpbmc6MCAxMnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFie3BhZGRpbmc6MTJweH0ubWQtZGlhbG9nLWZ1bGxzY3JlZW57bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO3Bvc2l0aW9uOmZpeGVkO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2JvcmRlci1yYWRpdXM6MDt0cmFuc2Zvcm06bm9uZX0ubWQtZGlhbG9nLWZ1bGxzY3JlZW4ubWQtZGlhbG9nLWVudGVye29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzMCUsMCl9Lm1kLWRpYWxvZy1mdWxsc2NyZWVuLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9fS5tZC1kaWFsb2ctdGl0bGV7bWFyZ2luLWJvdHRvbToyMHB4O3BhZGRpbmc6MjRweCAyNHB4IDB9Lm1kLWRpYWxvZy1jb250ZW50e3BhZGRpbmc6MCAyNHB4IDI0cHg7ZmxleDoxO2ZsZXgtYmFzaXM6YXV0bztvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1kaWFsb2ctY29udGVudDpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDoyNHB4fS5tZC1kaWFsb2ctY29udGVudCBwOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCl7bWFyZ2luLXRvcDowfS5tZC1kaWFsb2ctY29udGVudCBwOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tYm90dG9tOjB9Lm1kLWRpYWxvZy1hY3Rpb25ze21pbi1oZWlnaHQ6NTJweDtwYWRkaW5nOjhweCA4cHggOHB4IDI0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWRpYWxvZy1hY3Rpb25zOmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMXB4O3JpZ2h0OjA7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9ue21pbi13aWR0aDo2NHB4O21hcmdpbjowfS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6YmxvY2s7Ym9yZGVyOjA7dHJhbnNpdGlvbjptYXJnaW4tbGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6bWFyZ2luLWxlZnR9Lm1kLWRpdmlkZXIubWQtaW5zZXR7bWFyZ2luLWxlZnQ6NzJweH0ubWQtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4Ojc7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxib3gtc2hhZG93O3dpZHRoOjQwMHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gNTZweCk7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5tZC1kcmF3ZXIubWQtcmlnaHR7cmlnaHQ6MDtsZWZ0OmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZHJhd2VyLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1kcmF3ZXIubWQtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWRyYXdlci5tZC10ZW1wb3JhcnkrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXRlbXBvcmFyeS5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50Om5vdCgubWQtYWN0aXZlKSsubWQtYXBwLWNvbnRhaW5lciAubWQtY29udGVudHtib3JkZXItbGVmdDpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pe2JvcmRlci1yaWdodDoxcHggc29saWQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsNjRweCwwKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aDt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvd30ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaS5tZC1hY3RpdmUrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSl7d2lkdGg6NzBweCFpbXBvcnRhbnQ7ei1pbmRleDoxO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSkgLm1kLXRvb2xiYXJ7ZGlzcGxheTpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pOm5vdCgubWQtYWN0aXZlKSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZzowIDIzcHh9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50LW1pbmkubWQtYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7d2hpdGUtc3BhY2U6bm9ybWFsfS5tZC1kcmF3ZXIgLm1kLWxpc3QtaXRlbS1jb250YWluZXJ7Zm9udC1zaXplOjE0cHg7dGV4dC10cmFuc2Zvcm06bm9uZX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWRyYXdlcnt3aWR0aDozMjBweH0ubWQtZHJhd2VyLm1kLWFjdGl2ZXtib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKX19QG1lZGlhIChtaW4td2lkdGg6NjAwcHgpey5tZC1kcmF3ZXI6bm90KC5tZC10ZW1wb3Jhcnkpfi5tZC1vdmVybGF5e2JhY2tncm91bmQ6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS5tZC1kcmF3ZXIubWQtcGVybWFuZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtZnVsbHt6LWluZGV4OjN9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtZnVsbCAubWQtbGlzdHtwYWRkaW5nLXRvcDowfS5tZC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmQsLm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2xpcHBlZHt6LWluZGV4OjF9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7b3ZlcmZsb3c6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjttYXJnaW46OHB4O3otaW5kZXg6MX19QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey5tZC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmR7bWFyZ2luOjE2cHh9fUBtZWRpYSAobWluLXdpZHRoOjEyODBweCl7Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHttYXJnaW46MjRweH19Lm1kLWVsZXZhdGlvbi0we2JveC1zaGFkb3c6MCAwIDAgMCByZ2JhKDAsMCwwLC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsLjE0KSwwIDAgMCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTF7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMntib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0ze2JveC1zaGFkb3c6MCAzcHggM3B4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAzcHggNHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDhweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTR7Ym94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTV7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDVweCA4cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTRweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTZ7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi03e2JveC1zaGFkb3c6MCA0cHggNXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCA3cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgMnB4IDE2cHggMXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTh7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tOXtib3gtc2hhZG93OjAgNXB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOXB4IDEycHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNnB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xMHtib3gtc2hhZG93OjAgNnB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgMTBweCAxNHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCA0cHggMThweCAzcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTF7Ym94LXNoYWRvdzowIDZweCA3cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDExcHggMTVweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDIwcHggM3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEye2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxMnB4IDE3cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyMnB4IDRweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xM3tib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTNweCAxOXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjRweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTR7Ym94LXNoYWRvdzowIDdweCA5cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDE0cHggMjFweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI2cHggNHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE1e2JveC1zaGFkb3c6MCA4cHggOXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNXB4IDIycHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAyOHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xNntib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE3e2JveC1zaGFkb3c6MCA4cHggMTFweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTdweCAyNnB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzJweCA1cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTh7Ym94LXNoYWRvdzowIDlweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxOHB4IDI4cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDdweCAzNHB4IDZweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xOXtib3gtc2hhZG93OjAgOXB4IDEycHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDE5cHggMjlweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgN3B4IDM2cHggNnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIwe2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIwcHggMzFweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDM4cHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIxe2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIxcHggMzNweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQwcHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIye2JveC1zaGFkb3c6MCAxMHB4IDE0cHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIycHggMzVweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQycHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIze2JveC1zaGFkb3c6MCAxMXB4IDE0cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDIzcHggMzZweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ0cHggOHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTI0e2JveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZW1wdHktc3RhdGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzozNnB4O21hcmdpbjowIGF1dG87cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLm1kLXJvdW5kZWR7bWF4LXdpZHRoOmF1dG87Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWVtcHR5LXN0YXRlLm1kLXJvdW5kZWQgLm1kLWVtcHR5LXN0YXRlLWNvbnRhaW5lcntwYWRkaW5nOjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lm1kLWVtcHR5LXN0YXRlIC5tZC1idXR0b257bWFyZ2luOi41ZW0gMCAwfS5tZC1lbXB0eS1zdGF0ZS1lbnRlcntvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC44Nyl9Lm1kLWVtcHR5LXN0YXRlLWVudGVyIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7b3BhY2l0eTowfS5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLWljb257d2lkdGg6MTYwcHg7bWluLXdpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtmb250LXNpemU6MTYwcHghaW1wb3J0YW50O21hcmdpbjowfS5tZC1lbXB0eS1zdGF0ZS1sYWJlbHtmb250LXNpemU6MjZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6NDBweH0ubWQtZW1wdHktc3RhdGUtZGVzY3JpcHRpb257bWFyZ2luOjFlbSAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI0cHh9Lm1kLW1lbnUubWQtc2VsZWN0e2Rpc3BsYXk6ZmxleDtmbGV4OjF9Lm1kLW1lbnUubWQtc2VsZWN0Om5vdCgubWQtZGlzYWJsZWQpIC5tZC1pY29uLC5tZC1tZW51Lm1kLXNlbGVjdDpub3QoLm1kLWRpc2FibGVkKSAubWQtaW5wdXR7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTpub25lfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXR7ZmxleDoxfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXQtZmFrZSwubWQtbWVudS5tZC1zZWxlY3Qgc2VsZWN0e3dpZHRoOjFweDtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O3BhZGRpbmc6MDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7Y2xpcDpyZWN0KDAgMCAwIDApO2JvcmRlcjowfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnV7d2lkdGg6MTAwJX0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51Lm1kLW1lbnUtY29udGVudC1lbnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguMyl9Lm1kLW1lbnUtY29udGVudC5tZC1zZWxlY3QtbWVudSAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnUgLm1kLWRlbnNlIC5tZC1yaXBwbGUubWQtbGlzdC1pdGVtLWNvbnRlbnR7Zm9udC1zaXplOjE0cHh9Lm1kLW1lbnV7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm1kLW1lbnU+Lm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtbWVudS1jb250ZW50e2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTttaW4td2lkdGg6MTEycHg7bWF4LXdpZHRoOjI4MHB4O21heC1oZWlnaHQ6MzV2aDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50fS5tZC1tZW51LWNvbnRlbnQubWQtc2hhbGxvd3twb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnQ7dG9wOi05OTk5ZW0haW1wb3J0YW50O2xlZnQ6LTk5OTllbSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci1hY3RpdmV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO29wYWNpdHk6MH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtdG9wLXN0YXJ0e3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIGxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC10b3AtZW5ke3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIHJpZ2h0O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtcmlnaHQtc3RhcnR7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1yaWdodC1lbmR7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGJvdHRvbTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1zdGFydHt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1lbmR7dHJhbnNmb3JtLW9yaWdpbjp0b3AgcmlnaHQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtbGVmdC1zdGFydHt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IHRvcDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1sZWZ0LWVuZHt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIgLm1kLWxpc3R7b3BhY2l0eTowfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LW1lZGl1bXttaW4td2lkdGg6MTY4cHh9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtYmlne21pbi13aWR0aDoyMjRweH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1odWdle21pbi13aWR0aDoyODBweH0ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lcntmbGV4OjE7b3ZlcmZsb3c6YXV0b30ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lciAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHk7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyIC5tZC1saXN0e2ZvbnQtc2l6ZToxNHB4fX0ubWQtbGlzdHttYXJnaW46MDtwYWRkaW5nOjhweCAwO2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uIG5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTtsaXN0LXN0eWxlOm5vbmV9Lm1kLWxpc3QubWQtZGVuc2V7cGFkZGluZzo0cHggMH0ubWQtbGlzdCAubWQtZGl2aWRlcnttYXJnaW4tdG9wOi0xcHh9Lm1kLWxpc3QgLm1kLXN1YmhlYWRlci5tZC1pbnNldHtwYWRkaW5nLWxlZnQ6NzJweH0ubWQtbGlzdD4ubWQtc3ViaGVhZGVyOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDotOHB4fS5tZC1vcHRncm91cCAubWQtc3ViaGVhZGVye3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtb3B0Z3JvdXAgLm1kLXJpcHBsZS5tZC1saXN0LWl0ZW0tY29udGVudHtwYWRkaW5nLWxlZnQ6MjRweH0ubWQtZmlsZXtkaXNwbGF5OmZsZXg7ZmxleDoxfS5tZC1maWxlIGlucHV0W3R5cGU9ZmlsZV17d2lkdGg6MXB4O2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtjbGlwOnJlY3QoMCAwIDAgMCk7Ym9yZGVyOjB9Lm1kLWZpbGUgLm1kLWljb257Y3Vyc29yOnBvaW50ZXJ9Lm1kLWhpZ2hsaWdodC10ZXh0e2ZsZXg6MX0ubWQtaGlnaGxpZ2h0LXRleHQtbWF0Y2h7Zm9udC13ZWlnaHQ6NTAwfS5tZC1pbWFnZXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWxheW91dCAubWQtbGF5b3V0e2ZsZXg6MX0ubWQtbGF5b3V0IC5tZC1sYXlvdXQtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXB9Lm1kLWxheW91dC5tZC1jZW50ZXJlZHt3aWR0aDoxMDAlO21heC13aWR0aDoxMjAwcHg7bWFyZ2luOjAgYXV0b30ubWQtbGF5b3V0Lm1kLWd1dHRlcnttYXJnaW4tcmlnaHQ6LTIwcHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweH1AbWVkaWEgKG1heC13aWR0aDoxMjY0cHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotMTJweDttYXJnaW4tbGVmdDotMTJweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoxMnB4fX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLWxheW91dC5tZC1ndXR0ZXJ7bWFyZ2luLXJpZ2h0Oi04cHg7bWFyZ2luLWxlZnQ6LThweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjhweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotNHB4O21hcmdpbi1sZWZ0Oi00cHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDo0cHh9fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlciwubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1jZW50ZXItY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tc3BhY2UtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDthbGlnbi1pdGVtczpzcGFjZS1hcm91bmR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYXJvdW5kLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtc3BhY2UtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7YWxpZ24taXRlbXM6c3BhY2UtYXJvdW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXNwYWNlLWFyb3VuZC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLXNwYWNlLWFyb3VuZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC1pdGVtLC5tZC1sYXlvdXQtaXRlbS5tZC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0xMHttaW4td2lkdGg6MTAlO21heC13aWR0aDoxMCU7ZmxleDowIDEgMTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0yNXttaW4td2lkdGg6MjUlO21heC13aWR0aDoyNSU7ZmxleDowIDEgMjUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS00MHttaW4td2lkdGg6NDAlO21heC13aWR0aDo0MCU7ZmxleDowIDEgNDAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS01NXttaW4td2lkdGg6NTUlO21heC13aWR0aDo1NSU7ZmxleDowIDEgNTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS03MHttaW4td2lkdGg6NzAlO21heC13aWR0aDo3MCU7ZmxleDowIDEgNzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS04NXttaW4td2lkdGg6ODUlO21heC13aWR0aDo4NSU7ZmxleDowIDEgODUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0zM3ttaW4td2lkdGg6MzMuMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMlO2ZsZXg6MCAxIDMzLjMzMzMlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemV7ZmxleDoxIDF9Lm1kLWxheW91dC1pdGVtLm1kLW1lZGl1bS1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTV7bWluLXdpZHRoOjE1JTttYXgtd2lkdGg6MTUlO2ZsZXg6MCAxIDE1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzB7bWluLXdpZHRoOjMwJTttYXgtd2lkdGg6MzAlO2ZsZXg6MCAxIDMwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDV7bWluLXdpZHRoOjQ1JTttYXgtd2lkdGg6NDUlO2ZsZXg6MCAxIDQ1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjB7bWluLXdpZHRoOjYwJTttYXgtd2lkdGg6NjAlO2ZsZXg6MCAxIDYwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzV7bWluLXdpZHRoOjc1JTttYXgtd2lkdGg6NzUlO2ZsZXg6MCAxIDc1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTB7bWluLXdpZHRoOjkwJTttYXgtd2lkdGg6OTAlO2ZsZXg6MCAxIDkwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjZ7bWluLXdpZHRoOjY2LjY2NjYlO21heC13aWR0aDo2Ni42NjY2JTtmbGV4OjAgMSA2Ni42NjY2JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZXtmbGV4OjEgMX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0xNXttaW4td2lkdGg6MTUlO21heC13aWR0aDoxNSU7ZmxleDowIDEgMTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0zMHttaW4td2lkdGg6MzAlO21heC13aWR0aDozMCU7ZmxleDowIDEgMzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS00NXttaW4td2lkdGg6NDUlO21heC13aWR0aDo0NSU7ZmxleDowIDEgNDUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02MHttaW4td2lkdGg6NjAlO21heC13aWR0aDo2MCU7ZmxleDowIDEgNjAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS03NXttaW4td2lkdGg6NzUlO21heC13aWR0aDo3NSU7ZmxleDowIDEgNzUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS05MHttaW4td2lkdGg6OTAlO21heC13aWR0aDo5MCU7ZmxleDowIDEgOTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02NnttaW4td2lkdGg6NjYuNjY2NiU7bWF4LXdpZHRoOjY2LjY2NjYlO2ZsZXg6MCAxIDY2LjY2NjYlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC14c21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwe21pbi13aWR0aDoxMCU7bWF4LXdpZHRoOjEwJTtmbGV4OjAgMSAxMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTI1e21pbi13aWR0aDoyNSU7bWF4LXdpZHRoOjI1JTtmbGV4OjAgMSAyNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQwe21pbi13aWR0aDo0MCU7bWF4LXdpZHRoOjQwJTtmbGV4OjAgMSA0MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTU1e21pbi13aWR0aDo1NSU7bWF4LXdpZHRoOjU1JTtmbGV4OjAgMSA1NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTcwe21pbi13aWR0aDo3MCU7bWF4LXdpZHRoOjcwJTtmbGV4OjAgMSA3MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTg1e21pbi13aWR0aDo4NSU7bWF4LXdpZHRoOjg1JTtmbGV4OjAgMSA4NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMze21pbi13aWR0aDozMy4zMzMzJTttYXgtd2lkdGg6MzMuMzMzMyU7ZmxleDowIDEgMzMuMzMzMyV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX0ubWQtaGlkZXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbWVkaXVtLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXNtYWxsLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXhzbWFsbC1oaWRle2Rpc3BsYXk6bm9uZX19Lm1kLWxpc3QtaXRlbXtoZWlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWxpc3QtaXRlbS5tZC1pbnNldCAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZy1sZWZ0OjcycHh9Lm1kLWxpc3QtaXRlbSAubWQtaWNvbnttYXJnaW46MDt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLG1hcmdpbi1yaWdodH0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06bm9uZX0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSl7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2N1cnNvcjpwb2ludGVyfS5tZC1saXN0LWl0ZW0tY29udGFpbmVyLm1kLWJ1dHRvbi1jbGVhbjpob3ZlcntvcGFjaXR5OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjRweCAxNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47dHJhbnNpdGlvbjpwYWRkaW5nIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjQwcHg7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXJ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpub3QoLm1kLXNtYWxsKXt3aWR0aDozNnB4O21pbi13aWR0aDozNnB4O2hlaWdodDozNnB4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFyOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDoyMHB4fS5tZC1saXN0Lm1kLWRvdWJsZS1saW5lIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjcycHh9Lm1kLWxpc3QubWQtZG91YmxlLWxpbmUubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NjBweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo4OHB4fS5tZC1saXN0Lm1kLXRyaXBsZS1saW5lLm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0Ojc2cHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50IC5tZC1saXN0LWFjdGlvbnttYXJnaW46MCAtMTBweCAwIDB9Lm1kLWxpc3QtaXRlbS1jb250ZW50IC5tZC1saXN0LWFjdGlvbjpsYXN0LW9mLXR5cGV7bWFyZ2luOjAgLTEwcHggMCAxNnB4fS5tZC1saXN0Lm1kLXRyaXBsZS1saW5lIC5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb246bGFzdC1vZi10eXBle2FsaWduLXNlbGY6ZmxleC1zdGFydH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWljb246Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjMycHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1pY29uOmxhc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MTZweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWNoZWNrYm94LC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtcmFkaW97bWFyZ2luOjB9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1jaGVja2JveDpmaXJzdC1jaGlsZCwubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXJhZGlvOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDozNnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtc3dpdGNoe21hcmdpbjowfS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtc3dpdGNoOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDoyMnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFye21hcmdpbjo0cHggMH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTZweH0ubWQtbGlzdC1pdGVtLXRleHR7ZmxleDoxO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNWVtO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLXRleHR7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QtaXRlbS10ZXh0ICp7d2lkdGg6MTAwJTttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNWVtO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMiksLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Zm9udC1zaXplOjE0cHh9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS10ZXh0ICp7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QtaXRlbS1leHBhbmR7Ym9yZGVyLXRvcDoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpib3JkZXIgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOmJvcmRlcn0ubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmUgLm1kLWxpc3QtZXhwYW5kLWljb257cGVyc3BlY3RpdmU6MTAwMHB4O3BlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlO3RyYW5zZm9ybTpyb3RhdGVYKDE4MGRlZyl9Lm1kLWxpc3QtaXRlbS1leHBhbmQubWQtYWN0aXZlIC5tZC1saXN0LWV4cGFuZHtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX0ubWQtbGlzdC1pdGVtLWV4cGFuZCAubWQtbGlzdC1leHBhbmR7aGVpZ2h0OjA7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwtMjRweCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1saXN0LWl0ZW0tZXhwYW5kIC5tZC1saXN0LWV4cGFuZC1pY29ue3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19QGtleWZyYW1lcyBiezAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfTIwJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX02MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMsLjM4LC41NSwuOTYpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDgzLjY3JSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSl9fUBrZXlmcmFtZXMgY3swJXt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MzUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMywuMTIsLjc5LDEpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX03MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTt0cmFuc2Zvcm06c2NhbGVYKC42Nil9dG97dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1Aa2V5ZnJhbWVzIGR7MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgzNy42NSUpfTUwJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTYwLjI4JSl9fUBrZXlmcmFtZXMgZXswJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTUsMCwuNTIsLjQxKTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MjAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTt0cmFuc2Zvcm06c2NhbGVYKC40Nil9NDUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7dHJhbnNmb3JtOnNjYWxlWCguNzMpfXRve3RyYW5zZm9ybTpzY2FsZVgoLjA4KX19QGtleWZyYW1lcyBme3Rve3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtOHB4LDAsMCl9fS5tZC1wcm9ncmVzcy1iYXJ7aGVpZ2h0OjVweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDEpO3RyYW5zZm9ybS1vcmlnaW46dG9wIGNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2ssLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre2xlZnQ6LTE1MCU7YW5pbWF0aW9uOmIgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcnthbmltYXRpb246YyAycyBpbmZpbml0ZSBsaW5lYXJ9Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtsZWZ0Oi01NSU7YW5pbWF0aW9uOmQgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXJ7YW5pbWF0aW9uOmUgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXIubWQtZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zaXRpb246LjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7ZGlzcGxheTpub25lfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci10b3A6NHB4IGRvdHRlZDthbmltYXRpb246ZiAuMjVzIGluZmluaXRlIGxpbmVhcn0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5e3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ubWQtcHJvZ3Jlc3MtYmFyLWVudGVyLC5tZC1wcm9ncmVzcy1iYXItbGVhdmUtYWN0aXZle29wYWNpdHk6LjU7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDApfS5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifUBrZXlmcmFtZXMgZ3swJXt0cmFuc2Zvcm06cm90YXRlKDApfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1Aa2V5ZnJhbWVzIGh7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVaKDApfTIwJXtvcGFjaXR5OjF9dG97dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fS5tZC1wcm9ncmVzcy1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZXthbmltYXRpb246ZyAycyBsaW5lYXIgaW5maW5pdGV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjEpfS5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle2FuaW1hdGlvbjo0cyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLWFjdGl2ZSwubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjJzfS5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWRldGVybWluYXRlLm1kLXByb2dyZXNzLXNwaW5uZXItZW50ZXItYWN0aXZlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmUgLm1kLXByb2dyZXNzLXNwaW5uZXItZHJhd3thbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e3RyYW5zaXRpb246bm9uZX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e292ZXJmbG93OnZpc2libGU7dHJhbnNmb3JtOnNjYWxlKDEpIHJvdGF0ZSgtOTBkZWcpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtfS5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZXtmaWxsOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbjpzdHJva2UtZGFzaG9mZnNldCAuMjVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnN0cm9rZS1kYXNob2Zmc2V0LHN0cm9rZS1kYXNoYXJyYXksc3Ryb2tlLXdpZHRoLGFuaW1hdGlvbi1uYW1lLHJ9Lm1kLXJhZGlve3dpZHRoOmF1dG87bWFyZ2luOjE2cHggMTZweCAxNnB4IDA7ZGlzcGxheTppbmxpbmUtZmxleDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtcmFkaW86bm90KC5tZC1kaXNhYmxlZCksLm1kLXJhZGlvOm5vdCgubWQtZGlzYWJsZWQpIC5tZC1yYWRpby1sYWJlbHtjdXJzb3I6cG9pbnRlcn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcnt3aWR0aDoyMHB4O21pbi13aWR0aDoyMHB4O2hlaWdodDoyMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6Zm9jdXN7b3V0bGluZTpub25lfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyLC5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKTtjb250ZW50OlxcXCIgXFxcIn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6NTtib3JkZXItcmFkaXVzOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjNweDtyaWdodDozcHg7Ym90dG9tOjNweDtsZWZ0OjNweDtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM0QoLjM4LC4zOCwxKTtjb250ZW50OlxcXCIgXFxcIn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1yYWRpbyAubWQtcmFkaW8tbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtcmFkaW8ubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUzRCgxLDEsMSk7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXJhZGlvLm1kLXJlcXVpcmVkIGxhYmVsOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7cmlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWChjYWxjKDEwMCUgKyAycHgpKTtjb250ZW50OlxcXCIqXFxcIjtsaW5lLWhlaWdodDoxZW07dmVydGljYWwtYWxpZ246dG9wfS5tZC1zbmFja2Jhcntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTttaW4td2lkdGg6Mjg4cHg7bWF4LXdpZHRoOjU2OHB4O21pbi1oZWlnaHQ6NDhweDttYXgtaGVpZ2h0OjgwcHg7cGFkZGluZzoxNHB4IDI0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjEyO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWNlbnRlcnttYXJnaW46MCBhdXRvO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXIubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWNlbnRlci5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsY2FsYygxMDAlICsgOHB4KSwwKX0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdHtib3R0b206MjRweDtsZWZ0OjI0cHh9Lm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWxlZnQubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWxlZnQubWQtc25hY2tiYXItbGVhdmUtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLGNhbGMoMTAwJSArIDMycHgpLDApfS5tZC1zbmFja2Jhci1lbnRlciwubWQtc25hY2tiYXItZW50ZXIgLm1kLXNuYWNrYmFyLWNvbnRlbnQsLm1kLXNuYWNrYmFyLWxlYXZlLWFjdGl2ZSwubWQtc25hY2tiYXItbGVhdmUtYWN0aXZlIC5tZC1zbmFja2Jhci1jb250ZW50e29wYWNpdHk6MH0ubWQtc25hY2tiYXItY29udGVudHtmbGV4OjE7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjM4cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21pbi13aWR0aDowO21hcmdpbjotOHB4IC04cHggLThweCAzNnB4fS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDoxNnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtc25hY2tiYXJ7bGVmdDowO3RyYW5zZm9ybTpub25lO2JvcmRlci1yYWRpdXM6MH0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjEycHh9fS5tZC1zcGVlZC1kaWFse2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zcGVlZC1kaWFsLm1kLXRvcC1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tbGVmdCwubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tcmlnaHR7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWNlbnRlciwubWQtc3BlZWQtZGlhbC5tZC10b3AtY2VudGVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfS5tZC1zcGVlZC1kaWFsLm1kLXRvcC1jZW50ZXJ7dG9wOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWNlbnRlcntib3R0b206MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tcmlnaHQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLXJpZ2h0e3JpZ2h0OjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWxlZnQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLWxlZnR7bGVmdDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi10b3AubWQtZWZmZWN0LWZsaW5nIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi10b3AgLm1kLXNwZWVkLWRpYWwtdGFyZ2V0e29yZGVyOjI7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7b3JkZXI6MX0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLWJvdHRvbS5tZC1lZmZlY3QtZmxpbmcgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtdGFyZ2V0e29yZGVyOjE7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tYm90dG9tIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7b3JkZXI6Mn0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tYm90dG9tIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubWQtc3BlZWQtZGlhbC5tZC1lZmZlY3Qtc2NhbGUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3RyYW5zZm9ybTpzY2FsZSguMyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1pbml0aWFsLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLW1vcnBoLWluaXRpYWx7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCkgcm90YXRlKDkwZGVnKSBzY2FsZSguNyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1maW5hbCwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1tb3JwaC1maW5hbHtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbiwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSgxKSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIwXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIwXFxcIl17dHJhbnNpdGlvbi1kZWxheTowc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiMVxcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiMVxcXCJde3RyYW5zaXRpb24tZGVsYXk6LjFzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIyXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIyXFxcIl17dHJhbnNpdGlvbi1kZWxheTouMnN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjNcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjNcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi4zc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiNFxcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiNFxcXCJde3RyYW5zaXRpb24tZGVsYXk6LjRzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI1XFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI1XFxcIl17dHJhbnNpdGlvbi1kZWxheTouNXN9Lm1kLXNwZWVkLWRpYWwgLm1kLWJ1dHRvbnttYXJnaW46NnB4IDB9Lm1kLXNwZWVkLWRpYWwgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtc3BlZWQtZGlhbCAubWQtbW9ycGgtZmluYWwsLm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWluaXRpYWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWZpbmFse29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApIHNjYWxlKC43KSByb3RhdGUoLTkwZGVnKX0ubWQtc3BlZWQtZGlhbC10YXJnZXR7ei1pbmRleDoxfS5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1zcGVlZC1kaWFsLWNvbnRlbnQsLm1kLXN0ZXBwZXJze3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1zdGVwcGVyc3t0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcn0ubWQtc3RlcHBlcnMubWQtbm8tdHJhbnNpdGlvbiAqe3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9Lm1kLXN0ZXBwZXJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC1zdGVwcGVycy13cmFwcGVye3RyYW5zaXRpb246aGVpZ2h0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpoZWlnaHR9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDoxMDRweH0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6Zmlyc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1pY29uOmJlZm9yZSwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6Zmlyc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1udW1iZXI6YmVmb3JlLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlcjpsYXN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1yaXBwbGV7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50e3BhZGRpbmctdG9wOjE2cHg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci10ZXh0e2hlaWdodDozMnB4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3RleHQtYWxpZ246Y2VudGVyfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luOjAgOHB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZXt3aWR0aDo5OTk5JTtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVye2xlZnQ6Y2FsYygxMDAlICsgOHB4KX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmV7cmlnaHQ6MzJweH0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDo1NnB4fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweCAwIDE2cHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVycy1jb250YWluZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjEycHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVye3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6bGFzdC1vZi10eXBlOmFmdGVye2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6YWZ0ZXJ7d2lkdGg6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2JvdHRvbTotOHB4O2xlZnQ6MzZweDt6LWluZGV4OjI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVycy1uYXZpZ2F0aW9ue2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5OmZsZXh9Lm1kLXN0ZXBwZXJzLW5hdmlnYXRpb24gLm1kLXN0ZXBwZXItaGVhZGVye3dpZHRoOmF1dG99Lm1kLXN0ZXBwZXItaGVhZGVye3dpZHRoOjEwMCU7aGVpZ2h0OjcycHg7bWFyZ2luOjA7ZmxleDoxO2JvcmRlci1yYWRpdXM6MDtmb250LXdlaWdodDo0MDA7dGV4dC1hbGlnbjpsZWZ0O3RleHQtdHJhbnNmb3JtOm5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSwubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1idXR0b24tY29udGVudDphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSwubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3J7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnR7cGFkZGluZzowIDhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3RyYW5zaXRpb246Y29sb3IgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmNvbG9yfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7aGVpZ2h0OjFweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVye3dpZHRoOjk5OTklO2xlZnQ6MTAwJX0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZXt3aWR0aDoxNnB4O2xlZnQ6LTE2cHh9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudCBzdmd7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixmaWxsO3dpbGwtY2hhbmdlOmNvbG9yLGZpbGx9Lm1kLXN0ZXBwZXItdGV4dHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGluZS1oZWlnaHQ6MTZweDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXN0ZXBwZXItaWNvbiwubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjhweDt0cmFuc2l0aW9uOmNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpjb2xvcn0ubWQtc3RlcHBlci1udW1iZXJ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjI0cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3I7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjRweDt0ZXh0LWFsaWduOmNlbnRlcn0ubWQtc3RlcHBlci1kb25le3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lm1kLXN0ZXBwZXItZG9uZSwubWQtc3RlcHBlci1lZGl0YWJsZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0ubWQtc3RlcHBlci1lZGl0YWJsZXt3aWR0aDoxNHB4O2hlaWdodDoxNHB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9uLC5tZC1zdGVwcGVyLWVycm9ye2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxNnB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9ue29wYWNpdHk6LjU0fS5tZC1zdGVwcGVycy13cmFwcGVye292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy1jb250YWluZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZmxleC13cmFwOm5vd3JhcDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtc3RlcHBlcnt3aWR0aDoxMDAlO2ZsZXg6MSAwIDEwMCU7cGFkZGluZzoxNnB4IDI0cHh9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1zdGVwcGVye3BhZGRpbmc6OHB4IDE2cHh9fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1jb250ZW50e3BhZGRpbmc6MCAyNHB4IDAgNjBweDtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtLGhlaWdodCxwYWRkaW5nLWJvdHRvbTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxoZWlnaHQscGFkZGluZy1ib3R0b219Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVyLWNvbnRlbnQubWQtYWN0aXZle2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjQwcHg7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLXN1YmhlYWRlcnttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzowIDE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4LWZsb3c6cm93IHdyYXA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zd2l0Y2h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1zd2l0Y2g6bm90KC5tZC1kaXNhYmxlZCksLm1kLXN3aXRjaDpub3QoLm1kLWRpc2FibGVkKSAubWQtc3dpdGNoLWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC1jb250YWluZXJ7d2lkdGg6MzRweDttaW4td2lkdGg6MzRweDtoZWlnaHQ6MTRweDttYXJnaW46M3B4IDA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjE0cHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1ie2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6NTtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWIgLm1kLXJpcHBsZSwubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWIgLm1kLXJpcHBsZXt3aWR0aDo0OHB4IWltcG9ydGFudDtoZWlnaHQ6NDhweCFpbXBvcnRhbnQ7dG9wOjUwJSFpbXBvcnRhbnQ7bGVmdDo1MCUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NTAlfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTllbX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtc3dpdGNoLm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTVweCwwLDApfS5tZC1zd2l0Y2gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKGNhbGMoMTAwJSArIDJweCkpO2NvbnRlbnQ6XFxcIipcXFwiO2xpbmUtaGVpZ2h0OjFlbTt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm1kLXRhYmxle2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uIHdyYXA7b3ZlcmZsb3cteDphdXRvfS5tZC10YWJsZSAubWQtdGFibGUtZml4ZWQtaGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC10YWJsZSAubWQtdGFibGUtZml4ZWQtaGVhZGVyLWFjdGl2ZXtib3JkZXItYm90dG9tOjFweCBzb2xpZH0ubWQtdGFibGUgLm1kLXRhYmxlLWNvbnRlbnR7ZmxleDoxO292ZXJmbG93LXg6YXV0bzt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLXRhYmxlIC5tZC10YWJsZS1lbXB0eXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lm1kLXRhYmxlIHRhYmxle3dpZHRoOjEwMCU7Ym9yZGVyLXNwYWNpbmc6MDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7b3ZlcmZsb3c6aGlkZGVufS5tZC10YWJsZS1oZWFke3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZTtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4O3RleHQtYWxpZ246bGVmdH0ubWQtdGFibGUtaGVhZDpsYXN0LWNoaWxkIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmctcmlnaHQ6MjRweH0ubWQtdGFibGUtaGVhZC5tZC1udW1lcmlje3RleHQtYWxpZ246cmlnaHR9Lm1kLXRhYmxlLWhlYWQubWQtc29ydGFibGU6Zmlyc3Qtb2YtdHlwZSAubWQtdGFibGUtc29ydGFibGUtaWNvbiwubWQtdGFibGUtaGVhZC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbisubWQtc29ydGFibGUgLm1kLXRhYmxlLXNvcnRhYmxlLWljb257cmlnaHQ6OHB4O2xlZnQ6YXV0b30ubWQtdGFibGUtaGVhZCAubWQtaWNvbnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZvbnQtc2l6ZToxNnB4fS5tZC10YWJsZS1oZWFkIC5tZC1pY29uOm5vdCgubWQtc29ydGFibGUtaWNvbil7bWFyZ2luOjAgNHB4fS5tZC10YWJsZS1oZWFkIC5tZC1pY29uOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjB9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MH0ubWQtc29ydGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXNvcnRhYmxlLm1kLXNvcnRlZCAubWQtdGFibGUtc29ydGFibGUtaWNvbiwubWQtc29ydGFibGU6aG92ZXIgLm1kLXRhYmxlLXNvcnRhYmxlLWljb257b3BhY2l0eToxfS5tZC1zb3J0YWJsZS5tZC1zb3J0ZWQtZGVzYyAubWQtdGFibGUtc29ydGFibGUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKX0ubWQtdGFibGUtaGVhZC1jb250YWluZXJ7aGVpZ2h0OjU2cHg7cGFkZGluZzoxNHB4IDB9Lm1kLXRhYmxlLWhlYWQtY29udGFpbmVyLC5tZC10YWJsZS1oZWFkLWxhYmVse292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtdGFibGUtaGVhZC1sYWJlbHtoZWlnaHQ6MjhweDtwYWRkaW5nLXJpZ2h0OjMycHg7cGFkZGluZy1sZWZ0OjI0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjhweH0ubWQtdGFibGUtc29ydGFibGUtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6MDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6Mjt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1lbnRlciwubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjouMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdGFibGUtcm93e3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixmb250LXdlaWdodDt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yLGZvbnQtd2VpZ2h0fS5tZC10YWJsZS1yb3cubWQtaGFzLXNlbGVjdGlvbntjdXJzb3I6cG9pbnRlcn0ubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZXtmb250LXdlaWdodDo1MDB9dGJvZHkgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wOjFweCBzb2xpZH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb257d2lkdGg6NjZweH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24rdGQgLm1kLXRhYmxlLWNlbGwtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbit0aCAubWQtdGFibGUtaGVhZC1sYWJlbHtwYWRkaW5nLWxlZnQ6MH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLXRhYmxlLWNlbGwtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtY2VsbC1sYWJlbCwubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLXRhYmxlLWhlYWQtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtaGVhZC1sYWJlbHtwYWRkaW5nOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO292ZXJmbG93OnZpc2libGV9Lm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC1jaGVja2JveHttYXJnaW46MH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXJ7d2lkdGg6MThweDttaW4td2lkdGg6MThweDtoZWlnaHQ6MThweH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXJ7dG9wOi0xcHg7bGVmdDo0cHh9Lm1kLXRhYmxlLXRvb2xiYXJ7cGFkZGluZy1sZWZ0OjI0cHh9Lm1kLXRhYmxlLXRvb2xiYXIgLm1kLXRpdGxle2ZsZXg6MTtmb250LXNpemU6MjBweH0ubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjY0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0O3dpbGwtY2hhbmdlOm9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0fS5tZC10b29sYmFye3BhZGRpbmc6MCAxNnB4O2ZsZXgtZmxvdzpyb3cgd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLXRvb2xiYXIubWQtZGVuc2V7bWluLWhlaWdodDo0OHB4fS5tZC10b29sYmFyLm1kLWxhcmdlIC5tZC10b29sYmFyLXJvdywubWQtdG9vbGJhci5tZC1tZWRpdW0gLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NjRweH0ubWQtdG9vbGJhci5tZC1tZWRpdW17bWluLWhlaWdodDo4OHB4fS5tZC10b29sYmFyLm1kLWxhcmdle21pbi1oZWlnaHQ6MTI4cHg7YWxpZ24tY29udGVudDppbmhlcml0fS5tZC10b29sYmFyLm1kLWxhcmdlLm1kLWRlbnNle21pbi1oZWlnaHQ6OTZweH0ubWQtdG9vbGJhci5tZC1sYXJnZS5tZC1kZW5zZSAubWQtdG9vbGJhci1yb3crLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6MzJweH0ubWQtdG9vbGJhciAubWQtdG9vbGJhci1vZmZzZXR7bWFyZ2luLWxlZnQ6NTZweH0ubWQtdG9vbGJhciAubWQtYnV0dG9uLC5tZC10b29sYmFyIC5tZC1pY29ue3otaW5kZXg6MX0ubWQtdG9vbGJhciAubWQtYnV0dG9ufi5tZC10aXRsZSwubWQtdG9vbGJhciAubWQtaWNvbn4ubWQtdGl0bGV7bWFyZ2luLWxlZnQ6MjRweH0ubWQtdG9vbGJhciAubWQtYnV0dG9uKy5tZC1idXR0b24sLm1kLXRvb2xiYXIgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC10b29sYmFyIC5tZC1idXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ubWQtdG9vbGJhciAubWQtZGlzcGxheS0xLC5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTIsLm1kLXRvb2xiYXIgLm1kLXRpdGxle21hcmdpbjowO21hcmdpbi1sZWZ0OjhweDtvdmVyZmxvdzpoaWRkZW47Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi4wMmVtO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtdG9vbGJhciAubWQtZGlzcGxheS0xe3BhZGRpbmc6MTJweCAwfS5tZC10b29sYmFyIC5tZC1maWVsZHttYXJnaW4tdG9wOjJweDttYXJnaW4tYm90dG9tOjE0cHg7cGFkZGluZy10b3A6MTZweH0ubWQtdG9vbGJhci1yb3d7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS5tZC10b29sYmFyLXNlY3Rpb24tZW5kLC5tZC10b29sYmFyLXNlY3Rpb24tc3RhcnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjF9Lm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtvcmRlcjowfS5tZC10b29sYmFyLXNlY3Rpb24tZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtvcmRlcjoxMH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRvb2xiYXIsLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NDhweH0ubWQtdG9vbGJhcntwYWRkaW5nOjAgOHB4fS5tZC10b29sYmFyIC5tZC10b29sYmFyLW9mZnNldHttYXJnaW4tbGVmdDo0OHB4fS5tZC10b29sYmFyIC5tZC1idXR0b25+Lm1kLXRpdGxlLC5tZC10b29sYmFyIC5tZC1pY29ufi5tZC10aXRsZXttYXJnaW4tbGVmdDoxNnB4fX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXRvb2xiYXIsLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NTZweH19Lm1kLXRhYmxlLWVtcHR5LXN0YXRle3BhZGRpbmctbGVmdDoyNHB4fS5tZC10YWJsZS1jZWxse2hlaWdodDo0OHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE4cHh9Lm1kLXRhYmxlLWNlbGwubWQtbnVtZXJpY3t0ZXh0LWFsaWduOnJpZ2h0fS5tZC10YWJsZS1jZWxsOmxhc3QtY2hpbGQgLm1kLXRhYmxlLWNlbGwtY29udGFpbmVye3BhZGRpbmctcmlnaHQ6MjRweH0ubWQtdGFibGUtY2VsbC1jb250YWluZXJ7cGFkZGluZzo2cHggMzJweCA2cHggMjRweH0ubWQtdGFibGUtcGFnaW5hdGlvbntoZWlnaHQ6NTZweDtkaXNwbGF5OmZsZXg7ZmxleDoxO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Ym9yZGVyLXRvcDoxcHggc29saWQ7Zm9udC1zaXplOjEycHh9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLXRhYmxlLXBhZ2luYXRpb24tcHJldmlvdXN7bWFyZ2luLXJpZ2h0OjJweDttYXJnaW4tbGVmdDoxOHB4fS5tZC10YWJsZS1wYWdpbmF0aW9uIC5tZC1maWVsZHt3aWR0aDo0OHB4O21pbi13aWR0aDozNnB4O21hcmdpbjotMTZweCAyNHB4IDAgMzJweH0ubWQtdGFibGUtcGFnaW5hdGlvbiAubWQtZmllbGQ6YWZ0ZXIsLm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkOmJlZm9yZXtkaXNwbGF5Om5vbmV9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkIC5tZC1zZWxlY3QtdmFsdWV7Zm9udC1zaXplOjEzcHh9Lm1kLW1lbnUtY29udGVudC5tZC1wYWdpbmF0aW9uLXNlbGVjdHttYXgtd2lkdGg6ODJweDttaW4td2lkdGg6NTZweDttYXJnaW4tdG9wOjVweH0ubWQtdGFic3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC10YWJzLm1kLW5vLXRyYW5zaXRpb24gKnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC10YWJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC10YWJzLWNvbnRlbnR7dHJhbnNpdGlvbjpoZWlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmhlaWdodH0ubWQtdGFicy5tZC10cmFuc3BhcmVudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5tZC10YWJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC10YWJzLWNvbnRlbnR7dHJhbnNpdGlvbjpoZWlnaHQgLjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtdGFicy5tZC1hbGlnbm1lbnQtbGVmdCAubWQtdGFicy1uYXZpZ2F0aW9ue2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC10YWJzLm1kLWFsaWdubWVudC1yaWdodCAubWQtdGFicy1uYXZpZ2F0aW9ue2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtdGFicy5tZC1hbGlnbm1lbnQtY2VudGVyZWQgLm1kLXRhYnMtbmF2aWdhdGlvbiwubWQtdGFicy5tZC1hbGlnbm1lbnQtZml4ZWQgLm1kLXRhYnMtbmF2aWdhdGlvbntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLm1kLWFsaWdubWVudC1maXhlZCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257bWF4LXdpZHRoOjI2NHB4O21pbi13aWR0aDoxNjBweDtmbGV4OjF9Lm1kLXRvb2xiYXIgLm1kLXRhYnN7cGFkZGluZy1sZWZ0OjQ4cHh9Lm1kLXRhYnMtbmF2aWdhdGlvbntkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue21heC13aWR0aDoyNjRweDttaW4td2lkdGg6NzJweDtoZWlnaHQ6NDhweDttYXJnaW46MDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjEzcHh9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLWNvbnRlbnR7cG9zaXRpb246c3RhdGljfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWx7aGVpZ2h0OjcycHh9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtaWNvbi1sYWJlbCAubWQtYnV0dG9uLWNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLXRhYi1pY29uKy5tZC10YWItbGFiZWx7bWFyZ2luLXRvcDoxMHB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweH0ubWQtdGFicy1pbmRpY2F0b3J7aGVpZ2h0OjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7d2lsbC1jaGFuZ2U6bGVmdCxyaWdodH0ubWQtdGFicy1pbmRpY2F0b3IubWQtdGFicy1pbmRpY2F0b3ItbGVmdHt0cmFuc2l0aW9uOmxlZnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHJpZ2h0IC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLXRhYnMtaW5kaWNhdG9yLm1kLXRhYnMtaW5kaWNhdG9yLXJpZ2h0e3RyYW5zaXRpb246cmlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLGxlZnQgLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFicy1jb250ZW50e292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC10YWJzLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LXdyYXA6bm93cmFwO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC10YWJ7d2lkdGg6MTAwJTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttaW4td2lkdGg6NzJweH0ubWQtdG9vbGJhciAubWQtdGFic3ttYXJnaW46MCAtOHB4O3BhZGRpbmctbGVmdDowfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtdGFie3BhZGRpbmc6OHB4fX0ubWQtdG9vbHRpcHtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgOHB4O3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6ODtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50O2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjIycHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtdG9wLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtdG9we3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDRweCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1yaWdodCwubWQtdG9vbHRpcC5tZC10b29sdGlwLWxlYXZlLWFjdGl2ZS5tZC10b29sdGlwLXJpZ2h0e3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCkgc2NhbGUoLjk1KX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtYm90dG9tLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtYm90dG9te3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC00cHgsMCkgc2NhbGUoLjk1KX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtbGVmdCwubWQtdG9vbHRpcC5tZC10b29sdGlwLWxlYXZlLWFjdGl2ZS5tZC10b29sdGlwLWxlZnR7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDRweCwwLDApIHNjYWxlKC45NSl9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC10b29sdGlwe2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjMycHh9fVwiLCBcIlwiLCB7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3Z1ZS1tYXRlcmlhbC5taW4uY3NzXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUFBOzs7O0dBSUcsS0FBSyxZQUFZLHNCQUFzQiwwREFBMEQsQ0FBQyxnQ0FBZ0Msa0JBQWtCLENBQUMsS0FBSyxnQkFBZ0IsU0FBUyxrQkFBa0Isd0NBQXdDLDJCQUEyQiw4QkFBOEIsMEJBQTBCLGtDQUFrQyxtQ0FBbUMsd0VBQXdFLENBQUMsa0JBQWtCLDBDQUEwQyxrREFBa0QsQ0FBQywyQ0FBMkMsZUFBZSxrQkFBa0IscUJBQXFCLENBQUMsb0pBQW9KLFdBQVcsQ0FBQyxzQkFBc0Isc0JBQXNCLENBQUMsaUNBQWlDLFVBQVUsV0FBVyxpQkFBaUIsQ0FBQyx1Q0FBdUMsaUJBQWlCLENBQUMsd0NBQXdDLFlBQVksQ0FBQyxZQUFZ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QXlHLGVBQWUsaUJBQWlCLG9CQUFvQixrQkFBa0IsQ0FBQyxvQ0FBb0MsaURBQWlELENBQUMsaUVBQWlFLFNBQVMsQ0FBQywrRkFBaUoseUNBQXlDLENBQUMsbUdBQXNKLDBDQUEwQyxDQUFDLHFHQUF3SiwwQ0FBMEMsQ0FBQyxpR0FBbUoseUNBQXlDLENBQUMseUJBQXlCLFlBQVksWUFBWSxlQUFlLGdCQUFnQixDQUFDLENBQUNcIixcImZpbGVcIjpcInZ1ZS1tYXRlcmlhbC5taW4uY3NzXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIi8qIVxcbiAqIHZ1ZS1tYXRlcmlhbCB2MS4wLjAtYmV0YS03XFxuICogTWFkZSB3aXRoIDwzIGJ5IG1hcmNvc21vdXJhIDIwMTdcXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXFxuICovaHRtbHtoZWlnaHQ6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX1odG1sICosaHRtbCA6YWZ0ZXIsaHRtbCA6YmVmb3Jle2JveC1zaXppbmc6aW5oZXJpdH1ib2R5e21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10b3VjaC1jYWxsb3V0Om5vbmU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LWZhbWlseTpSb2JvdG8sTm90byBTYW5zLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LHNhbnMtc2VyaWZ9YTpub3QoLm1kLWJ1dHRvbil7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLG9wYWNpdHl9YXVkaW8sY2FudmFzLGVtYmVkLGlmcmFtZSxpbWcsb2JqZWN0LHZpZGVve21heC13aWR0aDoxMDAlO2ZvbnQtc3R5bGU6aXRhbGljO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1hdWRpbzpub3QoLm1kLWltYWdlKSxjYW52YXM6bm90KC5tZC1pbWFnZSksZW1iZWQ6bm90KC5tZC1pbWFnZSksaWZyYW1lOm5vdCgubWQtaW1hZ2UpLGltZzpub3QoLm1kLWltYWdlKSxvYmplY3Q6bm90KC5tZC1pbWFnZSksdmlkZW86bm90KC5tZC1pbWFnZSl7aGVpZ2h0OmF1dG99W3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3Vze291dGxpbmU6bm9uZSFpbXBvcnRhbnR9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9ue2Rpc3BsYXk6bm9uZX0ubWQtY2FwdGlvbntmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MTdweH0ubWQtYm9keS0xLGJvZHl7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWJvZHktMSwubWQtYm9keS0yLGJvZHl7Zm9udC1zaXplOjE0cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19Lm1kLWJvZHktMntmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjRweH0ubWQtc3ViaGVhZGluZ3tmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtdGl0bGV7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoyNnB4fS5tZC1oZWFkbGluZXtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4fS5tZC1kaXNwbGF5LTEsLm1kLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowfS5tZC1kaXNwbGF5LTF7Zm9udC1zaXplOjM0cHg7bGluZS1oZWlnaHQ6NDBweH0ubWQtZGlzcGxheS0ye2ZvbnQtc2l6ZTo0NXB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjQ4cHh9Lm1kLWRpc3BsYXktM3tmb250LXNpemU6NTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDo1OHB4fS5tZC1kaXNwbGF5LTR7Zm9udC1zaXplOjExMnB4O2ZvbnQtd2VpZ2h0OjMwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07bGluZS1oZWlnaHQ6MTEycHh9YTpub3QoLm1kLWJ1dHRvbil7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YTpub3QoLm1kLWJ1dHRvbik6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1idXR0b246Zm9jdXN7b3V0bGluZTpub25lfS5tZC1hcHB7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1hcHAubWQtZml4ZWQgLm1kLWFwcC1zY3JvbGxlcntvdmVyZmxvdzphdXRvfS5tZC1hcHAubWQtZml4ZWQtbGFzdCwubWQtYXBwLm1kLWZsZXhpYmxlLC5tZC1hcHAubWQtb3ZlcmxhcCwubWQtYXBwLm1kLXJldmVhbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1hcHAubWQtZml4ZWQtbGFzdCAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLXJldmVhbCAubWQtYXBwLXRvb2xiYXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhcnttaW4taGVpZ2h0OjB9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtdG9vbGJhci1yb3c6Zmlyc3QtY2hpbGR7ei1pbmRleDoyfS5tZC1hcHAubWQtZmxleGlibGUgLm1kLXRvb2xiYXItcm93Omxhc3QtY2hpbGR7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7ei1pbmRleDoxfS5tZC1hcHAubWQtZmxleGlibGUgLm1kLWRpc3BsYXktMXtwb3NpdGlvbjpmaXhlZH0ubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye3otaW5kZXg6MX0ubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCAyNHB4IDI0cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1hcHAtY29udGVudHtwYWRkaW5nOjE2cHh9Lm1kLWFwcC1jb250ZW50PnA6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5tZC1hcHAtY29udGVudD5wOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5tZC1hcHAtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmF1dG87LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnBhZGRpbmctbGVmdH0ubWQtYXBwLWNvbnRhaW5lciwubWQtYXBwLXNjcm9sbGVyey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDE2cHggMTZweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDhweCA4cHh9fUBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsubWQtYXBwLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZCsubWQtYXBwLXNjcm9sbGVyIC5tZC1jb250ZW50e3BhZGRpbmctbGVmdDowO2JvcmRlci1sZWZ0Om5vbmV9Lm1kLWFwcC1jb250ZW50e2JvcmRlci1sZWZ0OjFweCBzb2xpZCB0cmFuc3BhcmVudH19Lm1kLWFwcC1pbnRlcm5hbC1kcmF3ZXIsLm1kLWFwcC1zaWRlLWRyYXdlciAubWQtYXBwLWNvbnRhaW5lcnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLWFwcC1pbnRlcm5hbC1kcmF3ZXIgLm1kLWFwcC1zY3JvbGxlcntvdmVyZmxvdzphdXRvfS5tZC1uby1lbGV2YXRpb257Ym94LXNoYWRvdzpub25lIWltcG9ydGFudH0ubWQtZml4ZWQtbGFzdCAubWQtcmV2ZWFsLWFjdGl2ZSwubWQtZmxleGlibGUgLm1kLXJldmVhbC1hY3RpdmUsLm1kLW92ZXJsYXAgLm1kLXJldmVhbC1hY3RpdmUsLm1kLXJldmVhbCAubWQtcmV2ZWFsLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLGNhbGMoMTAwJSArIDEwcHgpLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLGNhbGMoMTAwJSArIDEwcHgpLDApO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OmJveC1zaGFkb3csdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdyx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6aGVpZ2h0LGJveC1zaGFkb3csdHJhbnNmb3JtfS5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhcntoZWlnaHQ6MTk2cHh9Lm1kLWZpeGVkLWxhc3QtYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OmJveC1zaGFkb3csdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdyx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6aGVpZ2h0LGJveC1zaGFkb3csdHJhbnNmb3JtfS5tZC1vdmVybGFwLW9mZnt6LWluZGV4OjMhaW1wb3J0YW50fS5tZC1hcHAtY29udGVudHtoZWlnaHQ6MTAwJX0ubWQtYXBwLWNvbnRlbnQgLm1kLWNhcmR7bWFyZ2luLXJpZ2h0OjE2cHg7bWFyZ2luLWxlZnQ6MTZweDtvdmVyZmxvdzp2aXNpYmxlfS5tZC1hdXRvY29tcGxldGUgLm1kLW1lbnV7d2lkdGg6MTAwJTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmd7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6OX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO3BhZGRpbmctdG9wOjJweDtib3JkZXItcmFkaXVzOjJweH0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZHt6LWluZGV4OjExfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveDphZnRlciwubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3g6YmVmb3Jle2Rpc3BsYXk6bm9uZX0ubWQtdG9vbGJhciAubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7bWluLWhlaWdodDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjowO2JveC1zaGFkb3c6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLW1lbnV7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLWlucHV0e3BhZGRpbmctbGVmdDoxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCAubWQtaW5wdXQtYWN0aW9uLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb257cmlnaHQ6OHB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHttYXJnaW4tdG9wOjJweDtsZWZ0OjE2cHh9Lm1kLWF1dG9jb21wbGV0ZS1ib3gtY29udGVudDphZnRlcntoZWlnaHQ6NnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTE7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Y29udGVudDpcXFwiXFxcIn0ubWQtYXZhdGFye3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOmF1dG87ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjQwcHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3I7Zm9udC1zaXplOjI0cHg7bGV0dGVyLXNwYWNpbmc6LS4wNWVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubWQtYXZhdGFyLm1kLWxhcmdle21pbi13aWR0aDo2NHB4O21pbi1oZWlnaHQ6NjRweDtib3JkZXItcmFkaXVzOjY0cHg7Zm9udC1zaXplOjMycHh9Lm1kLWF2YXRhci5tZC1sYXJnZSAubWQtaWNvbntmb250LXNpemU6NDBweCFpbXBvcnRhbnR9Lm1kLWF2YXRhci5tZC1zbWFsbHt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JvcmRlci1yYWRpdXM6MjRweDtmb250LXNpemU6MTRweH0ubWQtYXZhdGFyLm1kLXNtYWxsIC5tZC1pY29ue2ZvbnQtc2l6ZToxNnB4IWltcG9ydGFudH0ubWQtYXZhdGFyIC5tZC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30ubWQtYXZhdGFyIC5tZC1yaXBwbGV7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWJvdHRvbS1iYXJ7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpO3dpZHRoOjEwMCU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtYm90dG9tLWJhcj4ubWQtcmlwcGxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWR7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW17bWluLXdpZHRoOjgwcHg7bWF4LXdpZHRoOjE2OHB4O3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3I7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC44NTcxKSB0cmFuc2xhdGUzRCgwLDRweCwwKTt0cmFuc2Zvcm06c2NhbGUoLjg1NzEpIHRyYW5zbGF0ZTNEKDAsNHB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nLXRvcDo2cHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTJweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnR7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzIWltcG9ydGFudH0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5OjF9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVte21pbi13aWR0aDo1NnB4O21heC13aWR0aDo5NnB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMSAzMnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6cGFkZGluZyxtaW4td2lkdGgsbWF4LXdpZHRoLGNvbG9yLC13ZWJraXQtYm94LWZsZXg7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcjt0cmFuc2l0aW9uLXByb3BlcnR5OnBhZGRpbmcsbWluLXdpZHRoLG1heC13aWR0aCxmbGV4LGNvbG9yLC13ZWJraXQtYm94LWZsZXg7d2lsbC1jaGFuZ2U6cGFkZGluZyxtaW4td2lkdGgsbWF4LXdpZHRoLGZsZXgsY29sb3J9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1yaXBwbGV7cGFkZGluZzoxNnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJvdHRvbS1iYXItbGFiZWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC43KSB0cmFuc2xhdGUzZCgwLDZweCwwKTt0cmFuc2Zvcm06c2NhbGUoLjcpIHRyYW5zbGF0ZTNkKDAsNnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7bWluLXdpZHRoOjk2cHg7bWF4LXdpZHRoOjE2OHB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMSA3MnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nOjZweCAwIDEwcHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1sYWJlbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwzcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW17aGVpZ2h0OjU2cHg7bWFyZ2luOjA7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjFlbTt0ZXh0LXRyYW5zZm9ybTpub25lfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjhweCAxMnB4IDEwcHg7dHJhbnNpdGlvbjpwYWRkaW5nIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpYztkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb24sLm1kLWJvdHRvbS1iYXIgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1yaXBwbGV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMTAwJSwjMDAwIDApfS5tZC1yaXBwbGUtd2F2ZXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMikgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06c2NhbGUoMikgdHJhbnNsYXRlWigwKX0ubWQtcmlwcGxlLXdhdmUubWQtY2VudGVyZWR7dG9wOjUwJTtsZWZ0OjUwJX0ubWQtcmlwcGxlLXdhdmV+Kntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbjouOHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtcmlwcGxlLWVudGVyLWFjdGl2ZS5tZC1jZW50ZXJlZHt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5Oi4yNjstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguMjYpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnNjYWxlKC4yNikgdHJhbnNsYXRlWigwKX0ubWQtYnV0dG9uLC5tZC1idXR0b24tY2xlYW57bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOnRvcDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWJ1dHRvbnttaW4td2lkdGg6ODhweDtoZWlnaHQ6MzZweDttYXJnaW46NnB4IDhweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1idXR0b246YWN0aXZle291dGxpbmU6bm9uZX0ubWQtYnV0dG9uW2Rpc2FibGVkXXtwb2ludGVyLWV2ZW50czpub25lfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pe2N1cnNvcjpwb2ludGVyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmUsLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6aG92ZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO29wYWNpdHk6LjEyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQubWQtYWNjZW50OmJlZm9yZSwubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1mb2N1c2VkLm1kLXByaW1hcnk6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMn0ubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1yaXBwbGUtb2ZmOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMjZ9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5tZC1idXR0b24ubWQtcGxhaW4ubWQtYnV0dG9uLm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkgLm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZXtmaWxsOnJnYmEoMCwwLDAsLjg3KX0ubWQtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MH0ubWQtYnV0dG9uOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjE7b3BhY2l0eTowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3Isb3BhY2l0eTtjb250ZW50OlxcXCIgXFxcIn0ubWQtYnV0dG9uLm1kLWRlbnNle2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pOmFjdGl2ZXtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLXJpcHBsZS1vZmY6YWN0aXZlOmJlZm9yZXtvcGFjaXR5Oi4yfS5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDowfS5tZC1idXR0b24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYnV0dG9uLXNwYWNlZCAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4fS5tZC1mYWIsLm1kLWZhYiAubWQtcmlwcGxlLC5tZC1mYWI6YmVmb3JlLC5tZC1pY29uLWJ1dHRvbiwubWQtaWNvbi1idXR0b24gLm1kLXJpcHBsZSwubWQtaWNvbi1idXR0b246YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5tZC1mYWIubWQtZGVuc2UgLm1kLXJpcHBsZS13YXZlLC5tZC1mYWIubWQtbWluaSAubWQtcmlwcGxlLXdhdmUsLm1kLWljb24tYnV0dG9uIC5tZC1yaXBwbGUtd2F2ZXt0b3A6MCFpbXBvcnRhbnQ7cmlnaHQ6MCFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50O2xlZnQ6MCFpbXBvcnRhbnR9Lm1kLWljb24tYnV0dG9ue3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOjAgNnB4fS5tZC1pY29uLWJ1dHRvbi5tZC1kZW5zZXt3aWR0aDozMnB4O21pbi13aWR0aDozMnB4O2hlaWdodDozMnB4fS5tZC1pY29uLWJ1dHRvbiAubWQtcmlwcGxlLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLWZhYntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbn0ubWQtZmFiOmFjdGl2ZXtib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTJweCAxN3B4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjJweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1mYWIubWQtZGVuc2UsLm1kLWZhYi5tZC1taW5pe3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHh9Lm1kLWZhYi5tZC1mYWItdG9wLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tY2VudGVyLC5tZC1mYWIubWQtZmFiLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0b3A6MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tcmlnaHQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3JpZ2h0OjI0cHh9Lm1kLWZhYi5tZC1mYWItYm90dG9tLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLWxlZnR7bGVmdDoyNHB4fS5tZC1mYWIubWQtZml4ZWR7cG9zaXRpb246Zml4ZWR9Lm1kLWZhYiAubWQtcmlwcGxle3BhZGRpbmc6MH0ubWQtYnV0dG9uLWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJke2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcn0ubWQtY2FyZC5tZC13aXRoLWhvdmVye2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksYm94LXNoYWRvdyAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93fS5tZC1jYXJkLm1kLXdpdGgtaG92ZXI6aG92ZXJ7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtY2FyZC5tZC1leHBhbmQtYWN0aXZlIC5tZC1jYXJkLWV4cGFuZC10cmlnZ2VyLm1kLWljb24tYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ubWQtY2FyZCAubWQtc3ViaGVhZCwubWQtY2FyZCAubWQtc3ViaGVhZGluZywubWQtY2FyZCAubWQtdGl0bGV7bWFyZ2luOjA7Zm9udC13ZWlnaHQ6NDAwfS5tZC1jYXJkIC5tZC1zdWJoZWFke29wYWNpdHk6LjU0O2ZvbnQtc2l6ZToxNHB4O2xldHRlci1zcGFjaW5nOi4wMWVtO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWNhcmQgLm1kLXN1YmhlYWQrLm1kLXRpdGxle21hcmdpbi10b3A6NHB4fS5tZC1jYXJkIC5tZC10aXRsZXtmb250LXNpemU6MjRweDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjMycHh9Lm1kLWNhcmQtYXJlYSwubWQtY2FyZD4ubWQtY2FyZC1hcmVhOm5vdCg6bGFzdC1jaGlsZCl7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpOmFmdGVye2hlaWdodDoxcHg7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpOm5vdCgubWQtaW5zZXQpOmFmdGVye3JpZ2h0OjA7bGVmdDowfS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKS5tZC1pbnNldDphZnRlcntyaWdodDoxNnB4O2xlZnQ6MTZweH0ubWQtY2FyZC1oZWFkZXJ7cGFkZGluZzoxNnB4fS5tZC1jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZD4ubWQtY2FyZC1oZWFkZXItdGV4dD4ubWQtdGl0bGU6Zmlyc3QtY2hpbGQsLm1kLWNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkPi5tZC10aXRsZTpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjhweH0ubWQtY2FyZC1oZWFkZXI6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjhweH0ubWQtY2FyZC1oZWFkZXIubWQtY2FyZC1oZWFkZXItZmxleHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtaGVhZGVyKy5tZC1jYXJkLWNvbnRlbnR7cGFkZGluZy10b3A6MH0ubWQtY2FyZC1oZWFkZXIrLm1kLWNhcmQtYWN0aW9uczpub3QoOmxhc3QtY2hpbGQpe3BhZGRpbmc6MCA4cHh9Lm1kLWNhcmQtaGVhZGVyPmltZ3tib3JkZXItcmFkaXVzOjUwJX0ubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhciwubWQtY2FyZC1oZWFkZXI+aW1ne21hcmdpbi1yaWdodDoxNnB4O2Zsb2F0OmxlZnR9Lm1kLWNhcmQtaGVhZGVyIC5tZC1hdmF0YXJ+Lm1kLXRpdGxlLC5tZC1jYXJkLWhlYWRlcj5pbWd+Lm1kLXRpdGxle2ZvbnQtc2l6ZToxNHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC1zdWJoZWFkLC5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC10aXRsZSwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC1zdWJoZWFkLC5tZC1jYXJkLWhlYWRlcj5pbWd+Lm1kLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0Oi00cHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDo4cHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLWhlYWRlci10ZXh0ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhe3dpZHRoOjgwcHg7aGVpZ2h0OjgwcHg7bWFyZ2luLWxlZnQ6MTZweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgODBweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWNhcmQtbWVkaWEubWQtbWVkaXVte3dpZHRoOjEyMHB4O2hlaWdodDoxMjBweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgMTIwcHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhLm1kLWJpZ3t3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDE2MHB4fS5tZC1jYXJkLW1lZGlhe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTl7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTk6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6NTYuMjUlO2Rpc3BsYXk6YmxvY2s7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMTYtOSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtM3tvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tNC0zOmJlZm9yZXt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjc1JTtkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtMyBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTEtMXtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMS0xOmJlZm9yZXt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjEwMCU7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCIgXFxcIn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby0xLTEgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7cmlnaHQ6MDtsZWZ0OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1oZWFkZXJ7cGFkZGluZy10b3A6MjRweH0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1jb250ZW50Omxhc3QtY2hpbGR7cGFkZGluZy1ib3R0b206MTZweH0ubWQtY2FyZC1tZWRpYSBpbWd7d2lkdGg6MTAwJX0ubWQtY2FyZC1tZWRpYS1hY3Rpb25ze3BhZGRpbmc6MTZweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1tZWRpYXttYXgtd2lkdGg6MjQwcHg7bWF4LWhlaWdodDoyNDBweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxfS5tZC1jYXJkLW1lZGlhLWFjdGlvbnMgLm1kLWNhcmQtYWN0aW9uc3ttYXJnaW4tbGVmdDoxNnB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW46OHB4IDAgMH0ubWQtY2FyZC1tZWRpYS1jb3Zlcntwb3NpdGlvbjpyZWxhdGl2ZTtjb2xvcjojZmZmfS5tZC1jYXJkLW1lZGlhLWNvdmVyLm1kLXNvbGlkIC5tZC1jYXJkLWFyZWF7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41NCl9Lm1kLWNhcmQtbWVkaWEtY292ZXIubWQtdGV4dC1zY3JpbSAubWQtY2FyZC1iYWNrZHJvcHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjF9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtYXJlYXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjJ9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtYXJlYSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1oZWFkZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1hY3Rpb25ze3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLXN1YmhlYWR7b3BhY2l0eToxfS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb257Y29sb3I6I2ZmZiFpbXBvcnRhbnR9Lm1kLWNhcmQtY29udGVudHtwYWRkaW5nOjE2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjJweH0ubWQtY2FyZC1jb250ZW50Omxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbToyNHB4fS5tZC1jYXJkLWV4cGFuZHtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1leHBhbmQtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lm1kLWNhcmQtZXhwYW5kLXRyaWdnZXIubWQtaWNvbi1idXR0b257dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC1jYXJkLWV4cGFuZC1jb250ZW50e292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksbWFyZ2luLXRvcDt3aWxsLWNoYW5nZTpvcGFjaXR5LG1hcmdpbi10b3B9Lm1kLWNhcmQtYWN0aW9uc3twYWRkaW5nOjhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXJpZ2h0ey13ZWJraXQtYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtY2FyZC1hY3Rpb25zLm1kLWFsaWdubWVudC1sZWZ0ey13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm1kLWNhcmQtYWN0aW9ucy5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbnstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjRweH0ubWQtY2hlY2tib3h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGVja2JveDpub3QoLm1kLWRpc2FibGVkKSwubWQtY2hlY2tib3g6bm90KC5tZC1kaXNhYmxlZCkgLm1kLWNoZWNrYm94LWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVye3dpZHRoOjIwcHg7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2JvcmRlci1yYWRpdXM6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt3aWR0aDo2cHg7aGVpZ2h0OjEzcHg7dG9wOjA7bGVmdDo1cHg7ei1pbmRleDo2O2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDowO2JvcmRlci1sZWZ0OjA7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZykgc2NhbGUzRCguMTUsLjE1LDEpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoLjE1LC4xNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2hlY2tib3gubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoMSwxLDEpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoMSwxLDEpO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1jaGVja2JveC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1jaGVja2JveC1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0ubWQtY2hlY2tib3gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtY2hpcHMubWQtZmllbGR7cGFkZGluZy10b3A6MTJweDtmbGV4LXdyYXA6d3JhcH0ubWQtY2hpcHMubWQtZmllbGQubWQtaGFzLXZhbHVlIGxhYmVse3RvcDotNnB4fS5tZC1jaGlwcy5tZC1maWVsZCAubWQtY2hpcHttYXJnaW4tYm90dG9tOjRweH0ubWQtY2hpcHMubWQtZmllbGQgLm1kLWNoaXA6bGFzdC1vZi10eXBle21hcmdpbi1yaWdodDo4cHh9Lm1kLWNoaXBzLm1kLWZpZWxkIC5tZC1pbnB1dHttaW4td2lkdGg6MTI4cHh9Lm1kLWZpZWxke3dpZHRoOjEwMCU7bWluLWhlaWdodDo0OHB4O21hcmdpbjo0cHggMCAyNHB4O3BhZGRpbmctdG9wOjE2cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6aW5oZXJpdH0ubWQtZmllbGQ6YWZ0ZXIsLm1kLWZpZWxkOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2xlZnQ6MDt6LWluZGV4OjE7dHJhbnNpdGlvbjpib3JkZXIgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt0cmFuc2l0aW9uOmJvcmRlciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt0cmFuc2l0aW9uOmJvcmRlciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zcywtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1maWVsZDphZnRlcntoZWlnaHQ6MXB4fS5tZC1maWVsZDpiZWZvcmV7aGVpZ2h0OjJweDt6LWluZGV4OjI7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMTIpO3RyYW5zZm9ybTpzY2FsZVgoLjEyKX0ubWQtZmllbGQgbGFiZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIzcHg7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjBweH0ubWQtZmllbGQgLm1kLWlucHV0LC5tZC1maWVsZCAubWQtdGV4dGFyZWF7d2lkdGg6MTAwJTtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jazstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmZvbnQtc2l6ZSxwYWRkaW5nLXRvcCxjb2xvcjtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcHg7bGluZS1oZWlnaHQ6MzJweH0ubWQtZmllbGQgLm1kLWlucHV0W3R5cGU9ZGF0ZV0sLm1kLWZpZWxkIC5tZC10ZXh0YXJlYVt0eXBlPWRhdGVde2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZCAubWQtaW5wdXRbZGlzYWJsZWRdLC5tZC1maWVsZCAubWQtdGV4dGFyZWFbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fS5tZC1maWVsZCAubWQtaW5wdXQ6Zm9jdXMsLm1kLWZpZWxkIC5tZC10ZXh0YXJlYTpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWZpZWxkIC5tZC1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwubWQtZmllbGQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2ZvbnQtc2l6ZToxNnB4O3RleHQtc2hhZG93Om5vbmU7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6aW5pdGlhbDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmZvbnQtc2l6ZSxjb2xvcn0ubWQtZmllbGQgLm1kLXRleHRhcmVhe21pbi1oZWlnaHQ6MzJweDttYXgtaGVpZ2h0OjIzMHB4O3BhZGRpbmc6NXB4IDA7cmVzaXplOm5vbmU7bGluZS1oZWlnaHQ6MS4zZW19Lm1kLWZpZWxkIC5tZC1jb3VudCwubWQtZmllbGQgLm1kLWVycm9yLC5tZC1maWVsZCAubWQtaGVscGVyLXRleHR7aGVpZ2h0OjIwcHg7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0yMnB4O2ZvbnQtc2l6ZToxMnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1maWVsZCAubWQtZXJyb3J7ZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7bGVmdDowO29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKX0ubWQtZmllbGQgLm1kLWNvdW50e3JpZ2h0OjB9Lm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb257d2lkdGg6MzJweDttaW4td2lkdGg6MzJweDtoZWlnaHQ6MzJweDttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTZweDtyaWdodDowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1lbnRlci1hY3RpdmUsLm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb24ubWQtaW5wdXQtYWN0aW9uLWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjB9Lm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb24ubWQtaW5wdXQtYWN0aW9uLWVudGVyLXRve29wYWNpdHk6MX0ubWQtZmllbGQ+Lm1kLWljb257bWFyZ2luOjRweCBhdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mzt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtZmllbGQ+Lm1kLWljb246bGFzdC1vZi10eXBlOm5vdCg6Zmlyc3QtY2hpbGQpOmFmdGVye2Rpc3BsYXk6bm9uZX0ubWQtZmllbGQ+Lm1kLWljb246YWZ0ZXJ7d2lkdGg6MzdweDtoZWlnaHQ6NHB4O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTFweDtib3R0b206LTVweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtjb250ZW50OlxcXCJcXFwifS5tZC1maWVsZD4ubWQtaWNvbn5sYWJlbHtsZWZ0OjM2cHh9Lm1kLWZpZWxkPi5tZC1pY29ufi5tZC1maWxlLC5tZC1maWVsZD4ubWQtaWNvbn4ubWQtaW5wdXQsLm1kLWZpZWxkPi5tZC1pY29ufi5tZC10ZXh0YXJlYXttYXJnaW4tbGVmdDoxMnB4fS5tZC1maWVsZCsubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpe21hcmdpbi10b3A6MzZweH0ubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIGxhYmVse3BvaW50ZXItZXZlbnRzOmF1dG87dG9wOjEwcHg7b3BhY2l0eTowO2ZvbnQtc2l6ZToxMnB4fS5tZC1maWVsZC5tZC1oYXMtcGxhY2Vob2xkZXIgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1oYXMtcGxhY2Vob2xkZXIgLm1kLXRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YWZ0ZXIsLm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7aGVpZ2h0OmF1dG87cG9pbnRlci1ldmVudHM6bm9uZTt0b3A6MDtib3R0b206MDstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO2JhY2tncm91bmQ6bm9uZSFpbXBvcnRhbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjNweH0ubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZXtib3JkZXItd2lkdGg6MnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgbGFiZWx7dG9wOjE2cHg7bGVmdDoxNnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLXRleHRhcmVhe21pbi1oZWlnaHQ6MTAwcHg7cGFkZGluZzowIDE2cHg7cmVzaXplOnZlcnRpY2FsfS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk+Lm1kLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjZweDtyaWdodDo2cHg7ei1pbmRleDozfS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLWNvdW50e3JpZ2h0OjZweDtib3R0b206MnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLWNsZWFye3RvcDo2cHg7cmlnaHQ6NnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtZm9jdXNlZCBsYWJlbCwubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpLm1kLWhhcy12YWx1ZSBsYWJlbHt0b3A6NnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhe3BhZGRpbmctdG9wOjEwcHh9Lm1kLWZpZWxkLm1kLWhhcy1maWxlOmFmdGVyLC5tZC1maWVsZC5tZC1oYXMtZmlsZTpiZWZvcmUsLm1kLWZpZWxkLm1kLWhhcy1maWxlIGxhYmVse2xlZnQ6MzZweH0ubWQtZmllbGQubWQtaGFzLWZpbGUgLm1kLWlucHV0e21hcmdpbi1sZWZ0OjEycHh9Lm1kLWZpZWxkLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1maWVsZC5tZC1oaWdobGlnaHQ6YmVmb3Jle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmJvcmRlcixvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtLC13ZWJraXQtdHJhbnNmb3JtfS5tZC1maWVsZC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgbGFiZWx7cG9pbnRlci1ldmVudHM6YXV0bzt0b3A6MDtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHh9Lm1kLWZpZWxkLm1kLWZvY3VzZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtaGFzLXZhbHVlIC5tZC10ZXh0YXJlYXtmb250LXNpemU6MTZweH0ubWQtZmllbGQubWQtaW5saW5lIGxhYmVse3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1mb2N1c2VkIGxhYmVse3RvcDoyM3B4O2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtaGFzLXZhbHVlIGxhYmVse29wYWNpdHk6MH0ubWQtZmllbGQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZDowIDEwMCUgcmVwZWF0LXg7YmFja2dyb3VuZC1zaXplOjRweCAxcHh9Lm1kLWZpZWxkLm1kLWhhcy1wYXNzd29yZCAubWQtdG9nZ2xlLXBhc3N3b3Jke21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOi0ycHh9Lm1kLWZpZWxkLm1kLWhhcy1wYXNzd29yZCAubWQtdG9nZ2xlLXBhc3N3b3JkIHN2Z3t3aWR0aDoyMnB4O2hlaWdodDoyMnB4fS5tZC1maWVsZC5tZC1jbGVhcmFibGUgLm1kLWlucHV0e3BhZGRpbmctcmlnaHQ6MzBweH1ALXdlYmtpdC1rZXlmcmFtZXMgYXsxMCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTFweCwwLDApfTMwJSw3MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCl9NDAlLDYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNHB4LDAsMCl9fUBrZXlmcmFtZXMgYXsxMCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTFweCwwLDApfTMwJSw3MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCl9NDAlLDYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNHB4LDAsMCl9fS5tZC1maWVsZC5tZC1pbnZhbGlkLm1kLWhhcy12YWx1ZSBsYWJlbDpub3QoOmZvY3VzKXstd2Via2l0LWFuaW1hdGlvbjphIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RoO2FuaW1hdGlvbjphIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RoOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47LXdlYmtpdC1wZXJzcGVjdGl2ZToxMDAwcHg7cGVyc3BlY3RpdmU6MTAwMHB4fS5tZC1maWVsZC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLXdpZHRoOjJweH0ubWQtZmllbGQubWQtaW52YWxpZCAubWQtZXJyb3J7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWZpZWxkLm1kLWludmFsaWQgLm1kLWhlbHBlci10ZXh0e29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKX0ubWQtZmllbGQubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtaWNvbnt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZvbnQtc2l6ZToyNHB4IWltcG9ydGFudDttYXJnaW46YXV0bztkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlfS5tZC1pY29uLm1kLXNpemUtMnh7d2lkdGg6NDhweDttaW4td2lkdGg6NDhweDtoZWlnaHQ6NDhweDtmb250LXNpemU6NDhweCFpbXBvcnRhbnR9Lm1kLWljb24ubWQtc2l6ZS0zeHt3aWR0aDo3MnB4O21pbi13aWR0aDo3MnB4O2hlaWdodDo3MnB4O2ZvbnQtc2l6ZTo3MnB4IWltcG9ydGFudH0ubWQtaWNvbi5tZC1zaXplLTR4e3dpZHRoOjk2cHg7bWluLXdpZHRoOjk2cHg7aGVpZ2h0Ojk2cHg7Zm9udC1zaXplOjk2cHghaW1wb3J0YW50fS5tZC1pY29uLm1kLXNpemUtNXh7d2lkdGg6MTIwcHg7bWluLXdpZHRoOjEyMHB4O2hlaWdodDoxMjBweDtmb250LXNpemU6MTIwcHghaW1wb3J0YW50fS5tZC1pY29uLWltYWdlIHN2Z3toZWlnaHQ6MTAwJTstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO3RyYW5zaXRpb246ZmlsbCAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWljb257dHJhbnNpdGlvbjpjb2xvciAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlyZWN0aW9uOmx0cjtmb250LWZhbWlseTpNYXRlcmlhbCBJY29uczstd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczpcXFwibGlnYVxcXCI7Zm9udC1mZWF0dXJlLXNldHRpbmdzOlxcXCJsaWdhXFxcIjtmb250LXN0eWxlOm5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1oZWlnaHQ6MTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7dGV4dC10cmFuc2Zvcm06bm9uZTt3b3JkLXdyYXA6bm9ybWFsO3doaXRlLXNwYWNlOm5vd3JhcDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0ubWQtc3ZnLWxvYWRlcntkaXNwbGF5OmJsb2NrfS5tZC1zdmctbG9hZGVyIHN2Z3t3aWR0aDoxMDAlfS5tZC1jaGlwe2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2N1cnNvcjpkZWZhdWx0O2JvcmRlci1yYWRpdXM6MzJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSxib3gtc2hhZG93LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93O3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSx0cmFuc2Zvcm0sYm94LXNoYWRvdztmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozMnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWNoaXA6Zm9jdXN7b3V0bGluZTpub25lfS5tZC1jaGlwLm1kLWNoaXAtZW50ZXItYWN0aXZlLC5tZC1jaGlwLm1kLWNoaXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2Zvcm1aKDApIHNjYWxlKC44KTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSguOCl9Lm1kLWNoaXAubWQtY2hpcC1lbnRlci10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKX0ubWQtY2hpcC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6YWN0aXZlLC5tZC1jaGlwLm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTphY3RpdmUsLm1kLWNoaXAubWQtZm9jdXNlZHtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNoaXAubWQtY2xpY2thYmxle3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0ubWQtY2hpcC5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtY2hpcC5tZC1kZWxldGFibGV7cGFkZGluZy1yaWdodDozMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGV7cGFkZGluZy1yaWdodDowfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nLXJpZ2h0OjMycHh9Lm1kLWNoaXAubWQtZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9Lm1kLWNoaXArLm1kLWNoaXB7bWFyZ2luLWxlZnQ6NHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjE4cHg7bWluLXdpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDo3cHg7ei1pbmRleDo1Oy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTUwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwtNTAlLDApO3RyYW5zaXRpb24tZHVyYXRpb246LjNzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO2ZvbnQtc2l6ZToxOHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1yaXBwbGV7cGFkZGluZzowfS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1idXR0b24tY29udGVudHtoZWlnaHQ6MTRweH0ubWQtY2hpcCAubWQtYnV0dG9uLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbnt3aWR0aDoxNHB4O21pbi13aWR0aDoxNHB4O2hlaWdodDoxNHB4O2ZvbnQtc2l6ZToxNHB4IWltcG9ydGFudDt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLWljb24gc3Zne3RyYW5zaXRpb24tZHVyYXRpb246LjNzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1kYXRlcGlja2VyLW92ZXJsYXl7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyIC5tZC1kYXRlLWljb257Y3Vyc29yOnBvaW50ZXJ9Lm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yLC5tZC1kYXRlcGlja2VyIGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtY2xlYXItYnV0dG9uLC5tZC1kYXRlcGlja2VyIGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b257ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1vdmVybGF5e29wYWNpdHk6MX19Lm1kLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDo0O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7d2lsbC1jaGFuZ2U6b3BhY2l0eX0ubWQtb3ZlcmxheS5tZC1maXhlZCxib2R5Pi5tZC1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkfS5tZC1vdmVybGF5LWVudGVyLC5tZC1vdmVybGF5LWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjB9Lm1kLWRhdGVwaWNrZXItZGlhbG9ne2JveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSx0cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGxlZnQsdG9wfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjkpO3RyYW5zZm9ybTpzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLWVudGVyIC5tZC1kYXRlcGlja2VyLWJvZHkgLm1kLWRhdGVwaWNrZXItY2FsZW5kYXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMTAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDEwJSwwKX0ubWQtZGF0ZXBpY2tlci1oZWFkZXJ7bWluLXdpZHRoOjE1MHB4O3BhZGRpbmc6MTZweH0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3R7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNTQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXItZGF0ZS1zZWxlY3R7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNTQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtmb250LXNpemU6MzJweDtmb250LXdlaWdodDo5MDA7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDoxLjJlbX0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXItZGF5bmFtZXtkaXNwbGF5OmJsb2NrfS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtc2VsZWN0ZWR7b3BhY2l0eToxfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6MzIwcHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOndpZHRofS5tZC1kYXRlcGlja2VyLWJvZHkgLm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcntwYWRkaW5nOjhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmFmdGVyLC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czpub25lO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmFmdGVye2xlZnQ6MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7cmlnaHQ6MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlciAubWQtYnV0dG9ue3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDozfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWVudGVyIC5tZC1idXR0b246Zmlyc3QtY2hpbGQsLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXItbGVhdmUtYWN0aXZlIC5tZC1idXR0b246Zmlyc3QtY2hpbGR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1MCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1MCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1lbnRlciAubWQtYnV0dG9uOmxhc3QtY2hpbGQsLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXItbGVhdmUtYWN0aXZlIC5tZC1idXR0b246bGFzdC1jaGlsZHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxNTAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDE1MCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1ib2R5LWNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246aGVpZ2h0IC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1kYXRlcGlja2VyLXBhbmVse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLWRhdGVwaWNrZXItdmlldy1lbnRlciwubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1kYXRlcGlja2VyLXZpZXctbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLXByZXZpb3VzIC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtcHJldmlvdXMgLm1kLWRhdGVwaWNrZXItbW9udGgtZW50ZXIgLm1kLWRhdGVwaWNrZXItbW9udGgtdHJpZ2dlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMzAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0zMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyLC5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLXByZXZpb3VzIC5tZC1kYXRlcGlja2VyLW1vbnRoLWxlYXZlLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgxMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMzAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDMwJSwwLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLW5leHQgLm1kLWRhdGVwaWNrZXItbW9udGgtbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItbW9udGh7dG9wOjhweDtib3R0b206YXV0bzstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGggLm1kLWRhdGVwaWNrZXItbW9udGgtdHJpZ2dlcnttaW4taGVpZ2h0OjMycHg7bWFyZ2luOjAgNDZweCAxMHB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7Ym9yZGVyLXJhZGl1czowO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjQ1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNDVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40NXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjQ1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLWRhdGVwaWNrZXItd2Vla3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1kYXRlcGlja2VyLXdlZWsgc3Bhbnstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246Y2VudGVyfS5tZC1kYXRlcGlja2VyLWRheXN7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXksLm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1lbXB0eXttYXJnaW46MXB4IDA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWZsZXg6MDtmbGV4OjAgMSAxNC4yODU3MSV9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXktYnV0dG9ue3dpZHRoOjMwcHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozMHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLXRvZGF5e2ZvbnQtd2VpZ2h0OjcwMH0ubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3J7cGFkZGluZzo2cHggOHB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym90dG9tOmF1dG87dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLW1vbnRoLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX0ubWQtZGF0ZXBpY2tlci1tb250aC1zZWxlY3RvciAubWQtZGF0ZXBpY2tlci15ZWFyLXRyaWdnZXJ7d2lkdGg6MTAwJTttYXJnaW46MCAwIDhweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxIDEgMTAwJX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b257aGVpZ2h0OjM2cHg7bWFyZ2luOjNweCAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b257LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MSAxIDMzLjMzMzMlO2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmF1dG87Ym90dG9tOjUycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWR9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3Rvci5tZC1kYXRlcGlja2VyLXZpZXctZW50ZXIsLm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3Rvci5tZC1kYXRlcGlja2VyLXZpZXctbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvciAubWQtYnV0dG9ue21pbi1oZWlnaHQ6MzZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbntmb250LXNpemU6MTZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2ZvbnQtc2l6ZToyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1kaWFsb2d7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItaGVhZGVye21pbi13aWR0aDphdXRvO3BhZGRpbmc6MTZweCAyMHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6Mjk2cHh9Lm1kLWRhdGVwaWNrZXItbW9udGh7cGFkZGluZzowIDZweH19Lm1kLXBvcG92ZXIubWQtcmVuZGVyaW5ne29wYWNpdHk6MDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO21pbi13aWR0aDoyODBweDttYXgtd2lkdGg6ODAlO21heC1oZWlnaHQ6ODAlO21hcmdpbjphdXRvO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpjb2x1bW47b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmZpeGVkO3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSx0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxsZWZ0LHRvcH0ubWQtZGlhbG9nPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nPi5tZC1kaWFsb2ctY29udGVudCwubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtfS5tZC1kaWFsb2ctZW50ZXItYWN0aXZlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC45KX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLWFjdGlvbnMsLm1kLWRpYWxvZy1lbnRlci1hY3RpdmU+Lm1kLWRpYWxvZy1jb250ZW50LC5tZC1kaWFsb2ctZW50ZXItYWN0aXZlPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLXRpdGxlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZT4ubWQtZGlhbG9nLWNvbnRlbnQsLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmU+Lm1kLWRpYWxvZy10YWJzLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctdGl0bGV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC45NSkgdHJhbnNsYXRlM0QoMCwxMCUsMCk7dHJhbnNmb3JtOnNjYWxlKC45NSkgdHJhbnNsYXRlM0QoMCwxMCUsMCl9Lm1kLWRpYWxvZy1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OmNvbHVtbn0ubWQtZGlhbG9nLWNvbnRhaW5lciwubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFic3std2Via2l0LWJveC1mbGV4OjE7ZmxleDoxfS5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJzLW5hdmlnYXRpb257cGFkZGluZzowIDEycHh9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJ7cGFkZGluZzoxMnB4fS5tZC1kaWFsb2ctZnVsbHNjcmVlbnttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7cG9zaXRpb246Zml4ZWQ7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9Lm1kLWRpYWxvZy1mdWxsc2NyZWVuLm1kLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMzAlLDApfS5tZC1kaWFsb2ctZnVsbHNjcmVlbi5tZC1kaWFsb2ctbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX19Lm1kLWRpYWxvZy10aXRsZXttYXJnaW4tYm90dG9tOjIwcHg7cGFkZGluZzoyNHB4IDI0cHggMH0ubWQtZGlhbG9nLWNvbnRlbnR7cGFkZGluZzowIDI0cHggMjRweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6YXV0bztvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1kaWFsb2ctY29udGVudDpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDoyNHB4fS5tZC1kaWFsb2ctY29udGVudCBwOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCl7bWFyZ2luLXRvcDowfS5tZC1kaWFsb2ctY29udGVudCBwOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tYm90dG9tOjB9Lm1kLWRpYWxvZy1hY3Rpb25ze21pbi1oZWlnaHQ6NTJweDtwYWRkaW5nOjhweCA4cHggOHB4IDI0cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWRpYWxvZy1hY3Rpb25zOmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMXB4O3JpZ2h0OjA7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9ue21pbi13aWR0aDo2NHB4O21hcmdpbjowfS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6YmxvY2s7Ym9yZGVyOjA7dHJhbnNpdGlvbjptYXJnaW4tbGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6bWFyZ2luLWxlZnR9Lm1kLWRpdmlkZXIubWQtaW5zZXR7bWFyZ2luLWxlZnQ6NzJweH0ubWQtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4Ojc7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvdzt3aWR0aDo0MDBweDttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDU2cHgpO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0b30ubWQtZHJhd2VyLm1kLXJpZ2h0e3JpZ2h0OjA7bGVmdDphdXRvOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMTAwJSwwLDApfS5tZC1kcmF3ZXIubWQtZml4ZWR7cG9zaXRpb246Zml4ZWR9Lm1kLWRyYXdlci5tZC1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWRyYXdlci5tZC10ZW1wb3JhcnkrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXRlbXBvcmFyeS5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50Om5vdCgubWQtYWN0aXZlKSsubWQtYXBwLWNvbnRhaW5lciAubWQtY29udGVudHtib3JkZXItbGVmdDpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pe2JvcmRlci1yaWdodDoxcHggc29saWQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCw2NHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDY0cHgsMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp3aWR0aCwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aCwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvd30ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaS5tZC1hY3RpdmUrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSl7d2lkdGg6NzBweCFpbXBvcnRhbnQ7ei1pbmRleDoxO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSkgLm1kLXRvb2xiYXJ7ZGlzcGxheTpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pOm5vdCgubWQtYWN0aXZlKSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZzowIDIzcHh9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50LW1pbmkubWQtYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3doaXRlLXNwYWNlOm5vcm1hbH0ubWQtZHJhd2VyIC5tZC1saXN0LWl0ZW0tY29udGFpbmVye2ZvbnQtc2l6ZToxNHB4O3RleHQtdHJhbnNmb3JtOm5vbmV9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kcmF3ZXJ7d2lkdGg6MzIwcHh9Lm1kLWRyYXdlci5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9fUBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsubWQtZHJhd2VyOm5vdCgubWQtdGVtcG9yYXJ5KX4ubWQtb3ZlcmxheXtiYWNrZ3JvdW5kOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudHtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1mdWxse3otaW5kZXg6M30ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1mdWxsIC5tZC1saXN0e3BhZGRpbmctdG9wOjB9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZCwubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jbGlwcGVke3otaW5kZXg6MX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jYXJke2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjt3aWxsLWNoYW5nZTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO21hcmdpbjo4cHg7ei1pbmRleDoxfX1AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHttYXJnaW46MTZweH19QG1lZGlhIChtaW4td2lkdGg6MTI4MHB4KXsubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jYXJke21hcmdpbjoyNHB4fX0ubWQtZWxldmF0aW9uLTB7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMXtib3gtc2hhZG93OjAgMnB4IDFweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgMXB4IDFweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAzcHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0ye2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTN7Ym94LXNoYWRvdzowIDNweCAzcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDNweCA0cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggOHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNHtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNXtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNXB4IDhweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxNHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTd7Ym94LXNoYWRvdzowIDRweCA1cHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDdweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAycHggMTZweCAxcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tOHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi05e2JveC1zaGFkb3c6MCA1cHggNnB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA5cHggMTJweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE2cHggMnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEwe2JveC1zaGFkb3c6MCA2cHggNnB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCAxMHB4IDE0cHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDRweCAxOHB4IDNweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xMXtib3gtc2hhZG93OjAgNnB4IDdweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTFweCAxNXB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCA0cHggMjBweCAzcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTJ7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEycHggMTdweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDIycHggNHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEze2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxM3B4IDE5cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyNHB4IDRweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xNHtib3gtc2hhZG93OjAgN3B4IDlweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTRweCAyMXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjZweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTV7Ym94LXNoYWRvdzowIDhweCA5cHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE1cHggMjJweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDI4cHggNXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE2e2JveC1zaGFkb3c6MCA4cHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTZweCAyNHB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzBweCA1cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTd7Ym94LXNoYWRvdzowIDhweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxN3B4IDI2cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMnB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xOHtib3gtc2hhZG93OjAgOXB4IDExcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE4cHggMjhweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgN3B4IDM0cHggNnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE5e2JveC1zaGFkb3c6MCA5cHggMTJweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMTlweCAyOXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA3cHggMzZweCA2cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjB7Ym94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjBweCAzMXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggMzhweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjF7Ym94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjFweCAzM3B4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDBweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjJ7Ym94LXNoYWRvdzowIDEwcHggMTRweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjJweCAzNXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDJweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjN7Ym94LXNoYWRvdzowIDExcHggMTRweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjNweCAzNnB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDRweCA4cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjR7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbXB0eS1zdGF0ZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO21heC13aWR0aDo0MjBweDtwYWRkaW5nOjM2cHg7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1lbXB0eS1zdGF0ZS5tZC1yb3VuZGVke21heC13aWR0aDphdXRvO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1lbXB0eS1zdGF0ZS5tZC1yb3VuZGVkIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7cGFkZGluZzo0MHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS5tZC1lbXB0eS1zdGF0ZSAubWQtYnV0dG9ue21hcmdpbjouNWVtIDAgMH0ubWQtZW1wdHktc3RhdGUtZW50ZXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC44Nyk7dHJhbnNmb3JtOnNjYWxlKC44Nyl9Lm1kLWVtcHR5LXN0YXRlLWVudGVyIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7b3BhY2l0eTowfS5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLWljb257d2lkdGg6MTYwcHg7bWluLXdpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtmb250LXNpemU6MTYwcHghaW1wb3J0YW50O21hcmdpbjowfS5tZC1lbXB0eS1zdGF0ZS1sYWJlbHtmb250LXNpemU6MjZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6NDBweH0ubWQtZW1wdHktc3RhdGUtZGVzY3JpcHRpb257bWFyZ2luOjFlbSAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI0cHh9Lm1kLW1lbnUubWQtc2VsZWN0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLW1lbnUubWQtc2VsZWN0Om5vdCgubWQtZGlzYWJsZWQpIC5tZC1pY29uLC5tZC1tZW51Lm1kLXNlbGVjdDpub3QoLm1kLWRpc2FibGVkKSAubWQtaW5wdXR7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTpub25lfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtbWVudS5tZC1zZWxlY3QgLm1kLWlucHV0LWZha2UsLm1kLW1lbnUubWQtc2VsZWN0IHNlbGVjdHt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwIDAgMCAwKTtib3JkZXI6MH0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51e3dpZHRoOjEwMCV9Lm1kLW1lbnUtY29udGVudC5tZC1zZWxlY3QtbWVudS5tZC1tZW51LWNvbnRlbnQtZW50ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguMyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjMpfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnUgLm1kLWxpc3R7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51IC5tZC1kZW5zZSAubWQtcmlwcGxlLm1kLWxpc3QtaXRlbS1jb250ZW50e2ZvbnQtc2l6ZToxNHB4fS5tZC1tZW51e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1tZW51Pi5tZC1idXR0b257bWFyZ2luOjB9Lm1kLW1lbnUtY29udGVudHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMik7bWluLXdpZHRoOjExMnB4O21heC13aWR0aDoyODBweDttYXgtaGVpZ2h0OjM1dmg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSx0b3AsbGVmdCFpbXBvcnRhbnR9Lm1kLW1lbnUtY29udGVudC5tZC1zaGFsbG93e3Bvc2l0aW9uOmZpeGVkIWltcG9ydGFudDt0b3A6LTk5OTllbSFpbXBvcnRhbnQ7bGVmdDotOTk5OWVtIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLWFjdGl2ZXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtvcGFjaXR5OjB9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXRvcC1zdGFydHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Ym90dG9tIGxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gbGVmdDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXRvcC1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSByaWdodDt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSByaWdodDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXJpZ2h0LXN0YXJ0ey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgdG9wOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1yaWdodC1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b207LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1ib3R0b20tc3RhcnR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCByaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnRvcCByaWdodDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtbGVmdC1zdGFydHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1sZWZ0LWVuZHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlciAubWQtbGlzdHtvcGFjaXR5OjB9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtbWVkaXVte21pbi13aWR0aDoxNjhweH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1iaWd7bWluLXdpZHRoOjIyNHB4fS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWh1Z2V7bWluLXdpZHRoOjI4MHB4fS5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6YXV0b30ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lciAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHk7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyIC5tZC1saXN0e2ZvbnQtc2l6ZToxNHB4fX0ubWQtbGlzdHttYXJnaW46MDtwYWRkaW5nOjhweCAwO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpjb2x1bW4gbm93cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO2xpc3Qtc3R5bGU6bm9uZX0ubWQtbGlzdC5tZC1kZW5zZXtwYWRkaW5nOjRweCAwfS5tZC1saXN0IC5tZC1kaXZpZGVye21hcmdpbi10b3A6LTFweH0ubWQtbGlzdCAubWQtc3ViaGVhZGVyLm1kLWluc2V0e3BhZGRpbmctbGVmdDo3MnB4fS5tZC1saXN0Pi5tZC1zdWJoZWFkZXI6Zmlyc3Qtb2YtdHlwZXttYXJnaW4tdG9wOi04cHh9Lm1kLW9wdGdyb3VwIC5tZC1zdWJoZWFkZXJ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5tZC1vcHRncm91cCAubWQtcmlwcGxlLm1kLWxpc3QtaXRlbS1jb250ZW50e3BhZGRpbmctbGVmdDoyNHB4fS5tZC1maWxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLWZpbGUgaW5wdXRbdHlwZT1maWxlXXt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwIDAgMCAwKTtib3JkZXI6MH0ubWQtZmlsZSAubWQtaWNvbntjdXJzb3I6cG9pbnRlcn0ubWQtaGlnaGxpZ2h0LXRleHR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtaGlnaGxpZ2h0LXRleHQtbWF0Y2h7Zm9udC13ZWlnaHQ6NTAwfS5tZC1pbWFnZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWxheW91dCAubWQtbGF5b3V0e2ZsZXg6MX0ubWQtbGF5b3V0IC5tZC1sYXlvdXQtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXB9Lm1kLWxheW91dC5tZC1jZW50ZXJlZHt3aWR0aDoxMDAlO21heC13aWR0aDoxMjAwcHg7bWFyZ2luOjAgYXV0b30ubWQtbGF5b3V0Lm1kLWd1dHRlcnttYXJnaW4tcmlnaHQ6LTIwcHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweH1AbWVkaWEgKG1heC13aWR0aDoxMjY0cHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotMTJweDttYXJnaW4tbGVmdDotMTJweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoxMnB4fX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLWxheW91dC5tZC1ndXR0ZXJ7bWFyZ2luLXJpZ2h0Oi04cHg7bWFyZ2luLWxlZnQ6LThweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjhweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotNHB4O21hcmdpbi1sZWZ0Oi00cHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDo0cHh9fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlciwubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1jZW50ZXItY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tc3BhY2UtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDthbGlnbi1pdGVtczpzcGFjZS1hcm91bmR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYXJvdW5kLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtc3BhY2UtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7YWxpZ24taXRlbXM6c3BhY2UtYXJvdW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXNwYWNlLWFyb3VuZC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLXNwYWNlLWFyb3VuZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC1pdGVtLC5tZC1sYXlvdXQtaXRlbS5tZC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0xMHttaW4td2lkdGg6MTAlO21heC13aWR0aDoxMCU7ZmxleDowIDEgMTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0yNXttaW4td2lkdGg6MjUlO21heC13aWR0aDoyNSU7ZmxleDowIDEgMjUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS00MHttaW4td2lkdGg6NDAlO21heC13aWR0aDo0MCU7ZmxleDowIDEgNDAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS01NXttaW4td2lkdGg6NTUlO21heC13aWR0aDo1NSU7ZmxleDowIDEgNTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS03MHttaW4td2lkdGg6NzAlO21heC13aWR0aDo3MCU7ZmxleDowIDEgNzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS04NXttaW4td2lkdGg6ODUlO21heC13aWR0aDo4NSU7ZmxleDowIDEgODUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0zM3ttaW4td2lkdGg6MzMuMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMlO2ZsZXg6MCAxIDMzLjMzMzMlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemV7ZmxleDoxIDF9Lm1kLWxheW91dC1pdGVtLm1kLW1lZGl1bS1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTV7bWluLXdpZHRoOjE1JTttYXgtd2lkdGg6MTUlO2ZsZXg6MCAxIDE1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzB7bWluLXdpZHRoOjMwJTttYXgtd2lkdGg6MzAlO2ZsZXg6MCAxIDMwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDV7bWluLXdpZHRoOjQ1JTttYXgtd2lkdGg6NDUlO2ZsZXg6MCAxIDQ1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjB7bWluLXdpZHRoOjYwJTttYXgtd2lkdGg6NjAlO2ZsZXg6MCAxIDYwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzV7bWluLXdpZHRoOjc1JTttYXgtd2lkdGg6NzUlO2ZsZXg6MCAxIDc1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTB7bWluLXdpZHRoOjkwJTttYXgtd2lkdGg6OTAlO2ZsZXg6MCAxIDkwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjZ7bWluLXdpZHRoOjY2LjY2NjYlO21heC13aWR0aDo2Ni42NjY2JTtmbGV4OjAgMSA2Ni42NjY2JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZXtmbGV4OjEgMX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0xNXttaW4td2lkdGg6MTUlO21heC13aWR0aDoxNSU7ZmxleDowIDEgMTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0zMHttaW4td2lkdGg6MzAlO21heC13aWR0aDozMCU7ZmxleDowIDEgMzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS00NXttaW4td2lkdGg6NDUlO21heC13aWR0aDo0NSU7ZmxleDowIDEgNDUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02MHttaW4td2lkdGg6NjAlO21heC13aWR0aDo2MCU7ZmxleDowIDEgNjAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS03NXttaW4td2lkdGg6NzUlO21heC13aWR0aDo3NSU7ZmxleDowIDEgNzUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS05MHttaW4td2lkdGg6OTAlO21heC13aWR0aDo5MCU7ZmxleDowIDEgOTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02NnttaW4td2lkdGg6NjYuNjY2NiU7bWF4LXdpZHRoOjY2LjY2NjYlO2ZsZXg6MCAxIDY2LjY2NjYlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC14c21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwe21pbi13aWR0aDoxMCU7bWF4LXdpZHRoOjEwJTtmbGV4OjAgMSAxMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTI1e21pbi13aWR0aDoyNSU7bWF4LXdpZHRoOjI1JTtmbGV4OjAgMSAyNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQwe21pbi13aWR0aDo0MCU7bWF4LXdpZHRoOjQwJTtmbGV4OjAgMSA0MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTU1e21pbi13aWR0aDo1NSU7bWF4LXdpZHRoOjU1JTtmbGV4OjAgMSA1NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTcwe21pbi13aWR0aDo3MCU7bWF4LXdpZHRoOjcwJTtmbGV4OjAgMSA3MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTg1e21pbi13aWR0aDo4NSU7bWF4LXdpZHRoOjg1JTtmbGV4OjAgMSA4NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMze21pbi13aWR0aDozMy4zMzMzJTttYXgtd2lkdGg6MzMuMzMzMyU7ZmxleDowIDEgMzMuMzMzMyV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX0ubWQtaGlkZXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbWVkaXVtLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXNtYWxsLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXhzbWFsbC1oaWRle2Rpc3BsYXk6bm9uZX19Lm1kLWxpc3QtaXRlbXtoZWlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWxpc3QtaXRlbS5tZC1pbnNldCAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZy1sZWZ0OjcycHh9Lm1kLWxpc3QtaXRlbSAubWQtaWNvbnttYXJnaW46MDt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLG1hcmdpbi1yaWdodH0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06bm9uZX0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSl7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2N1cnNvcjpwb2ludGVyfS5tZC1saXN0LWl0ZW0tY29udGFpbmVyLm1kLWJ1dHRvbi1jbGVhbjpob3ZlcntvcGFjaXR5OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjRweCAxNnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3RyYW5zaXRpb246cGFkZGluZyAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6cGFkZGluZ30ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo0MHB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFye21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXI6bm90KC5tZC1zbWFsbCl7d2lkdGg6MzZweDttaW4td2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MjBweH0ubWQtbGlzdC5tZC1kb3VibGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo3MnB4fS5tZC1saXN0Lm1kLWRvdWJsZS1saW5lLm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjYwcHh9Lm1kLWxpc3QubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6ODhweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZS5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo3NnB4fS5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb257bWFyZ2luOjAgLTEwcHggMCAwfS5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb246bGFzdC1vZi10eXBle21hcmdpbjowIC0xMHB4IDAgMTZweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQgLm1kLWxpc3QtYWN0aW9uOmxhc3Qtb2YtdHlwZXthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1pY29uOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDozMnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtaWNvbjpsYXN0LWNoaWxke21hcmdpbi1sZWZ0OjE2cHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1jaGVja2JveCwubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXJhZGlve21hcmdpbjowfS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtY2hlY2tib3g6Zmlyc3QtY2hpbGQsLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1yYWRpbzpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MzZweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXN3aXRjaHttYXJnaW46MH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXN3aXRjaDpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MjJweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcnttYXJnaW46NHB4IDB9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXI6Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjE2cHh9Lm1kLWxpc3QtaXRlbS10ZXh0ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjVlbTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS10ZXh0e2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0LWl0ZW0tdGV4dCAqe3dpZHRoOjEwMCU7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjVlbTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDIpLC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDMpe2ZvbnQtc2l6ZToxNHB4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tdGV4dCAqe2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0LWl0ZW0tZXhwYW5ke2JvcmRlci10b3A6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHRyYW5zcGFyZW50O3RyYW5zaXRpb246Ym9yZGVyIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpib3JkZXJ9Lm1kLWxpc3QtaXRlbS1leHBhbmQubWQtYWN0aXZlIC5tZC1saXN0LWV4cGFuZC1pY29uey13ZWJraXQtcGVyc3BlY3RpdmU6MTAwMHB4O3BlcnNwZWN0aXZlOjEwMDBweDstd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlO3BlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgxODBkZWcpfS5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSAubWQtbGlzdC1leHBhbmR7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApfS5tZC1saXN0LWl0ZW0tZXhwYW5kIC5tZC1saXN0LWV4cGFuZHtoZWlnaHQ6MDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTI0cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTI0cHgsMCk7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sb3BhY2l0eX0ubWQtbGlzdC1pdGVtLWV4cGFuZCAubWQtbGlzdC1leHBhbmQtaWNvbnt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19QC13ZWJraXQta2V5ZnJhbWVzIGJ7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0yMCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfTYwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zLC4zOCwuNTUsLjk2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMywuMzgsLjU1LC45Nik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4My42NyUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDgzLjY3JSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAuNjElKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAuNjElKX19QGtleWZyYW1lcyBiezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjUsMCwuNywuNSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjUsMCwuNywuNSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX02MCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMywuMzgsLjU1LC45Nik7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMsLjM4LC41NSwuOTYpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoODMuNjclKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCg4My42NyUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSl9fUAtd2Via2l0LWtleWZyYW1lcyBjezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX0zNSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsLjEyLC43OSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsLjEyLC43OSwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9NzAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDYsLjExLC42LDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguNjYpO3RyYW5zZm9ybTpzY2FsZVgoLjY2KX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9fUBrZXlmcmFtZXMgY3swJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MzUley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMzLC4xMiwuNzksMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMzLC4xMiwuNzksMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfTcwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNiwuMTEsLjYsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjY2KTt0cmFuc2Zvcm06c2NhbGVYKC42Nil9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZHswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDM3LjY1JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMzcuNjUlKX01MCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4NC4zOSUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNjAuMjglKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNjAuMjglKX19QGtleWZyYW1lcyBkezAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0yNSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMzcuNjUlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgzNy42NSUpfTUwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsLjYzLC42LC45KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoODQuMzklKX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2MC4yOCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE2MC4yOCUpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZXswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX0yMCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguNDYpO3RyYW5zZm9ybTpzY2FsZVgoLjQ2KX00NSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC43Myk7dHJhbnNmb3JtOnNjYWxlWCguNzMpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX19QGtleWZyYW1lcyBlezAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfTIwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC40Nik7dHJhbnNmb3JtOnNjYWxlWCguNDYpfTQ1JXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsLjYzLC42LC45KTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjczKTt0cmFuc2Zvcm06c2NhbGVYKC43Myl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZnt0b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtOHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC04cHgsMCwwKX19QGtleWZyYW1lcyBme3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC04cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLThweCwwLDApfX0ubWQtcHJvZ3Jlc3MtYmFye2hlaWdodDo1cHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDEpO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlWSgxKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2ssLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre2xlZnQ6LTE1MCU7LXdlYmtpdC1hbmltYXRpb246YiAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmIgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpjIDJzIGluZmluaXRlIGxpbmVhcjthbmltYXRpb246YyAycyBpbmZpbml0ZSBsaW5lYXJ9Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtsZWZ0Oi01NSU7LXdlYmtpdC1hbmltYXRpb246ZCAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmQgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246ZSAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmUgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXIubWQtZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zaXRpb246LjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7ZGlzcGxheTpub25lfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci10b3A6NHB4IGRvdHRlZDstd2Via2l0LWFuaW1hdGlvbjpmIC4yNXMgaW5maW5pdGUgbGluZWFyO2FuaW1hdGlvbjpmIC4yNXMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnl7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5tZC1wcm9ncmVzcy1iYXItZW50ZXIsLm1kLXByb2dyZXNzLWJhci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTouNTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZVkoMCl9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifUAtd2Via2l0LWtleWZyYW1lcyBnezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwKTt0cmFuc2Zvcm06cm90YXRlKDApfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUBrZXlmcmFtZXMgZ3swJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMCk7dHJhbnNmb3JtOnJvdGF0ZSgwKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1ALXdlYmtpdC1rZXlmcmFtZXMgaHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKX0yMCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgaHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKX0yMCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fS5tZC1wcm9ncmVzcy1zcGlubmVye2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZXstd2Via2l0LWFuaW1hdGlvbjpnIDJzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246ZyAycyBsaW5lYXIgaW5maW5pdGV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguMSk7dHJhbnNmb3JtOnNjYWxlKC4xKX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZXstd2Via2l0LWFuaW1hdGlvbjo0cyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTthbmltYXRpb246NHMgaW5maW5pdGUgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1lbnRlci1hY3RpdmUsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoyc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3LC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWRldGVybWluYXRlLm1kLXByb2dyZXNzLXNwaW5uZXItbGVhdmUtYWN0aXZlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXd7LXdlYmtpdC1hbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkczthbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e3RyYW5zaXRpb246bm9uZX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e292ZXJmbG93OnZpc2libGU7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgcm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnNjYWxlKDEpIHJvdGF0ZSgtOTBkZWcpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle2ZpbGw6bm9uZTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zaXRpb246c3Ryb2tlLWRhc2hvZmZzZXQgLjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpzdHJva2UtZGFzaG9mZnNldCxzdHJva2UtZGFzaGFycmF5LHN0cm9rZS13aWR0aCxhbmltYXRpb24tbmFtZSxyfS5tZC1yYWRpb3t3aWR0aDphdXRvO21hcmdpbjoxNnB4IDE2cHggMTZweCAwO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXJhZGlvOm5vdCgubWQtZGlzYWJsZWQpLC5tZC1yYWRpbzpub3QoLm1kLWRpc2FibGVkKSAubWQtcmFkaW8tbGFiZWx7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXJ7d2lkdGg6MjBweDttaW4td2lkdGg6MjBweDtoZWlnaHQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXI6MnB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmZvY3Vze291dGxpbmU6bm9uZX0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciwubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC41NSwwLC41NSwuMik7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6YmVmb3Jle3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7dG9wOjUwJTtsZWZ0OjUwJTt6LWluZGV4OjU7Ym9yZGVyLXJhZGl1czo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDozcHg7cmlnaHQ6M3B4O2JvdHRvbTozcHg7bGVmdDozcHg7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM0QoLjM4LC4zOCwxKTt0cmFuc2Zvcm06c2NhbGUzRCguMzgsLjM4LDEpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyIC5tZC1yaXBwbGV7d2lkdGg6NDhweCFpbXBvcnRhbnQ7aGVpZ2h0OjQ4cHghaW1wb3J0YW50O3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXIgaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotOTk5ZW19Lm1kLXJhZGlvIC5tZC1yYWRpby1sYWJlbHtoZWlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZTtsaW5lLWhlaWdodDoyMHB4fS5tZC1yYWRpby5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM0QoMSwxLDEpO3RyYW5zZm9ybTpzY2FsZTNEKDEsMSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcmFkaW8ubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtc25hY2tiYXJ7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMik7bWluLXdpZHRoOjI4OHB4O21heC13aWR0aDo1NjhweDttaW4taGVpZ2h0OjQ4cHg7bWF4LWhlaWdodDo4MHB4O3BhZGRpbmc6MTRweCAyNHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoxMjtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yLGNvbG9yLG9wYWNpdHksdHJhbnNmb3JtfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXJ7bWFyZ2luOjAgYXV0bztyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tY2VudGVyLm1kLXNuYWNrYmFyLWVudGVyLC5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXIubWQtc25hY2tiYXItbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsY2FsYygxMDAlICsgOHB4KSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyA4cHgpLDApfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1sZWZ0e2JvdHRvbToyNHB4O2xlZnQ6MjRweH0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdC5tZC1zbmFja2Jhci1lbnRlciwubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdC5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyAzMnB4KSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyAzMnB4KSwwKX0ubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLWVudGVyIC5tZC1zbmFja2Jhci1jb250ZW50LC5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmUsLm1kLXNuYWNrYmFyLWxlYXZlLWFjdGl2ZSAubWQtc25hY2tiYXItY29udGVudHtvcGFjaXR5OjB9Lm1kLXNuYWNrYmFyLWNvbnRlbnR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjM4cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21pbi13aWR0aDowO21hcmdpbjotOHB4IC04cHggLThweCAzNnB4fS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDoxNnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtc25hY2tiYXJ7bGVmdDowOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7Ym9yZGVyLXJhZGl1czowfS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b257bWFyZ2luLWxlZnQ6MTJweH19Lm1kLXNwZWVkLWRpYWx7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLXNwZWVkLWRpYWwubWQtdG9wLWxlZnQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tY2VudGVyLC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ubWQtc3BlZWQtZGlhbC5tZC10b3AtY2VudGVye3RvcDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1jZW50ZXJ7Ym90dG9tOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLXJpZ2h0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1yaWdodHtyaWdodDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1sZWZ0e2xlZnQ6MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1maXhlZHtwb3NpdGlvbjpmaXhlZH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wLm1kLWVmZmVjdC1mbGluZyAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1MCUsMCkgc2NhbGUoLjgpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDUwJSwwKSBzY2FsZSguOCl9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLXRvcCAubWQtc3BlZWQtZGlhbC10YXJnZXR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozO29yZGVyOjI7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoyO29yZGVyOjF9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLXRvcCAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20ubWQtZWZmZWN0LWZsaW5nIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtdGFyZ2V0ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjtvcmRlcjoxO21hcmdpbi10b3A6MCFpbXBvcnRhbnR9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLWJvdHRvbSAubWQtc3BlZWQtZGlhbC1jb250ZW50ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MztvcmRlcjoyfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5tZC1zcGVlZC1kaWFsLm1kLWVmZmVjdC1zY2FsZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjMpO3RyYW5zZm9ybTpzY2FsZSguMyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1pbml0aWFsLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLW1vcnBoLWluaXRpYWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoOTBkZWcpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApIHJvdGF0ZSg5MGRlZykgc2NhbGUoLjcpfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtbW9ycGgtZmluYWwsLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtbW9ycGgtZmluYWx7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbiwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlKDEpIWltcG9ydGFudDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSgxKSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjBcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjBcXFwiXXt0cmFuc2l0aW9uLWRlbGF5OjBzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIxXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIxXFxcIl17dHJhbnNpdGlvbi1kZWxheTouMXN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjJcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjJcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi4yc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiM1xcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiM1xcXCJde3RyYW5zaXRpb24tZGVsYXk6LjNzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI0XFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI0XFxcIl17dHJhbnNpdGlvbi1kZWxheTouNHN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjVcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjVcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi41c30ubWQtc3BlZWQtZGlhbCAubWQtYnV0dG9ue21hcmdpbjo2cHggMH0ubWQtc3BlZWQtZGlhbCAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gMHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgLjNzO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zcywtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWZpbmFsLC5tZC1zcGVlZC1kaWFsIC5tZC1tb3JwaC1pbml0aWFse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtc3BlZWQtZGlhbCAubWQtbW9ycGgtZmluYWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguNykgcm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguNykgcm90YXRlKC05MGRlZyl9Lm1kLXNwZWVkLWRpYWwtdGFyZ2V0e3otaW5kZXg6MX0ubWQtc3BlZWQtZGlhbC1jb250ZW50e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtc3BlZWQtZGlhbC1jb250ZW50LC5tZC1zdGVwcGVyc3t0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtc3RlcHBlcnN7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3J9Lm1kLXN0ZXBwZXJzLm1kLW5vLXRyYW5zaXRpb24gKnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1zdGVwcGVycy5tZC1keW5hbWljLWhlaWdodCAubWQtc3RlcHBlcnMtd3JhcHBlcnt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlcntoZWlnaHQ6MTA0cHh9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZSwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmxhc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1udW1iZXI6YWZ0ZXJ7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxley13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtwYWRkaW5nLXRvcDoxNnB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVyLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3Jle2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItdGV4dHtoZWlnaHQ6MzJweDstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3RleHQtYWxpZ246Y2VudGVyfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luOjAgOHB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZXt3aWR0aDo5OTk5JTtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVye2xlZnQ6Y2FsYygxMDAlICsgOHB4KX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmV7cmlnaHQ6MzJweH0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDo1NnB4fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweCAwIDE2cHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVycy1jb250YWluZXJ7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjEycHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVye3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6bGFzdC1vZi10eXBlOmFmdGVye2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6YWZ0ZXJ7d2lkdGg6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2JvdHRvbTotOHB4O2xlZnQ6MzZweDt6LWluZGV4OjI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVycy1uYXZpZ2F0aW9ue2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ubWQtc3RlcHBlcnMtbmF2aWdhdGlvbiAubWQtc3RlcHBlci1oZWFkZXJ7d2lkdGg6YXV0b30ubWQtc3RlcHBlci1oZWFkZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6NzJweDttYXJnaW46MDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2JvcmRlci1yYWRpdXM6MDtmb250LXdlaWdodDo0MDA7dGV4dC1hbGlnbjpsZWZ0O3RleHQtdHJhbnNmb3JtOm5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSwubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1idXR0b24tY29udGVudDphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSwubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3J7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dHJhbnNpdGlvbjpjb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDphZnRlciwubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXJ7d2lkdGg6OTk5OSU7bGVmdDoxMDAlfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3Jle3dpZHRoOjE2cHg7bGVmdDotMTZweH0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50IHN2Z3t0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGZpbGw7d2lsbC1jaGFuZ2U6Y29sb3IsZmlsbH0ubWQtc3RlcHBlci10ZXh0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjE2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5tZC1zdGVwcGVyLWljb24sLm1kLXN0ZXBwZXItbnVtYmVye21hcmdpbi1yaWdodDo4cHg7dHJhbnNpdGlvbjpjb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLXN0ZXBwZXItbnVtYmVye3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoyNHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjt3aWxsLWNoYW5nZTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjI0cHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLXN0ZXBwZXItZG9uZXt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS5tZC1zdGVwcGVyLWRvbmUsLm1kLXN0ZXBwZXItZWRpdGFibGV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0ubWQtc3RlcHBlci1lZGl0YWJsZXt3aWR0aDoxNHB4O2hlaWdodDoxNHB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9uLC5tZC1zdGVwcGVyLWVycm9ye2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxNnB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9ue29wYWNpdHk6LjU0fS5tZC1zdGVwcGVycy13cmFwcGVye292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LXdyYXA6bm93cmFwOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtc3RlcHBlcnt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweCAyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtc3RlcHBlcntwYWRkaW5nOjhweCAxNnB4fX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItY29udGVudHtwYWRkaW5nOjAgMjRweCAwIDYwcHg7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksaGVpZ2h0LHBhZGRpbmctYm90dG9tLC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0saGVpZ2h0LHBhZGRpbmctYm90dG9tO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0saGVpZ2h0LHBhZGRpbmctYm90dG9tLC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGhlaWdodCxwYWRkaW5nLWJvdHRvbX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItY29udGVudC5tZC1hY3RpdmV7aGVpZ2h0OmF1dG87cGFkZGluZy1ib3R0b206NDBweDtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLXN1YmhlYWRlcnttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzowIDE2cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpyb3cgd3JhcDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9Lm1kLXN3aXRjaHt3aWR0aDphdXRvO21hcmdpbjoxNnB4IDE2cHggMTZweCAwO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXN3aXRjaDpub3QoLm1kLWRpc2FibGVkKSwubWQtc3dpdGNoOm5vdCgubWQtZGlzYWJsZWQpIC5tZC1zd2l0Y2gtbGFiZWx7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLWNvbnRhaW5lcnt3aWR0aDozNHB4O21pbi13aWR0aDozNHB4O2hlaWdodDoxNHB4O21hcmdpbjozcHggMDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTRweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWJ7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1iOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiAubWQtcmlwcGxlLC5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1iIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC1sYWJlbHtoZWlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZTtsaW5lLWhlaWdodDoyMHB4fS5tZC1zd2l0Y2gubWQtY2hlY2tlZCAubWQtc3dpdGNoLXRodW1iey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDE1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTVweCwwLDApfS5tZC1zd2l0Y2gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtdGFibGV7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OmNvbHVtbiB3cmFwO292ZXJmbG93LXg6YXV0b30ubWQtdGFibGUgLm1kLXRhYmxlLWZpeGVkLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtdGFibGUgLm1kLXRhYmxlLWZpeGVkLWhlYWRlci1hY3RpdmV7Ym9yZGVyLWJvdHRvbToxcHggc29saWR9Lm1kLXRhYmxlIC5tZC10YWJsZS1jb250ZW50ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3cteDphdXRvO3RyYW5zaXRpb246aGVpZ2h0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFibGUgLm1kLXRhYmxlLWVtcHR5e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtdGFibGUgdGFibGV7d2lkdGg6MTAwJTtib3JkZXItc3BhY2luZzowO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtvdmVyZmxvdzpoaWRkZW59Lm1kLXRhYmxlLWhlYWR7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE2cHg7dGV4dC1hbGlnbjpsZWZ0fS5tZC10YWJsZS1oZWFkOmxhc3QtY2hpbGQgLm1kLXRhYmxlLWhlYWQtbGFiZWx7cGFkZGluZy1yaWdodDoyNHB4fS5tZC10YWJsZS1oZWFkLm1kLW51bWVyaWN7dGV4dC1hbGlnbjpyaWdodH0ubWQtdGFibGUtaGVhZC5tZC1zb3J0YWJsZTpmaXJzdC1vZi10eXBlIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uLC5tZC10YWJsZS1oZWFkLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uKy5tZC1zb3J0YWJsZSAubWQtdGFibGUtc29ydGFibGUtaWNvbntyaWdodDo4cHg7bGVmdDphdXRvfS5tZC10YWJsZS1oZWFkIC5tZC1pY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Zm9udC1zaXplOjE2cHh9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246bm90KC5tZC1zb3J0YWJsZS1pY29uKXttYXJnaW46MCA0cHh9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ubWQtdGFibGUtaGVhZCAubWQtaWNvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1zb3J0YWJsZXtjdXJzb3I6cG9pbnRlcn0ubWQtc29ydGFibGUubWQtc29ydGVkIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uLC5tZC1zb3J0YWJsZTpob3ZlciAubWQtdGFibGUtc29ydGFibGUtaWNvbntvcGFjaXR5OjF9Lm1kLXNvcnRhYmxlLm1kLXNvcnRlZC1kZXNjIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyl9Lm1kLXRhYmxlLWhlYWQtY29udGFpbmVye2hlaWdodDo1NnB4O3BhZGRpbmc6MTRweCAwfS5tZC10YWJsZS1oZWFkLWNvbnRhaW5lciwubWQtdGFibGUtaGVhZC1sYWJlbHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRhYmxlLWhlYWQtbGFiZWx7aGVpZ2h0OjI4cHg7cGFkZGluZy1yaWdodDozMnB4O3BhZGRpbmctbGVmdDoyNHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO2xpbmUtaGVpZ2h0OjI4cHh9Lm1kLXRhYmxlLXNvcnRhYmxlLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6Mjt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1lbnRlciwubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXItZW50ZXItYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS5tZC10YWJsZS1yb3d7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLWNvbG9yLGZvbnQtd2VpZ2h0O3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsZm9udC13ZWlnaHR9Lm1kLXRhYmxlLXJvdy5tZC1oYXMtc2VsZWN0aW9ue2N1cnNvcjpwb2ludGVyfS5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xle2ZvbnQtd2VpZ2h0OjUwMH10Ym9keSAubWQtdGFibGUtcm93IHRke2JvcmRlci10b3A6MXB4IHNvbGlkfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbnt3aWR0aDo2NnB4fS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbit0ZCAubWQtdGFibGUtY2VsbC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uK3RoIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmctbGVmdDowfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtY2VsbC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC10YWJsZS1jZWxsLWxhYmVsLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtaGVhZC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmc6MDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6dmlzaWJsZX0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94e21hcmdpbjowfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcnt3aWR0aDoxOHB4O21pbi13aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt0b3A6LTFweDtsZWZ0OjRweH0ubWQtdGFibGUtdG9vbGJhcntwYWRkaW5nLWxlZnQ6MjRweH0ubWQtdGFibGUtdG9vbGJhciAubWQtdGl0bGV7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtmb250LXNpemU6MjBweH0ubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjY0cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LGNvbG9yLG1pbi1oZWlnaHQsLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LGJhY2tncm91bmQtY29sb3IsYm94LXNoYWRvdyx0cmFuc2Zvcm0sY29sb3IsbWluLWhlaWdodDt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOm9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0fS5tZC10b29sYmFye3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OnJvdyB3cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtdG9vbGJhci5tZC1kZW5zZXttaW4taGVpZ2h0OjQ4cHh9Lm1kLXRvb2xiYXIubWQtbGFyZ2UgLm1kLXRvb2xiYXItcm93LC5tZC10b29sYmFyLm1kLW1lZGl1bSAubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo2NHB4fS5tZC10b29sYmFyLm1kLW1lZGl1bXttaW4taGVpZ2h0Ojg4cHh9Lm1kLXRvb2xiYXIubWQtbGFyZ2V7bWluLWhlaWdodDoxMjhweDthbGlnbi1jb250ZW50OmluaGVyaXR9Lm1kLXRvb2xiYXIubWQtbGFyZ2UubWQtZGVuc2V7bWluLWhlaWdodDo5NnB4fS5tZC10b29sYmFyLm1kLWxhcmdlLm1kLWRlbnNlIC5tZC10b29sYmFyLXJvdysubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDozMnB4fS5tZC10b29sYmFyIC5tZC10b29sYmFyLW9mZnNldHttYXJnaW4tbGVmdDo1NnB4fS5tZC10b29sYmFyIC5tZC1idXR0b24sLm1kLXRvb2xiYXIgLm1kLWljb257ei1pbmRleDoxfS5tZC10b29sYmFyIC5tZC1idXR0b25+Lm1kLXRpdGxlLC5tZC10b29sYmFyIC5tZC1pY29ufi5tZC10aXRsZXttYXJnaW4tbGVmdDoyNHB4fS5tZC10b29sYmFyIC5tZC1idXR0b24rLm1kLWJ1dHRvbiwubWQtdG9vbGJhciAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjB9Lm1kLXRvb2xiYXIgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIgLm1kLWRpc3BsYXktMiwubWQtdG9vbGJhciAubWQtdGl0bGV7bWFyZ2luOjA7bWFyZ2luLWxlZnQ6OHB4O292ZXJmbG93OmhpZGRlbjtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7dmVydGljYWwtYWxpZ246dG9wfS5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTF7cGFkZGluZzoxMnB4IDB9Lm1kLXRvb2xiYXIgLm1kLWZpZWxke21hcmdpbi10b3A6MnB4O21hcmdpbi1ib3R0b206MTRweDtwYWRkaW5nLXRvcDoxNnB4fS5tZC10b29sYmFyLXJvd3thbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lm1kLXRvb2xiYXItc2VjdGlvbi1lbmQsLm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTtvcmRlcjowfS5tZC10b29sYmFyLXNlY3Rpb24tZW5key13ZWJraXQtYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExO29yZGVyOjEwfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo0OHB4fS5tZC10b29sYmFye3BhZGRpbmc6MCA4cHh9Lm1kLXRvb2xiYXIgLm1kLXRvb2xiYXItb2Zmc2V0e21hcmdpbi1sZWZ0OjQ4cHh9Lm1kLXRvb2xiYXIgLm1kLWJ1dHRvbn4ubWQtdGl0bGUsLm1kLXRvb2xiYXIgLm1kLWljb25+Lm1kLXRpdGxle21hcmdpbi1sZWZ0OjE2cHh9fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo1NnB4fX0ubWQtdGFibGUtZW1wdHktc3RhdGV7cGFkZGluZy1sZWZ0OjI0cHh9Lm1kLXRhYmxlLWNlbGx7aGVpZ2h0OjQ4cHg7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MThweH0ubWQtdGFibGUtY2VsbC5tZC1udW1lcmlje3RleHQtYWxpZ246cmlnaHR9Lm1kLXRhYmxlLWNlbGw6bGFzdC1jaGlsZCAubWQtdGFibGUtY2VsbC1jb250YWluZXJ7cGFkZGluZy1yaWdodDoyNHB4fS5tZC10YWJsZS1jZWxsLWNvbnRhaW5lcntwYWRkaW5nOjZweCAzMnB4IDZweCAyNHB4fS5tZC10YWJsZS1wYWdpbmF0aW9ue2hlaWdodDo1NnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Ym9yZGVyLXRvcDoxcHggc29saWQ7Zm9udC1zaXplOjEycHh9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLXRhYmxlLXBhZ2luYXRpb24tcHJldmlvdXN7bWFyZ2luLXJpZ2h0OjJweDttYXJnaW4tbGVmdDoxOHB4fS5tZC10YWJsZS1wYWdpbmF0aW9uIC5tZC1maWVsZHt3aWR0aDo0OHB4O21pbi13aWR0aDozNnB4O21hcmdpbjotMTZweCAyNHB4IDAgMzJweH0ubWQtdGFibGUtcGFnaW5hdGlvbiAubWQtZmllbGQ6YWZ0ZXIsLm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkOmJlZm9yZXtkaXNwbGF5Om5vbmV9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkIC5tZC1zZWxlY3QtdmFsdWV7Zm9udC1zaXplOjEzcHh9Lm1kLW1lbnUtY29udGVudC5tZC1wYWdpbmF0aW9uLXNlbGVjdHttYXgtd2lkdGg6ODJweDttaW4td2lkdGg6NTZweDttYXJnaW4tdG9wOjVweH0ubWQtdGFic3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLXRhYnMubWQtbm8tdHJhbnNpdGlvbiAqe3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9Lm1kLXRhYnMubWQtZHluYW1pYy1oZWlnaHQgLm1kLXRhYnMtY29udGVudHt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC10YWJzLm1kLXRyYW5zcGFyZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm1kLXRhYnMubWQtZHluYW1pYy1oZWlnaHQgLm1kLXRhYnMtY29udGVudHt0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC10YWJzLm1kLWFsaWdubWVudC1sZWZ0IC5tZC10YWJzLW5hdmlnYXRpb257LXdlYmtpdC1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubWQtdGFicy5tZC1hbGlnbm1lbnQtcmlnaHQgLm1kLXRhYnMtbmF2aWdhdGlvbnstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lm1kLXRhYnMubWQtYWxpZ25tZW50LWNlbnRlcmVkIC5tZC10YWJzLW5hdmlnYXRpb24sLm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb257LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtdGFicy5tZC1hbGlnbm1lbnQtZml4ZWQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue21heC13aWR0aDoyNjRweDttaW4td2lkdGg6MTYwcHg7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtdG9vbGJhciAubWQtdGFic3twYWRkaW5nLWxlZnQ6NDhweH0ubWQtdGFicy1uYXZpZ2F0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttYXgtd2lkdGg6MjY0cHg7bWluLXdpZHRoOjcycHg7aGVpZ2h0OjQ4cHg7bWFyZ2luOjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czowO2ZvbnQtc2l6ZToxM3B4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpY30ubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1pY29uLWxhYmVse2hlaWdodDo3MnB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLWJ1dHRvbi1jb250ZW50e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLXRhYi1pY29uKy5tZC10YWItbGFiZWx7bWFyZ2luLXRvcDoxMHB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweH0ubWQtdGFicy1pbmRpY2F0b3J7aGVpZ2h0OjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt3aWxsLWNoYW5nZTpsZWZ0LHJpZ2h0fS5tZC10YWJzLWluZGljYXRvci5tZC10YWJzLWluZGljYXRvci1sZWZ0e3RyYW5zaXRpb246bGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkscmlnaHQgLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFicy1pbmRpY2F0b3IubWQtdGFicy1pbmRpY2F0b3ItcmlnaHR7dHJhbnNpdGlvbjpyaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksbGVmdCAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC10YWJzLWNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246bm9uZTt3aWxsLWNoYW5nZTpoZWlnaHR9Lm1kLXRhYnMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXRhYnt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttaW4td2lkdGg6NzJweH0ubWQtdG9vbGJhciAubWQtdGFic3ttYXJnaW46MCAtOHB4O3BhZGRpbmctbGVmdDowfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtdGFie3BhZGRpbmc6OHB4fX0ubWQtdG9vbHRpcHtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgOHB4O3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6ODtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50O2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjIycHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtdG9wLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtdG9wey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNHB4LDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNHB4LDApIHNjYWxlKC45NSl9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1lbnRlci5tZC10b29sdGlwLXJpZ2h0LC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtcmlnaHR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC00cHgsMCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1ib3R0b20sLm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmUubWQtdG9vbHRpcC1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNHB4LDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1sZWZ0LC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtbGVmdHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKSBzY2FsZSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKSBzY2FsZSguOTUpfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtdG9vbHRpcHtoZWlnaHQ6MzJweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDozMnB4fX1cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/vue-material.min.css\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogdHJ1ZSxcXG5cXHRcXHRcXHRcXHRjb25maXJtTWF0Y2g6IHRydWUsXFxuXFx0XFx0XFx0fTtcXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjpmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdGxldCB1c2VybmFtZSA9IFxcXCJib2pvbHVpc1xcXCI7XFxuXFx0XFx0XFx0XFx0bGV0IHBhc3N3b3JkID0gXFxcIjEyMzRcXFwiO1xcblxcblxcdFxcdFxcdFxcdGlmKHRoaXMudXNlcm5hbWUgPT0gdXNlcm5hbWUgJiYgdGhpcy5wYXNzd29yZCA9PSBwYXNzd29yZCl7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=1!./src/App.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n@charset \\\"UTF-8\\\";\\n/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n:root {\\n --md-theme-default-primary: $value\\n ;\\n --md-theme-default-accent: $value\\n ;\\n --md-theme-default-theme: $value\\n ;\\n}\\n.md-theme-default :not(input):not(textarea)::-moz-selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default :not(input):not(textarea)::selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default a:not(.md-button) {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-theme-default a:not(.md-button):hover {\\n color: rgba(188, 170, 164, 0.8);\\n color: var(--md-theme-default-primary-on-background, rgba(188, 170, 164, 0.8));\\n}\\n.md-theme-default a:not(.md-button).md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-theme-default a:not(.md-button).md-accent:hover {\\n color: rgba(158, 158, 158, 0.8);\\n color: var(--md-theme-default-accent-on-background, rgba(158, 158, 158, 0.8));\\n}\\nhtml.md-theme-default {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default .md-caption, .md-theme-default\\n.md-display-1, .md-theme-default\\n.md-display-2, .md-theme-default\\n.md-display-3, .md-theme-default\\n.md-display-4 {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background-variant, rgba(0, 0, 0, 0.54));\\n}\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-corner, .md-scrollbar.md-theme-default::-webkit-scrollbar-track {\\n background: #e1e1e1;\\n background: var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1);\\n}\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb {\\n background: #757575;\\n background: var(--md-theme-default-scrollbar-on-background-variant, #757575);\\n}\\n.md-app:not(.md-overlap).md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-list.md-theme-default .md-autocomplete-loading {\\n background-color: rgba(255, 255, 255, 0.54);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.54));\\n}\\n.md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: rgba(255, 255, 255, 0.12);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.12));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n -webkit-text-fill-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.38);\\n -webkit-text-fill-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-autocomplete-box-content.md-theme-default:after {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-avatar.md-theme-default.md-avatar-icon {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-icon-disabled, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n}\\n.md-avatar.md-theme-default.md-avatar-icon .md-icon {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n}\\n.md-avatar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-avatar.md-theme-default.md-primary.md-avatar-icon {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-avatar.md-theme-default.md-accent.md-avatar-icon {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #a68f87;\\n background-color: var(--md-theme-default-primary-on-primary, #a68f87);\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #858585;\\n background-color: var(--md-theme-default-accent-on-accent, #858585);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-primary .md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-primary .md-icon-image {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-accent .md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-accent .md-icon-image {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-raised[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]) {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default[disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-button.md-theme-default[disabled] .md-icon-font {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-button.md-theme-default[disabled] .md-icon-image {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-card.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default .md-card-expand .md-card-actions {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-card.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default.md-primary > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-primary, rgba(0, 0, 0, 0.12));\\n}\\n.md-card.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default.md-accent > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-accent, rgba(0, 0, 0, 0.12));\\n}\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after {\\n border-color: #fff;\\n border-color: var(--md-theme-default-background, #fff);\\n}\\n.md-checkbox.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-checkbox.md-theme-default .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.54);\\n}\\n.md-checkbox.md-theme-default.md-disabled .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n background-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-chip.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default .md-icon.md-icon-image svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon {\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default.md-primary .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n}\\n.md-chip.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default.md-accent .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n}\\n.md-chip.md-theme-default.md-disabled {\\n background-color: rgba(0, 0, 0, 0.1);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.1));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-chips.md-theme-default .md-clear {\\n background-color: rgba(0, 0, 0, 0.2);\\n}\\n.md-content.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-content.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-content.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-app .md-content.md-theme-default {\\n border-left-color: rgba(0, 0, 0, 0.12);\\n border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-datepicker-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-header {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after, .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-week {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-disabled {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-today {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-divider.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-drawer.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-drawer.md-theme-default.md-persistent-mini {\\n border-right-color: rgba(0, 0, 0, 0.12);\\n border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-empty-state.md-theme-default.md-rounded {\\n background-color: rgba(0, 0, 0, 0.06);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.06));\\n}\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-field.md-theme-default:after {\\n background-color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default:before {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-field.md-theme-default .md-helper-text,\\n.md-field.md-theme-default .md-count,\\n.md-field.md-theme-default label {\\n color: rgba(0, 0, 0, 0.54);\\n}\\n.md-field.md-theme-default .md-input::-webkit-input-placeholder,\\n.md-field.md-theme-default .md-textarea::-webkit-input-placeholder {\\n color: rgba(0, 0, 0, 0.54);\\n}\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-has-value .md-input,\\n.md-field.md-theme-default.md-has-value .md-textarea {\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n}\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after {\\n border-color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-disabled:after {\\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.38)), color-stop(33%, rgba(0, 0, 0, 0.38)), color-stop(0%, transparent));\\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 33%, transparent 0%);\\n}\\n.md-field.md-theme-default.md-disabled label,\\n.md-field.md-theme-default.md-disabled .md-input,\\n.md-field.md-theme-default.md-disabled .md-textarea {\\n color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default > .md-icon:after {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n}\\n.md-field.md-theme-default.md-invalid:after {\\n background-color: #ff1744;\\n background-color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before {\\n border-color: #ff1744;\\n border-color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid label {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid .md-error {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid .md-date-icon,\\n.md-field.md-theme-default.md-invalid .md-date-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-highlight .md-input,\\n.md-field.md-theme-default.md-highlight .md-textarea {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-focused > .md-icon, .md-field.md-theme-default.md-highlight > .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-focused label {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-disabled .md-icon svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-icon.md-theme-default.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-icon.md-theme-default.md-icon-image svg.md-primary {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-icon.md-theme-default.md-icon-image svg.md-accent {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-icon.md-theme-default.md-icon-font {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-icon.md-theme-default.md-icon-font.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-icon.md-theme-default.md-icon-font.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-list.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-list.md-theme-default .md-highlight .md-list-item-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-list.md-theme-default .md-list-item-container {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default [disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-list.md-theme-default .md-selected .md-list-item-content,\\n .md-list.md-theme-default .router-link-exact-active .md-list-item-content {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-list.md-theme-default .md-list-item-expand.md-active {\\n border-color: rgba(0, 0, 0, 0.12);\\n border-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-menu-item.md-theme-default.md-primary .md-list-item-link,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-router,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-button {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-menu-item.md-theme-default.md-accent .md-list-item-link,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-router,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-button {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate, .md-progress-bar.md-theme-default.md-query {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate.md-accent, .md-progress-bar.md-theme-default.md-query.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-determinate {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-determinate.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {\\n border-color: rgba(188, 170, 164, 0.38);\\n border-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {\\n border-color: rgba(158, 158, 158, 0.38);\\n border-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-spinner.md-theme-default .md-progress-spinner-circle {\\n stroke: #bcaaa4;\\n stroke: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {\\n stroke: #9e9e9e;\\n stroke: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-radio-container {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-radio-container:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.54);\\n}\\n.md-radio.md-theme-default.md-disabled .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after {\\n background-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-snackbar.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n background-color: #323232;\\n}\\n.md-steppers.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-icon:after, .md-steppers.md-theme-default .md-stepper-icon:before,\\n .md-steppers.md-theme-default .md-stepper-number:after,\\n .md-steppers.md-theme-default .md-stepper-number:before,\\n .md-steppers.md-theme-default .md-stepper:after,\\n .md-steppers.md-theme-default .md-stepper:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-steppers.md-theme-default .md-stepper-number {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n}\\n.md-steppers.md-theme-default .md-stepper-number svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n}\\n.md-steppers.md-theme-default .md-stepper-header .md-button-content {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-steppers.md-theme-default .md-stepper-header .md-button-content:after, .md-steppers.md-theme-default .md-stepper-header .md-button-content:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content, .md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-steppervariant, #ff1744);\\n}\\n.md-subheader.md-theme-default {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-subheader.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-switch.md-theme-default.md-checked .md-switch-container {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-switch.md-theme-default.md-checked .md-switch-thumb {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-switch.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-switch.md-theme-default .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.38);\\n}\\n.md-switch.md-theme-default .md-switch-thumb {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-switchvariant, #f5f5f5);\\n}\\n.md-switch.md-theme-default.md-disabled .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n}\\n.md-switch.md-theme-default.md-disabled .md-switch-thumb {\\n background-color: #bdbdbd;\\n background-color: var(--md-theme-default-switchvariant, #bdbdbd);\\n}\\n.md-table.md-theme-default .md-table-content,\\n.md-table.md-theme-default .md-table-alternate-header {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n background-color: rgba(158, 158, 158, 0.2);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.2));\\n}\\n.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell {\\n background-color: rgba(0, 0, 0, 0.08);\\n background-color: var(--md-theme-default-highlight-on-background, rgba(0, 0, 0, 0.08));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected, .md-table.md-theme-default .md-table-row.md-selected-single {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-rowvariant, #f5f5f5);\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple {\\n color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple {\\n color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-table.md-theme-default .md-table-row td {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-table.md-theme-default .md-table-head {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-table.md-theme-default .md-table-fixed-header-active {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-table.md-theme-default .md-sortable:hover, .md-table.md-theme-default .md-sortable.md-sorted {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-sortable:hover svg, .md-table.md-theme-default .md-sortable.md-sorted svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-pagination {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-toolbarvariant, #f5f5f5);\\n}\\n.md-toolbar.md-theme-default .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default .md-title,\\n .md-toolbar.md-theme-default .md-display-1,\\n .md-toolbar.md-theme-default .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-title,\\n .md-toolbar.md-theme-default.md-primary .md-display-1,\\n .md-toolbar.md-theme-default.md-primary .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-title,\\n .md-toolbar.md-theme-default.md-accent .md-display-1,\\n .md-toolbar.md-theme-default.md-accent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent {\\n background-color: transparent;\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-title,\\n .md-toolbar.md-theme-default.md-transparent .md-display-1,\\n .md-toolbar.md-theme-default.md-transparent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-tooltip.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-tooltip, #fff);\\n background-color: rgba(97, 97, 97, 0.9);\\n background-color: var(--md-theme-default-tooltip-on-background, rgba(97, 97, 97, 0.9));\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/App.vue\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/palette.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/functions.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/variables.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/color-contrast.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/mixins.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/base/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdAutocomplete/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdAvatar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdBottomBar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdButton/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdCard/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdCheckbox/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdChips/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdContent/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdDatepicker/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdDrawer/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdEmptyState/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdField/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdIcon/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdList/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdMenu/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdProgress/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdRadio/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSnackbar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSteppers/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSubheader/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSwitch/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdTable/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdTabs/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdToolbar/theme.scss\"],\"names\":[],\"mappings\":\";AAAA,iBAAiB;ACAjB;;;;;;GAMG;ACNH;;;;;;;;;;;;;;;;;GAiBG;AAOH;;;;;;;;;GASG;AAOH;;;;;;;;;;;;;;;;GAgBG;AAmBH;;;;;;;;;;;;GAYG;AASH;;;;;;;;;;;;;GAaG;AC7GH;;;;;;;;;;;;GAYG;AASH;;;;;;GAMG;AAIH;;;;;;GAMG;AAIH;;;;;;GAMG;AAKH;;;;;;GAMG;AC1DH;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AAqQH;;;;;;GAMG;AAWH;;;;;;;GAOG;AAUH;;;;;;;GAOG;AClUH;;;;;;;;;;;;;;GAcG;AAOH;;;;;;;;;;;;;;;;GAgBG;AAoBH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAcH;;;;;;;;;;GAUG;AAcH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkBH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAkBH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AA9LD;EAEI;KAAyC;EAAzC;KAAyC;EAAzC;KAAyC;CAE5C;AA+DC;EAoDF,0BJyHc;EIxHd,wEAA0F;EAD1F,2BFtGyB;EEuGzB,2EAA0F;CAnDvF;AAFD;EAoDF,0BJyHc;EIxHd,wEAA0F;EAD1F,2BFtGyB;EEuGzB,2EAA0F;CAnDvF;AAFD;EAoDF,eJ+Ge;EI9Gf,8DAA0F;CAnDvF;AAFD;IAoDF,gCJ+Ge;II9Gf,+EAA0F;CCzJrF;ADoGH;IAoDF,eJyHc;IIxHd,6DAA0F;CCjJrF;AD4FH;MAoDF,gCJyHc;MIxHd,8EAA0F;CClJnF;ADqEL;EA4EF,0BFvG6B;EEwG7B,sEAA0F;EAD1F,2BFtGyB;EEuGzB,uFAA0F;CA3EvF;AAsBD;;;;;EAoDF,2BFrGwB;EEsGxB,sFAA0F;CAnDvF;ACzEH;ED2HA,oBF5FwC;EE6FxC,wFAA0F;CCvHrF;AALL;ED2HA,oBF7FoB;EE8FpB,6EAA0F;CCnHrF;ADsCH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;CA3EvF;AE5FL;EFsKE,eJ+Ge;EI9Gf,8DAA0F;CElKrF;AALP;EFsKE,4CFxGkB;EEyGlB,gFAA0F;CE7JvF;AAIL;EFwJE,uBFxGkB;EEyGlB,2DAA0F;CEnHvF;AAtCL;IFwJE,2BFpGsB;IEqGtB,4EAA0F;CEjJnF;AAGH;IF6IJ,4CFxGkB;IEyGlB,gFAA0F;CEpHrF;AA1BD;;MF6IJ,2BFtGyB;MEuGzB,4EAA0F;MAD1F,6CFtGyB;MEuGzB,8FAA0F;CEvInF;AAPH;MF6IJ,0BFtGyB;MEuGzB,2EAA0F;CEnInF;AAXH;MF6IJ,uBFxGkB;MEyGlB,2DAA0F;CErHnF;AAzBH;;QF6IJ,2BFpGsB;QEqGtB,4EAA0F;QAD1F,6CFpGsB;QEqGtB,8FAA0F;CE1HjF;AApBL;QF6IJ,0BFpGsB;QEqGtB,2EAA0F;CEtHjF;AAOX;EF8GE,uBFxGkB;EEyGlB,2DAA0F;EAD1F,yCF9FoB;EE+FpB,0EAA0F;CE1GvF;AC5DH;EHqKA,sCF/F0B;EEgG1B,6EAA0F;EAD1F,YFtFoB;EEuFpB,mEAA0F;CG9JzF;AAJC;IHiKF,YFtFoB;IEuFpB,mEAA0F;IAD1F,WFtFoB;IEuFpB,kEAA0F;CG/JvF;AAIL;EH0JE,0BJ+Ge;EI9Gf,2DAA0F;CGpJvF;AAlBH;IHqKA,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CG9JzF;AAJC;MHiKF,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BFtGyB;MEuGzB,2EAA0F;CG/JvF;AAIL;EH0JE,0BJyHc;EIxHd,0DAA0F;CG/IvF;AAvBH;IHqKA,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CG9JzF;AAJC;MHiKF,2BFtGyB;MEuGzB,2EAA0F;MAD1F,0BFtGyB;MEuGzB,0EAA0F;CG/JvF;ACPH;EJqKA,uBFxGkB;EEyGlB,2DAA0F;CIxJzF;AAXC;IJkKF,eJ+Ge;II9Gf,8DAA0F;CIzJvF;AAPC;MJ+JJ,eJ+Ge;MI9Gf,8DAA0F;CI1JrF;AAHC;QJ4JN,cJ+Ge;QI9Gf,6DAA0F;CI3JnF;AAKP;EJqJA,0BJ+Ge;EI9Gf,2DAA0F;EAD1F,0BFtGyB;EEuGzB,2EAA0F;CIvHzF;AA1BG;IJ0LJ,0BAHiC;IAIjC,sEAA0F;CIzLrF;AAGH;IJ2IF,2BFhGiB;IEiGjB,oEAA0F;CItIvF;AAHC;MJwIJ,0BFhGiB;MEiGjB,mEAA0F;CIvIrF;AAGH;IJmIF,2BFtGyB;IEuGzB,4EAA0F;CIxHvF;AARG;MJ+HN,2BFtGyB;MEuGzB,4EAA0F;CI1HnF;AAHC;QJ4HR,0BFtGyB;QEuGzB,2EAA0F;CI3HjF;AA3CT;EJqKA,uBFxGkB;EEyGlB,2DAA0F;CIxJzF;AAXC;IJkKF,eJyHc;IIxHd,6DAA0F;CIzJvF;AAPC;MJ+JJ,eJyHc;MIxHd,6DAA0F;CI1JrF;AAHC;QJ4JN,cJyHc;QIxHd,4DAA0F;CI3JnF;AAKP;EJqJA,0BJyHc;EIxHd,0DAA0F;EAD1F,0BFtGyB;EEuGzB,0EAA0F;CIvHzF;AA1BG;IJ0LJ,0BAHiC;IAIjC,oEAA0F;CIzLrF;AAGH;IJ2IF,2BFhGiB;IEiGjB,mEAA0F;CItIvF;AAHC;MJwIJ,0BFhGiB;MEiGjB,kEAA0F;CIvIrF;AAGH;IJmIF,2BFtGyB;IEuGzB,2EAA0F;CIxHvF;AARG;MJ+HN,2BFtGyB;MEuGzB,2EAA0F;CI1HnF;AAHC;QJ4HR,0BFtGyB;QEuGzB,0EAA0F;CI3HjF;AJ8CP;EA4EF,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AKlFL;IL4JE,eJ+Ge;II9Gf,8DAA0F;CKtJvF;AAhBH;MLqKA,eJ+Ge;MI9Gf,8DAA0F;CKpKzF;AAED;MLiKA,cJ+Ge;MI9Gf,6DAA0F;CKhKzF;AAGH;IL4JE,eJyHc;IIxHd,6DAA0F;CKjJvF;AArBH;MLqKA,eJyHc;MIxHd,6DAA0F;CKpKzF;AAED;MLiKA,cJyHc;MIxHd,4DAA0F;CKhKzF;AAGH;IL4JE,sCFlGgC;IEmGhC,iGAA0F;IAD1F,2BFnGqB;IEoGrB,6DAA0F;CK3IrF;AAlBP;IL4JE,uBFxGkB;IEyGlB,2DAA0F;IAD1F,2BFtGyB;IEuGzB,+EAA0F;CK1HrF;AAnCP;ML4JE,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BJ+Ge;MI9Gf,2DAA0F;CKjInF;AArCP;QLqKA,2BFtGyB;QEuGzB,4EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,2EAA0F;CKhKzF;AAGH;ML4JE,2BFtGyB;MEuGzB,2EAA0F;MAD1F,0BJyHc;MIxHd,0DAA0F;CK3HnF;AA3CP;QLqKA,2BFtGyB;QEuGzB,2EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,0EAA0F;CKhKzF;AAGH;IL4JE,sCFlGgC;IEmGhC,iGAA0F;CKpHrF;AAzCP;IL4JE,0BJyHc;IIxHd,0DAA0F;CK1GrF;AA5DL;MLqKA,2BFtGyB;MEuGzB,2EAA0F;CKpKzF;AAED;MLiKA,0BFtGyB;MEuGzB,0EAA0F;CKhKzF;AAGH;ML4JE,0BJ+Ge;MI9Gf,2DAA0F;CK3GnF;AA3DP;QLqKA,2BFtGyB;QEuGzB,4EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,2EAA0F;CKhKzF;AAGH;IL4JE,2BFnGqB;IEoGrB,2EAA0F;CKpGvF;AAlEH;MLqKA,2BF/F0B;MEgG1B,gFAA0F;CKpKzF;AAED;MLiKA,0BF/F0B;MEgG1B,+EAA0F;CKhKzF;ALmFC;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AMxFH;INkKA,uBFxGkB;IEyGlB,2DAA0F;CMjKzF;AAIC;;IN4JF,2BFtGyB;IEuGzB,+EAA0F;CMpJvF;AALG;;MNwJN,2BFtGyB;MEuGzB,+EAA0F;MAD1F,0BFtGyB;MEuGzB,8EAA0F;CMtJnF;AAML;IN+IF,sCF9FoB;IE+FpB,qFAA0F;CM9IvF;AAIL;INyIE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CMpIvF;AA/BH;MNkKA,0BJ+Ge;MI9Gf,2DAA0F;CMjKzF;AAIC;;MN4JF,2BFtGyB;MEuGzB,4EAA0F;CMpJvF;AALG;;QNwJN,2BFtGyB;QEuGzB,4EAA0F;QAD1F,0BFtGyB;QEuGzB,2EAA0F;CMtJnF;AAML;MN+IF,sCF9FoB;ME+FpB,kFAA0F;CM9IvF;AAIL;INyIE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CMhIvF;AAnCH;MNkKA,0BJyHc;MIxHd,0DAA0F;CMjKzF;AAIC;;MN4JF,2BFtGyB;MEuGzB,2EAA0F;CMpJvF;AALG;;QNwJN,2BFtGyB;QEuGzB,2EAA0F;QAD1F,0BFtGyB;QEuGzB,0EAA0F;CMtJnF;AAML;MN+IF,sCF9FoB;ME+FpB,iFAA0F;CM9IvF;ACzBL;EPsKE,0BJyHc;EIxHd,0DAA0F;EAD1F,sBJyHc;EIxHd,sDAA0F;CO7JrF;AAVP;IPsKE,mBFxGkB;IEyGlB,uDAA0F;CO9JnF;AATT;EPsKE,eJyHc;EIxHd,+CAA0F;COzJrF;AAdP;EPsKE,0BJ+Ge;EI9Gf,2DAA0F;EAD1F,sBJ+Ge;EI9Gf,uDAA0F;COlJrF;AArBP;EPsKE,eJ+Ge;EI9Gf,gDAA0F;CO9IrF;AAzBP;EA8BQ,kCAAuB;CACxB;AA/BP;EAmCU,kCAAuB;CACxB;AApCT;EAwCY,kCAAuB;EACvB,sCAA2B;CAC5B;APgDP;EA4EF,sCFjGsB;EEkGtB,yEAA0F;EAD1F,2BFtGyB;EEuGzB,iEAA0F;CA3EvF;AQ5FL;IRsKE,YFtFoB;IEuFpB,kEAA0F;IAD1F,WFtFoB;IEuFpB,iEAA0F;CQ1JvF;AAbL;IRsKE,sCFhGiB;IEiGjB,oEAA0F;IAD1F,YFtFoB;IEuFpB,0DAA0F;CQrIrF;AAlCP;MRsKE,WFtFoB;MEuFpB,yDAA0F;CQhJnF;AAvBT;MRsKE,4CFxGkB;MEyGlB,gFAA0F;MAD1F,2BFhGiB;MEiGjB,uEAA0F;CQtInF;AAjCT;QRsKE,0BFhGiB;QEiGjB,sEAA0F;QAD1F,2BFhGiB;QEiGjB,uEAA0F;CQvIjF;AAhCX;IRsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CQzGvF;AA9DL;MRsKE,YFhFY;MEiFZ,sDAA0F;MAD1F,sCFnGqB;MEoGrB,wEAA0F;CQtHrF;AAjDP;MRsKE,YFtFoB;MEuFpB,0DAA0F;MAD1F,sCFhGiB;MEiGjB,oEAA0F;CQ3GnF;AA5DT;QRsKE,4CFxGkB;QEyGlB,gFAA0F;CQ5GjF;AA3DX;IRsKE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CQ9EvF;AAzFL;MRsKE,YFhFY;MEiFZ,sDAA0F;MAD1F,sCFnGqB;MEoGrB,wEAA0F;CQ3FrF;AA5EP;MRsKE,sCFhGiB;MEiGjB,oEAA0F;MAD1F,YFtFoB;MEuFpB,0DAA0F;CQhFnF;AAvFT;QRsKE,4CFxGkB;QEyGlB,gFAA0F;CQjFjF;AAtFX;IRsKE,qCFjGsB;IEkGtB,wEAA0F;IAD1F,2BFrGwB;IEsGxB,gEAA0F;CQzEvF;AAIL;EAIQ,qCAA2B;CAC5B;ARbH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AS5FL;ITsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CS/JvF;AARL;ITsKE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CS1JvF;AAED;ITuJF,uCF9FoB;IE+FpB,sFAA0F;CStJvF;ATyED;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AU5FL;IVsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CU1JvF;AAbL;IVsKE,uBFxGkB;IEyGlB,2DAA0F;CUpJrF;AAnBP;IVsKE,uBFxGkB;IEyGlB,2DAA0F;IAD1F,2BFtGyB;IEuGzB,+EAA0F;CU9IvF;AAzBL;IVsKE,2BFrGwB;IEsGxB,8EAA0F;CU1IvF;AA7BL;IVsKE,2BFnGqB;IEoGrB,2EAA0F;CUtIvF;AAjCL;IVsKE,eJ+Ge;II9Gf,8DAA0F;CUlIvF;AArCL;;;IVsKE,sCF9FoB;IE+FpB,uEAA0F;CU3HrF;AA5CP;IVsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CUpHrF;AAnDP;;IVsKE,eJ+Ge;II9Gf,8DAA0F;CU7GrF;AA1DP;IVsKE,yCF9FoB;IE+FpB,wFAA0F;CUxGvF;AV2BD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AAFD;EA4EF,sCF9FoB;EE+FpB,uEAA0F;CA3EvF;AAFD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AW5FL;IXsKE,wCF9FoB;IE+FpB,uFAA0F;CWhKvF;ACJC;EZmKJ,0BFnGqB;EEoGrB,0EAA0F;CYlKrF;AAGH;EZ8JF,2BFnGqB;EEoGrB,2EAA0F;CY7JvF;AAIL;EZwJE,sCFnGqB;EEoGrB,wEAA0F;CYnJvF;AAjBC;EZmKJ,cJ+Ge;EI9Gf,6DAA0F;CYlKrF;AAGH;EZ8JF,eJ+Ge;EI9Gf,8DAA0F;CY7JvF;AAPC;EZmKJ,cJyHc;EIxHd,4DAA0F;CYlKrF;AAGH;EZ8JF,eJyHc;EIxHd,6DAA0F;CY7JvF;ACVL;EAIQ,sCAA2B;CAC5B;AALP;EbsKE,0BJ+Ge;EI9Gf,2DAA0F;Ca9JrF;AATP;;;EAcQ,2BAAgB;CACjB;AAfP;;EAoBU,2BAAgB;CACjB;AArBT;;;EA4BU,6CAAkC;CACnC;AA7BT;EAkCU,kCAAuB;CACxB;AAnCT;EbsKE,sBJ+Ge;EI9Gf,uDAA0F;CahInF;AAvCT;EA4CU,8JAAoG;EAApG,6GAAoG;CACrG;AA7CT;;;EAkDU,2BAAgB;CACjB;AAnDT;EbsKE,0BFvG6B;EEwG7B,sEAA0F;Ca1DrF;AA7GP;EbuPE,0BJjOe;EIkOf,gEAAuF;CarIlF;AAnHP;EbuPE,sBJjOe;EIkOf,4DAAuF;CahIhF;AAxHT;EbuPE,eJjOe;EIkOf,qDAAuF;Ca3HlF;AA7HP;EbuPE,eJjOe;EIkOf,qDAAuF;CavHlF;AAjIP;;EbuPE,eJjOe;EIkOf,qDAAuF;EADvF,cJjOe;EIkOf,oDAAuF;CajHlF;AAvIP;;;EbsKE,eJ+Ge;EI9Gf,8DAA0F;CaxBrF;AA/IP;EbsKE,eJ+Ge;EI9Gf,8DAA0F;EAD1F,cJ+Ge;EI9Gf,6DAA0F;CanBrF;AApJP;EbsKE,eJ+Ge;EI9Gf,8DAA0F;CabrF;AA1JP;EbsKE,0BFnGqB;EEoGrB,0EAA0F;CaPrF;AChKP;EdsKE,0BFhGiB;EEiGjB,sEAA0F;Cc1JrF;AAbP;IdsKE,cJ+Ge;II9Gf,6DAA0F;Cc/JnF;AART;IdsKE,cJyHc;IIxHd,4DAA0F;Cc3JnF;AAZT;EdsKE,2BFhGiB;EEiGjB,uEAA0F;Cc7IvF;AA1BL;IdsKE,eJ+Ge;II9Gf,8DAA0F;CclJrF;AArBP;IdsKE,eJyHc;IIxHd,6DAA0F;Cc9IrF;AdiEH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;Ae5FL;IfsKE,2BFrGwB;IEsGxB,8EAA0F;CehKvF;AAPL;IfsKE,2BFrGwB;IEsGxB,8EAA0F;Ce5JvF;AAXL;IfsKE,sCF9FoB;IE+FpB,qFAA0F;CexJvF;AAfL;IfsKE,2BFtGyB;IEuGzB,+EAA0F;Ce/IvF;AAxBL;MfsKE,sCF9FoB;ME+FpB,qFAA0F;MAD1F,2BFtGyB;MEuGzB,+EAA0F;CehJrF;AAvBP;IfsKE,2BFnGqB;IEoGrB,2EAA0F;Ce3IvF;AA5BL;;IfsKE,eJ+Ge;II9Gf,8DAA0F;CerIrF;AAlCP;IfsKE,kCF9FoB;IE+FpB,iFAA0F;CehIvF;ACtCH;;;EhBqKA,eJ+Ge;EI9Gf,8DAA0F;CgBlKzF;AAJD;;;EhBqKA,eJyHc;EIxHd,6DAA0F;CgBlKzF;ACkCH;EjB+HE,4CJ+Ge;EI9Gf,iFAA0F;CiBvHvF;AA3CD;;;IjBiKF,0BJ+Ge;II9Gf,2DAA0F;CiBhKvF;AAgCL;IjB+HE,4CJyHc;IIxHd,gFAA0F;CiBxHrF;AA1CH;;;MjBiKF,0BJyHc;MIxHd,0DAA0F;CiBhKvF;AAgCL;EjB+HE,4CJ+Ge;EI9Gf,iFAA0F;CiB/GvF;AA1CH;IjBwJA,0BJ+Ge;II9Gf,2DAA0F;CiBvJzF;AAuBH;IjB+HE,4CJyHc;IIxHd,gFAA0F;CiBhHrF;AAzCL;MjBwJA,0BJyHc;MIxHd,0DAA0F;CiBvJzF;AAID;EjBkJA,0BJ+Ge;EI9Gf,2DAA0F;CiBjJzF;AAED;EjB8IA,4CJ+Ge;EI9Gf,iFAA0F;CiB7IzF;AAED;EjB0IA,wCJ+Ge;EI9Gf,6EAA0F;CiBzIzF;AAVD;EjBkJA,0BJyHc;EIxHd,0DAA0F;CiBjJzF;AAED;EjB8IA,4CJyHc;EIxHd,gFAA0F;CiB7IzF;AAED;EjB0IA,wCJyHc;EIxHd,4EAA0F;CiBzIzF;AAID;EjBoIA,gBJ+Ge;EI9Gf,iDAA0F;CiBnIzF;AAFD;EjBoIA,gBJyHc;EIxHd,gDAA0F;CiBnIzF;ACpCH;ElBsKE,sBJyHc;EIxHd,sDAA0F;CkB9JrF;AATP;IlBsKE,0BJyHc;IIxHd,0DAA0F;CkB/JnF;AART;ElBsKE,eJyHc;EIxHd,+CAA0F;CkB1JrF;AAbP;ElBsKE,sBJ+Ge;EI9Gf,uDAA0F;CkBhJrF;AAvBP;IlBsKE,0BJ+Ge;II9Gf,2DAA0F;CkBjJnF;AAtBT;ElBsKE,eJ+Ge;EI9Gf,gDAA0F;CkB5IrF;AA3BP;EAgCQ,kCAAuB;CACxB;AAjCP;EAqCU,kCAAuB;CACxB;AAtCT;EA0CY,kCAAuB;CAKxB;AA/CX;IA6Cc,sCAA2B;CAC5B;AlB4CT;EA4EF,YFtFoB;EEuFpB,kEAA0F;EmBlKtF,0BAAyB;CnBuF1B;AAFD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AoB5FL;;;;;IpBsKE,sCF9FoB;IE+FpB,qFAA0F;CoB3JrF;AAZP;IpBsKE,sCFpGsB;IEqGtB,uFAA0F;IAD1F,YFtFoB;IEuFpB,+DAA0F;CoBhJvF;AAvBL;MpBsKE,YFtFoB;MEuFpB,+DAA0F;MAD1F,WFtFoB;MEuFpB,8DAA0F;CoBjJrF;AAtBP;IpBsKE,2BFpGsB;IEqGtB,4EAA0F;CoBtIrF;AAjCP;MpBsKE,sCF9FoB;ME+FpB,qFAA0F;CoBvInF;AAhCT;IpBsKE,2BFtGyB;IEuGzB,+EAA0F;CoBhInF;AAvCT;IpBsKE,0BJ+Ge;II9Gf,yEAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CoBtHnF;AAjDT;MpBsKE,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BFtGyB;MEuGzB,2EAA0F;CoBvHjF;AAhDX;IpBuPE,eJjOe;IIkOf,uDAAuF;CoBjMhF;AAvDT;IpBuPE,eJjOe;IIkOf,uDAAuF;IADvF,cJjOe;IIkOf,sDAAuF;CoB5LhF;ApB8BL;EA4EF,2BFrGwB;EEsGxB,8EAA0F;CA3EvF;AqB5FL;IrBsKE,eJ+Ge;II9Gf,8DAA0F;CqBjKvF;ACNL;EtBsKE,4CJyHc;EIxHd,gFAA0F;CsBlKrF;AALP;EtBsKE,0BJyHc;EIxHd,0DAA0F;CsB9JrF;AATP;EtBsKE,eJyHc;EIxHd,+CAA0F;CsB1JrF;AAbP;EtBsKE,4CJ+Ge;EI9Gf,iFAA0F;CsBpJrF;AAnBP;EtBsKE,0BJ+Ge;EI9Gf,2DAA0F;CsBhJrF;AAvBP;EtBsKE,eJ+Ge;EI9Gf,gDAA0F;CsB5IrF;AA3BP;EAgCQ,sCAA2B;CAC5B;AAjCP;EtBuPE,0BJoCc;EInCd,iEAAuF;CsBnNlF;AArCP;EAyCU,sCAA2B;CAC5B;AA1CT;EtBuPE,0BJuCc;EItCd,iEAAuF;CsB1MhF;AC9CT;;EvBsKE,uBFxGkB;EEyGlB,2DAA0F;CuBlKvF;AALL;EvBsKE,2BFtGyB;EEuGzB,+EAA0F;EAD1F,2CJyHc;EIxHd,+EAA0F;CuB7JvF;AAVL;EvBsKE,sCFjGsB;EEkGtB,uFAA0F;CuBxJrF;AAfP;EvBuPE,0BJoCc;EInCd,8DAAuF;CuB5LlF;AA5DP;IvBsKE,0BJ+Ge;II9Gf,yEAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CuB9HnF;AAzCT;MA8BY,YAAW;CACZ;AA/BX;MAkCY,uBAAsB;MACtB,mBAAkB;CAKnB;AAxCX;QvBsKE,sBJ+Ge;QI9Gf,uDAA0F;CuBhI/E;AAvCb;IvBsKE,0BJyHc;IIxHd,wEAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CuB5GnF;AA3DT;MAgDY,YAAW;CACZ;AAjDX;MAoDY,uBAAsB;MACtB,mBAAkB;CAKnB;AA1DX;QvBsKE,sBJyHc;QIxHd,sDAA0F;CuB9G/E;AAzDb;EvBsKE,sCF9FoB;EE+FpB,qFAA0F;CuBvGrF;AAhEP;EvBsKE,2BFrGwB;EEsGxB,8EAA0F;CuBlGvF;AArEL;EvBsKE,yCF9FoB;EE+FpB,wFAA0F;CuB9FvF;AAzEL;EvBsKE,2BFtGyB;EEuGzB,+EAA0F;CuBnFrF;AApFP;IvBsKE,2BFtGyB;IEuGzB,+EAA0F;IAD1F,0BFtGyB;IEuGzB,8EAA0F;CuBpFnF;AAnFT;EvBsKE,sCF9FoB;EE+FpB,qFAA0F;CuB9EvF;ACxFH;ExBqKA,uBFxGkB;EEyGlB,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,8EAA0F;CwBzHvF;AAxBG;MxBgJN,2BFtGyB;MEuGzB,+EAA0F;CwB/InF;AAED;MxB4IN,0BFtGyB;MEuGzB,8EAA0F;CwBvInF;AAHC;QxByIR,yBFtGyB;QEuGzB,6EAA0F;CwBxIjF;AAIL;MxBmIJ,eJ+Ge;MI9Gf,8DAA0F;CwB1HrF;AAPC;QxBgIN,eJ+Ge;QI9Gf,8DAA0F;CwB3HnF;AAHC;UxB6HR,cJ+Ge;UI9Gf,6DAA0F;CwB5HjF;AAMT;ExBqHA,0BJ+Ge;EI9Gf,yEAA0F;CwBpHzF;AAlDD;ExBqKA,0BJ+Ge;EI9Gf,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,2EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,4EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,2EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,0EAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,4EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,4EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,2EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,uFAA0F;CwBpHzF;AAlDD;ExBqKA,0BJyHc;EIxHd,wEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,0EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,2EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,0EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,yEAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,2EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,2EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,0EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,sFAA0F;CwBpHzF;AAlDD;ExBqKA,uBFxGkB;EEyGlB,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,8EAA0F;CwBzHvF;AAxBG;MxBgJN,2BFtGyB;MEuGzB,+EAA0F;CwB/InF;AAED;MxB4IN,0BFtGyB;MEuGzB,8EAA0F;CwBvInF;AAHC;QxByIR,yBFtGyB;QEuGzB,6EAA0F;CwBxIjF;AAIL;MxBmIJ,eJ+Ge;MI9Gf,8DAA0F;CwB1HrF;AAPC;QxBgIN,eJ+Ge;QI9Gf,8DAA0F;CwB3HnF;AAHC;UxB6HR,cJ+Ge;UI9Gf,6DAA0F;CwB5HjF;AAMT;ExBqHA,0BJ+Ge;EI9Gf,yEAA0F;CwBpHzF;AAlDD;ExBqKA,0BJ+Ge;EI9Gf,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,2EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,4EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,2EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,0EAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,4EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,4EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,2EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,uFAA0F;CwBpHzF;AAlDD;ExBqKA,0BJyHc;EIxHd,wEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,0EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,2EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,0EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,yEAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,2EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,2EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,0EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,sFAA0F;CwBpHzF;AxBuCC;EA4EF,2BFtGyB;EEuGzB,uFAA0F;EAgF1F,0BJoCc;EInCd,kEAAuF;CA5JpF;AyB3FH;IzBqKA,2BFtGyB;IEuGzB,uFAA0F;CyBhKzF;AAHC;MzBkKF,0BFtGyB;MEuGzB,sFAA0F;CyBjKvF;AAaH;;;IzBmJA,2BFtGyB;IEuGzB,uFAA0F;CyBhJzF;AAGH;IzB4IE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CyB1HvF;AA5CH;MzBqKA,2BFtGyB;MEuGzB,4EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,2EAA0F;CyBjKvF;AAMD;MzB0JF,2BFtGyB;MEuGzB,4EAA0F;CyBzJvF;AAKH;;;MzBmJA,2BFtGyB;MEuGzB,4EAA0F;CyBhJzF;AAGH;IzB4IE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CyBlHvF;AApDH;MzBqKA,2BFtGyB;MEuGzB,2EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,0EAA0F;CyBjKvF;AAMD;MzB0JF,2BFtGyB;MEuGzB,2EAA0F;CyBzJvF;AAKH;;;MzBmJA,2BFtGyB;MEuGzB,2EAA0F;CyBhJzF;AAGH;IA8BM,8BAA6B;IzB8GjC,2BFtGyB;IEuGzB,+EAA0F;CyB3GvF;AA3DH;MzBqKA,2BFtGyB;MEuGzB,+EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,8EAA0F;CyBjKvF;AAaH;;;MzBmJA,2BFtGyB;MEuGzB,+EAA0F;CyBhJzF;AzBmEC;EA4EF,YFtFoB;EEuFpB,6DAA0F;EAD1F,wCF3FkB;EE4FlB,uFAA0F;CA3EvF\",\"file\":\"App.vue\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n:root {\\n --md-theme-default-primary: $value\\n ;\\n --md-theme-default-accent: $value\\n ;\\n --md-theme-default-theme: $value\\n ; }\\n\\n.md-theme-default :not(input):not(textarea)::selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-theme-default a:not(.md-button) {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-theme-default a:not(.md-button):hover {\\n color: rgba(188, 170, 164, 0.8);\\n color: var(--md-theme-default-primary-on-background, rgba(188, 170, 164, 0.8)); }\\n .md-theme-default a:not(.md-button).md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-theme-default a:not(.md-button).md-accent:hover {\\n color: rgba(158, 158, 158, 0.8);\\n color: var(--md-theme-default-accent-on-background, rgba(158, 158, 158, 0.8)); }\\n\\nhtml.md-theme-default {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n\\n.md-theme-default .md-caption, .md-theme-default\\n.md-display-1, .md-theme-default\\n.md-display-2, .md-theme-default\\n.md-display-3, .md-theme-default\\n.md-display-4 {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background-variant, rgba(0, 0, 0, 0.54)); }\\n\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-corner, .md-scrollbar.md-theme-default::-webkit-scrollbar-track {\\n background: #e1e1e1;\\n background: var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1); }\\n\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb {\\n background: #757575;\\n background: var(--md-theme-default-scrollbar-on-background-variant, #757575); }\\n\\n.md-app:not(.md-overlap).md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n\\n.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-list.md-theme-default .md-autocomplete-loading {\\n background-color: rgba(255, 255, 255, 0.54);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.54)); }\\n\\n.md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: rgba(255, 255, 255, 0.12);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.12)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n -webkit-text-fill-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.38);\\n -webkit-text-fill-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n\\n.md-autocomplete-box-content.md-theme-default:after {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n\\n.md-avatar.md-theme-default.md-avatar-icon {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-icon-disabled, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff); }\\n .md-avatar.md-theme-default.md-avatar-icon .md-icon {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon-disabled, #fff); }\\n\\n.md-avatar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-avatar.md-theme-default.md-primary.md-avatar-icon {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-avatar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-avatar.md-theme-default.md-accent.md-avatar-icon {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-bottom-bar.md-theme-default.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-bottom-bar.md-theme-default.md-type-shift {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-bottom-bar.md-theme-default.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #a68f87;\\n background-color: var(--md-theme-default-primary-on-primary, #a68f87); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #858585;\\n background-color: var(--md-theme-default-accent-on-accent, #858585); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-button.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-primary .md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-primary .md-icon-image {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-accent .md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-accent .md-icon-image {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-raised[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-button.md-theme-default.md-raised:not([disabled]) {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-button.md-theme-default.md-fab:not([disabled]) {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default[disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-button.md-theme-default[disabled] .md-icon-font {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-button.md-theme-default[disabled] .md-icon-image {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38)); }\\n\\n.md-card.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default .md-card-expand .md-card-actions {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-card.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-primary .md-card-expand .md-card-actions {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default.md-primary > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-primary, rgba(0, 0, 0, 0.12)); }\\n .md-card.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-accent .md-card-expand .md-card-actions {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default.md-accent > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-accent, rgba(0, 0, 0, 0.12)); }\\n\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-checkbox.md-theme-default.md-checked .md-checkbox-container:after {\\n border-color: #fff;\\n border-color: var(--md-theme-default-background, #fff); }\\n\\n.md-checkbox.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-checkbox.md-theme-default .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.54); }\\n\\n.md-checkbox.md-theme-default.md-disabled .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n background-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-chip.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default .md-icon.md-icon-image svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-primary, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon {\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default.md-primary .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87)); }\\n .md-chip.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default.md-accent .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87)); }\\n .md-chip.md-theme-default.md-disabled {\\n background-color: rgba(0, 0, 0, 0.1);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.1));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent, rgba(0, 0, 0, 0.54)); }\\n\\n.md-chips.md-theme-default .md-clear {\\n background-color: rgba(0, 0, 0, 0.2); }\\n\\n.md-content.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-content.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-content.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-app .md-content.md-theme-default {\\n border-left-color: rgba(0, 0, 0, 0.12);\\n border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-datepicker-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-header {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after, .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-body-footer {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-week {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-disabled {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-today {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-selector {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-divider.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n\\n.md-drawer.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-drawer.md-theme-default.md-persistent-mini {\\n border-right-color: rgba(0, 0, 0, 0.12);\\n border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-empty-state.md-theme-default.md-rounded {\\n background-color: rgba(0, 0, 0, 0.06);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.06)); }\\n\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-field.md-theme-default:after {\\n background-color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default:before {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-field.md-theme-default .md-helper-text,\\n.md-field.md-theme-default .md-count,\\n.md-field.md-theme-default label {\\n color: rgba(0, 0, 0, 0.54); }\\n\\n.md-field.md-theme-default .md-input::-webkit-input-placeholder,\\n.md-field.md-theme-default .md-textarea::-webkit-input-placeholder {\\n color: rgba(0, 0, 0, 0.54); }\\n\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-has-value .md-input,\\n.md-field.md-theme-default.md-has-value .md-textarea {\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87); }\\n\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after {\\n border-color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-disabled:after {\\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 33%, transparent 0%); }\\n\\n.md-field.md-theme-default.md-disabled label,\\n.md-field.md-theme-default.md-disabled .md-input,\\n.md-field.md-theme-default.md-disabled .md-textarea {\\n color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default > .md-icon:after {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa); }\\n\\n.md-field.md-theme-default.md-invalid:after {\\n background-color: #ff1744;\\n background-color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before {\\n border-color: #ff1744;\\n border-color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid label {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid .md-error {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid .md-date-icon,\\n.md-field.md-theme-default.md-invalid .md-date-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-highlight .md-input,\\n.md-field.md-theme-default.md-highlight .md-textarea {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-focused > .md-icon, .md-field.md-theme-default.md-highlight > .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-focused label {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-disabled .md-icon svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-icon.md-theme-default.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-icon.md-theme-default.md-icon-image svg.md-primary {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-icon.md-theme-default.md-icon-image svg.md-accent {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-icon.md-theme-default.md-icon-font {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-icon.md-theme-default.md-icon-font.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-icon.md-theme-default.md-icon-font.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-list.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-list.md-theme-default .md-highlight .md-list-item-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-list.md-theme-default .md-list-item-container {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default [disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-list.md-theme-default .md-selected .md-list-item-content,\\n .md-list.md-theme-default .router-link-exact-active .md-list-item-content {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-list.md-theme-default .md-list-item-expand.md-active {\\n border-color: rgba(0, 0, 0, 0.12);\\n border-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-menu-item.md-theme-default.md-primary .md-list-item-link,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-router,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-button {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-menu-item.md-theme-default.md-accent .md-list-item-link,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-router,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-button {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-indeterminate, .md-progress-bar.md-theme-default.md-query {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent, .md-progress-bar.md-theme-default.md-query.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-determinate {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n .md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-progress-bar.md-theme-default.md-determinate.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n .md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {\\n border-color: rgba(188, 170, 164, 0.38);\\n border-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {\\n border-color: rgba(158, 158, 158, 0.38);\\n border-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-progress-spinner.md-theme-default .md-progress-spinner-circle {\\n stroke: #bcaaa4;\\n stroke: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {\\n stroke: #9e9e9e;\\n stroke: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked .md-radio-container {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-radio.md-theme-default.md-checked .md-radio-container:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-radio.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-radio.md-theme-default .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.54); }\\n\\n.md-radio.md-theme-default.md-disabled .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n .md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after {\\n background-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-snackbar.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n background-color: #323232; }\\n\\n.md-steppers.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-icon:after, .md-steppers.md-theme-default .md-stepper-icon:before,\\n .md-steppers.md-theme-default .md-stepper-number:after,\\n .md-steppers.md-theme-default .md-stepper-number:before,\\n .md-steppers.md-theme-default .md-stepper:after,\\n .md-steppers.md-theme-default .md-stepper:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-steppers.md-theme-default .md-stepper-number {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff); }\\n .md-steppers.md-theme-default .md-stepper-number svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-hint, #fff); }\\n .md-steppers.md-theme-default .md-stepper-header .md-button-content {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-steppers.md-theme-default .md-stepper-header .md-button-content:after, .md-steppers.md-theme-default .md-stepper-header .md-button-content:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content, .md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744); }\\n .md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-steppervariant, #ff1744); }\\n\\n.md-subheader.md-theme-default {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-subheader.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-switch.md-theme-default.md-checked .md-switch-container {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-switch.md-theme-default.md-checked .md-switch-thumb {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-switch.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-switch.md-theme-default .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.38); }\\n\\n.md-switch.md-theme-default .md-switch-thumb {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-switchvariant, #f5f5f5); }\\n\\n.md-switch.md-theme-default.md-disabled .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.12); }\\n\\n.md-switch.md-theme-default.md-disabled .md-switch-thumb {\\n background-color: #bdbdbd;\\n background-color: var(--md-theme-default-switchvariant, #bdbdbd); }\\n\\n.md-table.md-theme-default .md-table-content,\\n.md-table.md-theme-default .md-table-alternate-header {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n\\n.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n background-color: rgba(158, 158, 158, 0.2);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.2)); }\\n\\n.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell {\\n background-color: rgba(0, 0, 0, 0.08);\\n background-color: var(--md-theme-default-highlight-on-background, rgba(0, 0, 0, 0.08)); }\\n\\n.md-table.md-theme-default .md-table-row.md-selected, .md-table.md-theme-default .md-table-row.md-selected-single {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-rowvariant, #f5f5f5); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple {\\n color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple {\\n color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-table.md-theme-default .md-table-row td {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-table.md-theme-default .md-table-head {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n\\n.md-table.md-theme-default .md-table-fixed-header-active {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-table.md-theme-default .md-sortable:hover, .md-table.md-theme-default .md-sortable.md-sorted {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-sortable:hover svg, .md-table.md-theme-default .md-sortable.md-sorted svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-table.md-theme-default .md-table-pagination {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-toolbar.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-toolbarvariant, #f5f5f5); }\\n .md-toolbar.md-theme-default .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default .md-title,\\n .md-toolbar.md-theme-default .md-display-1,\\n .md-toolbar.md-theme-default .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-title,\\n .md-toolbar.md-theme-default.md-primary .md-display-1,\\n .md-toolbar.md-theme-default.md-primary .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-title,\\n .md-toolbar.md-theme-default.md-accent .md-display-1,\\n .md-toolbar.md-theme-default.md-accent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent {\\n background-color: transparent;\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-title,\\n .md-toolbar.md-theme-default.md-transparent .md-display-1,\\n .md-toolbar.md-theme-default.md-transparent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tooltip.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-tooltip, #fff);\\n background-color: rgba(97, 97, 97, 0.9);\\n background-color: var(--md-theme-default-tooltip-on-background, rgba(97, 97, 97, 0.9)); }\\n\",\"/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n\\n$md-palette: (\\n red: (\\n 50: #ffebee,\\n 100: #ffcdd2,\\n 200: #ef9a9a,\\n 300: #e57373,\\n 400: #ef5350,\\n 500: #f44336,\\n 600: #e53935,\\n 700: #d32f2f,\\n 800: #c62828,\\n 900: #b71c1c,\\n A100: #ff8a80,\\n A200: #ff5252,\\n A400: #ff1744,\\n A700: #d50000\\n ),\\n pink: (\\n 50: #fce4ec,\\n 100: #f8bbd0,\\n 200: #f48fb1,\\n 300: #f06292,\\n 400: #ec407a,\\n 500: #e91e63,\\n 600: #d81b60,\\n 700: #c2185b,\\n 800: #ad1457,\\n 900: #880e4f,\\n A100: #ff80ab,\\n A200: #ff4081,\\n A400: #f50057,\\n A700: #c51162\\n ),\\n purple: (\\n 50: #f3e5f5,\\n 100: #e1bee7,\\n 200: #ce93d8,\\n 300: #ba68c8,\\n 400: #ab47bc,\\n 500: #9c27b0,\\n 600: #8e24aa,\\n 700: #7b1fa2,\\n 800: #6a1b9a,\\n 900: #4a148c,\\n A100: #ea80fc,\\n A200: #e040fb,\\n A400: #d500f9,\\n A700: #aa00ff\\n ),\\n deeppurple: (\\n 50: #ede7f6,\\n 100: #d1c4e9,\\n 200: #b39ddb,\\n 300: #9575cd,\\n 400: #7e57c2,\\n 500: #673ab7,\\n 600: #5e35b1,\\n 700: #512da8,\\n 800: #4527a0,\\n 900: #311b92,\\n A100: #b388ff,\\n A200: #7c4dff,\\n A400: #651fff,\\n A700: #6200ea\\n ),\\n indigo: (\\n 50: #e8eaf6,\\n 100: #c5cae9,\\n 200: #9fa8da,\\n 300: #7986cb,\\n 400: #5c6bc0,\\n 500: #3f51b5,\\n 600: #3949ab,\\n 700: #303f9f,\\n 800: #283593,\\n 900: #1a237e,\\n A100: #8c9eff,\\n A200: #536dfe,\\n A400: #3d5afe,\\n A700: #304ffe\\n ),\\n blue: (\\n 50: #e3f2fd,\\n 100: #bbdefb,\\n 200: #90caf9,\\n 300: #64b5f6,\\n 400: #42a5f5,\\n 500: #2196f3,\\n 600: #1e88e5,\\n 700: #1976d2,\\n 800: #1565c0,\\n 900: #0d47a1,\\n A100: #82b1ff,\\n A200: #448aff,\\n A400: #2979ff,\\n A700: #2962ff\\n ),\\n lightblue: (\\n 50: #e1f5fe,\\n 100: #b3e5fc,\\n 200: #81d4fa,\\n 300: #4fc3f7,\\n 400: #29b6f6,\\n 500: #03a9f4,\\n 600: #039be5,\\n 700: #0288d1,\\n 800: #0277bd,\\n 900: #01579b,\\n A100: #80d8ff,\\n A200: #40c4ff,\\n A400: #00b0ff,\\n A700: #0091ea\\n ),\\n cyan: (\\n 50: #e0f7fa,\\n 100: #b2ebf2,\\n 200: #80deea,\\n 300: #4dd0e1,\\n 400: #26c6da,\\n 500: #00bcd4,\\n 600: #00acc1,\\n 700: #0097a7,\\n 800: #00838f,\\n 900: #006064,\\n A100: #84ffff,\\n A200: #18ffff,\\n A400: #00e5ff,\\n A700: #00b8d4\\n ),\\n teal: (\\n 50: #e0f2f1,\\n 100: #b2dfdb,\\n 200: #80cbc4,\\n 300: #4db6ac,\\n 400: #26a69a,\\n 500: #009688,\\n 600: #00897b,\\n 700: #00796b,\\n 800: #00695c,\\n 900: #004d40,\\n A100: #a7ffeb,\\n A200: #64ffda,\\n A400: #1de9b6,\\n A700: #00bfa5\\n ),\\n green: (\\n 50: #e8f5e9,\\n 100: #c8e6c9,\\n 200: #a5d6a7,\\n 300: #81c784,\\n 400: #66bb6a,\\n 500: #4caf50,\\n 600: #43a047,\\n 700: #388e3c,\\n 800: #2e7d32,\\n 900: #1b5e20,\\n A100: #b9f6ca,\\n A200: #69f0ae,\\n A400: #00e676,\\n A700: #00c853\\n ),\\n lightgreen: (\\n 50: #f1f8e9,\\n 100: #dcedc8,\\n 200: #c5e1a5,\\n 300: #aed581,\\n 400: #9ccc65,\\n 500: #8bc34a,\\n 600: #7cb342,\\n 700: #689f38,\\n 800: #558b2f,\\n 900: #33691e,\\n A100: #ccff90,\\n A200: #b2ff59,\\n A400: #76ff03,\\n A700: #64dd17\\n ),\\n lime: (\\n 50: #f9fbe7,\\n 100: #f0f4c3,\\n 200: #e6ee9c,\\n 300: #dce775,\\n 400: #d4e157,\\n 500: #cddc39,\\n 600: #c0ca33,\\n 700: #afb42b,\\n 800: #9e9d24,\\n 900: #827717,\\n A100: #f4ff81,\\n A200: #eeff41,\\n A400: #c6ff00,\\n A700: #aeea00\\n ),\\n yellow: (\\n 50: #fffde7,\\n 100: #fff9c4,\\n 200: #fff59d,\\n 300: #fff176,\\n 400: #ffee58,\\n 500: #ffeb3b,\\n 600: #fdd835,\\n 700: #fbc02d,\\n 800: #f9a825,\\n 900: #f57f17,\\n A100: #ffff8d,\\n A200: #ffff00,\\n A400: #ffea00,\\n A700: #ffd600\\n ),\\n amber: (\\n 50: #fff8e1,\\n 100: #ffecb3,\\n 200: #ffe082,\\n 300: #ffd54f,\\n 400: #ffca28,\\n 500: #ffc107,\\n 600: #ffb300,\\n 700: #ffa000,\\n 800: #ff8f00,\\n 900: #ff6f00,\\n A100: #ffe57f,\\n A200: #ffd740,\\n A400: #ffc400,\\n A700: #ffab00\\n ),\\n orange: (\\n 50: #fff3e0,\\n 100: #ffe0b2,\\n 200: #ffcc80,\\n 300: #ffb74d,\\n 400: #ffa726,\\n 500: #ff9800,\\n 600: #fb8c00,\\n 700: #f57c00,\\n 800: #ef6c00,\\n 900: #e65100,\\n A100: #ffd180,\\n A200: #ffab40,\\n A400: #ff9100,\\n A700: #ff6d00\\n ),\\n deeporange: (\\n 50: #fbe9e7,\\n 100: #ffccbc,\\n 200: #ffab91,\\n 300: #ff8a65,\\n 400: #ff7043,\\n 500: #ff5722,\\n 600: #f4511e,\\n 700: #e64a19,\\n 800: #d84315,\\n 900: #bf360c,\\n A100: #ff9e80,\\n A200: #ff6e40,\\n A400: #ff3d00,\\n A700: #dd2c00\\n ),\\n brown: (\\n 50: #efebe9,\\n 100: #d7ccc8,\\n 200: #bcaaa4,\\n 300: #a1887f,\\n 400: #8d6e63,\\n 500: #795548,\\n 600: #6d4c41,\\n 700: #5d4037,\\n 800: #4e342e,\\n 900: #3e2723,\\n A100: #d7ccc8,\\n A200: #bcaaa4,\\n A400: #8d6e63,\\n A700: #5d4037\\n ),\\n grey: (\\n 50: #fafafa,\\n 100: #f5f5f5,\\n 200: #eeeeee,\\n 300: #e0e0e0,\\n 400: #bdbdbd,\\n 500: #9e9e9e,\\n 600: #757575,\\n 700: #616161,\\n 800: #424242,\\n 900: #212121,\\n A100: #fff,\\n A200: #000000,\\n A400: #303030,\\n A700: #616161\\n ),\\n bluegrey: (\\n 50: #eceff1,\\n 100: #cfd8dc,\\n 200: #b0bec5,\\n 300: #90a4ae,\\n 400: #78909c,\\n 500: #607d8b,\\n 600: #546e7a,\\n 700: #455a64,\\n 800: #37474f,\\n 900: #263238,\\n A100: #cfd8dc,\\n A200: #b0bec5,\\n A400: #78909c,\\n A700: #455a64\\n ),\\n white: (\\n 50: #fff,\\n 100: #fff,\\n 200: #fff,\\n 300: #fff,\\n 400: #fff,\\n 500: #fff,\\n 600: #fff,\\n 700: #fff,\\n 800: #fff,\\n 900: #fff,\\n A100: #fff,\\n A200: #fff,\\n A400: #fff,\\n A700: #fff\\n ),\\n black: (\\n 50: #000,\\n 100: #000,\\n 200: #000,\\n 300: #000,\\n 400: #000,\\n 500: #000,\\n 600: #000,\\n 700: #000,\\n 800: #000,\\n 900: #000,\\n A100: #000,\\n A200: #000,\\n A400: #000,\\n A700: #000\\n )\\n);\\n\",\"/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n\\n@function md-get-palette-color($color, $hue) {\\n @return map-get(map-get($md-palette, $color), $hue);\\n}\\n\\n\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n\\n@function md-get-theme-mode() {\\n @return map-get($md-theme-palette, theme);\\n}\\n\\n\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n\\n@function md-theme($type, $background: \\\"\\\") {\\n $color-theme: null;\\n\\n @if $type == \\\"primary\\\" or $type == \\\"accent\\\" {\\n @return md-get-color-by-type($type, null);\\n } @else {\\n $color-theme: map-get($md-theme-palette, theme);\\n\\n @if $background != \\\"\\\" {\\n $color-theme: md-pick-contrast(md-get-color-by-type($background, $color-theme));\\n }\\n\\n @return md-get-color-by-theme($color-theme, $type);\\n }\\n}\\n\\n\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n\\n@function md-get-color-by-theme($color-theme, $type) {\\n $theme: map-get($md-color-levels, $color-theme);\\n\\n @return map-get($theme, $type);\\n}\\n\\n\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n\\n@function md-get-color-by-type($type, $theme) {\\n $newColor: map-get($md-theme-palette, $type);\\n\\n @if $newColor == null {\\n $newColor: md-get-color-by-theme($theme, $type);\\n }\\n\\n @return $newColor\\n}\\n\",\"/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n\\n$md-default-palette: (\\n primary: md-get-palette-color(blue, A200),\\n accent: md-get-palette-color(red, A200),\\n theme: \\\"light\\\"\\n) !default;\\n\\n\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n$md-theme-palette: ();\\n\\n\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n$md-themes: ();\\n\\n\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n\\n$md-current-theme: null;\\n\\n\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n\\n$md-color-levels: (\\n light: (\\n background: #fff,\\n background-variant: #fafafa,\\n text-primary: rgba(#000, .87),\\n text-accent: rgba(#000, .54),\\n text-hint: rgba(#000, .38),\\n disabled: rgba(#000, .26),\\n disabled-background: rgba(#000, .12),\\n highlight: rgba(#000, .12),\\n icon: rgba(#000, .54),\\n icon-disabled: rgba(#000, .38),\\n divider: rgba(#000, .12),\\n scrollbar: #757575,\\n scrollbar-background: darken(#eee, 5%),\\n tooltip: #616161\\n ),\\n dark: (\\n background: #424242,\\n background-variant: #303030,\\n text-primary: #fff,\\n text-accent: rgba(#fff, .7),\\n text-hint: rgba(#fff, .5),\\n disabled: rgba(#fff, .3),\\n disabled-background: rgba(#fff, .12),\\n highlight: rgba(#fff, .12),\\n icon: #fff,\\n icon-disabled: rgba(#fff, .5),\\n divider: rgba(#fff, .12),\\n scrollbar: #9E9E9E,\\n scrollbar-background: #212121,\\n tooltip: #fff\\n )\\n);\\n\",\"/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n\\n$md-linear-channel-values:\\n 0\\n .0003035269835488375\\n .000607053967097675\\n .0009105809506465125\\n .00121410793419535\\n .0015176349177441874\\n .001821161901293025\\n .0021246888848418626\\n .0024282158683907\\n .0027317428519395373\\n .003035269835488375\\n .003346535763899161\\n .003676507324047436\\n .004024717018496307\\n .004391442037410293\\n .004776953480693729\\n .005181516702338386\\n .005605391624202723\\n .006048833022857054\\n .006512090792594475\\n .006995410187265387\\n .007499032043226175\\n .008023192985384994\\n .008568125618069307\\n .009134058702220787\\n .00972121732023785\\n .010329823029626936\\n .010960094006488246\\n .011612245179743885\\n .012286488356915872\\n .012983032342173012\\n .013702083047289686\\n .014443843596092545\\n .01520851442291271\\n .01599629336550963\\n .016807375752887384\\n .017641954488384078\\n .018500220128379697\\n .019382360956935723\\n .0202885630566524\\n .021219010376003555\\n .022173884793387385\\n .02315336617811041\\n .024157632448504756\\n .02518685962736163\\n .026241221894849898\\n .027320891639074894\\n .028426039504420793\\n .0295568344378088\\n .030713443732993635\\n .03189603307301153\\n .033104766570885055\\n .03433980680868217\\n .03560131487502034\\n .03688945040110004\\n .0382043715953465\\n .03954623527673284\\n .04091519690685319\\n .042311410620809675\\n .043735029256973465\\n .04518620438567554\\n .046665086336880095\\n .04817182422688942\\n .04970656598412723\\n .05126945837404324\\n .052860647023180246\\n .05448027644244237\\n .05612849004960009\\n .05780543019106723\\n .0595112381629812\\n .06124605423161761\\n .06301001765316767\\n .06480326669290577\\n .06662593864377289\\n .06847816984440017\\n .07036009569659588\\n .07227185068231748\\n .07421356838014963\\n .07618538148130785\\n .07818742180518633\\n .08021982031446832\\n .0822827071298148\\n .08437621154414882\\n .08650046203654976\\n .08865558628577294\\n .09084171118340768\\n .09305896284668745\\n .0953074666309647\\n .09758734714186246\\n .09989872824711389\\n .10224173308810132\\n .10461648409110419\\n .10702310297826761\\n .10946171077829933\\n .1119324278369056\\n .11443537382697373\\n .11697066775851084\\n .11953842798834562\\n .12213877222960187\\n .12477181756095049\\n .12743768043564743\\n .1301364766903643\\n .13286832155381798\\n .13563332965520566\\n .13843161503245183\\n .14126329114027164\\n .14412847085805777\\n .14702726649759498\\n .14995978981060856\\n .15292615199615017\\n .1559264637078274\\n .1589608350608804\\n .162029375639111\\n .1651321945016676\\n .16826940018969075\\n .1714411007328226\\n .17464740365558504\\n .17788841598362912\\n .18116424424986022\\n .184474994500441\\n .18782077230067787\\n .19120168274079138\\n .1946178304415758\\n .19806931955994886\\n .20155625379439707\\n .20507873639031693\\n .20863687014525575\\n .21223075741405523\\n .21586050011389926\\n .2195261997292692\\n .2232279573168085\\n .22696587351009836\\n .23074004852434915\\n .23455058216100522\\n .238397573812271\\n .24228112246555486\\n .24620132670783548\\n .25015828472995344\\n .25415209433082675\\n .2581828529215958\\n .26225065752969623\\n .26635560480286247\\n .2704977910130658\\n .27467731206038465\\n .2788942634768104\\n .2831487404299921\\n .2874408377269175\\n .29177064981753587\\n .2961382707983211\\n .3005437944157765\\n .3049873140698863\\n .30946892281750854\\n .31398871337571754\\n .31854677812509186\\n .32314320911295075\\n .3277780980565422\\n .33245153634617935\\n .33716361504833037\\n .3419144249086609\\n .3467040563550296\\n .35153259950043936\\n .3564001441459435\\n .3613067797835095\\n .3662525955988395\\n .3712376804741491\\n .3762621229909065\\n .38132601143253014\\n .386429433787049\\n .39157247774972326\\n .39675523072562685\\n .4019777798321958\\n .4072402119017367\\n .41254261348390375\\n .4178850708481375\\n .4232676699860717\\n .4286904966139066\\n .43415363617474895\\n .4396571738409188\\n .44520119451622786\\n .45078578283822346\\n .45641102318040466\\n .4620769996544071\\n .467783796112159\\n .47353149614800955\\n .4793201831008268\\n .4851499400560704\\n .4910208498478356\\n .4969329950608704\\n .5028864580325687\\n .5088813208549338\\n .5149176653765214\\n .5209955732043543\\n .5271151257058131\\n .5332764040105052\\n .5394794890121072\\n .5457244613701866\\n .5520114015120001\\n .5583403896342679\\n .5647115057049292\\n .5711248294648731\\n .5775804404296506\\n .5840784178911641\\n .5906188409193369\\n .5972017883637634\\n .6038273388553378\\n .6104955708078648\\n .6172065624196511\\n .6239603916750761\\n .6307571363461468\\n .6375968739940326\\n .6444796819705821\\n .6514056374198242\\n .6583748172794485\\n .665387298282272\\n .6724431569576875\\n .6795424696330938\\n .6866853124353135\\n .6938717612919899\\n .7011018919329731\\n .7083757798916868\\n .7156935005064807\\n .7230551289219693\\n .7304607400903537\\n .7379104087727308\\n .7454042095403874\\n .7529422167760779\\n .7605245046752924\\n .768151147247507\\n .7758222183174236\\n .7835377915261935\\n .7912979403326302\\n .799102738014409\\n .8069522576692516\\n .8148465722161012\\n .8227857543962835\\n .8307698767746546\\n .83879901174074\\n .846873231509858\\n .8549926081242338\\n .8631572134541023\\n .8713671191987972\\n .8796223968878317\\n .8879231178819663\\n .8962693533742664\\n .9046611743911496\\n .9130986517934192\\n .9215818562772946\\n .9301108583754237\\n .938685728457888\\n .9473065367331999\\n .9559733532492861\\n .9646862478944651\\n .9734452903984125\\n .9822505503331171\\n .9911020971138298\\n 1;\\n\\n\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n\\n@function md-check-luminance($color) {\\n $red: nth($md-linear-channel-values, red($color) + 1);\\n $green: nth($md-linear-channel-values, green($color) + 1);\\n $blue: nth($md-linear-channel-values, blue($color) + 1);\\n\\n @return .2126 * $red + .7152 * $green + .0722 * $blue;\\n}\\n\\n\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n\\n@function md-calculate-contrast($bg, $fg) {\\n $bgLum: md-check-luminance($bg) + .2;\\n $fgLum: md-check-luminance($fg) + .2;\\n\\n @return max($bgLum, $fgLum) / min($bgLum, $fgLum);\\n}\\n\\n\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n\\n@function md-pick-contrast($color) {\\n $lightColor: map-get(map-get($md-color-levels, dark), text-primary);\\n $lightContrast: md-calculate-contrast($color, $lightColor);\\n $darkColor: map-get(map-get($md-color-levels, light), text-primary);\\n $darkContrast: md-calculate-contrast($color, $darkColor);\\n\\n @if ($lightContrast > $darkContrast) {\\n @return \\\"dark\\\";\\n }\\n\\n @return \\\"light\\\";\\n}\\n\",\"@import '../base/theme.scss';\\n\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n\\n@mixin md-override-palette ($palette) {\\n $md-default-palette: map-merge($md-default-palette, $palette) !global;\\n}\\n\\n\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n\\n@mixin md-register-theme ($name, $palette: $md-default-palette) {\\n $palette: map-merge($md-default-palette, $palette);\\n $theme: map-merge($md-themes, (\\n #{$name}: $palette\\n ));\\n\\n :root {\\n @each $type, $value in $palette {\\n --md-theme-#{$name}-#{$type}: $value\\n }\\n }\\n\\n $md-themes: $theme !global;\\n\\n @include md-base-theme;\\n}\\n\\n\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n\\n@mixin md-theme-component () {\\n @each $theme, $palette in $md-themes {\\n $md-theme-palette: map-merge($md-theme-palette, $palette) !global;\\n $md-current-theme: $theme !global;\\n\\n &.md-theme-#{$theme} {\\n @content;\\n }\\n }\\n}\\n\\n\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n\\n@mixin md-theme-component-relative () {\\n @each $theme, $palette in $md-themes {\\n $md-theme-palette: map-merge($md-theme-palette, $palette) !global;\\n $md-current-theme: $theme !global;\\n\\n .md-theme-#{$theme} & {\\n @content;\\n }\\n }\\n}\\n\\n\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n\\n@mixin md-theme-property ($property, $type, $background: \\\"\\\", $opacity: \\\"\\\") {\\n $value: md-theme($type, $background);\\n $variant: null;\\n\\n @if $background != \\\"\\\" {\\n $variant: -on-#{$background};\\n }\\n\\n @if $opacity != \\\"\\\" {\\n $value: rgba($value, $opacity);\\n }\\n\\n #{$property}: $value;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{$variant}, $value);\\n}\\n\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n\\n@mixin md-theme-property-darken ($property, $type, $background: \\\"\\\", $darken: \\\"\\\") {\\n $value: md-theme($type, $background);\\n $variant: null;\\n\\n @if $background != \\\"\\\" {\\n $variant: -on-#{$background};\\n }\\n\\n @if $darken != \\\"\\\" {\\n $value: darken($value, $darken);\\n }\\n\\n #{$property}: $value;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{$variant}, $value);\\n}\\n\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n\\n@mixin md-theme-property-by-hue ($property, $color, $hue, $type, $secondary) {\\n $hex: md-get-palette-color($color, $hue);\\n $variant: null;\\n\\n @if $secondary != \\\"\\\" {\\n $variant: -#{$secondary};\\n }\\n\\n #{$property}: $hex;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{variant}, $hex);\\n}\\n\",\"@mixin md-base-theme () {\\n :not(input):not(textarea)::selection {\\n @include md-theme-component-relative() {\\n @include md-theme-property(background-color, accent, background);\\n @include md-theme-property(color, text-primary, accent);\\n }\\n }\\n\\n a:not(.md-button) {\\n @include md-theme-component-relative() {\\n @include md-theme-property(color, primary, background);\\n\\n &:hover {\\n @include md-theme-property(color, primary, background, .8);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n\\n &:hover {\\n @include md-theme-property(color, accent, background, .8);\\n }\\n }\\n }\\n }\\n\\n html {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background-variant);\\n @include md-theme-property(color, text-primary, background-variant);\\n }\\n }\\n\\n .md-caption,\\n .md-display-1,\\n .md-display-2,\\n .md-display-3,\\n .md-display-4 {\\n @include md-theme-component-relative() {\\n @include md-theme-property(color, text-accent, background-variant);\\n }\\n }\\n\\n .md-scrollbar {\\n @include md-theme-component() {\\n &::-webkit-scrollbar-corner,\\n &::-webkit-scrollbar-track {\\n @include md-theme-property(background, scrollbar-background, background-variant);\\n }\\n\\n &::-webkit-scrollbar-thumb {\\n @include md-theme-property(background, scrollbar, background-variant);\\n }\\n }\\n }\\n}\\n\",\".md-list {\\n @include md-theme-component() {\\n .md-autocomplete-items {\\n .md-highlight-text-match {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-autocomplete-loading {\\n @include md-theme-property(background-color, background, \\\"\\\", .54);\\n }\\n }\\n}\\n\\n.md-autocomplete {\\n @include md-theme-component() {\\n &.md-autocomplete-box {\\n @include md-theme-property(background-color, background);\\n\\n &.md-focused {\\n label {\\n @include md-theme-property(color, text-hint, background);\\n }\\n }\\n\\n .md-toolbar & {\\n @include md-theme-property(background-color, background, \\\"\\\", .12);\\n\\n label,\\n input {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(-webkit-text-fill-color, text-primary, primary);\\n }\\n\\n svg {\\n @include md-theme-property(fill, text-primary, primary);\\n }\\n\\n &.md-focused {\\n @include md-theme-property(background-color, background);\\n\\n label,\\n input {\\n @include md-theme-property(color, text-hint, background);\\n @include md-theme-property(-webkit-text-fill-color, text-hint, background);\\n }\\n\\n svg {\\n @include md-theme-property(fill, text-hint, background);\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n.md-autocomplete-box-content {\\n @include md-theme-component() {\\n &:after {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(border-bottom-color, divider);\\n }\\n }\\n}\\n\",\"@mixin md-avatar-icon-spec ($color) {\\n &.md-avatar-icon {\\n @include md-theme-property(background-color, $color);\\n @include md-theme-property(color, text-primary, $color);\\n\\n .md-icon {\\n @include md-theme-property(color, text-primary, $color);\\n @include md-theme-property(fill, text-primary, $color);\\n }\\n }\\n}\\n\\n.md-avatar {\\n @include md-theme-component() {\\n @include md-avatar-icon-spec(icon-disabled);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-avatar-icon-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-avatar-icon-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-bottom-bar-spec ($primary) {\\n &.md-type-fixed {\\n @include md-theme-property(background-color, background);\\n\\n .md-bottom-bar-item.md-active {\\n @include md-theme-property(color, $primary, background);\\n\\n .md-icon {\\n @include md-theme-property(color, $primary, background);\\n\\n svg {\\n @include md-theme-property(fill, $primary, background);\\n }\\n }\\n }\\n }\\n\\n &.md-type-shift {\\n @include md-theme-property(background-color, $primary);\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n > .md-ripple {\\n .md-ripple-wave {\\n @include md-theme-property-darken(background-color, $primary, $primary, 10%);\\n }\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, icon, $primary);\\n\\n svg {\\n @include md-theme-property(fill, icon, $primary);\\n }\\n }\\n\\n .md-bottom-bar-item {\\n @include md-theme-property(color, text-primary, $primary);\\n\\n .md-active {\\n .md-icon {\\n @include md-theme-property(color, text-primary, $primary);\\n\\n svg {\\n @include md-theme-property(fill, text-primary, $primary);\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n.md-bottom-bar {\\n @include md-theme-component() {\\n @include md-bottom-bar-spec(primary);\\n\\n &.md-accent {\\n @include md-bottom-bar-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-icon-on-buttons ($state, $type) {\\n .md-icon-font {\\n @include md-theme-property(color, $state, $type);\\n }\\n\\n .md-icon-image {\\n @include md-theme-property(fill, $state, $type);\\n }\\n}\\n\\n.md-button {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n @include md-icon-on-buttons(primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n @include md-icon-on-buttons(accent, background);\\n }\\n\\n &.md-raised {\\n &[disabled] {\\n @include md-theme-property(background-color, disabled-background, background);\\n @include md-theme-property(color, disabled);\\n }\\n\\n &:not([disabled]) {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(background-color, primary);\\n @include md-icon-on-buttons(text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, text-primary, accent);\\n @include md-theme-property(background-color, accent);\\n @include md-icon-on-buttons(text-primary, accent);\\n }\\n }\\n }\\n\\n &.md-fab {\\n &[disabled] {\\n @include md-theme-property(background-color, disabled-background, background);\\n }\\n\\n &:not([disabled]) {\\n @include md-theme-property(background-color, accent);\\n @include md-icon-on-buttons(text-primary, accent);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-icon-on-buttons(text-primary, primary);\\n }\\n }\\n }\\n\\n &[disabled] {\\n @include md-theme-property(color, disabled, background);\\n @include md-icon-on-buttons(icon-disabled, background);\\n }\\n }\\n}\\n\",\"@mixin md-card($base) {\\n @include md-theme-property(background-color, $base);\\n @include md-theme-property(color, text-primary, $base);\\n\\n .md-card-expand .md-card-actions {\\n @include md-theme-property(background-color, $base);\\n }\\n\\n .md-card-header,\\n .md-card-actions {\\n .md-button:not(.md-primary):not(.md-accent) {\\n @include md-theme-property(color, text-primary, $base);\\n\\n &.md-icon-button {\\n .md-icon {\\n @include md-theme-property(color, text-primary, $base, .54);\\n @include md-theme-property(fill, text-primary, $base, .54);\\n }\\n }\\n }\\n }\\n\\n > .md-card-area {\\n &:after {\\n @include md-theme-property(background-color, divider, $base);\\n }\\n }\\n}\\n\\n.md-card {\\n @include md-theme-component() {\\n @include md-card(background);\\n\\n &.md-primary {\\n @include md-card(primary);\\n }\\n\\n &.md-accent {\\n @include md-card(accent);\\n }\\n }\\n}\\n\",\".md-checkbox {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-checkbox-container {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(border-color, accent);\\n\\n &:after {\\n @include md-theme-property(border-color, background);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-checkbox-container {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(border-color, primary);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-checkbox-container {\\n border-color: rgba(#000, .54);\\n }\\n\\n &.md-disabled {\\n .md-checkbox-container {\\n border-color: rgba(#000, .26);\\n }\\n\\n &.md-checked {\\n .md-checkbox-container {\\n border-color: rgba(#000, .26);\\n background-color: rgba(#000, .26);\\n }\\n }\\n }\\n } @else {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .7);\\n }\\n\\n &.md-disabled {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .3);\\n }\\n\\n &.md-checked {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .3);\\n background-color: rgba(#fff, .3);\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\".md-chip {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, highlight);\\n @include md-theme-property(color, text-primary);\\n\\n .md-icon.md-icon-image svg {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(color, text-primary, text-primary);\\n @include md-theme-property(fill, text-primary, text-primary);\\n } @else {\\n @include md-theme-property(color, text-primary);\\n @include md-theme-property(fill, text-primary);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(background-color, icon);\\n @include md-theme-property(color, text-primary, icon);\\n\\n .md-icon {\\n @include md-theme-property(fill, text-primary, icon);\\n }\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n @include md-theme-property(color, icon, background);\\n\\n .md-icon svg {\\n @include md-theme-property(fill, icon, background);\\n @include md-theme-property(color, icon, background);\\n }\\n }\\n }\\n }\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n\\n .md-input-action {\\n @include md-theme-property(color, icon, disabled);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, disabled);\\n } @else {\\n @include md-theme-property(background-color, disabled, disabled);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(color, text-primary, icon);\\n @include md-theme-property(background-color, icon);\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n }\\n }\\n }\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n\\n .md-input-action {\\n @include md-theme-property(color, icon, disabled);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, disabled);\\n } @else {\\n @include md-theme-property(background-color, disabled, disabled);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(background-color, icon);\\n @include md-theme-property(color, text-primary, icon);\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n }\\n }\\n }\\n }\\n\\n &.md-disabled {\\n @include md-theme-property(background-color, highlight, '', .1);\\n @include md-theme-property(color, text-accent);\\n }\\n }\\n}\\n\\n.md-chips {\\n @include md-theme-component() {\\n @if md-get-theme-mode() == light {\\n .md-clear {\\n background-color: rgba(#000, .2);\\n }\\n } @else {\\n .md-clear {\\n background-color: rgba(#fff, .2);\\n }\\n }\\n }\\n}\\n\",\".md-content {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n }\\n\\n .md-app & {\\n @include md-theme-property(border-left-color, divider, background);\\n }\\n }\\n}\\n\",\".md-datepicker-dialog {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n .md-datepicker-header {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n } @else {\\n @include md-theme-property(background-color, text-primary, '', .06);\\n @include md-theme-property(color, text-primary, background);\\n }\\n }\\n\\n .md-datepicker-body-header {\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, background);\\n }\\n }\\n\\n .md-datepicker-body-footer {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n }\\n\\n .md-datepicker-week {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-datepicker-disabled {\\n @include md-theme-property(color, disabled, background);\\n }\\n\\n .md-datepicker-today {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n .md-datepicker-day-button,\\n .md-datepicker-month-button,\\n .md-datepicker-year-button {\\n &:hover {\\n @include md-theme-property(background-color, divider);\\n }\\n }\\n\\n .md-datepicker-day-button {\\n &.md-datepicker-selected {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n }\\n }\\n\\n .md-datepicker-month-button,\\n .md-datepicker-year-button {\\n &.md-datepicker-selected {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-datepicker-year-selector {\\n @include md-theme-property(border-bottom-color, divider, background);\\n }\\n }\\n}\\n\",\".md-drawer {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-persistent-mini {\\n @include md-theme-property(border-right-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-empty-state-spec ($color) {\\n .md-empty-state-icon {\\n &.md-icon-image {\\n svg {\\n @include md-theme-property(fill, $color, background);\\n }\\n }\\n\\n &.md-icon-font {\\n @include md-theme-property(color, $color, background);\\n }\\n }\\n}\\n\\n.md-empty-state {\\n @include md-theme-component() {\\n @include md-empty-state-spec(disabled);\\n\\n &.md-rounded {\\n @include md-theme-property(background-color, disabled, \\\"\\\", .06);\\n }\\n\\n &.md-primary {\\n @include md-empty-state-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-empty-state-spec(accent);\\n }\\n }\\n}\\n\",\".md-field {\\n @include md-theme-component() {\\n @if md-get-theme-mode() == light {\\n &:after {\\n background-color: rgba(#000, .42);\\n }\\n\\n &:before {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-helper-text,\\n .md-count,\\n label {\\n color: rgba(#000, .54);\\n }\\n\\n .md-input,\\n .md-textarea {\\n &::-webkit-input-placeholder {\\n color: rgba(#000, .54);\\n }\\n }\\n\\n &.md-focused,\\n &.md-has-value {\\n .md-input,\\n .md-textarea {\\n -webkit-text-fill-color: rgba(#000, .87);\\n }\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:after {\\n border-color: rgba(#000, .42);\\n }\\n\\n &:before {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n\\n &.md-disabled {\\n &:after {\\n background-image: linear-gradient(to right, rgba(#000, .38) 0%, rgba(#000, .38) 33%, transparent 0%);\\n }\\n\\n label,\\n .md-input,\\n .md-textarea {\\n color: rgba(#000, .42);\\n }\\n }\\n } @else {\\n &:after {\\n background-color: rgba(#fff, .7);\\n }\\n\\n &:before {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-helper-text,\\n .md-count,\\n label {\\n color: rgba(#fff, .7);\\n }\\n\\n .md-input,\\n .md-textarea {\\n &::-webkit-input-placeholder {\\n color: rgba(#fff, .7);\\n }\\n }\\n\\n &.md-focused,\\n &.md-has-value {\\n .md-input,\\n .md-textarea {\\n -webkit-text-fill-color: #fff;\\n }\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:after {\\n border-color: #fff;\\n }\\n\\n &:before {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n\\n &.md-disabled {\\n &:after {\\n background-image: linear-gradient(to right, rgba(#fff, .7) 0%, rgba(#fff, .7) 33%, transparent 0%);\\n }\\n\\n label,\\n .md-input,\\n .md-textarea {\\n color: rgba(#fff, .5);\\n }\\n }\\n }\\n\\n > .md-icon {\\n &:after {\\n @include md-theme-property(background-color, background-variant);\\n }\\n }\\n\\n &.md-invalid {\\n &:after {\\n @include md-theme-property-by-hue(background-color, red, A400, field, error);\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:before {\\n @include md-theme-property-by-hue(border-color, red, A400, field, error);\\n }\\n }\\n\\n label {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n }\\n\\n .md-error {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n }\\n\\n .md-date-icon,\\n .md-date-icon svg {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n @include md-theme-property-by-hue(fill, red, A400, field, error);\\n }\\n }\\n\\n &.md-focused,\\n &.md-highlight {\\n .md-input,\\n .md-textarea {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n > .md-icon {\\n @include md-theme-property(color, primary, background);\\n @include md-theme-property(fill, primary, background);\\n }\\n }\\n\\n &.md-focused {\\n label {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n &.md-disabled {\\n .md-icon svg {\\n @include md-theme-property(fill, disabled, background);\\n }\\n }\\n }\\n}\\n\",\".md-icon {\\n @include md-theme-component() {\\n &.md-icon-image {\\n svg {\\n @include md-theme-property(fill, icon, background);\\n\\n &.md-primary {\\n @include md-theme-property(fill, primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(fill, accent, background);\\n }\\n }\\n }\\n\\n &.md-icon-font {\\n @include md-theme-property(color, icon, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n }\\n }\\n }\\n}\\n\",\".md-list {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-double-line .md-list-item-text :nth-child(2) {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n &.md-triple-line .md-list-item-text :nth-child(3) {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-highlight .md-list-item-container {\\n @include md-theme-property(background-color, divider, background);\\n }\\n\\n .md-list-item-container {\\n @include md-theme-property(color, text-primary, background);\\n\\n &:not(.md-list-item-default):not([disabled]):hover {\\n @include md-theme-property(background-color, divider, background);\\n @include md-theme-property(color, text-primary, background);\\n }\\n }\\n\\n [disabled] {\\n @include md-theme-property(color, disabled, background);\\n }\\n\\n .md-selected,\\n .router-link-exact-active {\\n .md-list-item-content {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-list-item-expand.md-active {\\n @include md-theme-property(border-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-menu-item-spec ($color) {\\n .md-list-item-link,\\n .md-list-item-router,\\n .md-list-item-button {\\n @include md-theme-property(color, $color, background);\\n }\\n}\\n\\n.md-menu-item {\\n @include md-theme-component() {\\n &.md-primary {\\n @include md-menu-item-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-menu-item-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-progress-bar-indeterminate ($hue) {\\n @include md-theme-property(background-color, $hue, null, .38);\\n\\n .md-progress-bar-track,\\n .md-progress-bar-fill {\\n &:after {\\n @include md-theme-property(background-color, $hue);\\n }\\n }\\n}\\n\\n@mixin md-progress-bar-determinate ($hue) {\\n @include md-theme-property(background-color, $hue, null, .38);\\n\\n .md-progress-bar-fill {\\n @include md-theme-property(background-color, $hue);\\n }\\n}\\n\\n@mixin md-progress-bar-buffer ($hue) {\\n .md-progress-bar-fill {\\n @include md-theme-property(background-color, $hue);\\n }\\n\\n .md-progress-bar-track {\\n @include md-theme-property(background-color, $hue, null, .38);\\n }\\n\\n .md-progress-bar-buffer {\\n @include md-theme-property(border-color, $hue, null, .38);\\n }\\n}\\n\\n@mixin md-progress-spinner-spec ($hue) {\\n .md-progress-spinner-circle {\\n @include md-theme-property(stroke, $hue);\\n }\\n}\\n\\n.md-progress-bar {\\n @include md-theme-component() {\\n &.md-indeterminate,\\n &.md-query {\\n @include md-progress-bar-indeterminate(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-indeterminate(accent)\\n }\\n }\\n\\n &.md-determinate {\\n @include md-progress-bar-determinate(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-determinate(accent)\\n }\\n }\\n\\n &.md-buffer {\\n @include md-progress-bar-buffer(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-buffer(accent)\\n }\\n }\\n }\\n}\\n\\n.md-progress-spinner {\\n @include md-theme-component() {\\n @include md-progress-spinner-spec(primary);\\n\\n &.md-accent {\\n @include md-progress-spinner-spec(accent)\\n }\\n }\\n}\\n\",\".md-radio {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-radio-container {\\n @include md-theme-property(border-color, accent);\\n\\n &:after {\\n @include md-theme-property(background-color, accent);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-radio-container {\\n @include md-theme-property(border-color, primary);\\n\\n &:after {\\n @include md-theme-property(background-color, primary);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-radio-container {\\n border-color: rgba(#000, .54);\\n }\\n\\n &.md-disabled {\\n .md-radio-container {\\n border-color: rgba(#000, .26);\\n }\\n\\n &.md-checked {\\n .md-radio-container {\\n border-color: rgba(#000, .26);\\n\\n &:after {\\n background-color: rgba(#000, .26);\\n }\\n }\\n }\\n }\\n } @else {\\n .md-radio-container {\\n border-color: rgba(#fff, .7);\\n }\\n\\n &.md-disabled {\\n .md-radio-container {\\n border-color: rgba(#fff, .3);\\n }\\n\\n &.md-checked {\\n .md-radio-container {\\n border-color: rgba(#fff, .3);\\n\\n &:after {\\n background-color: rgba(#fff, .3);\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\".md-snackbar {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, text-primary);\\n\\n @if md-get-theme-mode() == light {\\n background-color: #323232;\\n } @else {\\n background-color: #fff;\\n }\\n }\\n}\\n\",\".md-steppers {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n\\n .md-stepper-icon,\\n .md-stepper-number,\\n .md-stepper {\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, divider, background);\\n }\\n }\\n\\n .md-stepper-number {\\n @include md-theme-property(background-color, text-hint, background);\\n @include md-theme-property(color, text-primary, text-hint);\\n\\n svg {\\n @include md-theme-property(color, text-primary, text-hint);\\n @include md-theme-property(fill, text-primary, text-hint);\\n }\\n }\\n\\n .md-stepper-header {\\n .md-button-content {\\n @include md-theme-property(color, text-hint, background);\\n\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, divider, background);\\n }\\n }\\n\\n &.md-active,\\n &.md-done {\\n .md-button-content {\\n @include md-theme-property(color, text-primary, background);\\n }\\n\\n .md-stepper-number {\\n @include md-theme-property(background-color, primary, background);\\n @include md-theme-property(color, text-primary, primary);\\n\\n svg {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(fill, text-primary, primary);\\n }\\n }\\n }\\n\\n &.md-error {\\n .md-button-content {\\n @include md-theme-property-by-hue(color, red, A400, stepper, error);\\n }\\n\\n .md-icon svg {\\n @include md-theme-property-by-hue(color, red, A400, stepper, error);\\n @include md-theme-property-by-hue(fill, red, A400, stepper, error);\\n }\\n }\\n }\\n }\\n}\\n\",\".md-subheader {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-accent, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n}\\n\",\".md-switch {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-switch-container {\\n @include md-theme-property(background-color, accent, null, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property(background-color, accent);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-switch-container {\\n @include md-theme-property(background-color, primary, null, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-switch-container {\\n background-color: rgba(#000, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 100, switch, thumb);\\n }\\n\\n &.md-disabled {\\n .md-switch-container {\\n background-color: rgba(#000, .12);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 400, switch, thumb);\\n }\\n }\\n } @else {\\n .md-switch-container {\\n background-color: rgba(#fff, .3);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 400, switch, thumb);\\n }\\n\\n &.md-disabled {\\n .md-switch-container {\\n background-color: rgba(#fff, .1);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 800, switch, thumb);\\n }\\n }\\n }\\n }\\n}\\n\",\".md-table {\\n @include md-theme-component() {\\n .md-table-content,\\n .md-table-alternate-header {\\n @include md-theme-property(background-color, background);\\n }\\n\\n .md-table-alternate-header .md-table-toolbar {\\n @include md-theme-property(color, text-primary, background);\\n @include md-theme-property(background-color, accent, null, .2);\\n }\\n\\n .md-table-row {\\n &:hover:not(.md-header-row) .md-table-cell {\\n @include md-theme-property(background-color, highlight, background, .08);\\n }\\n\\n &.md-selected,\\n &.md-selected-single {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property-by-hue(background-color, grey, 100, row, background);\\n } @else {\\n @include md-theme-property-by-hue(background-color, grey, 700, row, background);\\n }\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary, background);\\n @include md-theme-property(color, text-primary, primary);\\n\\n .md-ripple {\\n color: #fff;\\n }\\n\\n .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n\\n &:after {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent, background);\\n @include md-theme-property(color, text-primary, accent);\\n\\n .md-ripple {\\n color: #fff;\\n }\\n\\n .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n\\n &:after {\\n @include md-theme-property(border-color, accent);\\n }\\n }\\n }\\n }\\n\\n td {\\n @include md-theme-property(border-top-color, divider, background);\\n }\\n }\\n\\n .md-table-head {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-table-fixed-header-active {\\n @include md-theme-property(border-bottom-color, divider, background);\\n }\\n\\n .md-sortable {\\n &:hover,\\n &.md-sorted {\\n @include md-theme-property(color, text-primary, background);\\n\\n svg {\\n @include md-theme-property(color, text-primary, background);\\n @include md-theme-property(fill, text-primary, background);\\n }\\n }\\n }\\n\\n .md-table-pagination {\\n @include md-theme-property(border-top-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-tabs-spec ($primary, $indicator, $text) {\\n .md-tabs-navigation {\\n @include md-theme-property(background-color, $primary, background);\\n\\n .md-button {\\n @if $text == text-primary {\\n @include md-theme-property(color, $text, $primary, .7);\\n\\n &[disabled] {\\n @include md-theme-property(color, $text, $primary, .38);\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, $text, $primary, .7);\\n\\n svg {\\n @include md-theme-property(fill, $text, $primary, .7);\\n }\\n }\\n } @else {\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n &[disabled] {\\n @include md-theme-property(color, text-primary, $primary, .38);\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n svg {\\n @include md-theme-property(fill, text-primary, $primary, .7);\\n }\\n }\\n }\\n\\n &.md-active {\\n @include md-theme-property(color, $text, $primary);\\n\\n .md-icon {\\n @include md-theme-property(color, $text, $primary);\\n\\n svg {\\n @include md-theme-property(fill, $text, $primary);\\n }\\n }\\n }\\n }\\n }\\n\\n .md-tabs-indicator {\\n @include md-theme-property(background-color, $indicator, $primary);\\n }\\n}\\n\\n.md-tabs {\\n @include md-theme-component() {\\n @include md-tabs-spec(background, primary, primary);\\n\\n &.md-primary {\\n @include md-tabs-spec(primary, text-primary, text-primary);\\n }\\n\\n &.md-accent {\\n @include md-tabs-spec(accent, text-primary, text-primary);\\n }\\n }\\n}\\n\",\"@mixin md-toolbar-icon($primary, $secondary) {\\n .md-icon {\\n @include md-theme-property(color, $primary, $secondary);\\n\\n svg {\\n @include md-theme-property(fill, $primary, $secondary);\\n }\\n }\\n}\\n\\n@mixin md-toolbar-button($primary, $secondary) {\\n .md-button:not([disabled]) {\\n &:not(.md-raised) {\\n @include md-theme-property(color, $primary, $secondary);\\n }\\n }\\n}\\n\\n@mixin md-toolbar-title($primary, $secondary) {\\n .md-title,\\n .md-display-1,\\n .md-display-2 {\\n @include md-theme-property(color, $primary, $secondary);\\n }\\n}\\n\\n.md-toolbar {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, background-variant);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property-by-hue(background-color, grey, 100, toolbar, background);\\n } @else {\\n @include md-theme-property-by-hue(background-color, grey, 900, toolbar, background);\\n }\\n\\n @include md-toolbar-icon(text-primary, background-variant);\\n @include md-toolbar-title(text-primary, background-variant);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n @include md-toolbar-icon(text-primary, primary);\\n @include md-toolbar-button(text-primary, primary);\\n @include md-toolbar-title(text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n @include md-toolbar-icon(text-primary, accent);\\n @include md-toolbar-button(text-primary, accent);\\n @include md-toolbar-title(text-primary, accent);\\n }\\n\\n &.md-transparent {\\n background-color: transparent;\\n @include md-theme-property(color, text-primary, background);\\n @include md-toolbar-icon(text-primary, background);\\n @include md-toolbar-title(text-primary, background);\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0xIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT81MjM0Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikodHJ1ZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCJcXG5AY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi8qKlxcbiAqIFRoZSBjb21wbGV0ZSBtYXRlcmlhbCBwYWxldHRlXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCB0aGUgY3VycmVudCB0aGVtZSBtb2RlIGZyb20gdGhlIGN1cnJlbnQgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJHRoZW1lLW1vZGU6IG1kLWdldC10aGVtZS1tb2RlKClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgYnkgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGNvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoZGFyaywgcHJpbWFyeSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvci10aGVtZSDigJTigIogVGhlIHRoZW1lIGNvbG9yIHwgQWNjZXB0cyBkYXJrIG9yIGxpZ2h0XFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgb25seVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3IxOiBtZC1nZXQtY29sb3ItYnktdHlwZShiYWNrZ3JvdW5kLCBkYXJrKVxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGFjY2VudClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdGhlbWUg4oCU4oCKIFRoZSBmYWxsYmFjayB0aGVtZVxcbiAqL1xcbi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogTWFwIHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtZXMgdG8gYmUgcHJvY2Vzc2VkIGJ5IGVhY2ggY29tcG9uZW50XFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIFN0b3JlIHRoZSBjdXJyZW50IHRoZW1lIG5hbWVcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBzdHJpbmdcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlIGNvbG9yIGNvbnRyYXN0IHZhbHVlc1xcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4vKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIGZvciBhIGNvbG9yLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBjb2xvciB0byBiZSBhbmFseXNlZFxcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmcg4oCU4oCKIFRoZSBiZyBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZmcg4oCU4oCKIFRoZSBmZyBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcbi8qKlxcbiAqIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBkYXJrIG9yIGxpZ2h0IHRleHQgb24gdG9wIG9mIGdpdmVuIGNvbG9yLlxcbiAqIFJldHVybnMgZGFyayBvciBsaWdodCBkZXBlbmRpbmcgb24gdGhlIGNvbnRyYXN0IHJhdGlvLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBkZXNpcmVkIGNvbG9yIHRvIGJlIGNvbXBhcmVkXFxuICovXFxuLyoqXFxuICogT3ZlcnJpZGUgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IHBhbGV0dGUgZ2l2aW5nIG5ldyB2YWx1ZXMuIEl0IHdpbGwgZXh0ZW5kXFxuICogdGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLW92ZXJyaWRlLXBhbGV0dGUgKChcXG4gKiAgIGFjY2VudDogYmx1ZSxcXG4gKiAgIHRoZW1lOiBcXFwiZGFya1xcXCJcXG4gKiApKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUg4oCU4oCKIFRoZSBuZXcgcGFsZXR0ZVxcbiAqL1xcbi8qKlxcbiAqIENyZWF0ZSBhIG5ldyB0aGVtZSBiYXNlZCBvbiBhIGdpdmVuIHBhbGV0dGUuIEl0IHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0XFxuICogdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLXJlZ2lzdGVyLXRoZW1lKFxcXCJhbHRlcm5hdGl2ZVxcXCIsIChcXG4gKiAgIHByaW1hcnk6ICMyMTIxMjEsXFxuICogICBhY2NlbnQ6ICNDRERDMzksXFxuICogICB0aGVtZTogZGFya1xcbiAqICkpO1xcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge3N0cmluZ30gJG5hbWUg4oCU4oCKIFRoZSB0aGVtZSBuYW1lIHRvIGJlIHVzZWQgd2l0aCB0aGUgVnVlIE1hdGVyaWFsXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIFskbWQtZGVmYXVsdC1wYWxldHRlXSDigJTigIogVGhlIHRoZW1lIHBhbGV0dGVcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LXByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBiYWNrZ3JvdW5kOiBtZC10aGVtZShhY2NlbnQpO1xcbiAqICAgICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LWFjY2VudCk7XFxuICogICAgIH07XFxuICogICB9XFxuICogfVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcyBiYXNlZCBvbiBwYXJlbnQuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgIH1cXG4gKiB9XFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBhY2NlbnQpO1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICogICAgIH1cXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICRiYWNrZ3JvdW5kIOKAlOKAiiBUaGUgYmFja2dyb3VuZCBjb2xvciB0byBhbmFseXNlIGNvbnRyYXN0XFxuICogQHBhcmFtIHtudW1iZXJ9ICRvcGFjaXR5IOKAlOKAiiBUaGUgb3BhY2l0eSBhbW91bnRcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5IGJ5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIEEgdmFsaWQgbWF0ZXJpYWwgcGFsZXR0ZSBjb2xvciBuYW1lXFxuICogQHBhcmFtIHtzdHJpbmd9ICRodWUg4oCU4oCKIFRoZSBodWUgYW1vdW50IHRvIGdldCB0aGUgaGV4IGNvbG9yXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgdHlwZSBvZiB2YXJpYWJsZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFyaWFudCDigJTigIogVGhlIHR5cGUgb2YgY29uc3RyYXN0ZWQgdmFyaWFibGVcXG4gKi9cXG46cm9vdCB7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTogJHZhbHVlXFxuICAgIDtcXG4gIC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6ICR2YWx1ZVxcbiAgICA7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6ICR2YWx1ZVxcbiAgICA7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6Oi1tb3otc2VsZWN0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6OnNlbGVjdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVyIHtcXG4gICAgY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC44KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuOCkpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKS5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKS5tZC1hY2NlbnQ6aG92ZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC44KSk7XFxufVxcbmh0bWwubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLXZhcmlhbnQsICNmYWZhZmEpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktMSwgLm1kLXRoZW1lLWRlZmF1bHRcXG4ubWQtZGlzcGxheS0yLCAubWQtdGhlbWUtZGVmYXVsdFxcbi5tZC1kaXNwbGF5LTMsIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktNCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1zY3JvbGxiYXIubWQtdGhlbWUtZGVmYXVsdDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyLCAubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XFxuICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXNjcm9sbGJhci1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQtdmFyaWFudCwgI2UxZTFlMSk7XFxufVxcbi5tZC1zY3JvbGxiYXIubWQtdGhlbWUtZGVmYXVsdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xcbiAgYmFja2dyb3VuZDogIzc1NzU3NTtcXG4gIGJhY2tncm91bmQ6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSk7XFxufVxcbi5tZC1hcHA6bm90KC5tZC1vdmVybGFwKS5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU0KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU0KSk7XFxufVxcbi5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikpO1xcbn1cXG4ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCxcXG4gICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggaW5wdXQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLFxcbiAgICAgIC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXQge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbi1kaXNhYmxlZCwgI2ZmZik7XFxufVxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgIGNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbi1kaXNhYmxlZCwgI2ZmZik7XFxuICAgIGZpbGw6ICNmZmY7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtYXZhdGFyLWljb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1hdmF0YXItaWNvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCA+IC5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2OGY4NztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLXByaW1hcnksICNhNjhmODcpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICM5ZTllOWU7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgPiAubWQtcmlwcGxlIC5tZC1yaXBwbGUtd2F2ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NTg1ODU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgIzg1ODU4NSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogI2JjYWFhNDtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnQge1xcbiAgICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogIzllOWU5ZTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZFtkaXNhYmxlZF0ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IC5tZC1pY29uLWZvbnQge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24tZm9udCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uLFxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLFxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaWNvbiwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24ge1xcbiAgICAgIGZpbGw6ICNmZmY7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZik7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29uIHN2ZywgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNoaXBzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNsZWFyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcXG59XFxuLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXBwIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YWZ0ZXIsIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2VlayB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbjpob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkLFxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXJvdW5kZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4wNikpO1xcbn1cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICNiY2FhYTQ7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICM5ZTllOWU7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24tZm9udCB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YmVmb3JlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaGVscGVyLXRleHQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNvdW50LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IGxhYmVsIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhIHtcXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YWZ0ZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3JlIHtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjM4KSksIGNvbG9yLXN0b3AoMzMlLCByZ2JhKDAsIDAsIDAsIDAuMzgpKSwgY29sb3Itc3RvcCgwJSwgdHJhbnNwYXJlbnQpKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSAwJSwgcmdiYSgwLCAwLCAwLCAwLjM4KSAzMyUsIHRyYW5zcGFyZW50IDAlKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgPiAubWQtaWNvbjphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLXZhcmlhbnQsICNmYWZhZmEpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjE3NDQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWZpZWxkdmFyaWFudCwgI2ZmMTc0NCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZSB7XFxuICBib3JkZXItY29sb3I6ICNmZjE3NDQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCBsYWJlbCB7XFxuICBjb2xvcjogI2ZmMTc0NDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWZpZWxkdmFyaWFudCwgI2ZmMTc0NCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9yIHtcXG4gIGNvbG9yOiAjZmYxNzQ0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZGF0ZS1pY29uLFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiBzdmcge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO1xcbiAgZmlsbDogI2ZmMTc0NDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsIC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtaW5wdXQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGlnaGxpZ2h0IC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgPiAubWQtaWNvbiwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGlnaGxpZ2h0ID4gLm1kLWljb24ge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgZmlsbDogI2JjYWFhNDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCBsYWJlbCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1pY29uIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLXByaW1hcnkge1xcbiAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1pbWFnZSBzdmcubWQtYWNjZW50IHtcXG4gICAgZmlsbDogIzllOWU5ZTtcXG4gICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWZvbnQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMikge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMykge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LFxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1saXN0LWl0ZW0tbGluayxcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWJ1dHRvbiB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWxpc3QtaXRlbS1saW5rLFxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWJ1dHRvbiB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCwgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLCAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2sge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogI2JjYWFhNDtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogIzllOWU5ZTtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXNuYWNrYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YmVmb3JlLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZSxcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyOmFmdGVyLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3JlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTtcXG4gICAgICBmaWxsOiAjZmZmO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZik7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciwgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlciBzdmcge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWJ1dHRvbi1jb250ZW50IHtcXG4gICAgY29sb3I6ICNmZjE3NDQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWVycm9yIC5tZC1pY29uIHN2ZyB7XFxuICAgIGNvbG9yOiAjZmYxNzQ0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7XFxuICAgIGZpbGw6ICNmZjE3NDQ7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3RlcHBlcnZhcmlhbnQsICNmZjE3NDQpO1xcbn1cXG4ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2Y1ZjVmNSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRiZGJkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjYmRiZGJkKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIC5tZC10YWJsZS10b29sYmFyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMikpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93OmhvdmVyOm5vdCgubWQtaGVhZGVyLXJvdykgLm1kLXRhYmxlLWNlbGwge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4wOCkpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1wcmltYXJ5LCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXIsIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGUge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzllOWU5ZTtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93IHRkIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1oZWFkIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZlIHtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlOmhvdmVyIHN2ZywgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmcge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXBhZ2luYXRpb24ge1xcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10b29sYmFydmFyaWFudCwgI2Y1ZjVmNSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWljb24gc3ZnIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLFxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0xLFxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZGlzcGxheS0yIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGl0bGUsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC10aXRsZSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtZGlzcGxheS0xLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2x0aXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10b29sdGlwLCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTcsIDk3LCA5NywgMC45KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdG9vbHRpcC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDk3LCA5NywgOTcsIDAuOSkpO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9BcHAudnVlXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL3BhbGV0dGUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9mdW5jdGlvbnMuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS92YXJpYWJsZXMuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9jb2xvci1jb250cmFzdC5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL21peGlucy5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2Jhc2UvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQXV0b2NvbXBsZXRlL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEF2YXRhci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRCb3R0b21CYXIvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQnV0dG9uL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZENhcmQvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ2hlY2tib3gvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ2hpcHMvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ29udGVudC90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWREYXRlcGlja2VyL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZERyYXdlci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRFbXB0eVN0YXRlL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEZpZWxkL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEljb24vdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kTGlzdC90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRNZW51L3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFByb2dyZXNzL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFJhZGlvL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFNuYWNrYmFyL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN0ZXBwZXJzL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN1YmhlYWRlci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRTd2l0Y2gvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVGFibGUvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVGFicy90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRUb29sYmFyL3RoZW1lLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7O0dBTUc7QUNOSDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFPSDs7Ozs7Ozs7O0dBU0c7QUFPSDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQW1CSDs7Ozs7Ozs7Ozs7O0dBWUc7QUFTSDs7Ozs7Ozs7Ozs7OztHQWFHO0FDN0dIOzs7Ozs7Ozs7Ozs7R0FZRztBQVNIOzs7Ozs7R0FNRztBQUlIOzs7Ozs7R0FNRztBQUlIOzs7Ozs7R0FNRztBQUtIOzs7Ozs7R0FNRztBQzFESDs7O0dBR0c7QUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFxUUg7Ozs7OztHQU1HO0FBV0g7Ozs7Ozs7R0FPRztBQVVIOzs7Ozs7O0dBT0c7QUNsVUg7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFPSDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQW9CSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JHO0FBY0g7Ozs7Ozs7Ozs7R0FVRztBQWNIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JHO0FBa0JIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFrQkg7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUE5TEQ7RUFFSTtLQUF5QztFQUF6QztLQUF5QztFQUF6QztLQUF5QztDQUU1QztBQStEQztFQW9ERiwwQkp5SGM7RUl4SGQsd0VBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLDJFQUEwRjtDQW5EdkY7QUFGRDtFQW9ERiwwQkp5SGM7RUl4SGQsd0VBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLDJFQUEwRjtDQW5EdkY7QUFGRDtFQW9ERixlSitHZTtFSTlHZiw4REFBMEY7Q0FuRHZGO0FBRkQ7SUFvREYsZ0NKK0dlO0lJOUdmLCtFQUEwRjtDQ3pKckY7QURvR0g7SUFvREYsZUp5SGM7SUl4SGQsNkRBQTBGO0NDakpyRjtBRDRGSDtNQW9ERixnQ0p5SGM7TUl4SGQsOEVBQTBGO0NDbEpuRjtBRHFFTDtFQTRFRiwwQkZ2RzZCO0VFd0c3QixzRUFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsdUZBQTBGO0NBM0V2RjtBQXNCRDs7Ozs7RUFvREYsMkJGckd3QjtFRXNHeEIsc0ZBQTBGO0NBbkR2RjtBQ3pFSDtFRDJIQSxvQkY1RndDO0VFNkZ4Qyx3RkFBMEY7Q0N2SHJGO0FBTEw7RUQySEEsb0JGN0ZvQjtFRThGcEIsNkVBQTBGO0NDbkhyRjtBRHNDSDtFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7Q0EzRXZGO0FFNUZMO0VGc0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtDRWxLckY7QUFMUDtFRnNLRSw0Q0Z4R2tCO0VFeUdsQixnRkFBMEY7Q0U3SnZGO0FBSUw7RUZ3SkUsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0NFbkh2RjtBQXRDTDtJRndKRSwyQkZwR3NCO0lFcUd0Qiw0RUFBMEY7Q0VqSm5GO0FBR0g7SUY2SUosNENGeEdrQjtJRXlHbEIsZ0ZBQTBGO0NFcEhyRjtBQTFCRDs7TUY2SUosMkJGdEd5QjtNRXVHekIsNEVBQTBGO01BRDFGLDZDRnRHeUI7TUV1R3pCLDhGQUEwRjtDRXZJbkY7QUFQSDtNRjZJSiwwQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0VuSW5GO0FBWEg7TUY2SUosdUJGeEdrQjtNRXlHbEIsMkRBQTBGO0NFckhuRjtBQXpCSDs7UUY2SUosMkJGcEdzQjtRRXFHdEIsNEVBQTBGO1FBRDFGLDZDRnBHc0I7UUVxR3RCLDhGQUEwRjtDRTFIakY7QUFwQkw7UUY2SUosMEJGcEdzQjtRRXFHdEIsMkVBQTBGO0NFdEhqRjtBQU9YO0VGOEdFLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRix5Q0Y5Rm9CO0VFK0ZwQiwwRUFBMEY7Q0UxR3ZGO0FDNURIO0VIcUtBLHNDRi9GMEI7RUVnRzFCLDZFQUEwRjtFQUQxRixZRnRGb0I7RUV1RnBCLG1FQUEwRjtDRzlKekY7QUFKQztJSGlLRixZRnRGb0I7SUV1RnBCLG1FQUEwRjtJQUQxRixXRnRGb0I7SUV1RnBCLGtFQUEwRjtDRy9KdkY7QUFJTDtFSDBKRSwwQkorR2U7RUk5R2YsMkRBQTBGO0NHcEp2RjtBQWxCSDtJSHFLQSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDRzlKekY7QUFKQztNSGlLRiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7TUFEMUYsMEJGdEd5QjtNRXVHekIsMkVBQTBGO0NHL0p2RjtBQUlMO0VIMEpFLDBCSnlIYztFSXhIZCwwREFBMEY7Q0cvSXZGO0FBdkJIO0lIcUtBLDBCSnlIYztJSXhIZCwwREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0NHOUp6RjtBQUpDO01IaUtGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtNQUQxRiwwQkZ0R3lCO01FdUd6QiwwRUFBMEY7Q0cvSnZGO0FDUEg7RUpxS0EsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0NJeEp6RjtBQVhDO0lKa0tGLGVKK0dlO0lJOUdmLDhEQUEwRjtDSXpKdkY7QUFQQztNSitKSixlSitHZTtNSTlHZiw4REFBMEY7Q0kxSnJGO0FBSEM7UUo0Sk4sY0orR2U7UUk5R2YsNkRBQTBGO0NJM0puRjtBQUtQO0VKcUpBLDBCSitHZTtFSTlHZiwyREFBMEY7RUFEMUYsMEJGdEd5QjtFRXVHekIsMkVBQTBGO0NJdkh6RjtBQTFCRztJSjBMSiwwQkFIaUM7SUFJakMsc0VBQTBGO0NJekxyRjtBQUdIO0lKMklGLDJCRmhHaUI7SUVpR2pCLG9FQUEwRjtDSXRJdkY7QUFIQztNSndJSiwwQkZoR2lCO01FaUdqQixtRUFBMEY7Q0l2SXJGO0FBR0g7SUptSUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NJeEh2RjtBQVJHO01KK0hOLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDSTFIbkY7QUFIQztRSjRIUiwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0kzSGpGO0FBM0NUO0VKcUtBLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtDSXhKekY7QUFYQztJSmtLRixlSnlIYztJSXhIZCw2REFBMEY7Q0l6SnZGO0FBUEM7TUorSkosZUp5SGM7TUl4SGQsNkRBQTBGO0NJMUpyRjtBQUhDO1FKNEpOLGNKeUhjO1FJeEhkLDREQUEwRjtDSTNKbkY7QUFLUDtFSnFKQSwwQkp5SGM7RUl4SGQsMERBQTBGO0VBRDFGLDBCRnRHeUI7RUV1R3pCLDBFQUEwRjtDSXZIekY7QUExQkc7SUowTEosMEJBSGlDO0lBSWpDLG9FQUEwRjtDSXpMckY7QUFHSDtJSjJJRiwyQkZoR2lCO0lFaUdqQixtRUFBMEY7Q0l0SXZGO0FBSEM7TUp3SUosMEJGaEdpQjtNRWlHakIsa0VBQTBGO0NJdklyRjtBQUdIO0lKbUlGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDSXhIdkY7QUFSRztNSitITiwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0kxSG5GO0FBSEM7UUo0SFIsMEJGdEd5QjtRRXVHekIsMEVBQTBGO0NJM0hqRjtBSjhDUDtFQTRFRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FLbEZMO0lMNEpFLGVKK0dlO0lJOUdmLDhEQUEwRjtDS3RKdkY7QUFoQkg7TUxxS0EsZUorR2U7TUk5R2YsOERBQTBGO0NLcEt6RjtBQUVEO01MaUtBLGNKK0dlO01JOUdmLDZEQUEwRjtDS2hLekY7QUFHSDtJTDRKRSxlSnlIYztJSXhIZCw2REFBMEY7Q0tqSnZGO0FBckJIO01McUtBLGVKeUhjO01JeEhkLDZEQUEwRjtDS3BLekY7QUFFRDtNTGlLQSxjSnlIYztNSXhIZCw0REFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsc0NGbEdnQztJRW1HaEMsaUdBQTBGO0lBRDFGLDJCRm5HcUI7SUVvR3JCLDZEQUEwRjtDSzNJckY7QUFsQlA7SUw0SkUsdUJGeEdrQjtJRXlHbEIsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDSzFIckY7QUFuQ1A7TUw0SkUsMkJGdEd5QjtNRXVHekIsNEVBQTBGO01BRDFGLDBCSitHZTtNSTlHZiwyREFBMEY7Q0tqSW5GO0FBckNQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDRFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0toS3pGO0FBR0g7TUw0SkUsMkJGdEd5QjtNRXVHekIsMkVBQTBGO01BRDFGLDBCSnlIYztNSXhIZCwwREFBMEY7Q0szSG5GO0FBM0NQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDJFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwwRUFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsc0NGbEdnQztJRW1HaEMsaUdBQTBGO0NLcEhyRjtBQXpDUDtJTDRKRSwwQkp5SGM7SUl4SGQsMERBQTBGO0NLMUdyRjtBQTVETDtNTHFLQSwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0twS3pGO0FBRUQ7TUxpS0EsMEJGdEd5QjtNRXVHekIsMEVBQTBGO0NLaEt6RjtBQUdIO01MNEpFLDBCSitHZTtNSTlHZiwyREFBMEY7Q0szR25GO0FBM0RQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDRFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsMkJGbkdxQjtJRW9HckIsMkVBQTBGO0NLcEd2RjtBQWxFSDtNTHFLQSwyQkYvRjBCO01FZ0cxQixnRkFBMEY7Q0twS3pGO0FBRUQ7TUxpS0EsMEJGL0YwQjtNRWdHMUIsK0VBQTBGO0NLaEt6RjtBTG1GQztFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0NBM0V2RjtBTXhGSDtJTmtLQSx1QkZ4R2tCO0lFeUdsQiwyREFBMEY7Q01qS3pGO0FBSUM7O0lONEpGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDTXBKdkY7QUFMRzs7TU53Sk4sMkJGdEd5QjtNRXVHekIsK0VBQTBGO01BRDFGLDBCRnRHeUI7TUV1R3pCLDhFQUEwRjtDTXRKbkY7QUFNTDtJTitJRixzQ0Y5Rm9CO0lFK0ZwQixxRkFBMEY7Q005SXZGO0FBSUw7SU55SUUsMEJKK0dlO0lJOUdmLDJEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6Qiw0RUFBMEY7Q01wSXZGO0FBL0JIO01Oa0tBLDBCSitHZTtNSTlHZiwyREFBMEY7Q01qS3pGO0FBSUM7O01ONEpGLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDTXBKdkY7QUFMRzs7UU53Sk4sMkJGdEd5QjtRRXVHekIsNEVBQTBGO1FBRDFGLDBCRnRHeUI7UUV1R3pCLDJFQUEwRjtDTXRKbkY7QUFNTDtNTitJRixzQ0Y5Rm9CO01FK0ZwQixrRkFBMEY7Q005SXZGO0FBSUw7SU55SUUsMEJKeUhjO0lJeEhkLDBEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6QiwyRUFBMEY7Q01oSXZGO0FBbkNIO01Oa0tBLDBCSnlIYztNSXhIZCwwREFBMEY7Q01qS3pGO0FBSUM7O01ONEpGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDTXBKdkY7QUFMRzs7UU53Sk4sMkJGdEd5QjtRRXVHekIsMkVBQTBGO1FBRDFGLDBCRnRHeUI7UUV1R3pCLDBFQUEwRjtDTXRKbkY7QUFNTDtNTitJRixzQ0Y5Rm9CO01FK0ZwQixpRkFBMEY7Q005SXZGO0FDekJMO0VQc0tFLDBCSnlIYztFSXhIZCwwREFBMEY7RUFEMUYsc0JKeUhjO0VJeEhkLHNEQUEwRjtDTzdKckY7QUFWUDtJUHNLRSxtQkZ4R2tCO0lFeUdsQix1REFBMEY7Q085Sm5GO0FBVFQ7RVBzS0UsZUp5SGM7RUl4SGQsK0NBQTBGO0NPekpyRjtBQWRQO0VQc0tFLDBCSitHZTtFSTlHZiwyREFBMEY7RUFEMUYsc0JKK0dlO0VJOUdmLHVEQUEwRjtDT2xKckY7QUFyQlA7RVBzS0UsZUorR2U7RUk5R2YsZ0RBQTBGO0NPOUlyRjtBQXpCUDtFQThCUSxrQ0FBdUI7Q0FDeEI7QUEvQlA7RUFtQ1Usa0NBQXVCO0NBQ3hCO0FBcENUO0VBd0NZLGtDQUF1QjtFQUN2QixzQ0FBMkI7Q0FDNUI7QVBnRFA7RUE0RUYsc0NGakdzQjtFRWtHdEIseUVBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLGlFQUEwRjtDQTNFdkY7QVE1Rkw7SVJzS0UsWUZ0Rm9CO0lFdUZwQixrRUFBMEY7SUFEMUYsV0Z0Rm9CO0lFdUZwQixpRUFBMEY7Q1ExSnZGO0FBYkw7SVJzS0Usc0NGaEdpQjtJRWlHakIsb0VBQTBGO0lBRDFGLFlGdEZvQjtJRXVGcEIsMERBQTBGO0NRcklyRjtBQWxDUDtNUnNLRSxXRnRGb0I7TUV1RnBCLHlEQUEwRjtDUWhKbkY7QUF2QlQ7TVJzS0UsNENGeEdrQjtNRXlHbEIsZ0ZBQTBGO01BRDFGLDJCRmhHaUI7TUVpR2pCLHVFQUEwRjtDUXRJbkY7QUFqQ1Q7UVJzS0UsMEJGaEdpQjtRRWlHakIsc0VBQTBGO1FBRDFGLDJCRmhHaUI7UUVpR2pCLHVFQUEwRjtDUXZJakY7QUFoQ1g7SVJzS0UsMEJKK0dlO0lJOUdmLDJEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6Qiw0RUFBMEY7Q1F6R3ZGO0FBOURMO01Sc0tFLFlGaEZZO01FaUZaLHNEQUEwRjtNQUQxRixzQ0ZuR3FCO01Fb0dyQix3RUFBMEY7Q1F0SHJGO0FBakRQO01Sc0tFLFlGdEZvQjtNRXVGcEIsMERBQTBGO01BRDFGLHNDRmhHaUI7TUVpR2pCLG9FQUEwRjtDUTNHbkY7QUE1RFQ7UVJzS0UsNENGeEdrQjtRRXlHbEIsZ0ZBQTBGO0NRNUdqRjtBQTNEWDtJUnNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDUTlFdkY7QUF6Rkw7TVJzS0UsWUZoRlk7TUVpRlosc0RBQTBGO01BRDFGLHNDRm5HcUI7TUVvR3JCLHdFQUEwRjtDUTNGckY7QUE1RVA7TVJzS0Usc0NGaEdpQjtNRWlHakIsb0VBQTBGO01BRDFGLFlGdEZvQjtNRXVGcEIsMERBQTBGO0NRaEZuRjtBQXZGVDtRUnNLRSw0Q0Z4R2tCO1FFeUdsQixnRkFBMEY7Q1FqRmpGO0FBdEZYO0lSc0tFLHFDRmpHc0I7SUVrR3RCLHdFQUEwRjtJQUQxRiwyQkZyR3dCO0lFc0d4QixnRUFBMEY7Q1F6RXZGO0FBSUw7RUFJUSxxQ0FBMkI7Q0FDNUI7QVJiSDtFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0NBM0V2RjtBUzVGTDtJVHNLRSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDUy9KdkY7QUFSTDtJVHNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDUzFKdkY7QUFFRDtJVHVKRix1Q0Y5Rm9CO0lFK0ZwQixzRkFBMEY7Q1N0SnZGO0FUeUVEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FVNUZMO0lWc0tFLDBCSitHZTtJSTlHZiwyREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NVMUp2RjtBQWJMO0lWc0tFLHVCRnhHa0I7SUV5R2xCLDJEQUEwRjtDVXBKckY7QUFuQlA7SVZzS0UsdUJGeEdrQjtJRXlHbEIsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDVTlJdkY7QUF6Qkw7SVZzS0UsMkJGckd3QjtJRXNHeEIsOEVBQTBGO0NVMUl2RjtBQTdCTDtJVnNLRSwyQkZuR3FCO0lFb0dyQiwyRUFBMEY7Q1V0SXZGO0FBakNMO0lWc0tFLGVKK0dlO0lJOUdmLDhEQUEwRjtDVWxJdkY7QUFyQ0w7OztJVnNLRSxzQ0Y5Rm9CO0lFK0ZwQix1RUFBMEY7Q1UzSHJGO0FBNUNQO0lWc0tFLDBCSitHZTtJSTlHZiwyREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NVcEhyRjtBQW5EUDs7SVZzS0UsZUorR2U7SUk5R2YsOERBQTBGO0NVN0dyRjtBQTFEUDtJVnNLRSx5Q0Y5Rm9CO0lFK0ZwQix3RkFBMEY7Q1V4R3ZGO0FWMkJEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FBRkQ7RUE0RUYsc0NGOUZvQjtFRStGcEIsdUVBQTBGO0NBM0V2RjtBQUZEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FXNUZMO0lYc0tFLHdDRjlGb0I7SUUrRnBCLHVGQUEwRjtDV2hLdkY7QUNKQztFWm1LSiwwQkZuR3FCO0VFb0dyQiwwRUFBMEY7Q1lsS3JGO0FBR0g7RVo4SkYsMkJGbkdxQjtFRW9HckIsMkVBQTBGO0NZN0p2RjtBQUlMO0Vad0pFLHNDRm5HcUI7RUVvR3JCLHdFQUEwRjtDWW5KdkY7QUFqQkM7RVptS0osY0orR2U7RUk5R2YsNkRBQTBGO0NZbEtyRjtBQUdIO0VaOEpGLGVKK0dlO0VJOUdmLDhEQUEwRjtDWTdKdkY7QUFQQztFWm1LSixjSnlIYztFSXhIZCw0REFBMEY7Q1lsS3JGO0FBR0g7RVo4SkYsZUp5SGM7RUl4SGQsNkRBQTBGO0NZN0p2RjtBQ1ZMO0VBSVEsc0NBQTJCO0NBQzVCO0FBTFA7RWJzS0UsMEJKK0dlO0VJOUdmLDJEQUEwRjtDYTlKckY7QUFUUDs7O0VBY1EsMkJBQWdCO0NBQ2pCO0FBZlA7O0VBb0JVLDJCQUFnQjtDQUNqQjtBQXJCVDs7O0VBNEJVLDZDQUFrQztDQUNuQztBQTdCVDtFQWtDVSxrQ0FBdUI7Q0FDeEI7QUFuQ1Q7RWJzS0Usc0JKK0dlO0VJOUdmLHVEQUEwRjtDYWhJbkY7QUF2Q1Q7RUE0Q1UsOEpBQW9HO0VBQXBHLDZHQUFvRztDQUNyRztBQTdDVDs7O0VBa0RVLDJCQUFnQjtDQUNqQjtBQW5EVDtFYnNLRSwwQkZ2RzZCO0VFd0c3QixzRUFBMEY7Q2ExRHJGO0FBN0dQO0VidVBFLDBCSmpPZTtFSWtPZixnRUFBdUY7Q2FySWxGO0FBbkhQO0VidVBFLHNCSmpPZTtFSWtPZiw0REFBdUY7Q2FoSWhGO0FBeEhUO0VidVBFLGVKak9lO0VJa09mLHFEQUF1RjtDYTNIbEY7QUE3SFA7RWJ1UEUsZUpqT2U7RUlrT2YscURBQXVGO0NhdkhsRjtBQWpJUDs7RWJ1UEUsZUpqT2U7RUlrT2YscURBQXVGO0VBRHZGLGNKak9lO0VJa09mLG9EQUF1RjtDYWpIbEY7QUF2SVA7OztFYnNLRSxlSitHZTtFSTlHZiw4REFBMEY7Q2F4QnJGO0FBL0lQO0Vic0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtFQUQxRixjSitHZTtFSTlHZiw2REFBMEY7Q2FuQnJGO0FBcEpQO0Vic0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtDYWJyRjtBQTFKUDtFYnNLRSwwQkZuR3FCO0VFb0dyQiwwRUFBMEY7Q2FQckY7QUNoS1A7RWRzS0UsMEJGaEdpQjtFRWlHakIsc0VBQTBGO0NjMUpyRjtBQWJQO0lkc0tFLGNKK0dlO0lJOUdmLDZEQUEwRjtDYy9KbkY7QUFSVDtJZHNLRSxjSnlIYztJSXhIZCw0REFBMEY7Q2MzSm5GO0FBWlQ7RWRzS0UsMkJGaEdpQjtFRWlHakIsdUVBQTBGO0NjN0l2RjtBQTFCTDtJZHNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q2NsSnJGO0FBckJQO0lkc0tFLGVKeUhjO0lJeEhkLDZEQUEwRjtDYzlJckY7QWRpRUg7RUE0RUYsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLCtFQUEwRjtDQTNFdkY7QWU1Rkw7SWZzS0UsMkJGckd3QjtJRXNHeEIsOEVBQTBGO0NlaEt2RjtBQVBMO0lmc0tFLDJCRnJHd0I7SUVzR3hCLDhFQUEwRjtDZTVKdkY7QUFYTDtJZnNLRSxzQ0Y5Rm9CO0lFK0ZwQixxRkFBMEY7Q2V4SnZGO0FBZkw7SWZzS0UsMkJGdEd5QjtJRXVHekIsK0VBQTBGO0NlL0l2RjtBQXhCTDtNZnNLRSxzQ0Y5Rm9CO01FK0ZwQixxRkFBMEY7TUFEMUYsMkJGdEd5QjtNRXVHekIsK0VBQTBGO0NlaEpyRjtBQXZCUDtJZnNLRSwyQkZuR3FCO0lFb0dyQiwyRUFBMEY7Q2UzSXZGO0FBNUJMOztJZnNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q2VySXJGO0FBbENQO0lmc0tFLGtDRjlGb0I7SUUrRnBCLGlGQUEwRjtDZWhJdkY7QUN0Q0g7OztFaEJxS0EsZUorR2U7RUk5R2YsOERBQTBGO0NnQmxLekY7QUFKRDs7O0VoQnFLQSxlSnlIYztFSXhIZCw2REFBMEY7Q2dCbEt6RjtBQ2tDSDtFakIrSEUsNENKK0dlO0VJOUdmLGlGQUEwRjtDaUJ2SHZGO0FBM0NEOzs7SWpCaUtGLDBCSitHZTtJSTlHZiwyREFBMEY7Q2lCaEt2RjtBQWdDTDtJakIrSEUsNENKeUhjO0lJeEhkLGdGQUEwRjtDaUJ4SHJGO0FBMUNIOzs7TWpCaUtGLDBCSnlIYztNSXhIZCwwREFBMEY7Q2lCaEt2RjtBQWdDTDtFakIrSEUsNENKK0dlO0VJOUdmLGlGQUEwRjtDaUIvR3ZGO0FBMUNIO0lqQndKQSwwQkorR2U7SUk5R2YsMkRBQTBGO0NpQnZKekY7QUF1Qkg7SWpCK0hFLDRDSnlIYztJSXhIZCxnRkFBMEY7Q2lCaEhyRjtBQXpDTDtNakJ3SkEsMEJKeUhjO01JeEhkLDBEQUEwRjtDaUJ2SnpGO0FBSUQ7RWpCa0pBLDBCSitHZTtFSTlHZiwyREFBMEY7Q2lCakp6RjtBQUVEO0VqQjhJQSw0Q0orR2U7RUk5R2YsaUZBQTBGO0NpQjdJekY7QUFFRDtFakIwSUEsd0NKK0dlO0VJOUdmLDZFQUEwRjtDaUJ6SXpGO0FBVkQ7RWpCa0pBLDBCSnlIYztFSXhIZCwwREFBMEY7Q2lCakp6RjtBQUVEO0VqQjhJQSw0Q0p5SGM7RUl4SGQsZ0ZBQTBGO0NpQjdJekY7QUFFRDtFakIwSUEsd0NKeUhjO0VJeEhkLDRFQUEwRjtDaUJ6SXpGO0FBSUQ7RWpCb0lBLGdCSitHZTtFSTlHZixpREFBMEY7Q2lCbkl6RjtBQUZEO0VqQm9JQSxnQkp5SGM7RUl4SGQsZ0RBQTBGO0NpQm5JekY7QUNwQ0g7RWxCc0tFLHNCSnlIYztFSXhIZCxzREFBMEY7Q2tCOUpyRjtBQVRQO0lsQnNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0NrQi9KbkY7QUFSVDtFbEJzS0UsZUp5SGM7RUl4SGQsK0NBQTBGO0NrQjFKckY7QUFiUDtFbEJzS0Usc0JKK0dlO0VJOUdmLHVEQUEwRjtDa0JoSnJGO0FBdkJQO0lsQnNLRSwwQkorR2U7SUk5R2YsMkRBQTBGO0NrQmpKbkY7QUF0QlQ7RWxCc0tFLGVKK0dlO0VJOUdmLGdEQUEwRjtDa0I1SXJGO0FBM0JQO0VBZ0NRLGtDQUF1QjtDQUN4QjtBQWpDUDtFQXFDVSxrQ0FBdUI7Q0FDeEI7QUF0Q1Q7RUEwQ1ksa0NBQXVCO0NBS3hCO0FBL0NYO0lBNkNjLHNDQUEyQjtDQUM1QjtBbEI0Q1Q7RUE0RUYsWUZ0Rm9CO0VFdUZwQixrRUFBMEY7RW1CbEt0RiwwQkFBeUI7Q25CdUYxQjtBQUZEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FvQjVGTDs7Ozs7SXBCc0tFLHNDRjlGb0I7SUUrRnBCLHFGQUEwRjtDb0IzSnJGO0FBWlA7SXBCc0tFLHNDRnBHc0I7SUVxR3RCLHVGQUEwRjtJQUQxRixZRnRGb0I7SUV1RnBCLCtEQUEwRjtDb0JoSnZGO0FBdkJMO01wQnNLRSxZRnRGb0I7TUV1RnBCLCtEQUEwRjtNQUQxRixXRnRGb0I7TUV1RnBCLDhEQUEwRjtDb0JqSnJGO0FBdEJQO0lwQnNLRSwyQkZwR3NCO0lFcUd0Qiw0RUFBMEY7Q29CdElyRjtBQWpDUDtNcEJzS0Usc0NGOUZvQjtNRStGcEIscUZBQTBGO0NvQnZJbkY7QUFoQ1Q7SXBCc0tFLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDb0JoSW5GO0FBdkNUO0lwQnNLRSwwQkorR2U7SUk5R2YseUVBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDb0J0SG5GO0FBakRUO01wQnNLRSwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7TUFEMUYsMEJGdEd5QjtNRXVHekIsMkVBQTBGO0NvQnZIakY7QUFoRFg7SXBCdVBFLGVKak9lO0lJa09mLHVEQUF1RjtDb0JqTWhGO0FBdkRUO0lwQnVQRSxlSmpPZTtJSWtPZix1REFBdUY7SUFEdkYsY0pqT2U7SUlrT2Ysc0RBQXVGO0NvQjVMaEY7QXBCOEJMO0VBNEVGLDJCRnJHd0I7RUVzR3hCLDhFQUEwRjtDQTNFdkY7QXFCNUZMO0lyQnNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q3FCakt2RjtBQ05MO0V0QnNLRSw0Q0p5SGM7RUl4SGQsZ0ZBQTBGO0NzQmxLckY7QUFMUDtFdEJzS0UsMEJKeUhjO0VJeEhkLDBEQUEwRjtDc0I5SnJGO0FBVFA7RXRCc0tFLGVKeUhjO0VJeEhkLCtDQUEwRjtDc0IxSnJGO0FBYlA7RXRCc0tFLDRDSitHZTtFSTlHZixpRkFBMEY7Q3NCcEpyRjtBQW5CUDtFdEJzS0UsMEJKK0dlO0VJOUdmLDJEQUEwRjtDc0JoSnJGO0FBdkJQO0V0QnNLRSxlSitHZTtFSTlHZixnREFBMEY7Q3NCNUlyRjtBQTNCUDtFQWdDUSxzQ0FBMkI7Q0FDNUI7QUFqQ1A7RXRCdVBFLDBCSm9DYztFSW5DZCxpRUFBdUY7Q3NCbk5sRjtBQXJDUDtFQXlDVSxzQ0FBMkI7Q0FDNUI7QUExQ1Q7RXRCdVBFLDBCSnVDYztFSXRDZCxpRUFBdUY7Q3NCMU1oRjtBQzlDVDs7RXZCc0tFLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtDdUJsS3ZGO0FBTEw7RXZCc0tFLDJCRnRHeUI7RUV1R3pCLCtFQUEwRjtFQUQxRiwyQ0p5SGM7RUl4SGQsK0VBQTBGO0N1QjdKdkY7QUFWTDtFdkJzS0Usc0NGakdzQjtFRWtHdEIsdUZBQTBGO0N1QnhKckY7QUFmUDtFdkJ1UEUsMEJKb0NjO0VJbkNkLDhEQUF1RjtDdUI1TGxGO0FBNURQO0l2QnNLRSwwQkorR2U7SUk5R2YseUVBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDdUI5SG5GO0FBekNUO01BOEJZLFlBQVc7Q0FDWjtBQS9CWDtNQWtDWSx1QkFBc0I7TUFDdEIsbUJBQWtCO0NBS25CO0FBeENYO1F2QnNLRSxzQkorR2U7UUk5R2YsdURBQTBGO0N1QmhJL0U7QUF2Q2I7SXZCc0tFLDBCSnlIYztJSXhIZCx3RUFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0N1QjVHbkY7QUEzRFQ7TUFnRFksWUFBVztDQUNaO0FBakRYO01Bb0RZLHVCQUFzQjtNQUN0QixtQkFBa0I7Q0FLbkI7QUExRFg7UXZCc0tFLHNCSnlIYztRSXhIZCxzREFBMEY7Q3VCOUcvRTtBQXpEYjtFdkJzS0Usc0NGOUZvQjtFRStGcEIscUZBQTBGO0N1QnZHckY7QUFoRVA7RXZCc0tFLDJCRnJHd0I7RUVzR3hCLDhFQUEwRjtDdUJsR3ZGO0FBckVMO0V2QnNLRSx5Q0Y5Rm9CO0VFK0ZwQix3RkFBMEY7Q3VCOUZ2RjtBQXpFTDtFdkJzS0UsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0N1Qm5GckY7QUFwRlA7SXZCc0tFLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtJQUQxRiwwQkZ0R3lCO0lFdUd6Qiw4RUFBMEY7Q3VCcEZuRjtBQW5GVDtFdkJzS0Usc0NGOUZvQjtFRStGcEIscUZBQTBGO0N1QjlFdkY7QUN4Rkg7RXhCcUtBLHVCRnhHa0I7RUV5R2xCLHlFQUEwRjtDd0J4SHpGO0FBM0NDO0l4QmtLRiwwQkZ0R3lCO0lFdUd6Qiw4RUFBMEY7Q3dCekh2RjtBQXhCRztNeEJnSk4sMkJGdEd5QjtNRXVHekIsK0VBQTBGO0N3Qi9JbkY7QUFFRDtNeEI0SU4sMEJGdEd5QjtNRXVHekIsOEVBQTBGO0N3QnZJbkY7QUFIQztReEJ5SVIseUJGdEd5QjtRRXVHekIsNkVBQTBGO0N3QnhJakY7QUFJTDtNeEJtSUosZUorR2U7TUk5R2YsOERBQTBGO0N3QjFIckY7QUFQQztReEJnSU4sZUorR2U7UUk5R2YsOERBQTBGO0N3QjNIbkY7QUFIQztVeEI2SFIsY0orR2U7VUk5R2YsNkRBQTBGO0N3QjVIakY7QUFNVDtFeEJxSEEsMEJKK0dlO0VJOUdmLHlFQUEwRjtDd0JwSHpGO0FBbEREO0V4QnFLQSwwQkorR2U7RUk5R2YseUVBQTBGO0N3QnhIekY7QUEzQ0M7SXhCa0tGLDBCRnRHeUI7SUV1R3pCLDJFQUEwRjtDd0J6SHZGO0FBdENHO014QjhKTiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3dCN0puRjtBQUVEO014QjBKTiwwQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q3dCckpuRjtBQUhDO1F4QnVKUix5QkZ0R3lCO1FFdUd6QiwwRUFBMEY7Q3dCdEpqRjtBQWtCTDtNeEJtSUosMkJGdEd5QjtNRXVHekIsNEVBQTBGO0N3QjFIckY7QUFQQztReEJnSU4sMkJGdEd5QjtRRXVHekIsNEVBQTBGO0N3QjNIbkY7QUFIQztVeEI2SFIsMEJGdEd5QjtVRXVHekIsMkVBQTBGO0N3QjVIakY7QUFNVDtFeEJxSEEsc0NGdEd5QjtFRXVHekIsdUZBQTBGO0N3QnBIekY7QUFsREQ7RXhCcUtBLDBCSnlIYztFSXhIZCx3RUFBMEY7Q3dCeEh6RjtBQTNDQztJeEJrS0YsMEJGdEd5QjtJRXVHekIsMEVBQTBGO0N3QnpIdkY7QUF0Q0c7TXhCOEpOLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0I3Sm5GO0FBRUQ7TXhCMEpOLDBCRnRHeUI7TUV1R3pCLDBFQUEwRjtDd0JySm5GO0FBSEM7UXhCdUpSLHlCRnRHeUI7UUV1R3pCLHlFQUEwRjtDd0J0SmpGO0FBa0JMO014Qm1JSiwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTiwyQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUiwwQkZ0R3lCO1VFdUd6QiwwRUFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSxzQ0Z0R3lCO0VFdUd6QixzRkFBMEY7Q3dCcEh6RjtBQWxERDtFeEJxS0EsdUJGeEdrQjtFRXlHbEIseUVBQTBGO0N3QnhIekY7QUEzQ0M7SXhCa0tGLDBCRnRHeUI7SUV1R3pCLDhFQUEwRjtDd0J6SHZGO0FBeEJHO014QmdKTiwyQkZ0R3lCO01FdUd6QiwrRUFBMEY7Q3dCL0luRjtBQUVEO014QjRJTiwwQkZ0R3lCO01FdUd6Qiw4RUFBMEY7Q3dCdkluRjtBQUhDO1F4QnlJUix5QkZ0R3lCO1FFdUd6Qiw2RUFBMEY7Q3dCeElqRjtBQUlMO014Qm1JSixlSitHZTtNSTlHZiw4REFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTixlSitHZTtRSTlHZiw4REFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUixjSitHZTtVSTlHZiw2REFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSwwQkorR2U7RUk5R2YseUVBQTBGO0N3QnBIekY7QUFsREQ7RXhCcUtBLDBCSitHZTtFSTlHZix5RUFBMEY7Q3dCeEh6RjtBQTNDQztJeEJrS0YsMEJGdEd5QjtJRXVHekIsMkVBQTBGO0N3QnpIdkY7QUF0Q0c7TXhCOEpOLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDd0I3Sm5GO0FBRUQ7TXhCMEpOLDBCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0JySm5GO0FBSEM7UXhCdUpSLHlCRnRHeUI7UUV1R3pCLDBFQUEwRjtDd0J0SmpGO0FBa0JMO014Qm1JSiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTiwyQkZ0R3lCO1FFdUd6Qiw0RUFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUiwwQkZ0R3lCO1VFdUd6QiwyRUFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSxzQ0Z0R3lCO0VFdUd6Qix1RkFBMEY7Q3dCcEh6RjtBQWxERDtFeEJxS0EsMEJKeUhjO0VJeEhkLHdFQUEwRjtDd0J4SHpGO0FBM0NDO0l4QmtLRiwwQkZ0R3lCO0lFdUd6QiwwRUFBMEY7Q3dCekh2RjtBQXRDRztNeEI4Sk4sMkJGdEd5QjtNRXVHekIsMkVBQTBGO0N3QjdKbkY7QUFFRDtNeEIwSk4sMEJGdEd5QjtNRXVHekIsMEVBQTBGO0N3QnJKbkY7QUFIQztReEJ1SlIseUJGdEd5QjtRRXVHekIseUVBQTBGO0N3QnRKakY7QUFrQkw7TXhCbUlKLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0IxSHJGO0FBUEM7UXhCZ0lOLDJCRnRHeUI7UUV1R3pCLDJFQUEwRjtDd0IzSG5GO0FBSEM7VXhCNkhSLDBCRnRHeUI7VUV1R3pCLDBFQUEwRjtDd0I1SGpGO0FBTVQ7RXhCcUhBLHNDRnRHeUI7RUV1R3pCLHNGQUEwRjtDd0JwSHpGO0F4QnVDQztFQTRFRiwyQkZ0R3lCO0VFdUd6Qix1RkFBMEY7RUFnRjFGLDBCSm9DYztFSW5DZCxrRUFBdUY7Q0E1SnBGO0F5QjNGSDtJekJxS0EsMkJGdEd5QjtJRXVHekIsdUZBQTBGO0N5QmhLekY7QUFIQztNekJrS0YsMEJGdEd5QjtNRXVHekIsc0ZBQTBGO0N5QmpLdkY7QUFhSDs7O0l6Qm1KQSwyQkZ0R3lCO0lFdUd6Qix1RkFBMEY7Q3lCaEp6RjtBQUdIO0l6QjRJRSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDeUIxSHZGO0FBNUNIO016QnFLQSwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3lCaEt6RjtBQUhDO1F6QmtLRiwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q3lCakt2RjtBQU1EO016QjBKRiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3lCekp2RjtBQUtIOzs7TXpCbUpBLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDeUJoSnpGO0FBR0g7SXpCNElFLDBCSnlIYztJSXhIZCwwREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0N5QmxIdkY7QUFwREg7TXpCcUtBLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDeUJoS3pGO0FBSEM7UXpCa0tGLDBCRnRHeUI7UUV1R3pCLDBFQUEwRjtDeUJqS3ZGO0FBTUQ7TXpCMEpGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDeUJ6SnZGO0FBS0g7OztNekJtSkEsMkJGdEd5QjtNRXVHekIsMkVBQTBGO0N5QmhKekY7QUFHSDtJQThCTSw4QkFBNkI7SXpCOEdqQywyQkZ0R3lCO0lFdUd6QiwrRUFBMEY7Q3lCM0d2RjtBQTNESDtNekJxS0EsMkJGdEd5QjtNRXVHekIsK0VBQTBGO0N5QmhLekY7QUFIQztRekJrS0YsMEJGdEd5QjtRRXVHekIsOEVBQTBGO0N5QmpLdkY7QUFhSDs7O016Qm1KQSwyQkZ0R3lCO01FdUd6QiwrRUFBMEY7Q3lCaEp6RjtBekJtRUM7RUE0RUYsWUZ0Rm9CO0VFdUZwQiw2REFBMEY7RUFEMUYsd0NGM0ZrQjtFRTRGbEIsdUZBQTBGO0NBM0V2RlwiLFwiZmlsZVwiOlwiQXBwLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi8qKlxcbiAqIFRoZSBjb21wbGV0ZSBtYXRlcmlhbCBwYWxldHRlXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCB0aGUgY3VycmVudCB0aGVtZSBtb2RlIGZyb20gdGhlIGN1cnJlbnQgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJHRoZW1lLW1vZGU6IG1kLWdldC10aGVtZS1tb2RlKClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgYnkgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGNvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoZGFyaywgcHJpbWFyeSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvci10aGVtZSDigJTigIogVGhlIHRoZW1lIGNvbG9yIHwgQWNjZXB0cyBkYXJrIG9yIGxpZ2h0XFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgb25seVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3IxOiBtZC1nZXQtY29sb3ItYnktdHlwZShiYWNrZ3JvdW5kLCBkYXJrKVxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGFjY2VudClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdGhlbWUg4oCU4oCKIFRoZSBmYWxsYmFjayB0aGVtZVxcbiAqL1xcbi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogTWFwIHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtZXMgdG8gYmUgcHJvY2Vzc2VkIGJ5IGVhY2ggY29tcG9uZW50XFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIFN0b3JlIHRoZSBjdXJyZW50IHRoZW1lIG5hbWVcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBzdHJpbmdcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlIGNvbG9yIGNvbnRyYXN0IHZhbHVlc1xcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4vKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIGZvciBhIGNvbG9yLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBjb2xvciB0byBiZSBhbmFseXNlZFxcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmcg4oCU4oCKIFRoZSBiZyBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZmcg4oCU4oCKIFRoZSBmZyBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcbi8qKlxcbiAqIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBkYXJrIG9yIGxpZ2h0IHRleHQgb24gdG9wIG9mIGdpdmVuIGNvbG9yLlxcbiAqIFJldHVybnMgZGFyayBvciBsaWdodCBkZXBlbmRpbmcgb24gdGhlIGNvbnRyYXN0IHJhdGlvLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBkZXNpcmVkIGNvbG9yIHRvIGJlIGNvbXBhcmVkXFxuICovXFxuLyoqXFxuICogT3ZlcnJpZGUgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IHBhbGV0dGUgZ2l2aW5nIG5ldyB2YWx1ZXMuIEl0IHdpbGwgZXh0ZW5kXFxuICogdGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLW92ZXJyaWRlLXBhbGV0dGUgKChcXG4gKiAgIGFjY2VudDogYmx1ZSxcXG4gKiAgIHRoZW1lOiBcXFwiZGFya1xcXCJcXG4gKiApKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUg4oCU4oCKIFRoZSBuZXcgcGFsZXR0ZVxcbiAqL1xcbi8qKlxcbiAqIENyZWF0ZSBhIG5ldyB0aGVtZSBiYXNlZCBvbiBhIGdpdmVuIHBhbGV0dGUuIEl0IHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0XFxuICogdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLXJlZ2lzdGVyLXRoZW1lKFxcXCJhbHRlcm5hdGl2ZVxcXCIsIChcXG4gKiAgIHByaW1hcnk6ICMyMTIxMjEsXFxuICogICBhY2NlbnQ6ICNDRERDMzksXFxuICogICB0aGVtZTogZGFya1xcbiAqICkpO1xcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge3N0cmluZ30gJG5hbWUg4oCU4oCKIFRoZSB0aGVtZSBuYW1lIHRvIGJlIHVzZWQgd2l0aCB0aGUgVnVlIE1hdGVyaWFsXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIFskbWQtZGVmYXVsdC1wYWxldHRlXSDigJTigIogVGhlIHRoZW1lIHBhbGV0dGVcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LXByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBiYWNrZ3JvdW5kOiBtZC10aGVtZShhY2NlbnQpO1xcbiAqICAgICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LWFjY2VudCk7XFxuICogICAgIH07XFxuICogICB9XFxuICogfVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcyBiYXNlZCBvbiBwYXJlbnQuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgIH1cXG4gKiB9XFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBhY2NlbnQpO1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICogICAgIH1cXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICRiYWNrZ3JvdW5kIOKAlOKAiiBUaGUgYmFja2dyb3VuZCBjb2xvciB0byBhbmFseXNlIGNvbnRyYXN0XFxuICogQHBhcmFtIHtudW1iZXJ9ICRvcGFjaXR5IOKAlOKAiiBUaGUgb3BhY2l0eSBhbW91bnRcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5IGJ5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIEEgdmFsaWQgbWF0ZXJpYWwgcGFsZXR0ZSBjb2xvciBuYW1lXFxuICogQHBhcmFtIHtzdHJpbmd9ICRodWUg4oCU4oCKIFRoZSBodWUgYW1vdW50IHRvIGdldCB0aGUgaGV4IGNvbG9yXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgdHlwZSBvZiB2YXJpYWJsZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFyaWFudCDigJTigIogVGhlIHR5cGUgb2YgY29uc3RyYXN0ZWQgdmFyaWFibGVcXG4gKi9cXG46cm9vdCB7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTogJHZhbHVlXFxuICAgIDtcXG4gIC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6ICR2YWx1ZVxcbiAgICA7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6ICR2YWx1ZVxcbiAgICA7IH1cXG5cXG4ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbik6aG92ZXIge1xcbiAgICBjb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjgpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC44KSk7IH1cXG4gIC5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pLm1kLWFjY2VudCB7XFxuICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVyIHtcXG4gICAgICBjb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuOCkpOyB9XFxuXFxuaHRtbC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtdmFyaWFudCwgI2ZhZmFmYSk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktMSwgLm1kLXRoZW1lLWRlZmF1bHRcXG4ubWQtZGlzcGxheS0yLCAubWQtdGhlbWUtZGVmYXVsdFxcbi5tZC1kaXNwbGF5LTMsIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktNCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG5cXG4ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwgLm1kLXNjcm9sbGJhci5tZC10aGVtZS1kZWZhdWx0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XFxuICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xcbiAgYmFja2dyb3VuZDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zY3JvbGxiYXItYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsICNlMWUxZTEpOyB9XFxuXFxuLm1kLXNjcm9sbGJhci5tZC10aGVtZS1kZWZhdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XFxuICBiYWNrZ3JvdW5kOiAjNzU3NTc1O1xcbiAgYmFja2dyb3VuZDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zY3JvbGxiYXItb24tYmFja2dyb3VuZC12YXJpYW50LCAjNzU3NTc1KTsgfVxcblxcbi5tZC1hcHA6bm90KC5tZC1vdmVybGFwKS5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuXFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtYXV0b2NvbXBsZXRlLWl0ZW1zIC5tZC1oaWdobGlnaHQtdGV4dC1tYXRjaCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtbG9hZGluZyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTQpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTQpKTsgfVxcblxcbi5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikpOyB9XFxuICAgIC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IGxhYmVsLFxcbiAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBzdmcge1xcbiAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAgICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCBsYWJlbCxcXG4gICAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGlucHV0IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbiAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG5cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcblxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hdmF0YXItaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb24ge1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTsgfVxcblxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtYXZhdGFyLWljb24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCA+IC5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2OGY4NztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLXByaW1hcnksICNhNjhmODcpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3ZnIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICM5ZTllOWU7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0ID4gLm1kLXJpcHBsZSAubWQtcmlwcGxlLXdhdmUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU4NTg1O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1hY2NlbnQsICM4NTg1ODUpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogIzllOWU5ZTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZFtkaXNhYmxlZF0ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG4gIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAgICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2Uge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWJbZGlzYWJsZWRdIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2Uge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHRbZGlzYWJsZWRdIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24tZm9udCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHRbZGlzYWJsZWRdIC5tZC1pY29uLWltYWdlIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcblxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0ID4gLm1kLWNhcmQtYXJlYTphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnMge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1hY3Rpb25zIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSxcXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uLFxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgPiAubWQtY2FyZC1hcmVhOmFmdGVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICBib3JkZXItY29sb3I6ICM5ZTllOWU7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcbiAgICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBib3JkZXItY29sb3I6ICNiY2FhYTQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTsgfVxcblxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuXFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pY29uLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaWNvbiB7XFxuICAgICAgZmlsbDogI2ZmZjtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTsgfVxcbiAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3KSk7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24gLm1kLWljb24gc3ZnLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gICAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpO1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpKTsgfVxcbiAgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgY29sb3I6ICNmZmY7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpOyB9XFxuICAgICAgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcblxcbi5tZC1jaGlwcy5tZC10aGVtZS1kZWZhdWx0IC5tZC1jbGVhciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cXG5cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdCB7XFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YWZ0ZXIsIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2VlayB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbjpob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkLFxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG5cXG4ubWQtZGl2aWRlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmcge1xcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG5cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTsgfVxcblxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXJvdW5kZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4wNikpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiAjYmNhYWE0O1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICM5ZTllOWU7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdDphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YmVmb3JlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhlbHBlci10ZXh0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jb3VudCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCBsYWJlbCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhIHtcXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmUge1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMzgpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMzgpIDMzJSwgdHJhbnNwYXJlbnQgMCUpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0ID4gLm1kLWljb246YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMTc0NDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZSB7XFxuICBib3JkZXItY29sb3I6ICNmZjE3NDQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgbGFiZWwge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZXJyb3Ige1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZGF0ZS1pY29uLFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiBzdmcge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO1xcbiAgZmlsbDogI2ZmMTc0NDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgLm1kLXRleHRhcmVhLCAubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWEge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCA+IC5tZC1pY29uLCAubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgPiAubWQtaWNvbiB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxuICBmaWxsOiAjYmNhYWE0O1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCBsYWJlbCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtaWNvbiBzdmcge1xcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG5cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gIC5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1pbWFnZSBzdmcubWQtcHJpbWFyeSB7XFxuICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1hY2NlbnQge1xcbiAgICBmaWxsOiAjOWU5ZTllO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWZvbnQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRvdWJsZS1saW5lIC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDIpIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyaXBsZS1saW5lIC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDMpIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oaWdobGlnaHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG4gIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTsgfVxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LFxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b24ge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9uIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCwgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7IH1cXG4gICAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcixcXG4gICAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpOyB9XFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlci5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci10cmFjayB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogI2JjYWFhNDtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZSB7XFxuICBzdHJva2U6ICM5ZTllOWU7XFxuICBzdHJva2U6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6ICM5ZTllOWU7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cXG5cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuICAubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuXFxuLm1kLXNuYWNrYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7IH1cXG5cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1pY29uOmFmdGVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1pY29uOmJlZm9yZSxcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjphZnRlcixcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsXFxuICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlcjphZnRlcixcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxuICAgIGNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTsgfVxcbiAgICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTtcXG4gICAgICBmaWxsOiAjZmZmO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZik7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3JlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSAubWQtYnV0dG9uLWNvbnRlbnQsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSAubWQtc3RlcHBlci1udW1iZXIgc3ZnLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWVycm9yIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgIGNvbG9yOiAjZmYxNzQ0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtaWNvbiBzdmcge1xcbiAgICBjb2xvcjogI2ZmMTc0NDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3RlcHBlcnZhcmlhbnQsICNmZjE3NDQpO1xcbiAgICBmaWxsOiAjZmYxNzQ0O1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1zdWJoZWFkZXIubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcblxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN3aXRjaHZhcmlhbnQsICNmNWY1ZjUpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRiZGJkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjYmRiZGJkKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1jb250ZW50LFxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIgLm1kLXRhYmxlLXRvb2xiYXIge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4yKSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93OmhvdmVyOm5vdCgubWQtaGVhZGVyLXJvdykgLm1kLXRhYmxlLWNlbGwge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4wOCkpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcm93dmFyaWFudCwgI2Y1ZjVmNSk7IH1cXG4gIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gICAgICBjb2xvcjogI2ZmZjsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxcbiAgICAgIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtcmlwcGxlLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnQgLm1kLXJpcHBsZSB7XFxuICAgICAgY29sb3I6ICNmZmY7IH1cXG4gICAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XFxuICAgICAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93IHRkIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtaGVhZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWZpeGVkLWhlYWRlci1hY3RpdmUge1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlOmhvdmVyIHN2ZywgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmcge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1wYWdpbmF0aW9uIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKTsgfVxcbiAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLWluZGljYXRvciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRdIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRdIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAgICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogI2JjYWFhNDtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC10aXRsZSxcXG4gIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSxcXG4gIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRpdGxlLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGl0bGUsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRvb2x0aXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10b29sdGlwLCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTcsIDk3LCA5NywgMC45KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdG9vbHRpcC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDk3LCA5NywgOTcsIDAuOSkpOyB9XFxuXCIsXCIvKipcXG4gKiBUaGUgY29tcGxldGUgbWF0ZXJpYWwgcGFsZXR0ZVxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1wYWxldHRlOiAoXFxuICByZWQ6IChcXG4gICAgNTA6ICNmZmViZWUsXFxuICAgIDEwMDogI2ZmY2RkMixcXG4gICAgMjAwOiAjZWY5YTlhLFxcbiAgICAzMDA6ICNlNTczNzMsXFxuICAgIDQwMDogI2VmNTM1MCxcXG4gICAgNTAwOiAjZjQ0MzM2LFxcbiAgICA2MDA6ICNlNTM5MzUsXFxuICAgIDcwMDogI2QzMmYyZixcXG4gICAgODAwOiAjYzYyODI4LFxcbiAgICA5MDA6ICNiNzFjMWMsXFxuICAgIEExMDA6ICNmZjhhODAsXFxuICAgIEEyMDA6ICNmZjUyNTIsXFxuICAgIEE0MDA6ICNmZjE3NDQsXFxuICAgIEE3MDA6ICNkNTAwMDBcXG4gICksXFxuICBwaW5rOiAoXFxuICAgIDUwOiAjZmNlNGVjLFxcbiAgICAxMDA6ICNmOGJiZDAsXFxuICAgIDIwMDogI2Y0OGZiMSxcXG4gICAgMzAwOiAjZjA2MjkyLFxcbiAgICA0MDA6ICNlYzQwN2EsXFxuICAgIDUwMDogI2U5MWU2MyxcXG4gICAgNjAwOiAjZDgxYjYwLFxcbiAgICA3MDA6ICNjMjE4NWIsXFxuICAgIDgwMDogI2FkMTQ1NyxcXG4gICAgOTAwOiAjODgwZTRmLFxcbiAgICBBMTAwOiAjZmY4MGFiLFxcbiAgICBBMjAwOiAjZmY0MDgxLFxcbiAgICBBNDAwOiAjZjUwMDU3LFxcbiAgICBBNzAwOiAjYzUxMTYyXFxuICApLFxcbiAgcHVycGxlOiAoXFxuICAgIDUwOiAjZjNlNWY1LFxcbiAgICAxMDA6ICNlMWJlZTcsXFxuICAgIDIwMDogI2NlOTNkOCxcXG4gICAgMzAwOiAjYmE2OGM4LFxcbiAgICA0MDA6ICNhYjQ3YmMsXFxuICAgIDUwMDogIzljMjdiMCxcXG4gICAgNjAwOiAjOGUyNGFhLFxcbiAgICA3MDA6ICM3YjFmYTIsXFxuICAgIDgwMDogIzZhMWI5YSxcXG4gICAgOTAwOiAjNGExNDhjLFxcbiAgICBBMTAwOiAjZWE4MGZjLFxcbiAgICBBMjAwOiAjZTA0MGZiLFxcbiAgICBBNDAwOiAjZDUwMGY5LFxcbiAgICBBNzAwOiAjYWEwMGZmXFxuICApLFxcbiAgZGVlcHB1cnBsZTogKFxcbiAgICA1MDogI2VkZTdmNixcXG4gICAgMTAwOiAjZDFjNGU5LFxcbiAgICAyMDA6ICNiMzlkZGIsXFxuICAgIDMwMDogIzk1NzVjZCxcXG4gICAgNDAwOiAjN2U1N2MyLFxcbiAgICA1MDA6ICM2NzNhYjcsXFxuICAgIDYwMDogIzVlMzViMSxcXG4gICAgNzAwOiAjNTEyZGE4LFxcbiAgICA4MDA6ICM0NTI3YTAsXFxuICAgIDkwMDogIzMxMWI5MixcXG4gICAgQTEwMDogI2IzODhmZixcXG4gICAgQTIwMDogIzdjNGRmZixcXG4gICAgQTQwMDogIzY1MWZmZixcXG4gICAgQTcwMDogIzYyMDBlYVxcbiAgKSxcXG4gIGluZGlnbzogKFxcbiAgICA1MDogI2U4ZWFmNixcXG4gICAgMTAwOiAjYzVjYWU5LFxcbiAgICAyMDA6ICM5ZmE4ZGEsXFxuICAgIDMwMDogIzc5ODZjYixcXG4gICAgNDAwOiAjNWM2YmMwLFxcbiAgICA1MDA6ICMzZjUxYjUsXFxuICAgIDYwMDogIzM5NDlhYixcXG4gICAgNzAwOiAjMzAzZjlmLFxcbiAgICA4MDA6ICMyODM1OTMsXFxuICAgIDkwMDogIzFhMjM3ZSxcXG4gICAgQTEwMDogIzhjOWVmZixcXG4gICAgQTIwMDogIzUzNmRmZSxcXG4gICAgQTQwMDogIzNkNWFmZSxcXG4gICAgQTcwMDogIzMwNGZmZVxcbiAgKSxcXG4gIGJsdWU6IChcXG4gICAgNTA6ICNlM2YyZmQsXFxuICAgIDEwMDogI2JiZGVmYixcXG4gICAgMjAwOiAjOTBjYWY5LFxcbiAgICAzMDA6ICM2NGI1ZjYsXFxuICAgIDQwMDogIzQyYTVmNSxcXG4gICAgNTAwOiAjMjE5NmYzLFxcbiAgICA2MDA6ICMxZTg4ZTUsXFxuICAgIDcwMDogIzE5NzZkMixcXG4gICAgODAwOiAjMTU2NWMwLFxcbiAgICA5MDA6ICMwZDQ3YTEsXFxuICAgIEExMDA6ICM4MmIxZmYsXFxuICAgIEEyMDA6ICM0NDhhZmYsXFxuICAgIEE0MDA6ICMyOTc5ZmYsXFxuICAgIEE3MDA6ICMyOTYyZmZcXG4gICksXFxuICBsaWdodGJsdWU6IChcXG4gICAgNTA6ICNlMWY1ZmUsXFxuICAgIDEwMDogI2IzZTVmYyxcXG4gICAgMjAwOiAjODFkNGZhLFxcbiAgICAzMDA6ICM0ZmMzZjcsXFxuICAgIDQwMDogIzI5YjZmNixcXG4gICAgNTAwOiAjMDNhOWY0LFxcbiAgICA2MDA6ICMwMzliZTUsXFxuICAgIDcwMDogIzAyODhkMSxcXG4gICAgODAwOiAjMDI3N2JkLFxcbiAgICA5MDA6ICMwMTU3OWIsXFxuICAgIEExMDA6ICM4MGQ4ZmYsXFxuICAgIEEyMDA6ICM0MGM0ZmYsXFxuICAgIEE0MDA6ICMwMGIwZmYsXFxuICAgIEE3MDA6ICMwMDkxZWFcXG4gICksXFxuICBjeWFuOiAoXFxuICAgIDUwOiAjZTBmN2ZhLFxcbiAgICAxMDA6ICNiMmViZjIsXFxuICAgIDIwMDogIzgwZGVlYSxcXG4gICAgMzAwOiAjNGRkMGUxLFxcbiAgICA0MDA6ICMyNmM2ZGEsXFxuICAgIDUwMDogIzAwYmNkNCxcXG4gICAgNjAwOiAjMDBhY2MxLFxcbiAgICA3MDA6ICMwMDk3YTcsXFxuICAgIDgwMDogIzAwODM4ZixcXG4gICAgOTAwOiAjMDA2MDY0LFxcbiAgICBBMTAwOiAjODRmZmZmLFxcbiAgICBBMjAwOiAjMThmZmZmLFxcbiAgICBBNDAwOiAjMDBlNWZmLFxcbiAgICBBNzAwOiAjMDBiOGQ0XFxuICApLFxcbiAgdGVhbDogKFxcbiAgICA1MDogI2UwZjJmMSxcXG4gICAgMTAwOiAjYjJkZmRiLFxcbiAgICAyMDA6ICM4MGNiYzQsXFxuICAgIDMwMDogIzRkYjZhYyxcXG4gICAgNDAwOiAjMjZhNjlhLFxcbiAgICA1MDA6ICMwMDk2ODgsXFxuICAgIDYwMDogIzAwODk3YixcXG4gICAgNzAwOiAjMDA3OTZiLFxcbiAgICA4MDA6ICMwMDY5NWMsXFxuICAgIDkwMDogIzAwNGQ0MCxcXG4gICAgQTEwMDogI2E3ZmZlYixcXG4gICAgQTIwMDogIzY0ZmZkYSxcXG4gICAgQTQwMDogIzFkZTliNixcXG4gICAgQTcwMDogIzAwYmZhNVxcbiAgKSxcXG4gIGdyZWVuOiAoXFxuICAgIDUwOiAjZThmNWU5LFxcbiAgICAxMDA6ICNjOGU2YzksXFxuICAgIDIwMDogI2E1ZDZhNyxcXG4gICAgMzAwOiAjODFjNzg0LFxcbiAgICA0MDA6ICM2NmJiNmEsXFxuICAgIDUwMDogIzRjYWY1MCxcXG4gICAgNjAwOiAjNDNhMDQ3LFxcbiAgICA3MDA6ICMzODhlM2MsXFxuICAgIDgwMDogIzJlN2QzMixcXG4gICAgOTAwOiAjMWI1ZTIwLFxcbiAgICBBMTAwOiAjYjlmNmNhLFxcbiAgICBBMjAwOiAjNjlmMGFlLFxcbiAgICBBNDAwOiAjMDBlNjc2LFxcbiAgICBBNzAwOiAjMDBjODUzXFxuICApLFxcbiAgbGlnaHRncmVlbjogKFxcbiAgICA1MDogI2YxZjhlOSxcXG4gICAgMTAwOiAjZGNlZGM4LFxcbiAgICAyMDA6ICNjNWUxYTUsXFxuICAgIDMwMDogI2FlZDU4MSxcXG4gICAgNDAwOiAjOWNjYzY1LFxcbiAgICA1MDA6ICM4YmMzNGEsXFxuICAgIDYwMDogIzdjYjM0MixcXG4gICAgNzAwOiAjNjg5ZjM4LFxcbiAgICA4MDA6ICM1NThiMmYsXFxuICAgIDkwMDogIzMzNjkxZSxcXG4gICAgQTEwMDogI2NjZmY5MCxcXG4gICAgQTIwMDogI2IyZmY1OSxcXG4gICAgQTQwMDogIzc2ZmYwMyxcXG4gICAgQTcwMDogIzY0ZGQxN1xcbiAgKSxcXG4gIGxpbWU6IChcXG4gICAgNTA6ICNmOWZiZTcsXFxuICAgIDEwMDogI2YwZjRjMyxcXG4gICAgMjAwOiAjZTZlZTljLFxcbiAgICAzMDA6ICNkY2U3NzUsXFxuICAgIDQwMDogI2Q0ZTE1NyxcXG4gICAgNTAwOiAjY2RkYzM5LFxcbiAgICA2MDA6ICNjMGNhMzMsXFxuICAgIDcwMDogI2FmYjQyYixcXG4gICAgODAwOiAjOWU5ZDI0LFxcbiAgICA5MDA6ICM4Mjc3MTcsXFxuICAgIEExMDA6ICNmNGZmODEsXFxuICAgIEEyMDA6ICNlZWZmNDEsXFxuICAgIEE0MDA6ICNjNmZmMDAsXFxuICAgIEE3MDA6ICNhZWVhMDBcXG4gICksXFxuICB5ZWxsb3c6IChcXG4gICAgNTA6ICNmZmZkZTcsXFxuICAgIDEwMDogI2ZmZjljNCxcXG4gICAgMjAwOiAjZmZmNTlkLFxcbiAgICAzMDA6ICNmZmYxNzYsXFxuICAgIDQwMDogI2ZmZWU1OCxcXG4gICAgNTAwOiAjZmZlYjNiLFxcbiAgICA2MDA6ICNmZGQ4MzUsXFxuICAgIDcwMDogI2ZiYzAyZCxcXG4gICAgODAwOiAjZjlhODI1LFxcbiAgICA5MDA6ICNmNTdmMTcsXFxuICAgIEExMDA6ICNmZmZmOGQsXFxuICAgIEEyMDA6ICNmZmZmMDAsXFxuICAgIEE0MDA6ICNmZmVhMDAsXFxuICAgIEE3MDA6ICNmZmQ2MDBcXG4gICksXFxuICBhbWJlcjogKFxcbiAgICA1MDogI2ZmZjhlMSxcXG4gICAgMTAwOiAjZmZlY2IzLFxcbiAgICAyMDA6ICNmZmUwODIsXFxuICAgIDMwMDogI2ZmZDU0ZixcXG4gICAgNDAwOiAjZmZjYTI4LFxcbiAgICA1MDA6ICNmZmMxMDcsXFxuICAgIDYwMDogI2ZmYjMwMCxcXG4gICAgNzAwOiAjZmZhMDAwLFxcbiAgICA4MDA6ICNmZjhmMDAsXFxuICAgIDkwMDogI2ZmNmYwMCxcXG4gICAgQTEwMDogI2ZmZTU3ZixcXG4gICAgQTIwMDogI2ZmZDc0MCxcXG4gICAgQTQwMDogI2ZmYzQwMCxcXG4gICAgQTcwMDogI2ZmYWIwMFxcbiAgKSxcXG4gIG9yYW5nZTogKFxcbiAgICA1MDogI2ZmZjNlMCxcXG4gICAgMTAwOiAjZmZlMGIyLFxcbiAgICAyMDA6ICNmZmNjODAsXFxuICAgIDMwMDogI2ZmYjc0ZCxcXG4gICAgNDAwOiAjZmZhNzI2LFxcbiAgICA1MDA6ICNmZjk4MDAsXFxuICAgIDYwMDogI2ZiOGMwMCxcXG4gICAgNzAwOiAjZjU3YzAwLFxcbiAgICA4MDA6ICNlZjZjMDAsXFxuICAgIDkwMDogI2U2NTEwMCxcXG4gICAgQTEwMDogI2ZmZDE4MCxcXG4gICAgQTIwMDogI2ZmYWI0MCxcXG4gICAgQTQwMDogI2ZmOTEwMCxcXG4gICAgQTcwMDogI2ZmNmQwMFxcbiAgKSxcXG4gIGRlZXBvcmFuZ2U6IChcXG4gICAgNTA6ICNmYmU5ZTcsXFxuICAgIDEwMDogI2ZmY2NiYyxcXG4gICAgMjAwOiAjZmZhYjkxLFxcbiAgICAzMDA6ICNmZjhhNjUsXFxuICAgIDQwMDogI2ZmNzA0MyxcXG4gICAgNTAwOiAjZmY1NzIyLFxcbiAgICA2MDA6ICNmNDUxMWUsXFxuICAgIDcwMDogI2U2NGExOSxcXG4gICAgODAwOiAjZDg0MzE1LFxcbiAgICA5MDA6ICNiZjM2MGMsXFxuICAgIEExMDA6ICNmZjllODAsXFxuICAgIEEyMDA6ICNmZjZlNDAsXFxuICAgIEE0MDA6ICNmZjNkMDAsXFxuICAgIEE3MDA6ICNkZDJjMDBcXG4gICksXFxuICBicm93bjogKFxcbiAgICA1MDogI2VmZWJlOSxcXG4gICAgMTAwOiAjZDdjY2M4LFxcbiAgICAyMDA6ICNiY2FhYTQsXFxuICAgIDMwMDogI2ExODg3ZixcXG4gICAgNDAwOiAjOGQ2ZTYzLFxcbiAgICA1MDA6ICM3OTU1NDgsXFxuICAgIDYwMDogIzZkNGM0MSxcXG4gICAgNzAwOiAjNWQ0MDM3LFxcbiAgICA4MDA6ICM0ZTM0MmUsXFxuICAgIDkwMDogIzNlMjcyMyxcXG4gICAgQTEwMDogI2Q3Y2NjOCxcXG4gICAgQTIwMDogI2JjYWFhNCxcXG4gICAgQTQwMDogIzhkNmU2MyxcXG4gICAgQTcwMDogIzVkNDAzN1xcbiAgKSxcXG4gIGdyZXk6IChcXG4gICAgNTA6ICNmYWZhZmEsXFxuICAgIDEwMDogI2Y1ZjVmNSxcXG4gICAgMjAwOiAjZWVlZWVlLFxcbiAgICAzMDA6ICNlMGUwZTAsXFxuICAgIDQwMDogI2JkYmRiZCxcXG4gICAgNTAwOiAjOWU5ZTllLFxcbiAgICA2MDA6ICM3NTc1NzUsXFxuICAgIDcwMDogIzYxNjE2MSxcXG4gICAgODAwOiAjNDI0MjQyLFxcbiAgICA5MDA6ICMyMTIxMjEsXFxuICAgIEExMDA6ICNmZmYsXFxuICAgIEEyMDA6ICMwMDAwMDAsXFxuICAgIEE0MDA6ICMzMDMwMzAsXFxuICAgIEE3MDA6ICM2MTYxNjFcXG4gICksXFxuICBibHVlZ3JleTogKFxcbiAgICA1MDogI2VjZWZmMSxcXG4gICAgMTAwOiAjY2ZkOGRjLFxcbiAgICAyMDA6ICNiMGJlYzUsXFxuICAgIDMwMDogIzkwYTRhZSxcXG4gICAgNDAwOiAjNzg5MDljLFxcbiAgICA1MDA6ICM2MDdkOGIsXFxuICAgIDYwMDogIzU0NmU3YSxcXG4gICAgNzAwOiAjNDU1YTY0LFxcbiAgICA4MDA6ICMzNzQ3NGYsXFxuICAgIDkwMDogIzI2MzIzOCxcXG4gICAgQTEwMDogI2NmZDhkYyxcXG4gICAgQTIwMDogI2IwYmVjNSxcXG4gICAgQTQwMDogIzc4OTA5YyxcXG4gICAgQTcwMDogIzQ1NWE2NFxcbiAgKSxcXG4gIHdoaXRlOiAoXFxuICAgIDUwOiAjZmZmLFxcbiAgICAxMDA6ICNmZmYsXFxuICAgIDIwMDogI2ZmZixcXG4gICAgMzAwOiAjZmZmLFxcbiAgICA0MDA6ICNmZmYsXFxuICAgIDUwMDogI2ZmZixcXG4gICAgNjAwOiAjZmZmLFxcbiAgICA3MDA6ICNmZmYsXFxuICAgIDgwMDogI2ZmZixcXG4gICAgOTAwOiAjZmZmLFxcbiAgICBBMTAwOiAjZmZmLFxcbiAgICBBMjAwOiAjZmZmLFxcbiAgICBBNDAwOiAjZmZmLFxcbiAgICBBNzAwOiAjZmZmXFxuICApLFxcbiAgYmxhY2s6IChcXG4gICAgNTA6ICMwMDAsXFxuICAgIDEwMDogIzAwMCxcXG4gICAgMjAwOiAjMDAwLFxcbiAgICAzMDA6ICMwMDAsXFxuICAgIDQwMDogIzAwMCxcXG4gICAgNTAwOiAjMDAwLFxcbiAgICA2MDA6ICMwMDAsXFxuICAgIDcwMDogIzAwMCxcXG4gICAgODAwOiAjMDAwLFxcbiAgICA5MDA6ICMwMDAsXFxuICAgIEExMDA6ICMwMDAsXFxuICAgIEEyMDA6ICMwMDAsXFxuICAgIEE0MDA6ICMwMDAsXFxuICAgIEE3MDA6ICMwMDBcXG4gIClcXG4pO1xcblwiLFwiLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC1nZXQtcGFsZXR0ZS1jb2xvcigkY29sb3IsICRodWUpIHtcXG4gIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRtZC1wYWxldHRlLCAkY29sb3IpLCAkaHVlKTtcXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IHRoZSBjdXJyZW50IHRoZW1lIG1vZGUgZnJvbSB0aGUgY3VycmVudCB0aGVtZVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkdGhlbWUtbW9kZTogbWQtZ2V0LXRoZW1lLW1vZGUoKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC10aGVtZS1tb2RlKCkge1xcbiAgQHJldHVybiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCB0aGVtZSk7XFxufVxcblxcblxcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiKSB7XFxuICAkY29sb3ItdGhlbWU6IG51bGw7XFxuXFxuICBAaWYgJHR5cGUgPT0gXFxcInByaW1hcnlcXFwiIG9yICR0eXBlID09IFxcXCJhY2NlbnRcXFwiIHtcXG4gICAgQHJldHVybiBtZC1nZXQtY29sb3ItYnktdHlwZSgkdHlwZSwgbnVsbCk7XFxuICB9IEBlbHNlIHtcXG4gICAgJGNvbG9yLXRoZW1lOiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCB0aGVtZSk7XFxuXFxuICAgIEBpZiAkYmFja2dyb3VuZCAhPSBcXFwiXFxcIiB7XFxuICAgICAgJGNvbG9yLXRoZW1lOiBtZC1waWNrLWNvbnRyYXN0KG1kLWdldC1jb2xvci1ieS10eXBlKCRiYWNrZ3JvdW5kLCAkY29sb3ItdGhlbWUpKTtcXG4gICAgfVxcblxcbiAgICBAcmV0dXJuIG1kLWdldC1jb2xvci1ieS10aGVtZSgkY29sb3ItdGhlbWUsICR0eXBlKTtcXG4gIH1cXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBieSB0aGVtZVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3I6IG1kLWdldC1jb2xvci1ieS10aGVtZShkYXJrLCBwcmltYXJ5KVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yLXRoZW1lIOKAlOKAiiBUaGUgdGhlbWUgY29sb3IgfCBBY2NlcHRzIGRhcmsgb3IgbGlnaHRcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSBjb2xvciB0eXBlXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC1jb2xvci1ieS10aGVtZSgkY29sb3ItdGhlbWUsICR0eXBlKSB7XFxuICAkdGhlbWU6IG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgJGNvbG9yLXRoZW1lKTtcXG5cXG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUsICR0eXBlKTtcXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBvbmx5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGJhY2tncm91bmQsIGRhcmspXFxuICogJGNvbG9yMTogbWQtZ2V0LWNvbG9yLWJ5LXR5cGUoYWNjZW50KVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSBjb2xvciB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0aGVtZSDigJTigIogVGhlIGZhbGxiYWNrIHRoZW1lXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC1jb2xvci1ieS10eXBlKCR0eXBlLCAkdGhlbWUpIHtcXG4gICRuZXdDb2xvcjogbWFwLWdldCgkbWQtdGhlbWUtcGFsZXR0ZSwgJHR5cGUpO1xcblxcbiAgQGlmICRuZXdDb2xvciA9PSBudWxsIHtcXG4gICAgJG5ld0NvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoJHRoZW1lLCAkdHlwZSk7XFxuICB9XFxuXFxuICBAcmV0dXJuICRuZXdDb2xvclxcbn1cXG5cIixcIi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuXFxuJG1kLWRlZmF1bHQtcGFsZXR0ZTogKFxcbiAgcHJpbWFyeTogbWQtZ2V0LXBhbGV0dGUtY29sb3IoYmx1ZSwgQTIwMCksXFxuICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHJlZCwgQTIwMCksXFxuICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbikgIWRlZmF1bHQ7XFxuXFxuXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuJG1kLXRoZW1lLXBhbGV0dGU6ICgpO1xcblxcblxcbi8qKlxcbiAqIE1hcCB2YXJpYWJsZSB0byBzdG9yZSBhbGwgdGhlbWVzIHRvIGJlIHByb2Nlc3NlZCBieSBlYWNoIGNvbXBvbmVudFxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4kbWQtdGhlbWVzOiAoKTtcXG5cXG5cXG4vKipcXG4gKiBTdG9yZSB0aGUgY3VycmVudCB0aGVtZSBuYW1lXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgc3RyaW5nXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1jdXJyZW50LXRoZW1lOiBudWxsO1xcblxcblxcbi8qKlxcbiAqIFRoZSBjb2xvciBjb250cmFzdCB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuXFxuJG1kLWNvbG9yLWxldmVsczogKFxcbiAgbGlnaHQ6IChcXG4gICAgYmFja2dyb3VuZDogI2ZmZixcXG4gICAgYmFja2dyb3VuZC12YXJpYW50OiAjZmFmYWZhLFxcbiAgICB0ZXh0LXByaW1hcnk6IHJnYmEoIzAwMCwgLjg3KSxcXG4gICAgdGV4dC1hY2NlbnQ6IHJnYmEoIzAwMCwgLjU0KSxcXG4gICAgdGV4dC1oaW50OiByZ2JhKCMwMDAsIC4zOCksXFxuICAgIGRpc2FibGVkOiByZ2JhKCMwMDAsIC4yNiksXFxuICAgIGRpc2FibGVkLWJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjEyKSxcXG4gICAgaGlnaGxpZ2h0OiByZ2JhKCMwMDAsIC4xMiksXFxuICAgIGljb246IHJnYmEoIzAwMCwgLjU0KSxcXG4gICAgaWNvbi1kaXNhYmxlZDogcmdiYSgjMDAwLCAuMzgpLFxcbiAgICBkaXZpZGVyOiByZ2JhKCMwMDAsIC4xMiksXFxuICAgIHNjcm9sbGJhcjogIzc1NzU3NSxcXG4gICAgc2Nyb2xsYmFyLWJhY2tncm91bmQ6IGRhcmtlbigjZWVlLCA1JSksXFxuICAgIHRvb2x0aXA6ICM2MTYxNjFcXG4gICksXFxuICBkYXJrOiAoXFxuICAgIGJhY2tncm91bmQ6ICM0MjQyNDIsXFxuICAgIGJhY2tncm91bmQtdmFyaWFudDogIzMwMzAzMCxcXG4gICAgdGV4dC1wcmltYXJ5OiAjZmZmLFxcbiAgICB0ZXh0LWFjY2VudDogcmdiYSgjZmZmLCAuNyksXFxuICAgIHRleHQtaGludDogcmdiYSgjZmZmLCAuNSksXFxuICAgIGRpc2FibGVkOiByZ2JhKCNmZmYsIC4zKSxcXG4gICAgZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgjZmZmLCAuMTIpLFxcbiAgICBoaWdobGlnaHQ6IHJnYmEoI2ZmZiwgLjEyKSxcXG4gICAgaWNvbjogI2ZmZixcXG4gICAgaWNvbi1kaXNhYmxlZDogcmdiYSgjZmZmLCAuNSksXFxuICAgIGRpdmlkZXI6IHJnYmEoI2ZmZiwgLjEyKSxcXG4gICAgc2Nyb2xsYmFyOiAjOUU5RTlFLFxcbiAgICBzY3JvbGxiYXItYmFja2dyb3VuZDogIzIxMjEyMSxcXG4gICAgdG9vbHRpcDogI2ZmZlxcbiAgKVxcbik7XFxuXCIsXCIvKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcblxcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXM6XFxuICAwXFxuICAuMDAwMzAzNTI2OTgzNTQ4ODM3NVxcbiAgLjAwMDYwNzA1Mzk2NzA5NzY3NVxcbiAgLjAwMDkxMDU4MDk1MDY0NjUxMjVcXG4gIC4wMDEyMTQxMDc5MzQxOTUzNVxcbiAgLjAwMTUxNzYzNDkxNzc0NDE4NzRcXG4gIC4wMDE4MjExNjE5MDEyOTMwMjVcXG4gIC4wMDIxMjQ2ODg4ODQ4NDE4NjI2XFxuICAuMDAyNDI4MjE1ODY4MzkwN1xcbiAgLjAwMjczMTc0Mjg1MTkzOTUzNzNcXG4gIC4wMDMwMzUyNjk4MzU0ODgzNzVcXG4gIC4wMDMzNDY1MzU3NjM4OTkxNjFcXG4gIC4wMDM2NzY1MDczMjQwNDc0MzZcXG4gIC4wMDQwMjQ3MTcwMTg0OTYzMDdcXG4gIC4wMDQzOTE0NDIwMzc0MTAyOTNcXG4gIC4wMDQ3NzY5NTM0ODA2OTM3MjlcXG4gIC4wMDUxODE1MTY3MDIzMzgzODZcXG4gIC4wMDU2MDUzOTE2MjQyMDI3MjNcXG4gIC4wMDYwNDg4MzMwMjI4NTcwNTRcXG4gIC4wMDY1MTIwOTA3OTI1OTQ0NzVcXG4gIC4wMDY5OTU0MTAxODcyNjUzODdcXG4gIC4wMDc0OTkwMzIwNDMyMjYxNzVcXG4gIC4wMDgwMjMxOTI5ODUzODQ5OTRcXG4gIC4wMDg1NjgxMjU2MTgwNjkzMDdcXG4gIC4wMDkxMzQwNTg3MDIyMjA3ODdcXG4gIC4wMDk3MjEyMTczMjAyMzc4NVxcbiAgLjAxMDMyOTgyMzAyOTYyNjkzNlxcbiAgLjAxMDk2MDA5NDAwNjQ4ODI0NlxcbiAgLjAxMTYxMjI0NTE3OTc0Mzg4NVxcbiAgLjAxMjI4NjQ4ODM1NjkxNTg3MlxcbiAgLjAxMjk4MzAzMjM0MjE3MzAxMlxcbiAgLjAxMzcwMjA4MzA0NzI4OTY4NlxcbiAgLjAxNDQ0Mzg0MzU5NjA5MjU0NVxcbiAgLjAxNTIwODUxNDQyMjkxMjcxXFxuICAuMDE1OTk2MjkzMzY1NTA5NjNcXG4gIC4wMTY4MDczNzU3NTI4ODczODRcXG4gIC4wMTc2NDE5NTQ0ODgzODQwNzhcXG4gIC4wMTg1MDAyMjAxMjgzNzk2OTdcXG4gIC4wMTkzODIzNjA5NTY5MzU3MjNcXG4gIC4wMjAyODg1NjMwNTY2NTI0XFxuICAuMDIxMjE5MDEwMzc2MDAzNTU1XFxuICAuMDIyMTczODg0NzkzMzg3Mzg1XFxuICAuMDIzMTUzMzY2MTc4MTEwNDFcXG4gIC4wMjQxNTc2MzI0NDg1MDQ3NTZcXG4gIC4wMjUxODY4NTk2MjczNjE2M1xcbiAgLjAyNjI0MTIyMTg5NDg0OTg5OFxcbiAgLjAyNzMyMDg5MTYzOTA3NDg5NFxcbiAgLjAyODQyNjAzOTUwNDQyMDc5M1xcbiAgLjAyOTU1NjgzNDQzNzgwODhcXG4gIC4wMzA3MTM0NDM3MzI5OTM2MzVcXG4gIC4wMzE4OTYwMzMwNzMwMTE1M1xcbiAgLjAzMzEwNDc2NjU3MDg4NTA1NVxcbiAgLjAzNDMzOTgwNjgwODY4MjE3XFxuICAuMDM1NjAxMzE0ODc1MDIwMzRcXG4gIC4wMzY4ODk0NTA0MDExMDAwNFxcbiAgLjAzODIwNDM3MTU5NTM0NjVcXG4gIC4wMzk1NDYyMzUyNzY3MzI4NFxcbiAgLjA0MDkxNTE5NjkwNjg1MzE5XFxuICAuMDQyMzExNDEwNjIwODA5Njc1XFxuICAuMDQzNzM1MDI5MjU2OTczNDY1XFxuICAuMDQ1MTg2MjA0Mzg1Njc1NTRcXG4gIC4wNDY2NjUwODYzMzY4ODAwOTVcXG4gIC4wNDgxNzE4MjQyMjY4ODk0MlxcbiAgLjA0OTcwNjU2NTk4NDEyNzIzXFxuICAuMDUxMjY5NDU4Mzc0MDQzMjRcXG4gIC4wNTI4NjA2NDcwMjMxODAyNDZcXG4gIC4wNTQ0ODAyNzY0NDI0NDIzN1xcbiAgLjA1NjEyODQ5MDA0OTYwMDA5XFxuICAuMDU3ODA1NDMwMTkxMDY3MjNcXG4gIC4wNTk1MTEyMzgxNjI5ODEyXFxuICAuMDYxMjQ2MDU0MjMxNjE3NjFcXG4gIC4wNjMwMTAwMTc2NTMxNjc2N1xcbiAgLjA2NDgwMzI2NjY5MjkwNTc3XFxuICAuMDY2NjI1OTM4NjQzNzcyODlcXG4gIC4wNjg0NzgxNjk4NDQ0MDAxN1xcbiAgLjA3MDM2MDA5NTY5NjU5NTg4XFxuICAuMDcyMjcxODUwNjgyMzE3NDhcXG4gIC4wNzQyMTM1NjgzODAxNDk2M1xcbiAgLjA3NjE4NTM4MTQ4MTMwNzg1XFxuICAuMDc4MTg3NDIxODA1MTg2MzNcXG4gIC4wODAyMTk4MjAzMTQ0NjgzMlxcbiAgLjA4MjI4MjcwNzEyOTgxNDhcXG4gIC4wODQzNzYyMTE1NDQxNDg4MlxcbiAgLjA4NjUwMDQ2MjAzNjU0OTc2XFxuICAuMDg4NjU1NTg2Mjg1NzcyOTRcXG4gIC4wOTA4NDE3MTExODM0MDc2OFxcbiAgLjA5MzA1ODk2Mjg0NjY4NzQ1XFxuICAuMDk1MzA3NDY2NjMwOTY0N1xcbiAgLjA5NzU4NzM0NzE0MTg2MjQ2XFxuICAuMDk5ODk4NzI4MjQ3MTEzODlcXG4gIC4xMDIyNDE3MzMwODgxMDEzMlxcbiAgLjEwNDYxNjQ4NDA5MTEwNDE5XFxuICAuMTA3MDIzMTAyOTc4MjY3NjFcXG4gIC4xMDk0NjE3MTA3NzgyOTkzM1xcbiAgLjExMTkzMjQyNzgzNjkwNTZcXG4gIC4xMTQ0MzUzNzM4MjY5NzM3M1xcbiAgLjExNjk3MDY2Nzc1ODUxMDg0XFxuICAuMTE5NTM4NDI3OTg4MzQ1NjJcXG4gIC4xMjIxMzg3NzIyMjk2MDE4N1xcbiAgLjEyNDc3MTgxNzU2MDk1MDQ5XFxuICAuMTI3NDM3NjgwNDM1NjQ3NDNcXG4gIC4xMzAxMzY0NzY2OTAzNjQzXFxuICAuMTMyODY4MzIxNTUzODE3OThcXG4gIC4xMzU2MzMzMjk2NTUyMDU2NlxcbiAgLjEzODQzMTYxNTAzMjQ1MTgzXFxuICAuMTQxMjYzMjkxMTQwMjcxNjRcXG4gIC4xNDQxMjg0NzA4NTgwNTc3N1xcbiAgLjE0NzAyNzI2NjQ5NzU5NDk4XFxuICAuMTQ5OTU5Nzg5ODEwNjA4NTZcXG4gIC4xNTI5MjYxNTE5OTYxNTAxN1xcbiAgLjE1NTkyNjQ2MzcwNzgyNzRcXG4gIC4xNTg5NjA4MzUwNjA4ODA0XFxuICAuMTYyMDI5Mzc1NjM5MTExXFxuICAuMTY1MTMyMTk0NTAxNjY3NlxcbiAgLjE2ODI2OTQwMDE4OTY5MDc1XFxuICAuMTcxNDQxMTAwNzMyODIyNlxcbiAgLjE3NDY0NzQwMzY1NTU4NTA0XFxuICAuMTc3ODg4NDE1OTgzNjI5MTJcXG4gIC4xODExNjQyNDQyNDk4NjAyMlxcbiAgLjE4NDQ3NDk5NDUwMDQ0MVxcbiAgLjE4NzgyMDc3MjMwMDY3Nzg3XFxuICAuMTkxMjAxNjgyNzQwNzkxMzhcXG4gIC4xOTQ2MTc4MzA0NDE1NzU4XFxuICAuMTk4MDY5MzE5NTU5OTQ4ODZcXG4gIC4yMDE1NTYyNTM3OTQzOTcwN1xcbiAgLjIwNTA3ODczNjM5MDMxNjkzXFxuICAuMjA4NjM2ODcwMTQ1MjU1NzVcXG4gIC4yMTIyMzA3NTc0MTQwNTUyM1xcbiAgLjIxNTg2MDUwMDExMzg5OTI2XFxuICAuMjE5NTI2MTk5NzI5MjY5MlxcbiAgLjIyMzIyNzk1NzMxNjgwODVcXG4gIC4yMjY5NjU4NzM1MTAwOTgzNlxcbiAgLjIzMDc0MDA0ODUyNDM0OTE1XFxuICAuMjM0NTUwNTgyMTYxMDA1MjJcXG4gIC4yMzgzOTc1NzM4MTIyNzFcXG4gIC4yNDIyODExMjI0NjU1NTQ4NlxcbiAgLjI0NjIwMTMyNjcwNzgzNTQ4XFxuICAuMjUwMTU4Mjg0NzI5OTUzNDRcXG4gIC4yNTQxNTIwOTQzMzA4MjY3NVxcbiAgLjI1ODE4Mjg1MjkyMTU5NThcXG4gIC4yNjIyNTA2NTc1Mjk2OTYyM1xcbiAgLjI2NjM1NTYwNDgwMjg2MjQ3XFxuICAuMjcwNDk3NzkxMDEzMDY1OFxcbiAgLjI3NDY3NzMxMjA2MDM4NDY1XFxuICAuMjc4ODk0MjYzNDc2ODEwNFxcbiAgLjI4MzE0ODc0MDQyOTk5MjFcXG4gIC4yODc0NDA4Mzc3MjY5MTc1XFxuICAuMjkxNzcwNjQ5ODE3NTM1ODdcXG4gIC4yOTYxMzgyNzA3OTgzMjExXFxuICAuMzAwNTQzNzk0NDE1Nzc2NVxcbiAgLjMwNDk4NzMxNDA2OTg4NjNcXG4gIC4zMDk0Njg5MjI4MTc1MDg1NFxcbiAgLjMxMzk4ODcxMzM3NTcxNzU0XFxuICAuMzE4NTQ2Nzc4MTI1MDkxODZcXG4gIC4zMjMxNDMyMDkxMTI5NTA3NVxcbiAgLjMyNzc3ODA5ODA1NjU0MjJcXG4gIC4zMzI0NTE1MzYzNDYxNzkzNVxcbiAgLjMzNzE2MzYxNTA0ODMzMDM3XFxuICAuMzQxOTE0NDI0OTA4NjYwOVxcbiAgLjM0NjcwNDA1NjM1NTAyOTZcXG4gIC4zNTE1MzI1OTk1MDA0MzkzNlxcbiAgLjM1NjQwMDE0NDE0NTk0MzVcXG4gIC4zNjEzMDY3Nzk3ODM1MDk1XFxuICAuMzY2MjUyNTk1NTk4ODM5NVxcbiAgLjM3MTIzNzY4MDQ3NDE0OTFcXG4gIC4zNzYyNjIxMjI5OTA5MDY1XFxuICAuMzgxMzI2MDExNDMyNTMwMTRcXG4gIC4zODY0Mjk0MzM3ODcwNDlcXG4gIC4zOTE1NzI0Nzc3NDk3MjMyNlxcbiAgLjM5Njc1NTIzMDcyNTYyNjg1XFxuICAuNDAxOTc3Nzc5ODMyMTk1OFxcbiAgLjQwNzI0MDIxMTkwMTczNjdcXG4gIC40MTI1NDI2MTM0ODM5MDM3NVxcbiAgLjQxNzg4NTA3MDg0ODEzNzVcXG4gIC40MjMyNjc2Njk5ODYwNzE3XFxuICAuNDI4NjkwNDk2NjEzOTA2NlxcbiAgLjQzNDE1MzYzNjE3NDc0ODk1XFxuICAuNDM5NjU3MTczODQwOTE4OFxcbiAgLjQ0NTIwMTE5NDUxNjIyNzg2XFxuICAuNDUwNzg1NzgyODM4MjIzNDZcXG4gIC40NTY0MTEwMjMxODA0MDQ2NlxcbiAgLjQ2MjA3Njk5OTY1NDQwNzFcXG4gIC40Njc3ODM3OTYxMTIxNTlcXG4gIC40NzM1MzE0OTYxNDgwMDk1NVxcbiAgLjQ3OTMyMDE4MzEwMDgyNjhcXG4gIC40ODUxNDk5NDAwNTYwNzA0XFxuICAuNDkxMDIwODQ5ODQ3ODM1NlxcbiAgLjQ5NjkzMjk5NTA2MDg3MDRcXG4gIC41MDI4ODY0NTgwMzI1Njg3XFxuICAuNTA4ODgxMzIwODU0OTMzOFxcbiAgLjUxNDkxNzY2NTM3NjUyMTRcXG4gIC41MjA5OTU1NzMyMDQzNTQzXFxuICAuNTI3MTE1MTI1NzA1ODEzMVxcbiAgLjUzMzI3NjQwNDAxMDUwNTJcXG4gIC41Mzk0Nzk0ODkwMTIxMDcyXFxuICAuNTQ1NzI0NDYxMzcwMTg2NlxcbiAgLjU1MjAxMTQwMTUxMjAwMDFcXG4gIC41NTgzNDAzODk2MzQyNjc5XFxuICAuNTY0NzExNTA1NzA0OTI5MlxcbiAgLjU3MTEyNDgyOTQ2NDg3MzFcXG4gIC41Nzc1ODA0NDA0Mjk2NTA2XFxuICAuNTg0MDc4NDE3ODkxMTY0MVxcbiAgLjU5MDYxODg0MDkxOTMzNjlcXG4gIC41OTcyMDE3ODgzNjM3NjM0XFxuICAuNjAzODI3MzM4ODU1MzM3OFxcbiAgLjYxMDQ5NTU3MDgwNzg2NDhcXG4gIC42MTcyMDY1NjI0MTk2NTExXFxuICAuNjIzOTYwMzkxNjc1MDc2MVxcbiAgLjYzMDc1NzEzNjM0NjE0NjhcXG4gIC42Mzc1OTY4NzM5OTQwMzI2XFxuICAuNjQ0NDc5NjgxOTcwNTgyMVxcbiAgLjY1MTQwNTYzNzQxOTgyNDJcXG4gIC42NTgzNzQ4MTcyNzk0NDg1XFxuICAuNjY1Mzg3Mjk4MjgyMjcyXFxuICAuNjcyNDQzMTU2OTU3Njg3NVxcbiAgLjY3OTU0MjQ2OTYzMzA5MzhcXG4gIC42ODY2ODUzMTI0MzUzMTM1XFxuICAuNjkzODcxNzYxMjkxOTg5OVxcbiAgLjcwMTEwMTg5MTkzMjk3MzFcXG4gIC43MDgzNzU3Nzk4OTE2ODY4XFxuICAuNzE1NjkzNTAwNTA2NDgwN1xcbiAgLjcyMzA1NTEyODkyMTk2OTNcXG4gIC43MzA0NjA3NDAwOTAzNTM3XFxuICAuNzM3OTEwNDA4NzcyNzMwOFxcbiAgLjc0NTQwNDIwOTU0MDM4NzRcXG4gIC43NTI5NDIyMTY3NzYwNzc5XFxuICAuNzYwNTI0NTA0Njc1MjkyNFxcbiAgLjc2ODE1MTE0NzI0NzUwN1xcbiAgLjc3NTgyMjIxODMxNzQyMzZcXG4gIC43ODM1Mzc3OTE1MjYxOTM1XFxuICAuNzkxMjk3OTQwMzMyNjMwMlxcbiAgLjc5OTEwMjczODAxNDQwOVxcbiAgLjgwNjk1MjI1NzY2OTI1MTZcXG4gIC44MTQ4NDY1NzIyMTYxMDEyXFxuICAuODIyNzg1NzU0Mzk2MjgzNVxcbiAgLjgzMDc2OTg3Njc3NDY1NDZcXG4gIC44Mzg3OTkwMTE3NDA3NFxcbiAgLjg0Njg3MzIzMTUwOTg1OFxcbiAgLjg1NDk5MjYwODEyNDIzMzhcXG4gIC44NjMxNTcyMTM0NTQxMDIzXFxuICAuODcxMzY3MTE5MTk4Nzk3MlxcbiAgLjg3OTYyMjM5Njg4NzgzMTdcXG4gIC44ODc5MjMxMTc4ODE5NjYzXFxuICAuODk2MjY5MzUzMzc0MjY2NFxcbiAgLjkwNDY2MTE3NDM5MTE0OTZcXG4gIC45MTMwOTg2NTE3OTM0MTkyXFxuICAuOTIxNTgxODU2Mjc3Mjk0NlxcbiAgLjkzMDExMDg1ODM3NTQyMzdcXG4gIC45Mzg2ODU3Mjg0NTc4ODhcXG4gIC45NDczMDY1MzY3MzMxOTk5XFxuICAuOTU1OTczMzUzMjQ5Mjg2MVxcbiAgLjk2NDY4NjI0Nzg5NDQ2NTFcXG4gIC45NzM0NDUyOTAzOTg0MTI1XFxuICAuOTgyMjUwNTUwMzMzMTE3MVxcbiAgLjk5MTEwMjA5NzExMzgyOThcXG4gIDE7XFxuXFxuXFxuLyoqXFxuICogQ2FsY3VsYXRlIHRoZSBsdW1pbmFuY2UgZm9yIGEgY29sb3IuXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvciDigJTigIogVGhlIGNvbG9yIHRvIGJlIGFuYWx5c2VkXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWNoZWNrLWx1bWluYW5jZSgkY29sb3IpIHtcXG4gICRyZWQ6IG50aCgkbWQtbGluZWFyLWNoYW5uZWwtdmFsdWVzLCByZWQoJGNvbG9yKSArIDEpO1xcbiAgJGdyZWVuOiBudGgoJG1kLWxpbmVhci1jaGFubmVsLXZhbHVlcywgZ3JlZW4oJGNvbG9yKSArIDEpO1xcbiAgJGJsdWU6IG50aCgkbWQtbGluZWFyLWNoYW5uZWwtdmFsdWVzLCBibHVlKCRjb2xvcikgKyAxKTtcXG5cXG4gIEByZXR1cm4gLjIxMjYgKiAkcmVkICsgLjcxNTIgKiAkZ3JlZW4gKyAuMDcyMiAqICRibHVlO1xcbn1cXG5cXG5cXG4vKipcXG4gKiBDYWxjdWxhdGUgdGhlIGNvbnRyYXN0IHJhdGlvIGJldHdlZW4gdHdvIGNvbG9ycy5cXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJnIOKAlOKAiiBUaGUgYmcgY29sb3JcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGZnIOKAlOKAiiBUaGUgZmcgY29sb3IgdG8gYmUgY29tcGFyZWRcXG4gKi9cXG5cXG5AZnVuY3Rpb24gbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRiZywgJGZnKSB7XFxuICAkYmdMdW06IG1kLWNoZWNrLWx1bWluYW5jZSgkYmcpICsgLjI7XFxuICAkZmdMdW06IG1kLWNoZWNrLWx1bWluYW5jZSgkZmcpICsgLjI7XFxuXFxuICBAcmV0dXJuIG1heCgkYmdMdW0sICRmZ0x1bSkgLyBtaW4oJGJnTHVtLCAkZmdMdW0pO1xcbn1cXG5cXG5cXG4vKipcXG4gKiBEZXRlcm1pbmUgd2hldGhlciB0byB1c2UgZGFyayBvciBsaWdodCB0ZXh0IG9uIHRvcCBvZiBnaXZlbiBjb2xvci5cXG4gKiBSZXR1cm5zIGRhcmsgb3IgbGlnaHQgZGVwZW5kaW5nIG9uIHRoZSBjb250cmFzdCByYXRpby5cXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC1waWNrLWNvbnRyYXN0KCRjb2xvcikge1xcbiAgJGxpZ2h0Q29sb3I6IG1hcC1nZXQobWFwLWdldCgkbWQtY29sb3ItbGV2ZWxzLCBkYXJrKSwgdGV4dC1wcmltYXJ5KTtcXG4gICRsaWdodENvbnRyYXN0OiBtZC1jYWxjdWxhdGUtY29udHJhc3QoJGNvbG9yLCAkbGlnaHRDb2xvcik7XFxuICAkZGFya0NvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgbGlnaHQpLCB0ZXh0LXByaW1hcnkpO1xcbiAgJGRhcmtDb250cmFzdDogbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRjb2xvciwgJGRhcmtDb2xvcik7XFxuXFxuICBAaWYgKCRsaWdodENvbnRyYXN0ID4gJGRhcmtDb250cmFzdCkge1xcbiAgICBAcmV0dXJuIFxcXCJkYXJrXFxcIjtcXG4gIH1cXG5cXG4gIEByZXR1cm4gXFxcImxpZ2h0XFxcIjtcXG59XFxuXCIsXCJAaW1wb3J0ICcuLi9iYXNlL3RoZW1lLnNjc3MnO1xcblxcbi8qKlxcbiAqIE92ZXJyaWRlIGV4dGVuZGluZyB0aGUgZGVmYXVsdCBwYWxldHRlIGdpdmluZyBuZXcgdmFsdWVzLiBJdCB3aWxsIGV4dGVuZFxcbiAqIHRoZSBkZWZhdWx0IHZhbHVlcyBvZiB0aGUgcGFsZXR0ZSBpZiBoYXMgYSBwcm9wZXJ0eSBtaXNzaW5nLlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiBAaW5jbHVkZSBtZC1vdmVycmlkZS1wYWxldHRlICgoXFxuICogICBhY2NlbnQ6IGJsdWUsXFxuICogICB0aGVtZTogXFxcImRhcmtcXFwiXFxuICogKSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIOKAlOKAiiBUaGUgbmV3IHBhbGV0dGVcXG4gKi9cXG5cXG5AbWl4aW4gbWQtb3ZlcnJpZGUtcGFsZXR0ZSAoJHBhbGV0dGUpIHtcXG4gICRtZC1kZWZhdWx0LXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtZGVmYXVsdC1wYWxldHRlLCAkcGFsZXR0ZSkgIWdsb2JhbDtcXG59XFxuXFxuXFxuLyoqXFxuICogQ3JlYXRlIGEgbmV3IHRoZW1lIGJhc2VkIG9uIGEgZ2l2ZW4gcGFsZXR0ZS4gSXQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHRcXG4gKiB2YWx1ZXMgb2YgdGhlIHBhbGV0dGUgaWYgaGFzIGEgcHJvcGVydHkgbWlzc2luZy5cXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogQGluY2x1ZGUgbWQtcmVnaXN0ZXItdGhlbWUoXFxcImFsdGVybmF0aXZlXFxcIiwgKFxcbiAqICAgcHJpbWFyeTogIzIxMjEyMSxcXG4gKiAgIGFjY2VudDogI0NEREMzOSxcXG4gKiAgIHRoZW1lOiBkYXJrXFxuICogKSk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkbmFtZSDigJTigIogVGhlIHRoZW1lIG5hbWUgdG8gYmUgdXNlZCB3aXRoIHRoZSBWdWUgTWF0ZXJpYWxcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUgWyRtZC1kZWZhdWx0LXBhbGV0dGVdIOKAlOKAiiBUaGUgdGhlbWUgcGFsZXR0ZVxcbiAqL1xcblxcbkBtaXhpbiBtZC1yZWdpc3Rlci10aGVtZSAoJG5hbWUsICRwYWxldHRlOiAkbWQtZGVmYXVsdC1wYWxldHRlKSB7XFxuICAkcGFsZXR0ZTogbWFwLW1lcmdlKCRtZC1kZWZhdWx0LXBhbGV0dGUsICRwYWxldHRlKTtcXG4gICR0aGVtZTogbWFwLW1lcmdlKCRtZC10aGVtZXMsIChcXG4gICAgI3skbmFtZX06ICRwYWxldHRlXFxuICApKTtcXG5cXG4gIDpyb290IHtcXG4gICAgQGVhY2ggJHR5cGUsICR2YWx1ZSBpbiAkcGFsZXR0ZSB7XFxuICAgICAgLS1tZC10aGVtZS0jeyRuYW1lfS0jeyR0eXBlfTogJHZhbHVlXFxuICAgIH1cXG4gIH1cXG5cXG4gICRtZC10aGVtZXM6ICR0aGVtZSAhZ2xvYmFsO1xcblxcbiAgQGluY2x1ZGUgbWQtYmFzZS10aGVtZTtcXG59XFxuXFxuXFxuLyoqXFxuICogVGhlbWUgcGllY2VzIG9mIGEgZ2l2ZW4gc2NzcyBjb2RlIGZvciBhbGwgcHJlIHJlZ2lzdGVyZWQgdGhlbWVzLlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtYnV0dG9uIHtcXG4gKiAgIG1pbi13aWR0aDogODhweDtcXG4gKiAgIGhlaWdodDogNDBweDtcXG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xcbiAqXFxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgIGJhY2tncm91bmQ6IG1kLXRoZW1lKHByaW1hcnkpO1xcbiAqICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1wcmltYXJ5KTtcXG4gKiAgIH1cXG4gKlxcbiAqICAgJi5tZC1hY2NlbnQge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUoYWNjZW50KTtcXG4gKiAgICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1hY2NlbnQpO1xcbiAqICAgICB9O1xcbiAqICAgfVxcbiAqIH1cXG4gKi9cXG5cXG5AbWl4aW4gbWQtdGhlbWUtY29tcG9uZW50ICgpIHtcXG4gIEBlYWNoICR0aGVtZSwgJHBhbGV0dGUgaW4gJG1kLXRoZW1lcyB7XFxuICAgICRtZC10aGVtZS1wYWxldHRlOiBtYXAtbWVyZ2UoJG1kLXRoZW1lLXBhbGV0dGUsICRwYWxldHRlKSAhZ2xvYmFsO1xcbiAgICAkbWQtY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XFxuXFxuICAgICYubWQtdGhlbWUtI3skdGhlbWV9IHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMgYmFzZWQgb24gcGFyZW50LlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtZm9vIHtcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICB9XFxuICogfVxcbiAqL1xcblxcbkBtaXhpbiBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUgKCkge1xcbiAgQGVhY2ggJHRoZW1lLCAkcGFsZXR0ZSBpbiAkbWQtdGhlbWVzIHtcXG4gICAgJG1kLXRoZW1lLXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtdGhlbWUtcGFsZXR0ZSwgJHBhbGV0dGUpICFnbG9iYWw7XFxuICAgICRtZC1jdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcXG5cXG4gICAgLm1kLXRoZW1lLSN7JHRoZW1lfSAmIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHlcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogLm1kLWJ1dHRvbiB7XFxuICogICBtaW4td2lkdGg6IDg4cHg7XFxuICogICBoZWlnaHQ6IDQwcHg7XFxuICogICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICogICBib3JkZXItcmFkaXVzOiAycHg7XFxuICogICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcXG4gKlxcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICogICB9XFxuICpcXG4gKiAgICYubWQtYWNjZW50IHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIGFjY2VudCk7XFxuICogICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gKiAgICAgfVxcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge251bWJlcn0gJG9wYWNpdHkg4oCU4oCKIFRoZSBvcGFjaXR5IGFtb3VudFxcbiAqL1xcblxcbkBtaXhpbiBtZC10aGVtZS1wcm9wZXJ0eSAoJHByb3BlcnR5LCAkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiLCAkb3BhY2l0eTogXFxcIlxcXCIpIHtcXG4gICR2YWx1ZTogbWQtdGhlbWUoJHR5cGUsICRiYWNrZ3JvdW5kKTtcXG4gICR2YXJpYW50OiBudWxsO1xcblxcbiAgQGlmICRiYWNrZ3JvdW5kICE9IFxcXCJcXFwiIHtcXG4gICAgJHZhcmlhbnQ6IC1vbi0jeyRiYWNrZ3JvdW5kfTtcXG4gIH1cXG5cXG4gIEBpZiAkb3BhY2l0eSAhPSBcXFwiXFxcIiB7XFxuICAgICR2YWx1ZTogcmdiYSgkdmFsdWUsICRvcGFjaXR5KTtcXG4gIH1cXG5cXG4gICN7JHByb3BlcnR5fTogJHZhbHVlO1xcbiAgI3skcHJvcGVydHl9OiB2YXIoLS1tZC10aGVtZS0jeyRtZC1jdXJyZW50LXRoZW1lfS0jeyR0eXBlfSN7JHZhcmlhbnR9LCAkdmFsdWUpO1xcbn1cXG5cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuXFxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5LWRhcmtlbiAoJHByb3BlcnR5LCAkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiLCAkZGFya2VuOiBcXFwiXFxcIikge1xcbiAgJHZhbHVlOiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQpO1xcbiAgJHZhcmlhbnQ6IG51bGw7XFxuXFxuICBAaWYgJGJhY2tncm91bmQgIT0gXFxcIlxcXCIge1xcbiAgICAkdmFyaWFudDogLW9uLSN7JGJhY2tncm91bmR9O1xcbiAgfVxcblxcbiAgQGlmICRkYXJrZW4gIT0gXFxcIlxcXCIge1xcbiAgICAkdmFsdWU6IGRhcmtlbigkdmFsdWUsICRkYXJrZW4pO1xcbiAgfVxcblxcbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XFxuICAjeyRwcm9wZXJ0eX06IHZhcigtLW1kLXRoZW1lLSN7JG1kLWN1cnJlbnQtdGhlbWV9LSN7JHR5cGV9I3skdmFyaWFudH0sICR2YWx1ZSk7XFxufVxcblxcbi8qKlxcbiAqIFRoZW1lIGEgc2luZ2xlIGNzcyBwcm9wZXJ0eSBieVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtYnV0dG9uIHtcXG4gKiAgIG1pbi13aWR0aDogODhweDtcXG4gKiAgIGhlaWdodDogNDBweDtcXG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xcbiAqXFxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLCBncmV5LCAxMDAsIHRvb2xiYXIsIGJhY2tncm91bmQpO1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBBIHZhbGlkIG1hdGVyaWFsIHBhbGV0dGUgY29sb3IgbmFtZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkaHVlIOKAlOKAiiBUaGUgaHVlIGFtb3VudCB0byBnZXQgdGhlIGhleCBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogVGhlIHR5cGUgb2YgdmFyaWFibGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHZhcmlhbnQg4oCU4oCKIFRoZSB0eXBlIG9mIGNvbnN0cmFzdGVkIHZhcmlhYmxlXFxuICovXFxuXFxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZSAoJHByb3BlcnR5LCAkY29sb3IsICRodWUsICR0eXBlLCAkc2Vjb25kYXJ5KSB7XFxuICAkaGV4OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcigkY29sb3IsICRodWUpO1xcbiAgJHZhcmlhbnQ6IG51bGw7XFxuXFxuICBAaWYgJHNlY29uZGFyeSAhPSBcXFwiXFxcIiB7XFxuICAgICR2YXJpYW50OiAtI3skc2Vjb25kYXJ5fTtcXG4gIH1cXG5cXG4gICN7JHByb3BlcnR5fTogJGhleDtcXG4gICN7JHByb3BlcnR5fTogdmFyKC0tbWQtdGhlbWUtI3skbWQtY3VycmVudC10aGVtZX0tI3skdHlwZX0je3ZhcmlhbnR9LCAkaGV4KTtcXG59XFxuXCIsXCJAbWl4aW4gbWQtYmFzZS10aGVtZSAoKSB7XFxuICA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb24ge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUoKSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxuXFxuICBhOm5vdCgubWQtYnV0dG9uKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJjpob3ZlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCwgLjgpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgICAgICY6aG92ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kLCAuOCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICBodG1sIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm1kLWNhcHRpb24sXFxuICAubWQtZGlzcGxheS0xLFxcbiAgLm1kLWRpc3BsYXktMixcXG4gIC5tZC1kaXNwbGF5LTMsXFxuICAubWQtZGlzcGxheS00IHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm1kLXNjcm9sbGJhciB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIsXFxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgc2Nyb2xsYmFyLWJhY2tncm91bmQsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgfVxcblxcbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHNjcm9sbGJhciwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtbGlzdCB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIC5tZC1hdXRvY29tcGxldGUtaXRlbXMge1xcbiAgICAgIC5tZC1oaWdobGlnaHQtdGV4dC1tYXRjaCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1hdXRvY29tcGxldGUtbG9hZGluZyB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXFxcIlxcXCIsIC41NCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWF1dG9jb21wbGV0ZSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtYXV0b2NvbXBsZXRlLWJveCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJi5tZC1mb2N1c2VkIHtcXG4gICAgICAgIGxhYmVsIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC10b29sYmFyICYge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXFxcIlxcXCIsIC4xMik7XFxuXFxuICAgICAgICBsYWJlbCxcXG4gICAgICAgIGlucHV0IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtZm9jdXNlZCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgICBsYWJlbCxcXG4gICAgICAgICAgaW5wdXQge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xcbiAgICAgICAgICB9XFxuXFxuICAgICAgICAgIHN2ZyB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1oaW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50IHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgJjphZnRlciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWJvdHRvbS1jb2xvciwgZGl2aWRlcik7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCJAbWl4aW4gbWQtYXZhdGFyLWljb24tc3BlYyAoJGNvbG9yKSB7XFxuICAmLm1kLWF2YXRhci1pY29uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGNvbG9yKTtcXG5cXG4gICAgLm1kLWljb24ge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRjb2xvcik7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkY29sb3IpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5tZC1hdmF0YXIge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1hdmF0YXItaWNvbi1zcGVjKGljb24tZGlzYWJsZWQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLWF2YXRhci1pY29uLXNwZWMocHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtYXZhdGFyLWljb24tc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWJvdHRvbS1iYXItc3BlYyAoJHByaW1hcnkpIHtcXG4gICYubWQtdHlwZS1maXhlZCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcblxcbiAgICAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgICAubWQtaWNvbiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgJi5tZC10eXBlLXNoaWZ0IHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnkpO1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xcblxcbiAgICA+IC5tZC1yaXBwbGUge1xcbiAgICAgIC5tZC1yaXBwbGUtd2F2ZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1kYXJrZW4oYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnksICRwcmltYXJ5LCAxMCUpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtaWNvbiB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sICRwcmltYXJ5KTtcXG5cXG4gICAgICBzdmcge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgaWNvbiwgJHByaW1hcnkpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSk7XFxuXFxuICAgICAgLm1kLWFjdGl2ZSB7XFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtYm90dG9tLWJhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhwcmltYXJ5KTtcXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWljb24tb24tYnV0dG9ucyAoJHN0YXRlLCAkdHlwZSkge1xcbiAgLm1kLWljb24tZm9udCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkc3RhdGUsICR0eXBlKTtcXG4gIH1cXG5cXG4gIC5tZC1pY29uLWltYWdlIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHN0YXRlLCAkdHlwZSk7XFxuICB9XFxufVxcblxcbi5tZC1idXR0b24ge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnMoYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAmLm1kLXJhaXNlZCB7XFxuICAgICAgJltkaXNhYmxlZF0ge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQtYmFja2dyb3VuZCwgYmFja2dyb3VuZCk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtYWNjZW50IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1mYWIge1xcbiAgICAgICZbZGlzYWJsZWRdIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLWJhY2tncm91bmQsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG5cXG4gICAgICAgICYubWQtcHJpbWFyeSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJltkaXNhYmxlZF0ge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBkaXNhYmxlZCwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKGljb24tZGlzYWJsZWQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWNhcmQoJGJhc2UpIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRiYXNlKTtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRiYXNlKTtcXG5cXG4gIC5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1hY3Rpb25zIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGJhc2UpO1xcbiAgfVxcblxcbiAgLm1kLWNhcmQtaGVhZGVyLFxcbiAgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRiYXNlKTtcXG5cXG4gICAgICAmLm1kLWljb24tYnV0dG9uIHtcXG4gICAgICAgIC5tZC1pY29uIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICA+IC5tZC1jYXJkLWFyZWEge1xcbiAgICAmOmFmdGVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCAkYmFzZSk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWNhcmQge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1jYXJkKGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLWNhcmQocHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLWNhcmQoYWNjZW50KTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jaGVja2JveCB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBhY2NlbnQpO1xcblxcbiAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1yaXBwbGUge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtY2hlY2tlZC5tZC1wcmltYXJ5IHtcXG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJi5tZC1jaGVja2VkIHtcXG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jaGlwIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0KTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSk7XFxuXFxuICAgIC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWRlbGV0YWJsZSxcXG4gICAgJi5tZC1jbGlja2FibGUge1xcbiAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG5cXG4gICAgICAgIC5tZC1pY29uIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kLCAnJywgLjg3KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgICAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sIGJhY2tncm91bmQpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sIGRpc2FibGVkKTtcXG5cXG4gICAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQpO1xcbiAgICAgICAgfSBAZWxzZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLCBkaXNhYmxlZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGVsZXRhYmxlLFxcbiAgICAgICYubWQtY2xpY2thYmxlIHtcXG4gICAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XFxuXFxuICAgICAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsICcnLCAuODcpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuXFxuICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgZGlzYWJsZWQpO1xcblxcbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCk7XFxuICAgICAgICB9IEBlbHNlIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQsIGRpc2FibGVkKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1kZWxldGFibGUsXFxuICAgICAgJi5tZC1jbGlja2FibGUge1xcbiAgICAgICAgJjpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGljb24pO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG5cXG4gICAgICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgJycsIC44Nyk7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0LCAnJywgLjEpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWNoaXBzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgIC5tZC1jbGVhciAge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMik7XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAubWQtY2xlYXIgIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjIpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jb250ZW50IHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLWFwcCAmIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItbGVmdC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtZGF0ZXBpY2tlci1kaWFsb2cge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWhlYWRlciB7XFxuICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICB9IEBlbHNlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtcHJpbWFyeSwgJycsIC4wNik7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXIge1xcbiAgICAgICY6YWZ0ZXIsXFxuICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtZGF0ZXBpY2tlci13ZWVrIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWRpc2FibGVkIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbixcXG4gICAgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uLFxcbiAgICAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbiB7XFxuICAgICAgJjpob3ZlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbiB7XFxuICAgICAgJi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbixcXG4gICAgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ge1xcbiAgICAgICYubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3Ige1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1ib3R0b20tY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLWRyYXdlciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgJi5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1yaWdodC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCJAbWl4aW4gbWQtZW1wdHktc3RhdGUtc3BlYyAoJGNvbG9yKSB7XFxuICAubWQtZW1wdHktc3RhdGUtaWNvbiB7XFxuICAgICYubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICRjb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaWNvbi1mb250IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJGNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtZW1wdHktc3RhdGUge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKGRpc2FibGVkKTtcXG5cXG4gICAgJi5tZC1yb3VuZGVkIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCwgXFxcIlxcXCIsIC4wNik7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKGFjY2VudCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtZmllbGQge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XFxuICAgICAgJjphZnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgfVxcblxcbiAgICAgICY6YmVmb3JlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIH1cXG5cXG4gICAgICAubWQtaGVscGVyLXRleHQsXFxuICAgICAgLm1kLWNvdW50LFxcbiAgICAgIGxhYmVsIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZm9jdXNlZCxcXG4gICAgICAmLm1kLWhhcy12YWx1ZSB7XFxuICAgICAgICAubWQtaW5wdXQsXFxuICAgICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgjMDAwLCAuODcpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmOmJlZm9yZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgcHJpbWFyeSk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGlzYWJsZWQge1xcbiAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgjMDAwLCAuMzgpIDAlLCByZ2JhKCMwMDAsIC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICBsYWJlbCxcXG4gICAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAmOmFmdGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOmJlZm9yZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLWhlbHBlci10ZXh0LFxcbiAgICAgIC5tZC1jb3VudCxcXG4gICAgICBsYWJlbCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgjZmZmLCAuNyk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC43KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1mb2N1c2VkLFxcbiAgICAgICYubWQtaGFzLXZhbHVlIHtcXG4gICAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XFxuICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZmZmO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoI2ZmZiwgLjcpIDAlLCByZ2JhKCNmZmYsIC43KSAzMyUsIHRyYW5zcGFyZW50IDAlKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIGxhYmVsLFxcbiAgICAgICAgLm1kLWlucHV0LFxcbiAgICAgICAgLm1kLXRleHRhcmVhIHtcXG4gICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjUpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICA+IC5tZC1pY29uIHtcXG4gICAgICAmOmFmdGVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaW52YWxpZCB7XFxuICAgICAgJjphZnRlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmJlZm9yZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShib3JkZXItY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgbGFiZWwge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1lcnJvciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLWRhdGUtaWNvbixcXG4gICAgICAubWQtZGF0ZS1pY29uIHN2ZyB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShmaWxsLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtZm9jdXNlZCxcXG4gICAgJi5tZC1oaWdobGlnaHQge1xcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG5cXG4gICAgICA+IC5tZC1pY29uIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWZvY3VzZWQge1xcbiAgICAgIGxhYmVsIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtaWNvbiB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaWNvbi1mb250IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLWxpc3Qge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICYubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMikge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLXRleHQgOm50aC1jaGlsZCgzKSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtaGlnaGxpZ2h0IC5tZC1saXN0LWl0ZW0tY29udGFpbmVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSk6aG92ZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgW2Rpc2FibGVkXSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtc2VsZWN0ZWQsXFxuICAgIC5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUge1xcbiAgICAgIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC1tZW51LWl0ZW0tc3BlYyAoJGNvbG9yKSB7XFxuICAubWQtbGlzdC1pdGVtLWxpbmssXFxuICAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4gIC5tZC1saXN0LWl0ZW0tYnV0dG9uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRjb2xvciwgYmFja2dyb3VuZCk7XFxuICB9XFxufVxcblxcbi5tZC1tZW51LWl0ZW0ge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLW1lbnUtaXRlbS1zcGVjKHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC1tZW51LWl0ZW0tc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLXByb2dyZXNzLWJhci1pbmRldGVybWluYXRlICgkaHVlKSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xcblxcbiAgLm1kLXByb2dyZXNzLWJhci10cmFjayxcXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgICY6YWZ0ZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbkBtaXhpbiBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUgKCRodWUpIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUsIG51bGwsIC4zOCk7XFxuXFxuICAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXByb2dyZXNzLWJhci1idWZmZXIgKCRodWUpIHtcXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUpO1xcbiAgfVxcblxcbiAgLm1kLXByb2dyZXNzLWJhci10cmFjayB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUsIG51bGwsIC4zOCk7XFxuICB9XFxuXFxuICAubWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgJGh1ZSwgbnVsbCwgLjM4KTtcXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXByb2dyZXNzLXNwaW5uZXItc3BlYyAoJGh1ZSkge1xcbiAgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoc3Ryb2tlLCAkaHVlKTtcXG4gIH1cXG59XFxuXFxuLm1kLXByb2dyZXNzLWJhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtaW5kZXRlcm1pbmF0ZSxcXG4gICAgJi5tZC1xdWVyeSB7XFxuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUoYWNjZW50KVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWRldGVybWluYXRlIHtcXG4gICAgICBAaW5jbHVkZSBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWRldGVybWluYXRlKGFjY2VudClcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1idWZmZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1idWZmZXIocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlcihhY2NlbnQpXFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKHByaW1hcnkpO1xcblxcbiAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKGFjY2VudClcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1yYWRpbyB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XFxuXFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50KTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1jaGVja2VkLm1kLXByaW1hcnkge1xcbiAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG5cXG4gICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcblxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJi5tZC1jaGVja2VkIHtcXG4gICAgICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG5cXG4gICAgICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zbmFja2JhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xcbiAgICB9IEBlbHNlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLXN0ZXBwZXJzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcblxcbiAgICAubWQtc3RlcHBlci1pY29uLFxcbiAgICAubWQtc3RlcHBlci1udW1iZXIsXFxuICAgIC5tZC1zdGVwcGVyIHtcXG4gICAgICAmOmFmdGVyLFxcbiAgICAgICY6YmVmb3JlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG5cXG4gICAgICBzdmcge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLXN0ZXBwZXItaGVhZGVyIHtcXG4gICAgICAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgICAmOmFmdGVyLFxcbiAgICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1hY3RpdmUsXFxuICAgICAgJi5tZC1kb25lIHtcXG4gICAgICAgIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAgICAgICBzdmcge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1lcnJvciB7XFxuICAgICAgICAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIHN0ZXBwZXIsIGVycm9yKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGZpbGwsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zdWJoZWFkZXIge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zd2l0Y2gge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAmLm1kLWNoZWNrZWQge1xcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgbnVsbCwgLjM4KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAubWQtcmlwcGxlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWNoZWNrZWQubWQtcHJpbWFyeSB7XFxuICAgICAgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgbnVsbCwgLjM4KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4zOCk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDEwMCwgc3dpdGNoLCB0aHVtYik7XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGlzYWJsZWQge1xcbiAgICAgICAgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4xMik7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtc3dpdGNoLXRodW1iIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDQwMCwgc3dpdGNoLCB0aHVtYik7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgNDAwLCBzd2l0Y2gsIHRodW1iKTtcXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjEpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA4MDAsIHN3aXRjaCwgdGh1bWIpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC10YWJsZSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIC5tZC10YWJsZS1jb250ZW50LFxcbiAgICAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIgLm1kLXRhYmxlLXRvb2xiYXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgbnVsbCwgLjIpO1xcbiAgICB9XFxuXFxuICAgIC5tZC10YWJsZS1yb3cge1xcbiAgICAgICY6aG92ZXI6bm90KC5tZC1oZWFkZXItcm93KSAubWQtdGFibGUtY2VsbCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBoaWdobGlnaHQsIGJhY2tncm91bmQsIC4wOCk7XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtc2VsZWN0ZWQsXFxuICAgICAgJi5tZC1zZWxlY3RlZC1zaW5nbGUge1xcbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgMTAwLCByb3csIGJhY2tncm91bmQpO1xcbiAgICAgICAgfSBAZWxzZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA3MDAsIHJvdywgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuXFxuICAgICAgICAgIC5tZC1yaXBwbGUge1xcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgICAgICB9XFxuXFxuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcblxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtYWNjZW50IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG5cXG4gICAgICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XFxuICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxuXFxuICAgICAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIHRkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci10b3AtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtdGFibGUtaGVhZCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtdGFibGUtZml4ZWQtaGVhZGVyLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWJvdHRvbS1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLXNvcnRhYmxlIHtcXG4gICAgICAmOmhvdmVyLFxcbiAgICAgICYubWQtc29ydGVkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC10YWJsZS1wYWdpbmF0aW9uIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItdG9wLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC10YWJzLXNwZWMgKCRwcmltYXJ5LCAkaW5kaWNhdG9yLCAkdGV4dCkge1xcbiAgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgLm1kLWJ1dHRvbiB7XFxuICAgICAgQGlmICR0ZXh0ID09IHRleHQtcHJpbWFyeSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuNyk7XFxuXFxuICAgICAgICAmW2Rpc2FibGVkXSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC4zOCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC43KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnksIC43KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC43KTtcXG5cXG4gICAgICAgICZbZGlzYWJsZWRdIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC4zOCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XFxuXFxuICAgICAgICAgIHN2ZyB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtYWN0aXZlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnkpO1xcblxcbiAgICAgICAgLm1kLWljb24ge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnkpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaW5kaWNhdG9yLCAkcHJpbWFyeSk7XFxuICB9XFxufVxcblxcbi5tZC10YWJzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGFicy1zcGVjKGJhY2tncm91bmQsIHByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhwcmltYXJ5LCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhhY2NlbnQsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC10b29sYmFyLWljb24oJHByaW1hcnksICRzZWNvbmRhcnkpIHtcXG4gIC5tZC1pY29uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcXG5cXG4gICAgc3ZnIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXRvb2xiYXItYnV0dG9uKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XFxuICAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICY6bm90KC5tZC1yYWlzZWQpIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksICRzZWNvbmRhcnkpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbkBtaXhpbiBtZC10b29sYmFyLXRpdGxlKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XFxuICAubWQtdGl0bGUsXFxuICAubWQtZGlzcGxheS0xLFxcbiAgLm1kLWRpc3BsYXktMiB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XFxuICB9XFxufVxcblxcbi5tZC10b29sYmFyIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG5cXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCAxMDAsIHRvb2xiYXIsIGJhY2tncm91bmQpO1xcbiAgICB9IEBlbHNlIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgOTAwLCB0b29sYmFyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xcbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLXRpdGxlKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWJ1dHRvbih0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgfVxcblxcbiAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItaWNvbih0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1idXR0b24odGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICB9XFxuXFxuICAgICYubWQtdHJhbnNwYXJlbnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItaWNvbih0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0xIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2xpYi9sb2FkZXIuanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MSEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=1!./src/App.vue\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nhtml {\\n height: 100%;\\n}\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 1px solid black;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.css\"],\"names\":[],\"mappings\":\";AAEA;EACE,aAAa;CACd;AAED;CACC,UAAU;CACV;AAED;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons\\\";\\n\\nhtml {\\n height: 100%;\\n}\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 1px solid black;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsNTAwLDcwMCw0MDBpdGFsaWN8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuaHRtbCB7XFxuICBoZWlnaHQ6IDEwMCU7XFxufVxcbmJvZHkge1xcblxcdG1hcmdpbjogMDtcXG59XFxuI2FwcCB7XFxuXFx0Zm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiO1xcbn1cXG4uYm94IHtcXG5cXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBRUE7RUFDRSxhQUFhO0NBQ2Q7QUFFRDtDQUNDLFVBQVU7Q0FDVjtBQUVEO0NBQ0Msc0JBQXNCO0NBQ3RCO0FBRUQ7Q0FDQyx3QkFBd0I7Q0FDeEJcIixcImZpbGVcIjpcIkFwcC52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiQGltcG9ydCBcXFwiLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsNTAwLDcwMCw0MDBpdGFsaWN8TWF0ZXJpYWwrSWNvbnNcXFwiO1xcblxcbmh0bWwge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbn1cXG5cXG5ib2R5IHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcbiNhcHAge1xcblxcdGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIjtcXG59XFxuXFxuLmJveCB7XFxuXFx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/lib/css-base.js": +/***/ (function(module, exports) { + +eval("/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanM/MTU5ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuXHRNSVQgTGljZW5zZSBodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocFxuXHRBdXRob3IgVG9iaWFzIEtvcHBlcnMgQHNva3JhXG4qL1xuLy8gY3NzIGJhc2UgY29kZSwgaW5qZWN0ZWQgYnkgdGhlIGNzcy1sb2FkZXJcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24odXNlU291cmNlTWFwKSB7XG5cdHZhciBsaXN0ID0gW107XG5cblx0Ly8gcmV0dXJuIHRoZSBsaXN0IG9mIG1vZHVsZXMgYXMgY3NzIHN0cmluZ1xuXHRsaXN0LnRvU3RyaW5nID0gZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG5cdFx0cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7XG5cdFx0XHR2YXIgY29udGVudCA9IGNzc1dpdGhNYXBwaW5nVG9TdHJpbmcoaXRlbSwgdXNlU291cmNlTWFwKTtcblx0XHRcdGlmKGl0ZW1bMl0pIHtcblx0XHRcdFx0cmV0dXJuIFwiQG1lZGlhIFwiICsgaXRlbVsyXSArIFwie1wiICsgY29udGVudCArIFwifVwiO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGNvbnRlbnQ7XG5cdFx0XHR9XG5cdFx0fSkuam9pbihcIlwiKTtcblx0fTtcblxuXHQvLyBpbXBvcnQgYSBsaXN0IG9mIG1vZHVsZXMgaW50byB0aGUgbGlzdFxuXHRsaXN0LmkgPSBmdW5jdGlvbihtb2R1bGVzLCBtZWRpYVF1ZXJ5KSB7XG5cdFx0aWYodHlwZW9mIG1vZHVsZXMgPT09IFwic3RyaW5nXCIpXG5cdFx0XHRtb2R1bGVzID0gW1tudWxsLCBtb2R1bGVzLCBcIlwiXV07XG5cdFx0dmFyIGFscmVhZHlJbXBvcnRlZE1vZHVsZXMgPSB7fTtcblx0XHRmb3IodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGlkID0gdGhpc1tpXVswXTtcblx0XHRcdGlmKHR5cGVvZiBpZCA9PT0gXCJudW1iZXJcIilcblx0XHRcdFx0YWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpZF0gPSB0cnVlO1xuXHRcdH1cblx0XHRmb3IoaSA9IDA7IGkgPCBtb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgaXRlbSA9IG1vZHVsZXNbaV07XG5cdFx0XHQvLyBza2lwIGFscmVhZHkgaW1wb3J0ZWQgbW9kdWxlXG5cdFx0XHQvLyB0aGlzIGltcGxlbWVudGF0aW9uIGlzIG5vdCAxMDAlIHBlcmZlY3QgZm9yIHdlaXJkIG1lZGlhIHF1ZXJ5IGNvbWJpbmF0aW9uc1xuXHRcdFx0Ly8gIHdoZW4gYSBtb2R1bGUgaXMgaW1wb3J0ZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBkaWZmZXJlbnQgbWVkaWEgcXVlcmllcy5cblx0XHRcdC8vICBJIGhvcGUgdGhpcyB3aWxsIG5ldmVyIG9jY3VyIChIZXkgdGhpcyB3YXkgd2UgaGF2ZSBzbWFsbGVyIGJ1bmRsZXMpXG5cdFx0XHRpZih0eXBlb2YgaXRlbVswXSAhPT0gXCJudW1iZXJcIiB8fCAhYWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpdGVtWzBdXSkge1xuXHRcdFx0XHRpZihtZWRpYVF1ZXJ5ICYmICFpdGVtWzJdKSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IG1lZGlhUXVlcnk7XG5cdFx0XHRcdH0gZWxzZSBpZihtZWRpYVF1ZXJ5KSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IFwiKFwiICsgaXRlbVsyXSArIFwiKSBhbmQgKFwiICsgbWVkaWFRdWVyeSArIFwiKVwiO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpc3QucHVzaChpdGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdH07XG5cdHJldHVybiBsaXN0O1xufTtcblxuZnVuY3Rpb24gY3NzV2l0aE1hcHBpbmdUb1N0cmluZyhpdGVtLCB1c2VTb3VyY2VNYXApIHtcblx0dmFyIGNvbnRlbnQgPSBpdGVtWzFdIHx8ICcnO1xuXHR2YXIgY3NzTWFwcGluZyA9IGl0ZW1bM107XG5cdGlmICghY3NzTWFwcGluZykge1xuXHRcdHJldHVybiBjb250ZW50O1xuXHR9XG5cblx0aWYgKHVzZVNvdXJjZU1hcCAmJiB0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdHZhciBzb3VyY2VNYXBwaW5nID0gdG9Db21tZW50KGNzc01hcHBpbmcpO1xuXHRcdHZhciBzb3VyY2VVUkxzID0gY3NzTWFwcGluZy5zb3VyY2VzLm1hcChmdW5jdGlvbiAoc291cmNlKSB7XG5cdFx0XHRyZXR1cm4gJy8qIyBzb3VyY2VVUkw9JyArIGNzc01hcHBpbmcuc291cmNlUm9vdCArIHNvdXJjZSArICcgKi8nXG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gW2NvbnRlbnRdLmNvbmNhdChzb3VyY2VVUkxzKS5jb25jYXQoW3NvdXJjZU1hcHBpbmddKS5qb2luKCdcXG4nKTtcblx0fVxuXG5cdHJldHVybiBbY29udGVudF0uam9pbignXFxuJyk7XG59XG5cbi8vIEFkYXB0ZWQgZnJvbSBjb252ZXJ0LXNvdXJjZS1tYXAgKE1JVClcbmZ1bmN0aW9uIHRvQ29tbWVudChzb3VyY2VNYXApIHtcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG5cdHZhciBiYXNlNjQgPSBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpO1xuXHR2YXIgZGF0YSA9ICdzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwnICsgYmFzZTY0O1xuXG5cdHJldHVybiAnLyojICcgKyBkYXRhICsgJyAqLyc7XG59XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/lib/css-base.js\n"); + +/***/ }), + +/***/ "./node_modules/vue-hot-reload-api/dist/index.js": +/***/ (function(module, exports) { + +eval("var Vue // late bind\nvar version\nvar map = (window.__VUE_HOT_MAP__ = Object.create(null))\nvar installed = false\nvar isBrowserify = false\nvar initHookName = 'beforeCreate'\n\nexports.install = function (vue, browserify) {\n if (installed) { return }\n installed = true\n\n Vue = vue.__esModule ? vue.default : vue\n version = Vue.version.split('.').map(Number)\n isBrowserify = browserify\n\n // compat with < 2.0.0-alpha.7\n if (Vue.config._lifecycleHooks.indexOf('init') > -1) {\n initHookName = 'init'\n }\n\n exports.compatible = version[0] >= 2\n if (!exports.compatible) {\n console.warn(\n '[HMR] You are using a version of vue-hot-reload-api that is ' +\n 'only compatible with Vue.js core ^2.0.0.'\n )\n return\n }\n}\n\n/**\n * Create a record for a hot module, which keeps track of its constructor\n * and instances\n *\n * @param {String} id\n * @param {Object} options\n */\n\nexports.createRecord = function (id, options) {\n if(map[id]) { return }\n \n var Ctor = null\n if (typeof options === 'function') {\n Ctor = options\n options = Ctor.options\n }\n makeOptionsHot(id, options)\n map[id] = {\n Ctor: Ctor,\n options: options,\n instances: []\n }\n}\n\n/**\n * Check if module is recorded\n *\n * @param {String} id\n */\n\nexports.isRecorded = function (id) {\n return typeof map[id] !== 'undefined'\n}\n\n/**\n * Make a Component options object hot.\n *\n * @param {String} id\n * @param {Object} options\n */\n\nfunction makeOptionsHot(id, options) {\n if (options.functional) {\n var render = options.render\n options.render = function (h, ctx) {\n var instances = map[id].instances\n if (ctx && instances.indexOf(ctx.parent) < 0) {\n instances.push(ctx.parent)\n }\n return render(h, ctx)\n }\n } else {\n injectHook(options, initHookName, function() {\n var record = map[id]\n if (!record.Ctor) {\n record.Ctor = this.constructor\n }\n record.instances.push(this)\n })\n injectHook(options, 'beforeDestroy', function() {\n var instances = map[id].instances\n instances.splice(instances.indexOf(this), 1)\n })\n }\n}\n\n/**\n * Inject a hook to a hot reloadable component so that\n * we can keep track of it.\n *\n * @param {Object} options\n * @param {String} name\n * @param {Function} hook\n */\n\nfunction injectHook(options, name, hook) {\n var existing = options[name]\n options[name] = existing\n ? Array.isArray(existing) ? existing.concat(hook) : [existing, hook]\n : [hook]\n}\n\nfunction tryWrap(fn) {\n return function (id, arg) {\n try {\n fn(id, arg)\n } catch (e) {\n console.error(e)\n console.warn(\n 'Something went wrong during Vue component hot-reload. Full reload required.'\n )\n }\n }\n}\n\nfunction updateOptions (oldOptions, newOptions) {\n for (var key in oldOptions) {\n if (!(key in newOptions)) {\n delete oldOptions[key]\n }\n }\n for (var key$1 in newOptions) {\n oldOptions[key$1] = newOptions[key$1]\n }\n}\n\nexports.rerender = tryWrap(function (id, options) {\n var record = map[id]\n if (!options) {\n record.instances.slice().forEach(function (instance) {\n instance.$forceUpdate()\n })\n return\n }\n if (typeof options === 'function') {\n options = options.options\n }\n if (record.Ctor) {\n record.Ctor.options.render = options.render\n record.Ctor.options.staticRenderFns = options.staticRenderFns\n record.instances.slice().forEach(function (instance) {\n instance.$options.render = options.render\n instance.$options.staticRenderFns = options.staticRenderFns\n // reset static trees\n // pre 2.5, all static trees are cahced together on the instance\n if (instance._staticTrees) {\n instance._staticTrees = []\n }\n // 2.5.0\n if (Array.isArray(record.Ctor.options.cached)) {\n record.Ctor.options.cached = []\n }\n // 2.5.3\n if (Array.isArray(instance.$options.cached)) {\n instance.$options.cached = []\n }\n // post 2.5.4: v-once trees are cached on instance._staticTrees.\n // Pure static trees are cached on the staticRenderFns array\n // (both already reset above)\n instance.$forceUpdate()\n })\n } else {\n // functional or no instance created yet\n record.options.render = options.render\n record.options.staticRenderFns = options.staticRenderFns\n\n // handle functional component re-render\n if (record.options.functional) {\n // rerender with full options\n if (Object.keys(options).length > 2) {\n updateOptions(record.options, options)\n } else {\n // template-only rerender.\n // need to inject the style injection code for CSS modules\n // to work properly.\n var injectStyles = record.options._injectStyles\n if (injectStyles) {\n var render = options.render\n record.options.render = function (h, ctx) {\n injectStyles.call(ctx)\n return render(h, ctx)\n }\n }\n }\n record.options._Ctor = null\n // 2.5.3\n if (Array.isArray(record.options.cached)) {\n record.options.cached = []\n }\n record.instances.slice().forEach(function (instance) {\n instance.$forceUpdate()\n })\n }\n }\n})\n\nexports.reload = tryWrap(function (id, options) {\n var record = map[id]\n if (options) {\n if (typeof options === 'function') {\n options = options.options\n }\n makeOptionsHot(id, options)\n if (record.Ctor) {\n if (version[1] < 2) {\n // preserve pre 2.2 behavior for global mixin handling\n record.Ctor.extendOptions = options\n }\n var newCtor = record.Ctor.super.extend(options)\n record.Ctor.options = newCtor.options\n record.Ctor.cid = newCtor.cid\n record.Ctor.prototype = newCtor.prototype\n if (newCtor.release) {\n // temporary global mixin strategy used in < 2.0.0-alpha.6\n newCtor.release()\n }\n } else {\n updateOptions(record.options, options)\n }\n }\n record.instances.slice().forEach(function (instance) {\n if (instance.$vnode && instance.$vnode.context) {\n instance.$vnode.context.$forceUpdate()\n } else {\n console.warn(\n 'Root or manually mounted instance modified. Full reload required.'\n )\n }\n })\n})\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanM/NzM3ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgVnVlIC8vIGxhdGUgYmluZFxudmFyIHZlcnNpb25cbnZhciBtYXAgPSAod2luZG93Ll9fVlVFX0hPVF9NQVBfXyA9IE9iamVjdC5jcmVhdGUobnVsbCkpXG52YXIgaW5zdGFsbGVkID0gZmFsc2VcbnZhciBpc0Jyb3dzZXJpZnkgPSBmYWxzZVxudmFyIGluaXRIb29rTmFtZSA9ICdiZWZvcmVDcmVhdGUnXG5cbmV4cG9ydHMuaW5zdGFsbCA9IGZ1bmN0aW9uICh2dWUsIGJyb3dzZXJpZnkpIHtcbiAgaWYgKGluc3RhbGxlZCkgeyByZXR1cm4gfVxuICBpbnN0YWxsZWQgPSB0cnVlXG5cbiAgVnVlID0gdnVlLl9fZXNNb2R1bGUgPyB2dWUuZGVmYXVsdCA6IHZ1ZVxuICB2ZXJzaW9uID0gVnVlLnZlcnNpb24uc3BsaXQoJy4nKS5tYXAoTnVtYmVyKVxuICBpc0Jyb3dzZXJpZnkgPSBicm93c2VyaWZ5XG5cbiAgLy8gY29tcGF0IHdpdGggPCAyLjAuMC1hbHBoYS43XG4gIGlmIChWdWUuY29uZmlnLl9saWZlY3ljbGVIb29rcy5pbmRleE9mKCdpbml0JykgPiAtMSkge1xuICAgIGluaXRIb29rTmFtZSA9ICdpbml0J1xuICB9XG5cbiAgZXhwb3J0cy5jb21wYXRpYmxlID0gdmVyc2lvblswXSA+PSAyXG4gIGlmICghZXhwb3J0cy5jb21wYXRpYmxlKSB7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ1tITVJdIFlvdSBhcmUgdXNpbmcgYSB2ZXJzaW9uIG9mIHZ1ZS1ob3QtcmVsb2FkLWFwaSB0aGF0IGlzICcgK1xuICAgICAgICAnb25seSBjb21wYXRpYmxlIHdpdGggVnVlLmpzIGNvcmUgXjIuMC4wLidcbiAgICApXG4gICAgcmV0dXJuXG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGUgYSByZWNvcmQgZm9yIGEgaG90IG1vZHVsZSwgd2hpY2gga2VlcHMgdHJhY2sgb2YgaXRzIGNvbnN0cnVjdG9yXG4gKiBhbmQgaW5zdGFuY2VzXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGlkXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICovXG5cbmV4cG9ydHMuY3JlYXRlUmVjb3JkID0gZnVuY3Rpb24gKGlkLCBvcHRpb25zKSB7XG4gIGlmKG1hcFtpZF0pIHsgcmV0dXJuIH1cbiAgXG4gIHZhciBDdG9yID0gbnVsbFxuICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBDdG9yID0gb3B0aW9uc1xuICAgIG9wdGlvbnMgPSBDdG9yLm9wdGlvbnNcbiAgfVxuICBtYWtlT3B0aW9uc0hvdChpZCwgb3B0aW9ucylcbiAgbWFwW2lkXSA9IHtcbiAgICBDdG9yOiBDdG9yLFxuICAgIG9wdGlvbnM6IG9wdGlvbnMsXG4gICAgaW5zdGFuY2VzOiBbXVxuICB9XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgbW9kdWxlIGlzIHJlY29yZGVkXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGlkXG4gKi9cblxuZXhwb3J0cy5pc1JlY29yZGVkID0gZnVuY3Rpb24gKGlkKSB7XG4gIHJldHVybiB0eXBlb2YgbWFwW2lkXSAhPT0gJ3VuZGVmaW5lZCdcbn1cblxuLyoqXG4gKiBNYWtlIGEgQ29tcG9uZW50IG9wdGlvbnMgb2JqZWN0IGhvdC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gKi9cblxuZnVuY3Rpb24gbWFrZU9wdGlvbnNIb3QoaWQsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgIHZhciByZW5kZXIgPSBvcHRpb25zLnJlbmRlclxuICAgIG9wdGlvbnMucmVuZGVyID0gZnVuY3Rpb24gKGgsIGN0eCkge1xuICAgICAgdmFyIGluc3RhbmNlcyA9IG1hcFtpZF0uaW5zdGFuY2VzXG4gICAgICBpZiAoY3R4ICYmIGluc3RhbmNlcy5pbmRleE9mKGN0eC5wYXJlbnQpIDwgMCkge1xuICAgICAgICBpbnN0YW5jZXMucHVzaChjdHgucGFyZW50KVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJlbmRlcihoLCBjdHgpXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGluamVjdEhvb2sob3B0aW9ucywgaW5pdEhvb2tOYW1lLCBmdW5jdGlvbigpIHtcbiAgICAgIHZhciByZWNvcmQgPSBtYXBbaWRdXG4gICAgICBpZiAoIXJlY29yZC5DdG9yKSB7XG4gICAgICAgIHJlY29yZC5DdG9yID0gdGhpcy5jb25zdHJ1Y3RvclxuICAgICAgfVxuICAgICAgcmVjb3JkLmluc3RhbmNlcy5wdXNoKHRoaXMpXG4gICAgfSlcbiAgICBpbmplY3RIb29rKG9wdGlvbnMsICdiZWZvcmVEZXN0cm95JywgZnVuY3Rpb24oKSB7XG4gICAgICB2YXIgaW5zdGFuY2VzID0gbWFwW2lkXS5pbnN0YW5jZXNcbiAgICAgIGluc3RhbmNlcy5zcGxpY2UoaW5zdGFuY2VzLmluZGV4T2YodGhpcyksIDEpXG4gICAgfSlcbiAgfVxufVxuXG4vKipcbiAqIEluamVjdCBhIGhvb2sgdG8gYSBob3QgcmVsb2FkYWJsZSBjb21wb25lbnQgc28gdGhhdFxuICogd2UgY2FuIGtlZXAgdHJhY2sgb2YgaXQuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBob29rXG4gKi9cblxuZnVuY3Rpb24gaW5qZWN0SG9vayhvcHRpb25zLCBuYW1lLCBob29rKSB7XG4gIHZhciBleGlzdGluZyA9IG9wdGlvbnNbbmFtZV1cbiAgb3B0aW9uc1tuYW1lXSA9IGV4aXN0aW5nXG4gICAgPyBBcnJheS5pc0FycmF5KGV4aXN0aW5nKSA/IGV4aXN0aW5nLmNvbmNhdChob29rKSA6IFtleGlzdGluZywgaG9va11cbiAgICA6IFtob29rXVxufVxuXG5mdW5jdGlvbiB0cnlXcmFwKGZuKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoaWQsIGFyZykge1xuICAgIHRyeSB7XG4gICAgICBmbihpZCwgYXJnKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSlcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ1NvbWV0aGluZyB3ZW50IHdyb25nIGR1cmluZyBWdWUgY29tcG9uZW50IGhvdC1yZWxvYWQuIEZ1bGwgcmVsb2FkIHJlcXVpcmVkLidcbiAgICAgIClcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdXBkYXRlT3B0aW9ucyAob2xkT3B0aW9ucywgbmV3T3B0aW9ucykge1xuICBmb3IgKHZhciBrZXkgaW4gb2xkT3B0aW9ucykge1xuICAgIGlmICghKGtleSBpbiBuZXdPcHRpb25zKSkge1xuICAgICAgZGVsZXRlIG9sZE9wdGlvbnNba2V5XVxuICAgIH1cbiAgfVxuICBmb3IgKHZhciBrZXkkMSBpbiBuZXdPcHRpb25zKSB7XG4gICAgb2xkT3B0aW9uc1trZXkkMV0gPSBuZXdPcHRpb25zW2tleSQxXVxuICB9XG59XG5cbmV4cG9ydHMucmVyZW5kZXIgPSB0cnlXcmFwKGZ1bmN0aW9uIChpZCwgb3B0aW9ucykge1xuICB2YXIgcmVjb3JkID0gbWFwW2lkXVxuICBpZiAoIW9wdGlvbnMpIHtcbiAgICByZWNvcmQuaW5zdGFuY2VzLnNsaWNlKCkuZm9yRWFjaChmdW5jdGlvbiAoaW5zdGFuY2UpIHtcbiAgICAgIGluc3RhbmNlLiRmb3JjZVVwZGF0ZSgpXG4gICAgfSlcbiAgICByZXR1cm5cbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucy5vcHRpb25zXG4gIH1cbiAgaWYgKHJlY29yZC5DdG9yKSB7XG4gICAgcmVjb3JkLkN0b3Iub3B0aW9ucy5yZW5kZXIgPSBvcHRpb25zLnJlbmRlclxuICAgIHJlY29yZC5DdG9yLm9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNcbiAgICByZWNvcmQuaW5zdGFuY2VzLnNsaWNlKCkuZm9yRWFjaChmdW5jdGlvbiAoaW5zdGFuY2UpIHtcbiAgICAgIGluc3RhbmNlLiRvcHRpb25zLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyXG4gICAgICBpbnN0YW5jZS4kb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnMgPSBvcHRpb25zLnN0YXRpY1JlbmRlckZuc1xuICAgICAgLy8gcmVzZXQgc3RhdGljIHRyZWVzXG4gICAgICAvLyBwcmUgMi41LCBhbGwgc3RhdGljIHRyZWVzIGFyZSBjYWhjZWQgdG9nZXRoZXIgb24gdGhlIGluc3RhbmNlXG4gICAgICBpZiAoaW5zdGFuY2UuX3N0YXRpY1RyZWVzKSB7XG4gICAgICAgIGluc3RhbmNlLl9zdGF0aWNUcmVlcyA9IFtdXG4gICAgICB9XG4gICAgICAvLyAyLjUuMFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVjb3JkLkN0b3Iub3B0aW9ucy5jYWNoZWQpKSB7XG4gICAgICAgIHJlY29yZC5DdG9yLm9wdGlvbnMuY2FjaGVkID0gW11cbiAgICAgIH1cbiAgICAgIC8vIDIuNS4zXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShpbnN0YW5jZS4kb3B0aW9ucy5jYWNoZWQpKSB7XG4gICAgICAgIGluc3RhbmNlLiRvcHRpb25zLmNhY2hlZCA9IFtdXG4gICAgICB9XG4gICAgICAvLyBwb3N0IDIuNS40OiB2LW9uY2UgdHJlZXMgYXJlIGNhY2hlZCBvbiBpbnN0YW5jZS5fc3RhdGljVHJlZXMuXG4gICAgICAvLyBQdXJlIHN0YXRpYyB0cmVlcyBhcmUgY2FjaGVkIG9uIHRoZSBzdGF0aWNSZW5kZXJGbnMgYXJyYXlcbiAgICAgIC8vIChib3RoIGFscmVhZHkgcmVzZXQgYWJvdmUpXG4gICAgICBpbnN0YW5jZS4kZm9yY2VVcGRhdGUoKVxuICAgIH0pXG4gIH0gZWxzZSB7XG4gICAgLy8gZnVuY3Rpb25hbCBvciBubyBpbnN0YW5jZSBjcmVhdGVkIHlldFxuICAgIHJlY29yZC5vcHRpb25zLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyXG4gICAgcmVjb3JkLm9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNcblxuICAgIC8vIGhhbmRsZSBmdW5jdGlvbmFsIGNvbXBvbmVudCByZS1yZW5kZXJcbiAgICBpZiAocmVjb3JkLm9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgICAgLy8gcmVyZW5kZXIgd2l0aCBmdWxsIG9wdGlvbnNcbiAgICAgIGlmIChPYmplY3Qua2V5cyhvcHRpb25zKS5sZW5ndGggPiAyKSB7XG4gICAgICAgIHVwZGF0ZU9wdGlvbnMocmVjb3JkLm9wdGlvbnMsIG9wdGlvbnMpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyB0ZW1wbGF0ZS1vbmx5IHJlcmVuZGVyLlxuICAgICAgICAvLyBuZWVkIHRvIGluamVjdCB0aGUgc3R5bGUgaW5qZWN0aW9uIGNvZGUgZm9yIENTUyBtb2R1bGVzXG4gICAgICAgIC8vIHRvIHdvcmsgcHJvcGVybHkuXG4gICAgICAgIHZhciBpbmplY3RTdHlsZXMgPSByZWNvcmQub3B0aW9ucy5faW5qZWN0U3R5bGVzXG4gICAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgICB2YXIgcmVuZGVyID0gb3B0aW9ucy5yZW5kZXJcbiAgICAgICAgICByZWNvcmQub3B0aW9ucy5yZW5kZXIgPSBmdW5jdGlvbiAoaCwgY3R4KSB7XG4gICAgICAgICAgICBpbmplY3RTdHlsZXMuY2FsbChjdHgpXG4gICAgICAgICAgICByZXR1cm4gcmVuZGVyKGgsIGN0eClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJlY29yZC5vcHRpb25zLl9DdG9yID0gbnVsbFxuICAgICAgLy8gMi41LjNcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlY29yZC5vcHRpb25zLmNhY2hlZCkpIHtcbiAgICAgICAgcmVjb3JkLm9wdGlvbnMuY2FjaGVkID0gW11cbiAgICAgIH1cbiAgICAgIHJlY29yZC5pbnN0YW5jZXMuc2xpY2UoKS5mb3JFYWNoKGZ1bmN0aW9uIChpbnN0YW5jZSkge1xuICAgICAgICBpbnN0YW5jZS4kZm9yY2VVcGRhdGUoKVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn0pXG5cbmV4cG9ydHMucmVsb2FkID0gdHJ5V3JhcChmdW5jdGlvbiAoaWQsIG9wdGlvbnMpIHtcbiAgdmFyIHJlY29yZCA9IG1hcFtpZF1cbiAgaWYgKG9wdGlvbnMpIHtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIG9wdGlvbnMgPSBvcHRpb25zLm9wdGlvbnNcbiAgICB9XG4gICAgbWFrZU9wdGlvbnNIb3QoaWQsIG9wdGlvbnMpXG4gICAgaWYgKHJlY29yZC5DdG9yKSB7XG4gICAgICBpZiAodmVyc2lvblsxXSA8IDIpIHtcbiAgICAgICAgLy8gcHJlc2VydmUgcHJlIDIuMiBiZWhhdmlvciBmb3IgZ2xvYmFsIG1peGluIGhhbmRsaW5nXG4gICAgICAgIHJlY29yZC5DdG9yLmV4dGVuZE9wdGlvbnMgPSBvcHRpb25zXG4gICAgICB9XG4gICAgICB2YXIgbmV3Q3RvciA9IHJlY29yZC5DdG9yLnN1cGVyLmV4dGVuZChvcHRpb25zKVxuICAgICAgcmVjb3JkLkN0b3Iub3B0aW9ucyA9IG5ld0N0b3Iub3B0aW9uc1xuICAgICAgcmVjb3JkLkN0b3IuY2lkID0gbmV3Q3Rvci5jaWRcbiAgICAgIHJlY29yZC5DdG9yLnByb3RvdHlwZSA9IG5ld0N0b3IucHJvdG90eXBlXG4gICAgICBpZiAobmV3Q3Rvci5yZWxlYXNlKSB7XG4gICAgICAgIC8vIHRlbXBvcmFyeSBnbG9iYWwgbWl4aW4gc3RyYXRlZ3kgdXNlZCBpbiA8IDIuMC4wLWFscGhhLjZcbiAgICAgICAgbmV3Q3Rvci5yZWxlYXNlKClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdXBkYXRlT3B0aW9ucyhyZWNvcmQub3B0aW9ucywgb3B0aW9ucylcbiAgICB9XG4gIH1cbiAgcmVjb3JkLmluc3RhbmNlcy5zbGljZSgpLmZvckVhY2goZnVuY3Rpb24gKGluc3RhbmNlKSB7XG4gICAgaWYgKGluc3RhbmNlLiR2bm9kZSAmJiBpbnN0YW5jZS4kdm5vZGUuY29udGV4dCkge1xuICAgICAgaW5zdGFuY2UuJHZub2RlLmNvbnRleHQuJGZvcmNlVXBkYXRlKClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnUm9vdCBvciBtYW51YWxseSBtb3VudGVkIGluc3RhbmNlIG1vZGlmaWVkLiBGdWxsIHJlbG9hZCByZXF1aXJlZC4nXG4gICAgICApXG4gICAgfVxuICB9KVxufSlcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1ob3QtcmVsb2FkLWFwaS9kaXN0L2luZGV4LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-hot-reload-api/dist/index.js\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/component-normalizer.js": +/***/ (function(module, exports) { + +eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanM/NTU0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBnbG9iYWxzIF9fVlVFX1NTUl9DT05URVhUX18gKi9cblxuLy8gSU1QT1JUQU5UOiBEbyBOT1QgdXNlIEVTMjAxNSBmZWF0dXJlcyBpbiB0aGlzIGZpbGUuXG4vLyBUaGlzIG1vZHVsZSBpcyBhIHJ1bnRpbWUgdXRpbGl0eSBmb3IgY2xlYW5lciBjb21wb25lbnQgbW9kdWxlIG91dHB1dCBhbmQgd2lsbFxuLy8gYmUgaW5jbHVkZWQgaW4gdGhlIGZpbmFsIHdlYnBhY2sgdXNlciBidW5kbGUuXG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50IChcbiAgcmF3U2NyaXB0RXhwb3J0cyxcbiAgY29tcGlsZWRUZW1wbGF0ZSxcbiAgZnVuY3Rpb25hbFRlbXBsYXRlLFxuICBpbmplY3RTdHlsZXMsXG4gIHNjb3BlSWQsXG4gIG1vZHVsZUlkZW50aWZpZXIgLyogc2VydmVyIG9ubHkgKi9cbikge1xuICB2YXIgZXNNb2R1bGVcbiAgdmFyIHNjcmlwdEV4cG9ydHMgPSByYXdTY3JpcHRFeHBvcnRzID0gcmF3U2NyaXB0RXhwb3J0cyB8fCB7fVxuXG4gIC8vIEVTNiBtb2R1bGVzIGludGVyb3BcbiAgdmFyIHR5cGUgPSB0eXBlb2YgcmF3U2NyaXB0RXhwb3J0cy5kZWZhdWx0XG4gIGlmICh0eXBlID09PSAnb2JqZWN0JyB8fCB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZXNNb2R1bGUgPSByYXdTY3JpcHRFeHBvcnRzXG4gICAgc2NyaXB0RXhwb3J0cyA9IHJhd1NjcmlwdEV4cG9ydHMuZGVmYXVsdFxuICB9XG5cbiAgLy8gVnVlLmV4dGVuZCBjb25zdHJ1Y3RvciBleHBvcnQgaW50ZXJvcFxuICB2YXIgb3B0aW9ucyA9IHR5cGVvZiBzY3JpcHRFeHBvcnRzID09PSAnZnVuY3Rpb24nXG4gICAgPyBzY3JpcHRFeHBvcnRzLm9wdGlvbnNcbiAgICA6IHNjcmlwdEV4cG9ydHNcblxuICAvLyByZW5kZXIgZnVuY3Rpb25zXG4gIGlmIChjb21waWxlZFRlbXBsYXRlKSB7XG4gICAgb3B0aW9ucy5yZW5kZXIgPSBjb21waWxlZFRlbXBsYXRlLnJlbmRlclxuICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gY29tcGlsZWRUZW1wbGF0ZS5zdGF0aWNSZW5kZXJGbnNcbiAgICBvcHRpb25zLl9jb21waWxlZCA9IHRydWVcbiAgfVxuXG4gIC8vIGZ1bmN0aW9uYWwgdGVtcGxhdGVcbiAgaWYgKGZ1bmN0aW9uYWxUZW1wbGF0ZSkge1xuICAgIG9wdGlvbnMuZnVuY3Rpb25hbCA9IHRydWVcbiAgfVxuXG4gIC8vIHNjb3BlZElkXG4gIGlmIChzY29wZUlkKSB7XG4gICAgb3B0aW9ucy5fc2NvcGVJZCA9IHNjb3BlSWRcbiAgfVxuXG4gIHZhciBob29rXG4gIGlmIChtb2R1bGVJZGVudGlmaWVyKSB7IC8vIHNlcnZlciBidWlsZFxuICAgIGhvb2sgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgICAgLy8gMi4zIGluamVjdGlvblxuICAgICAgY29udGV4dCA9XG4gICAgICAgIGNvbnRleHQgfHwgLy8gY2FjaGVkIGNhbGxcbiAgICAgICAgKHRoaXMuJHZub2RlICYmIHRoaXMuJHZub2RlLnNzckNvbnRleHQpIHx8IC8vIHN0YXRlZnVsXG4gICAgICAgICh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC4kdm5vZGUgJiYgdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpIC8vIGZ1bmN0aW9uYWxcbiAgICAgIC8vIDIuMiB3aXRoIHJ1bkluTmV3Q29udGV4dDogdHJ1ZVxuICAgICAgaWYgKCFjb250ZXh0ICYmIHR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9fICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb250ZXh0ID0gX19WVUVfU1NSX0NPTlRFWFRfX1xuICAgICAgfVxuICAgICAgLy8gaW5qZWN0IGNvbXBvbmVudCBzdHlsZXNcbiAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwodGhpcywgY29udGV4dClcbiAgICAgIH1cbiAgICAgIC8vIHJlZ2lzdGVyIGNvbXBvbmVudCBtb2R1bGUgaWRlbnRpZmllciBmb3IgYXN5bmMgY2h1bmsgaW5mZXJyZW5jZVxuICAgICAgaWYgKGNvbnRleHQgJiYgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMpIHtcbiAgICAgICAgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG1vZHVsZUlkZW50aWZpZXIpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIHVzZWQgYnkgc3NyIGluIGNhc2UgY29tcG9uZW50IGlzIGNhY2hlZCBhbmQgYmVmb3JlQ3JlYXRlXG4gICAgLy8gbmV2ZXIgZ2V0cyBjYWxsZWRcbiAgICBvcHRpb25zLl9zc3JSZWdpc3RlciA9IGhvb2tcbiAgfSBlbHNlIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICBob29rID0gaW5qZWN0U3R5bGVzXG4gIH1cblxuICBpZiAoaG9vaykge1xuICAgIHZhciBmdW5jdGlvbmFsID0gb3B0aW9ucy5mdW5jdGlvbmFsXG4gICAgdmFyIGV4aXN0aW5nID0gZnVuY3Rpb25hbFxuICAgICAgPyBvcHRpb25zLnJlbmRlclxuICAgICAgOiBvcHRpb25zLmJlZm9yZUNyZWF0ZVxuXG4gICAgaWYgKCFmdW5jdGlvbmFsKSB7XG4gICAgICAvLyBpbmplY3QgY29tcG9uZW50IHJlZ2lzdHJhdGlvbiBhcyBiZWZvcmVDcmVhdGUgaG9va1xuICAgICAgb3B0aW9ucy5iZWZvcmVDcmVhdGUgPSBleGlzdGluZ1xuICAgICAgICA/IFtdLmNvbmNhdChleGlzdGluZywgaG9vaylcbiAgICAgICAgOiBbaG9va11cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gZm9yIHRlbXBsYXRlLW9ubHkgaG90LXJlbG9hZCBiZWNhdXNlIGluIHRoYXQgY2FzZSB0aGUgcmVuZGVyIGZuIGRvZXNuJ3RcbiAgICAgIC8vIGdvIHRocm91Z2ggdGhlIG5vcm1hbGl6ZXJcbiAgICAgIG9wdGlvbnMuX2luamVjdFN0eWxlcyA9IGhvb2tcbiAgICAgIC8vIHJlZ2lzdGVyIGZvciBmdW5jdGlvYWwgY29tcG9uZW50IGluIHZ1ZSBmaWxlXG4gICAgICBvcHRpb25zLnJlbmRlciA9IGZ1bmN0aW9uIHJlbmRlcldpdGhTdHlsZUluamVjdGlvbiAoaCwgY29udGV4dCkge1xuICAgICAgICBob29rLmNhbGwoY29udGV4dClcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nKGgsIGNvbnRleHQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlc01vZHVsZTogZXNNb2R1bGUsXG4gICAgZXhwb3J0czogc2NyaXB0RXhwb3J0cyxcbiAgICBvcHRpb25zOiBvcHRpb25zXG4gIH1cbn1cblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2NvbXBvbmVudC1ub3JtYWxpemVyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/component-normalizer.js\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"app\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJkaXZcIiwgeyBhdHRyczogeyBpZDogXCJhcHBcIiB9IH0sIFtfYyhcInJvdXRlci12aWV3XCIpXSwgMSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTdiYTViZDkwXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcImhhc1Njb3BlZFwiOmZhbHNlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-material/dist/theme/default.css": +/***/ (function(module, exports, __webpack_require__) { + +eval("// style-loader: Adds some css to the DOM by adding a + + \ No newline at end of file diff --git a/src/assets/logo.png b/src/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f3d2503fc2a44b5053b0837ebea6e87a2d339a43 GIT binary patch literal 6849 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 +
+
+ eAuction + +
+
+
+
+ Register + + + + + + + + + + + + + + + + +
+
+ Log In + + + + + + + + +
+ + Log In + Register +
+
+
+ + + + + diff --git a/src/main.js b/src/main.js new file mode 100644 index 00000000..e1d275e6 --- /dev/null +++ b/src/main.js @@ -0,0 +1,21 @@ +// The Vue build version to load with the `import` command +// (runtime-only or standalone) has been set in webpack.base.conf with an alias. +import Vue from 'vue' +import App from './App' +import router from './router' +import VueMaterial from 'vue-material' +import 'vue-material/dist/vue-material.min.css' +import 'vue-material/dist/theme/default.css' + +Vue.use(VueMaterial) + + +Vue.config.productionTip = false + +/* eslint-disable no-new */ +new Vue({ + el: '#app', + router, + components: { App }, + template: '' +}) diff --git a/src/router/index.js b/src/router/index.js new file mode 100644 index 00000000..7c392072 --- /dev/null +++ b/src/router/index.js @@ -0,0 +1,15 @@ +import Vue from 'vue' +import Router from 'vue-router' +import LogIn from '@/components/LogIn' + +Vue.use(Router) + +export default new Router({ + routes: [ + { + path: '/', + name: 'LogIn', + component: LogIn + } + ] +}) diff --git a/src/stylesheet/main.css b/src/stylesheet/main.css new file mode 100644 index 00000000..1c710a8c --- /dev/null +++ b/src/stylesheet/main.css @@ -0,0 +1,17 @@ +@import "//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons"; + +html { + height: 100%; +} + +body { + margin: 0; +} + +#app { + font-family: "Roboto"; +} + +.box { + border: 1px solid black; +} \ No newline at end of file diff --git a/src/stylesheet/main.scss b/src/stylesheet/main.scss new file mode 100644 index 00000000..3e499bfb --- /dev/null +++ b/src/stylesheet/main.scss @@ -0,0 +1,8 @@ +@import "~vue-material/dist/theme/engine"; // Import the theme engine + +@include md-register-theme("default", ( + primary: md-get-palette-color(brown, A200), // The primary color of your brand + accent: md-get-palette-color(grey, 500) // The secondary color of your brand +)); + +@import "~vue-material/dist/theme/all"; \ No newline at end of file diff --git a/templates/auction/index.html b/templates/auction/index.html deleted file mode 100644 index e489db2c..00000000 --- a/templates/auction/index.html +++ /dev/null @@ -1 +0,0 @@ -

monkaS

\ No newline at end of file diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 00000000..9a9e7fa3 --- /dev/null +++ b/templates/index.html @@ -0,0 +1,12 @@ + + + + + + frontend + + +
+ + + From 69dae9b35af103b2f31a860189241f3bcb6c8f6d Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 27 Apr 2018 19:24:08 +0800 Subject: [PATCH 003/113] Add example crud login operation --- .gitignore | 2 ++ assets/0.055c4506e5fa2ce98be5.hot-update.js | 18 -------------- assets/055c4506e5fa2ce98be5.hot-update.json | 1 - assets/app.js | 6 ++--- login/urls.py | 3 ++- login/views.py | 22 ++++++++++++----- src/components/LogIn.vue | 27 ++++++++++++++++----- 7 files changed, 44 insertions(+), 35 deletions(-) delete mode 100644 assets/0.055c4506e5fa2ce98be5.hot-update.js delete mode 100644 assets/055c4506e5fa2ce98be5.hot-update.json diff --git a/.gitignore b/.gitignore index 399fe2ec..6fb076aa 100644 --- a/.gitignore +++ b/.gitignore @@ -273,3 +273,5 @@ ENV/ # mypy .mypy_cache/ + +assets/* \ No newline at end of file diff --git a/assets/0.055c4506e5fa2ce98be5.hot-update.js b/assets/0.055c4506e5fa2ce98be5.hot-update.js deleted file mode 100644 index 2dc6400a..00000000 --- a/assets/0.055c4506e5fa2ce98be5.hot-update.js +++ /dev/null @@ -1,18 +0,0 @@ -webpackHotUpdate(0,{ - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsczwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5Vc2VybmFtZTwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInVzZXJuYW1lXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PG1kLWlucHV0IHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIiBAa2V5dXAuZW50ZXI9XFxcImxvZ2luXFxcIj48L21kLWlucHV0PlxcblxcdFxcdFxcdFxcdFxcdFxcdDwvbWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PG1kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxsYWJlbD5Db25maXJtIFBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXHRcXHRcXHRcXHRcXHQ8ZGl2IHYtc2hvdz1cXFwiIWlzUmVnaXN0ZXJcXFwiIGNsYXNzPVxcXCJtZC1sYXlvdXRcXFwiPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxzcGFuPkxvZyBJbjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXG5cXHRcXHRcXHRcXHRcXHQ8bWQtYnV0dG9uIEBjbGljaz1cXFwibG9naW5cXFwiIGNsYXNzPVxcXCJtZC1yYWlzZWRcXFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+UmVnaXN0ZXI8L21kLWJ1dHRvbj5cXG5cXHRcXHRcXHRcXHQ8L2Rpdj5cXG5cXHRcXHQ8L2Rpdj5cXG5cXHQ8L2Rpdj5cXG48L3RlbXBsYXRlPlxcblxcbjxzY3JpcHQ+XFxuXFx0ZXhwb3J0IGRlZmF1bHQge1xcblxcdFxcdGRhdGEoKXtcXG5cXHRcXHRcXHRyZXR1cm4ge1xcblxcdFxcdFxcdFxcdHVzZXJuYW1lOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRwYXNzd29yZDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0ZW1haWw6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdGlzUmVnaXN0ZXI6IHRydWUsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46ZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRsZXQgdXNlcm5hbWUgPSBcXFwiYm9qb2x1aXNcXFwiO1xcblxcdFxcdFxcdFxcdGxldCBwYXNzd29yZCA9IFxcXCIxMjM0XFxcIjtcXG5cXG5cXHRcXHRcXHRcXHRpZih0aGlzLnVzZXJuYW1lID09IHVzZXJuYW1lICYmIHRoaXMucGFzc3dvcmQgPT0gcGFzc3dvcmQpe1xcblxcdFxcdFxcdFxcdFxcdGFsZXJ0KFxcXCJWYWxpZFxcXCIpO1xcblxcdFxcdFxcdFxcdH1lbHNle1xcblxcdFxcdFxcdFxcdFxcdGFsZXJ0KFxcXCJXcm9uZ1xcXCIpO1xcblxcdFxcdFxcdFxcdH1cXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC50aXRsZSB7XFxuXFx0XFx0Zm9udC1zaXplOiA1ZW07XFxuXFx0fVxcblxcdC5sb2dpbmJveCB7XFxuXFx0XFx0bWFyZ2luOiA1JTtcXG5cXHRcXHRtYXJnaW4tdG9wOiA3JTtcXG5cXHRcXHRwYWRkaW5nOiA1JTtcXG5cXHR9XFxuXFx0LmRlc2Mge1xcblxcdFxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG5cXHR9XFxuPC9zdHlsZT5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Emails\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbHNcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlVzZXJuYW1lXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0udXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS51c2VybmFtZSA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwidXNlcm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJQYXNzd29yZFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiQ29uZmlybSBQYXNzd29yZFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAhX3ZtLmlzUmVnaXN0ZXIsXG4gICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiIWlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiTG9nIEluXCIpXSksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcIm1kLWJ1dHRvblwiLFxuICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcIm1kLXJhaXNlZFwiLCBvbjogeyBjbGljazogX3ZtLmxvZ2luIH0gfSxcbiAgICAgICAgICAgICAgW192bS5fdihcIkxvZyBJblwiKV1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiUmVnaXN0ZXJcIildXG4gICAgICAgICAgICApXG4gICAgICAgICAgXSxcbiAgICAgICAgICAxXG4gICAgICAgIClcbiAgICAgIF1cbiAgICApXG4gIF0pXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW1xuICBmdW5jdGlvbigpIHtcbiAgICB2YXIgX3ZtID0gdGhpc1xuICAgIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICAgIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICAgIHJldHVybiBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7IHN0YXRpY0NsYXNzOiBcIiBtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXJcIiB9LFxuICAgICAgW19jKFwic3BhblwiLCB7IHN0YXRpY0NsYXNzOiBcIiB0aXRsZVwiIH0sIFtfdm0uX3YoXCJlQXVjdGlvblwiKV0pXVxuICAgIClcbiAgfVxuXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTUxYjBlYjA5XCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); - -/***/ }) - -}) \ No newline at end of file diff --git a/assets/055c4506e5fa2ce98be5.hot-update.json b/assets/055c4506e5fa2ce98be5.hot-update.json deleted file mode 100644 index 05bfd789..00000000 --- a/assets/055c4506e5fa2ce98be5.hot-update.json +++ /dev/null @@ -1 +0,0 @@ -{"h":"9b96dedcef6f8cc83741","c":{"0":true}} \ No newline at end of file diff --git a/assets/app.js b/assets/app.js index b136c1ce..7f45263c 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "a435a52d44b0d5b18c30"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "a6afb189d5619506265f"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -739,7 +739,7 @@ eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: true,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tlet username = \"bojoluis\";\n\t\t\tlet password = \"1234\";\n\n\t\t\tif (this.username == username && this.password == password) {\n\t\t\t\talert(\"Valid\");\n\t\t\t} else {\n\t\t\t\talert(\"Wrong\");\n\t\t\t}\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBjbGFzcz1cIm1kLWxheW91dCBtZC1ndXR0ZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCIgdGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXIgbWQtZ3V0dGVyXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2dpbmJveCBtZC1lbGV2YXRpb24tMiBsb2dpbmJveCBtZC1sYXlvdXQtaXRlbVwiPlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiaXNSZWdpc3RlclwiIGNsYXNzPVwibWQtbGF5b3V0XCI+XG5cdFx0XHRcdFx0XHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJ1c2VybmFtZVwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+Q29uZmlybSBQYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiIWlzUmVnaXN0ZXJcIiBjbGFzcz1cIm1kLWxheW91dFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4+TG9nIEluPC9zcGFuPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwidXNlcm5hbWVcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPlJlZ2lzdGVyPC9tZC1idXR0b24+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiB0cnVlLFxuXHRcdFx0XHRjb25maXJtTWF0Y2g6IHRydWUsXG5cdFx0XHR9O1xuXHRcdH0sXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0bG9naW46ZnVuY3Rpb24oKXtcblx0XHRcdFx0bGV0IHVzZXJuYW1lID0gXCJib2pvbHVpc1wiO1xuXHRcdFx0XHRsZXQgcGFzc3dvcmQgPSBcIjEyMzRcIjtcblxuXHRcdFx0XHRpZih0aGlzLnVzZXJuYW1lID09IHVzZXJuYW1lICYmIHRoaXMucGFzc3dvcmQgPT0gcGFzc3dvcmQpe1xuXHRcdFx0XHRcdGFsZXJ0KFwiVmFsaWRcIik7XG5cdFx0XHRcdH1lbHNle1xuXHRcdFx0XHRcdGFsZXJ0KFwiV3JvbmdcIik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9LFxuXHRcdGNhbGN1bGF0ZWQ6IHtcblx0XHR9XG5cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC50aXRsZSB7XG5cdFx0Zm9udC1zaXplOiA1ZW07XG5cdH1cblx0LmxvZ2luYm94IHtcblx0XHRtYXJnaW46IDUlO1xuXHRcdG1hcmdpbi10b3A6IDclO1xuXHRcdHBhZGRpbmc6IDUlO1xuXHR9XG5cdC5kZXNjIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFWQTtBQVlBO0FBQ0E7QUF2QkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tlet username = \"bojoluis\";\n\t\t\tlet password = \"1234\";\n\n\t\t\tlet oReq = new XMLHttpRequest();\n\t\t\tlet isValid = {};\n\n\t\t\toReq.onreadystatechange = function () {\n\t\t\t\tif (this.readyState == 4 && this.status == 200) {\n\t\t\t\t\tisValid = JSON.parse(this.responseText);\n\n\t\t\t\t\tif (isValid.isValid) {\n\t\t\t\t\t\talert(\"Valid\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\talert(\"Wrong\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\toReq.open(\"GET\", \"http://localhost:8000/login/test/?name=bojoluis&password=1234\");\n\t\t\toReq.send();\n\t\t\tconsole.log(oReq);\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBjbGFzcz1cIm1kLWxheW91dCBtZC1ndXR0ZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCIgdGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXIgbWQtZ3V0dGVyXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2dpbmJveCBtZC1lbGV2YXRpb24tMiBsb2dpbmJveCBtZC1sYXlvdXQtaXRlbVwiPlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiaXNSZWdpc3RlclwiIGNsYXNzPVwibWQtbGF5b3V0XCI+XG5cdFx0XHRcdFx0XHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJ1c2VybmFtZVwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+Q29uZmlybSBQYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiIWlzUmVnaXN0ZXJcIiBjbGFzcz1cIm1kLWxheW91dFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4+TG9nIEluPC9zcGFuPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwidXNlcm5hbWVcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPlJlZ2lzdGVyPC9tZC1idXR0b24+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiBmYWxzZSxcblx0XHRcdFx0Y29uZmlybU1hdGNoOiB0cnVlLFxuXHRcdFx0fTtcblx0XHR9LFxuXHRcdG1ldGhvZHM6IHtcblx0XHRcdGxvZ2luOmZ1bmN0aW9uKCl7XG5cdFx0XHRcdGxldCB1c2VybmFtZSA9IFwiYm9qb2x1aXNcIjtcblx0XHRcdFx0bGV0IHBhc3N3b3JkID0gXCIxMjM0XCI7XG5cblx0XHRcdFx0bGV0IG9SZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblx0XHRcdFx0bGV0IGlzVmFsaWQgPSB7fTtcblxuXHRcdFx0XHRvUmVxLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkge1xuXHRcdFx0ICAgICAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09IDQgJiYgdGhpcy5zdGF0dXMgPT0gMjAwKSB7XG5cdFx0XHQgICAgICAgICAgICBpc1ZhbGlkID0gSlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCk7XG5cdFx0XHQgICAgXG5cdFx0XHQgICAgICAgICAgICBpZihpc1ZhbGlkLmlzVmFsaWQpe1xuXHRcdFx0XHRcdFx0XHRhbGVydChcIlZhbGlkXCIpO1xuXHRcdFx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0XHRcdGFsZXJ0KFwiV3JvbmdcIik7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHQgICAgICAgfVxuXHRcdFx0ICAgIH07XG5cblx0XHRcdFx0b1JlcS5vcGVuKFwiR0VUXCIsIFwiaHR0cDovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvP25hbWU9Ym9qb2x1aXMmcGFzc3dvcmQ9MTIzNFwiKTtcblx0XHRcdFx0b1JlcS5zZW5kKCk7XG5cdFx0XHRcdGNvbnNvbGUubG9nKG9SZXEpO1xuXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0Y2FsY3VsYXRlZDoge1xuXHRcdH1cblxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cblx0LnRpdGxlIHtcblx0XHRmb250LXNpemU6IDVlbTtcblx0fVxuXHQubG9naW5ib3gge1xuXHRcdG1hcmdpbjogNSU7XG5cdFx0bWFyZ2luLXRvcDogNyU7XG5cdFx0cGFkZGluZzogNSU7XG5cdH1cblx0LmRlc2Mge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBMb2dJbi52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0NBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFMQTtBQU9BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBekJBO0FBMkJBO0FBQ0E7QUF0Q0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -760,7 +760,7 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogdHJ1ZSxcXG5cXHRcXHRcXHRcXHRjb25maXJtTWF0Y2g6IHRydWUsXFxuXFx0XFx0XFx0fTtcXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjpmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdGxldCB1c2VybmFtZSA9IFxcXCJib2pvbHVpc1xcXCI7XFxuXFx0XFx0XFx0XFx0bGV0IHBhc3N3b3JkID0gXFxcIjEyMzRcXFwiO1xcblxcblxcdFxcdFxcdFxcdGlmKHRoaXMudXNlcm5hbWUgPT0gdXNlcm5hbWUgJiYgdGhpcy5wYXNzd29yZCA9PSBwYXNzd29yZCl7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA2FA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTJGQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46ZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRsZXQgdXNlcm5hbWUgPSBcXFwiYm9qb2x1aXNcXFwiO1xcblxcdFxcdFxcdFxcdGxldCBwYXNzd29yZCA9IFxcXCIxMjM0XFxcIjtcXG5cXG5cXHRcXHRcXHRcXHRsZXQgb1JlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xcblxcdFxcdFxcdFxcdGxldCBpc1ZhbGlkID0ge307XFxuXFxuXFx0XFx0XFx0XFx0b1JlcS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHtcXG5cXHRcXHRcXHQgICAgICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gNCAmJiB0aGlzLnN0YXR1cyA9PSAyMDApIHtcXG5cXHRcXHRcXHQgICAgICAgICAgICBpc1ZhbGlkID0gSlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCk7XFxuXFx0XFx0XFx0ICAgIFxcblxcdFxcdFxcdCAgICAgICAgICAgIGlmKGlzVmFsaWQuaXNWYWxpZCl7XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdCAgICAgICB9XFxuXFx0XFx0XFx0ICAgIH07XFxuXFxuXFx0XFx0XFx0XFx0b1JlcS5vcGVuKFxcXCJHRVRcXFwiLCBcXFwiaHR0cDovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvP25hbWU9Ym9qb2x1aXMmcGFzc3dvcmQ9MTIzNFxcXCIpO1xcblxcdFxcdFxcdFxcdG9SZXEuc2VuZCgpO1xcblxcdFxcdFxcdFxcdGNvbnNvbGUubG9nKG9SZXEpO1xcblxcblxcdFxcdFxcdFxcdFxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), diff --git a/login/urls.py b/login/urls.py index d2b575a6..e917ac9f 100644 --- a/login/urls.py +++ b/login/urls.py @@ -6,5 +6,6 @@ app_name = 'login' urlpatterns = [ # path('', views.index, name='index'), - path('', views.LoginView.as_view(), name='login-page') + path('', views.index, name='login-page'), + path('test/', views.test, name='test') ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index e7d4d386..35ad6ce7 100644 --- a/login/views.py +++ b/login/views.py @@ -7,13 +7,23 @@ def index(request): - name = request.POST.get('name') - context = { - 'name': name - } - # return HttpResponse(json.dumps(context)) - return render(request, 'auction/index.html', context) + return render(request, 'index.html') +# def test(request): +# name = request.GET.get('name') +# password = request.GET.get('password') + +# isValid = False + +# if(name == "bojoluis" and password == "1234"): +# isValid = True + +# context = { +# 'isValid': isValid, +# } + +# return HttpResponse(json.dumps(context)) + class LoginView(TemplateView): template_name='index.html' \ No newline at end of file diff --git a/src/components/LogIn.vue b/src/components/LogIn.vue index 7be2c8c1..78e4eb60 100644 --- a/src/components/LogIn.vue +++ b/src/components/LogIn.vue @@ -51,7 +51,7 @@ username: "", password: "", email: "", - isRegister: true, + isRegister: false, confirmMatch: true, }; }, @@ -60,11 +60,26 @@ let username = "bojoluis"; let password = "1234"; - if(this.username == username && this.password == password){ - alert("Valid"); - }else{ - alert("Wrong"); - } + let oReq = new XMLHttpRequest(); + let isValid = {}; + + oReq.onreadystatechange = function() { + if (this.readyState == 4 && this.status == 200) { + isValid = JSON.parse(this.responseText); + + if(isValid.isValid){ + alert("Valid"); + }else{ + alert("Wrong"); + } + } + }; + + oReq.open("GET", "http://localhost:8000/login/test/?name=bojoluis&password=1234"); + oReq.send(); + console.log(oReq); + + } }, calculated: { From da542ce13e0d97a1ff02bc436f991c5d223b9332 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Tue, 1 May 2018 08:44:47 +0800 Subject: [PATCH 004/113] Change link for login --- auction/urls.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/auction/urls.py b/auction/urls.py index f5016185..5e670087 100644 --- a/auction/urls.py +++ b/auction/urls.py @@ -19,6 +19,6 @@ from django.urls import path, include urlpatterns = [ - path('login/', include('login.urls')), + path('', include('login.urls')), path('admin/', admin.site.urls), ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) From 95283e29e2fce15397ceb67549c0aa816b8ad980 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Tue, 1 May 2018 11:17:05 +0800 Subject: [PATCH 005/113] Removed materialize --- assets/app.js | 63 ++++------------------------------- auction/urls.py | 2 +- index.html | 2 +- login/urls.py | 1 - package.json | 3 +- src/App.vue | 4 --- src/components/LogIn.vue | 71 ++-------------------------------------- src/main.js | 6 ---- src/stylesheet/main.scss | 8 ----- templates/index.html | 2 +- 10 files changed, 14 insertions(+), 148 deletions(-) delete mode 100644 src/stylesheet/main.scss diff --git a/assets/app.js b/assets/app.js index 7f45263c..33ab8912 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "a6afb189d5619506265f"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "8c028a312307150cbb84"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -731,7 +731,7 @@ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBpZD1cImFwcFwiPlxuICAgIDxyb3V0ZXItdmlldy8+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ0FwcCdcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5AaW1wb3J0IFwiLi9zdHlsZXNoZWV0L21haW4uY3NzXCI7XG48L3N0eWxlPlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIj5cbkBpbXBvcnQgXCIuL3N0eWxlc2hlZXQvbWFpbi5zY3NzXCI7XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBBcHAudnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); +eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBpZD1cImFwcFwiPlxuICAgIDxyb3V0ZXItdmlldy8+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ0FwcCdcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5AaW1wb3J0IFwiLi9zdHlsZXNoZWV0L21haW4uY3NzXCI7XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBBcHAudnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); /***/ }), @@ -739,35 +739,14 @@ eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tlet username = \"bojoluis\";\n\t\t\tlet password = \"1234\";\n\n\t\t\tlet oReq = new XMLHttpRequest();\n\t\t\tlet isValid = {};\n\n\t\t\toReq.onreadystatechange = function () {\n\t\t\t\tif (this.readyState == 4 && this.status == 200) {\n\t\t\t\t\tisValid = JSON.parse(this.responseText);\n\n\t\t\t\t\tif (isValid.isValid) {\n\t\t\t\t\t\talert(\"Valid\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\talert(\"Wrong\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\toReq.open(\"GET\", \"http://localhost:8000/login/test/?name=bojoluis&password=1234\");\n\t\t\toReq.send();\n\t\t\tconsole.log(oReq);\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBjbGFzcz1cIm1kLWxheW91dCBtZC1ndXR0ZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCIgdGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblxuXHRcdDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtZC1sYXlvdXQtaXRlbSBtZC1sYXlvdXQgbWQtYWxpZ25tZW50LWNlbnRlci1jZW50ZXIgbWQtZ3V0dGVyXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsb2dpbmJveCBtZC1lbGV2YXRpb24tMiBsb2dpbmJveCBtZC1sYXlvdXQtaXRlbVwiPlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiaXNSZWdpc3RlclwiIGNsYXNzPVwibWQtbGF5b3V0XCI+XG5cdFx0XHRcdFx0XHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJ1c2VybmFtZVwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbD5QYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+Q29uZmlybSBQYXNzd29yZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgdi1zaG93PVwiIWlzUmVnaXN0ZXJcIiBjbGFzcz1cIm1kLWxheW91dFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4+TG9nIEluPC9zcGFuPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwidXNlcm5hbWVcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPkxvZyBJbjwvbWQtYnV0dG9uPlxuXHRcdFx0XHRcdDxtZC1idXR0b24gQGNsaWNrPVwibG9naW5cIiBjbGFzcz1cIm1kLXJhaXNlZFwiPlJlZ2lzdGVyPC9tZC1idXR0b24+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiBmYWxzZSxcblx0XHRcdFx0Y29uZmlybU1hdGNoOiB0cnVlLFxuXHRcdFx0fTtcblx0XHR9LFxuXHRcdG1ldGhvZHM6IHtcblx0XHRcdGxvZ2luOmZ1bmN0aW9uKCl7XG5cdFx0XHRcdGxldCB1c2VybmFtZSA9IFwiYm9qb2x1aXNcIjtcblx0XHRcdFx0bGV0IHBhc3N3b3JkID0gXCIxMjM0XCI7XG5cblx0XHRcdFx0bGV0IG9SZXEgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblx0XHRcdFx0bGV0IGlzVmFsaWQgPSB7fTtcblxuXHRcdFx0XHRvUmVxLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkge1xuXHRcdFx0ICAgICAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09IDQgJiYgdGhpcy5zdGF0dXMgPT0gMjAwKSB7XG5cdFx0XHQgICAgICAgICAgICBpc1ZhbGlkID0gSlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCk7XG5cdFx0XHQgICAgXG5cdFx0XHQgICAgICAgICAgICBpZihpc1ZhbGlkLmlzVmFsaWQpe1xuXHRcdFx0XHRcdFx0XHRhbGVydChcIlZhbGlkXCIpO1xuXHRcdFx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0XHRcdGFsZXJ0KFwiV3JvbmdcIik7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHQgICAgICAgfVxuXHRcdFx0ICAgIH07XG5cblx0XHRcdFx0b1JlcS5vcGVuKFwiR0VUXCIsIFwiaHR0cDovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvP25hbWU9Ym9qb2x1aXMmcGFzc3dvcmQ9MTIzNFwiKTtcblx0XHRcdFx0b1JlcS5zZW5kKCk7XG5cdFx0XHRcdGNvbnNvbGUubG9nKG9SZXEpO1xuXG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0Y2FsY3VsYXRlZDoge1xuXHRcdH1cblxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cblx0LnRpdGxlIHtcblx0XHRmb250LXNpemU6IDVlbTtcblx0fVxuXHQubG9naW5ib3gge1xuXHRcdG1hcmdpbjogNSU7XG5cdFx0bWFyZ2luLXRvcDogNyU7XG5cdFx0cGFkZGluZzogNSU7XG5cdH1cblx0LmRlc2Mge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBMb2dJbi52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0NBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFMQTtBQU9BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBekJBO0FBMkJBO0FBQ0E7QUF0Q0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/theme/default.css": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \":root{--md-theme-default-primary:#448aff;--md-theme-default-accent:#ff5252;--md-theme-default-theme:\\\"light\\\"}.md-theme-default :not(input):not(textarea)::-moz-selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default :not(input):not(textarea)::selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default a:not(.md-button){color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-theme-default a:not(.md-button):hover{color:rgba(68,138,255,0.8);color:var(--md-theme-default-primary-on-background, rgba(68,138,255,0.8))}.md-theme-default a:not(.md-button).md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-theme-default a:not(.md-button).md-accent:hover{color:rgba(255,82,82,0.8);color:var(--md-theme-default-accent-on-background, rgba(255,82,82,0.8))}html.md-theme-default{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-theme-default .md-caption,.md-theme-default .md-display-1,.md-theme-default .md-display-2,.md-theme-default .md-display-3,.md-theme-default .md-display-4{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background-variant, rgba(0,0,0,0.54))}.md-scrollbar.md-theme-default::-webkit-scrollbar-corner,.md-scrollbar.md-theme-default::-webkit-scrollbar-track{background:#e1e1e1;background:var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1)}.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb{background:#757575;background:var(--md-theme-default-scrollbar-on-background-variant, #757575)}.md-app:not(.md-overlap).md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-autocomplete-loading{background-color:rgba(255,255,255,0.54);background-color:var(--md-theme-default-background, rgba(255,255,255,0.54))}.md-autocomplete.md-theme-default.md-autocomplete-box{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-background, rgba(255,255,255,0.12))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);-webkit-text-fill-color:#fff;-webkit-text-fill-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));-webkit-text-fill-color:rgba(0,0,0,0.38);-webkit-text-fill-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-autocomplete-box-content.md-theme-default:after{background-color:#fff;background-color:var(--md-theme-default-background, #fff);border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-avatar.md-theme-default.md-avatar-icon{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-icon-disabled, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-avatar.md-theme-default.md-accent.md-avatar-icon{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-shift{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-type-shift>.md-ripple .md-ripple-wave{background-color:#116aff;background-color:var(--md-theme-default-primary-on-primary, #116aff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-accent.md-type-shift>.md-ripple .md-ripple-wave{background-color:#ff1f1f;background-color:var(--md-theme-default-accent-on-accent, #ff1f1f)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-image{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-image{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-raised[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-button.md-theme-default.md-raised:not([disabled]){background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-raised:not([disabled]).md-primary{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12))}.md-button.md-theme-default.md-fab:not([disabled]){background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default[disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-button.md-theme-default[disabled] .md-icon-font{color:rgba(0,0,0,0.38);color:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-button.md-theme-default[disabled] .md-icon-image{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-card.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-expand .md-card-actions{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54));fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54))}.md-card.md-theme-default>.md-card-area:after{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-card.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-primary>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-primary, rgba(255,255,255,0.12))}.md-card.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-accent>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-accent, rgba(255,255,255,0.12))}.md-checkbox.md-theme-default.md-checked .md-checkbox-container{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after{border-color:#fff;border-color:var(--md-theme-default-background, #fff)}.md-checkbox.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default .md-checkbox-container{border-color:rgba(0,0,0,0.54)}.md-checkbox.md-theme-default.md-disabled .md-checkbox-container{border-color:rgba(0,0,0,0.26)}.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container{border-color:rgba(0,0,0,0.26);background-color:rgba(0,0,0,0.26)}.md-chip.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary, rgba(0,0,0,0.87))}.md-chip.md-theme-default .md-icon.md-icon-image svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-primary, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon{fill:#fff;fill:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-chip.md-theme-default.md-primary .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover{color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff);background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-chip.md-theme-default.md-accent .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-disabled{background-color:rgba(0,0,0,0.1);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.1));color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent, rgba(0,0,0,0.54))}.md-chips.md-theme-default .md-clear{background-color:rgba(0,0,0,0.2)}.md-content.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-content.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-content.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-app .md-content.md-theme-default{border-left-color:rgba(0,0,0,0.12);border-left-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-header{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after,.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-week{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-datepicker-dialog.md-theme-default .md-datepicker-disabled{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-datepicker-dialog.md-theme-default .md-datepicker-today{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-divider.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-drawer.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-drawer.md-theme-default.md-persistent-mini{border-right-color:rgba(0,0,0,0.12);border-right-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default.md-rounded{background-color:rgba(0,0,0,0.06);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.06))}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-field.md-theme-default:after{background-color:rgba(0,0,0,0.42)}.md-field.md-theme-default:before{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default .md-helper-text,.md-field.md-theme-default .md-count,.md-field.md-theme-default label{color:rgba(0,0,0,0.54)}.md-field.md-theme-default .md-input::-webkit-input-placeholder,.md-field.md-theme-default .md-textarea::-webkit-input-placeholder{color:rgba(0,0,0,0.54)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-has-value .md-input,.md-field.md-theme-default.md-has-value .md-textarea{-webkit-text-fill-color:rgba(0,0,0,0.87)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after{border-color:rgba(0,0,0,0.42)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default.md-disabled:after{background-image:linear-gradient(to right, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.38) 33%, transparent 0%)}.md-field.md-theme-default.md-disabled label,.md-field.md-theme-default.md-disabled .md-input,.md-field.md-theme-default.md-disabled .md-textarea{color:rgba(0,0,0,0.42)}.md-field.md-theme-default>.md-icon:after{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa)}.md-field.md-theme-default.md-invalid:after{background-color:#ff1744;background-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before{border-color:#ff1744;border-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid label{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-error{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-date-icon,.md-field.md-theme-default.md-invalid .md-date-icon svg{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-highlight .md-input,.md-field.md-theme-default.md-highlight .md-textarea{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused>.md-icon,.md-field.md-theme-default.md-highlight>.md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff);fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused label{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-disabled .md-icon svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-icon.md-theme-default.md-icon-image svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-image svg.md-primary{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-image svg.md-accent{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-icon.md-theme-default.md-icon-font{color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-font.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-font.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-list.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default .md-highlight .md-list-item-container{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-list.md-theme-default .md-list-item-container{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default [disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-list.md-theme-default .md-selected .md-list-item-content,.md-list.md-theme-default .router-link-exact-active .md-list-item-content{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-list-item-expand.md-active{border-color:rgba(0,0,0,0.12);border-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-menu-item.md-theme-default.md-primary .md-list-item-link,.md-menu-item.md-theme-default.md-primary .md-list-item-router,.md-menu-item.md-theme-default.md-primary .md-list-item-button{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-menu-item.md-theme-default.md-accent .md-list-item-link,.md-menu-item.md-theme-default.md-accent .md-list-item-router,.md-menu-item.md-theme-default.md-accent .md-list-item-button{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-progress-bar.md-theme-default.md-indeterminate,.md-progress-bar.md-theme-default.md-query{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-indeterminate.md-accent,.md-progress-bar.md-theme-default.md-query.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-determinate{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-determinate.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer{border-color:rgba(68,138,255,0.38);border-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer{border-color:rgba(255,82,82,0.38);border-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-spinner.md-theme-default .md-progress-spinner-circle{stroke:#448aff;stroke:var(--md-theme-default-primary, #448aff)}.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle{stroke:#ff5252;stroke:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default .md-radio-container{border-color:rgba(0,0,0,0.54)}.md-radio.md-theme-default.md-disabled .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after{background-color:rgba(0,0,0,0.26)}.md-snackbar.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);background-color:#323232}.md-steppers.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-icon:after,.md-steppers.md-theme-default .md-stepper-icon:before,.md-steppers.md-theme-default .md-stepper-number:after,.md-steppers.md-theme-default .md-stepper-number:before,.md-steppers.md-theme-default .md-stepper:after,.md-steppers.md-theme-default .md-stepper:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-number{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-header .md-button-content{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-steppers.md-theme-default .md-stepper-header .md-button-content:after,.md-steppers.md-theme-default .md-stepper-header .md-button-content:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content,.md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-steppervariant, #ff1744)}.md-subheader.md-theme-default{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-subheader.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-switch.md-theme-default.md-checked .md-switch-container{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-switch.md-theme-default.md-checked .md-switch-thumb{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked.md-primary .md-switch-container{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default .md-switch-container{background-color:rgba(0,0,0,0.38)}.md-switch.md-theme-default .md-switch-thumb{background-color:#f5f5f5;background-color:var(--md-theme-default-switchvariant, #f5f5f5)}.md-switch.md-theme-default.md-disabled .md-switch-container{background-color:rgba(0,0,0,0.12)}.md-switch.md-theme-default.md-disabled .md-switch-thumb{background-color:#bdbdbd;background-color:var(--md-theme-default-switchvariant, #bdbdbd)}.md-table.md-theme-default .md-table-content,.md-table.md-theme-default .md-table-alternate-header{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));background-color:rgba(255,82,82,0.2);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.2))}.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell{background-color:rgba(0,0,0,0.08);background-color:var(--md-theme-default-highlight-on-background, rgba(0,0,0,0.08))}.md-table.md-theme-default .md-table-row.md-selected,.md-table.md-theme-default .md-table-row.md-selected-single{background-color:#f5f5f5;background-color:var(--md-theme-default-rowvariant, #f5f5f5)}.md-table.md-theme-default .md-table-row.md-selected.md-primary,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-table.md-theme-default .md-table-row td{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-table-head{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-table.md-theme-default .md-table-fixed-header-active{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-sortable:hover,.md-table.md-theme-default .md-sortable.md-sorted{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-sortable:hover svg,.md-table.md-theme-default .md-sortable.md-sorted svg{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-table-pagination{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87));background-color:#f5f5f5;background-color:var(--md-theme-default-toolbarvariant, #f5f5f5)}.md-toolbar.md-theme-default .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-title,.md-toolbar.md-theme-default .md-display-1,.md-toolbar.md-theme-default .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-title,.md-toolbar.md-theme-default.md-primary .md-display-1,.md-toolbar.md-theme-default.md-primary .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-title,.md-toolbar.md-theme-default.md-accent .md-display-1,.md-toolbar.md-theme-default.md-accent .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-transparent{background-color:transparent;color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-title,.md-toolbar.md-theme-default.md-transparent .md-display-1,.md-toolbar.md-theme-default.md-transparent .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-tooltip.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-tooltip, #fff);background-color:rgba(97,97,97,0.9);background-color:var(--md-theme-default-tooltip-on-background, rgba(97,97,97,0.9))}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/default.css\"],\"names\":[],\"mappings\":\"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\",\"file\":\"default.css\",\"sourcesContent\":[\":root{--md-theme-default-primary:#448aff;--md-theme-default-accent:#ff5252;--md-theme-default-theme:\\\"light\\\"}.md-theme-default :not(input):not(textarea)::selection{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-theme-default a:not(.md-button){color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-theme-default a:not(.md-button):hover{color:rgba(68,138,255,0.8);color:var(--md-theme-default-primary-on-background, rgba(68,138,255,0.8))}.md-theme-default a:not(.md-button).md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-theme-default a:not(.md-button).md-accent:hover{color:rgba(255,82,82,0.8);color:var(--md-theme-default-accent-on-background, rgba(255,82,82,0.8))}html.md-theme-default{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-theme-default .md-caption,.md-theme-default .md-display-1,.md-theme-default .md-display-2,.md-theme-default .md-display-3,.md-theme-default .md-display-4{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background-variant, rgba(0,0,0,0.54))}.md-scrollbar.md-theme-default::-webkit-scrollbar-corner,.md-scrollbar.md-theme-default::-webkit-scrollbar-track{background:#e1e1e1;background:var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1)}.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb{background:#757575;background:var(--md-theme-default-scrollbar-on-background-variant, #757575)}.md-app:not(.md-overlap).md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-autocomplete-loading{background-color:rgba(255,255,255,0.54);background-color:var(--md-theme-default-background, rgba(255,255,255,0.54))}.md-autocomplete.md-theme-default.md-autocomplete-box{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-background, rgba(255,255,255,0.12))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);-webkit-text-fill-color:#fff;-webkit-text-fill-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));-webkit-text-fill-color:rgba(0,0,0,0.38);-webkit-text-fill-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-autocomplete-box-content.md-theme-default:after{background-color:#fff;background-color:var(--md-theme-default-background, #fff);border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-avatar.md-theme-default.md-avatar-icon{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-icon-disabled, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-icon-disabled, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-icon-disabled, #fff)}.md-avatar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-avatar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-avatar.md-theme-default.md-accent.md-avatar-icon{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-bottom-bar.md-theme-default.md-type-shift{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-type-shift>.md-ripple .md-ripple-wave{background-color:#116aff;background-color:var(--md-theme-default-primary-on-primary, #116aff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-bottom-bar.md-theme-default.md-accent.md-type-shift>.md-ripple .md-ripple-wave{background-color:#ff1f1f;background-color:var(--md-theme-default-accent-on-accent, #ff1f1f)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon{color:#fff;color:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg{fill:#fff;fill:var(--md-theme-default-icon-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-primary .md-icon-image{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-button.md-theme-default.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-accent .md-icon-image{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-button.md-theme-default.md-raised[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-button.md-theme-default.md-raised:not([disabled]){background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-button.md-theme-default.md-raised:not([disabled]).md-primary{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff);background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab[disabled]{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-disabled-background-on-background, rgba(0,0,0,0.12))}.md-button.md-theme-default.md-fab:not([disabled]){background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-button.md-theme-default[disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-button.md-theme-default[disabled] .md-icon-font{color:rgba(0,0,0,0.38);color:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-button.md-theme-default[disabled] .md-icon-image{fill:rgba(0,0,0,0.38);fill:var(--md-theme-default-icon-disabled-on-background, rgba(0,0,0,0.38))}.md-card.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-expand .md-card-actions{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54));fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.54))}.md-card.md-theme-default>.md-card-area:after{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-card.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-primary>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-primary, rgba(255,255,255,0.12))}.md-card.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:rgba(255,255,255,0.54);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54));fill:rgba(255,255,255,0.54);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.54))}.md-card.md-theme-default.md-accent>.md-card-area:after{background-color:rgba(255,255,255,0.12);background-color:var(--md-theme-default-divider-on-accent, rgba(255,255,255,0.12))}.md-checkbox.md-theme-default.md-checked .md-checkbox-container{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after{border-color:#fff;border-color:var(--md-theme-default-background, #fff)}.md-checkbox.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-checkbox.md-theme-default .md-checkbox-container{border-color:rgba(0,0,0,0.54)}.md-checkbox.md-theme-default.md-disabled .md-checkbox-container{border-color:rgba(0,0,0,0.26)}.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container{border-color:rgba(0,0,0,0.26);background-color:rgba(0,0,0,0.26)}.md-chip.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary, rgba(0,0,0,0.87))}.md-chip.md-theme-default .md-icon.md-icon-image svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-primary, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon{fill:#fff;fill:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg,.md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54));color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-chip.md-theme-default.md-primary .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover{color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff);background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54))}.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-chip.md-theme-default.md-accent .md-input-action{color:#fff;color:var(--md-theme-default-icon-on-disabled, #fff);background-color:rgba(0,0,0,0.26);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.26))}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover{background-color:rgba(0,0,0,0.54);background-color:var(--md-theme-default-icon, rgba(0,0,0,0.54));color:#fff;color:var(--md-theme-default-text-primary-on-icon, #fff)}.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action,.md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action{background-color:rgba(255,255,255,0.87);background-color:var(--md-theme-default-background, rgba(255,255,255,0.87))}.md-chip.md-theme-default.md-disabled{background-color:rgba(0,0,0,0.1);background-color:var(--md-theme-default-highlight, rgba(0,0,0,0.1));color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent, rgba(0,0,0,0.54))}.md-chips.md-theme-default .md-clear{background-color:rgba(0,0,0,0.2)}.md-content.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-content.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-content.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-app .md-content.md-theme-default{border-left-color:rgba(0,0,0,0.12);border-left-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-header{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after,.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-datepicker-dialog.md-theme-default .md-datepicker-week{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-datepicker-dialog.md-theme-default .md-datepicker-disabled{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-datepicker-dialog.md-theme-default .md-datepicker-today{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,.md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-dialog.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-divider.md-theme-default{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider, rgba(0,0,0,0.12))}.md-drawer.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-drawer.md-theme-default.md-persistent-mini{border-right-color:rgba(0,0,0,0.12);border-right-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-empty-state.md-theme-default.md-rounded{background-color:rgba(0,0,0,0.06);background-color:var(--md-theme-default-disabled, rgba(0,0,0,0.06))}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-field.md-theme-default:after{background-color:rgba(0,0,0,0.42)}.md-field.md-theme-default:before{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default .md-helper-text,.md-field.md-theme-default .md-count,.md-field.md-theme-default label{color:rgba(0,0,0,0.54)}.md-field.md-theme-default .md-input::-webkit-input-placeholder,.md-field.md-theme-default .md-textarea::-webkit-input-placeholder{color:rgba(0,0,0,0.54)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-has-value .md-input,.md-field.md-theme-default.md-has-value .md-textarea{-webkit-text-fill-color:rgba(0,0,0,0.87)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after{border-color:rgba(0,0,0,0.42)}.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-field.md-theme-default.md-disabled:after{background-image:linear-gradient(to right, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.38) 33%, transparent 0%)}.md-field.md-theme-default.md-disabled label,.md-field.md-theme-default.md-disabled .md-input,.md-field.md-theme-default.md-disabled .md-textarea{color:rgba(0,0,0,0.42)}.md-field.md-theme-default>.md-icon:after{background-color:#fafafa;background-color:var(--md-theme-default-background-variant, #fafafa)}.md-field.md-theme-default.md-invalid:after{background-color:#ff1744;background-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before{border-color:#ff1744;border-color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid label{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-error{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-invalid .md-date-icon,.md-field.md-theme-default.md-invalid .md-date-icon svg{color:#ff1744;color:var(--md-theme-default-fieldvariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-fieldvariant, #ff1744)}.md-field.md-theme-default.md-focused .md-input,.md-field.md-theme-default.md-focused .md-textarea,.md-field.md-theme-default.md-highlight .md-input,.md-field.md-theme-default.md-highlight .md-textarea{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused>.md-icon,.md-field.md-theme-default.md-highlight>.md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff);fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-focused label{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-field.md-theme-default.md-disabled .md-icon svg{fill:rgba(0,0,0,0.26);fill:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-icon.md-theme-default.md-icon-image svg{fill:rgba(0,0,0,0.54);fill:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-image svg.md-primary{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-image svg.md-accent{fill:#ff5252;fill:var(--md-theme-default-accent-on-background, #ff5252)}.md-icon.md-theme-default.md-icon-font{color:rgba(0,0,0,0.54);color:var(--md-theme-default-icon-on-background, rgba(0,0,0,0.54))}.md-icon.md-theme-default.md-icon-font.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-icon.md-theme-default.md-icon-font.md-accent{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-list.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3){color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-list.md-theme-default .md-highlight .md-list-item-container{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-list.md-theme-default .md-list-item-container{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12));color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-list.md-theme-default [disabled]{color:rgba(0,0,0,0.26);color:var(--md-theme-default-disabled-on-background, rgba(0,0,0,0.26))}.md-list.md-theme-default .md-selected .md-list-item-content,.md-list.md-theme-default .router-link-exact-active .md-list-item-content{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-list.md-theme-default .md-list-item-expand.md-active{border-color:rgba(0,0,0,0.12);border-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-menu-item.md-theme-default.md-primary .md-list-item-link,.md-menu-item.md-theme-default.md-primary .md-list-item-router,.md-menu-item.md-theme-default.md-primary .md-list-item-button{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-menu-item.md-theme-default.md-accent .md-list-item-link,.md-menu-item.md-theme-default.md-accent .md-list-item-router,.md-menu-item.md-theme-default.md-accent .md-list-item-button{color:#ff5252;color:var(--md-theme-default-accent-on-background, #ff5252)}.md-progress-bar.md-theme-default.md-indeterminate,.md-progress-bar.md-theme-default.md-query{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-indeterminate.md-accent,.md-progress-bar.md-theme-default.md-query.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,.md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-determinate{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-determinate.md-accent{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer{border-color:rgba(68,138,255,0.38);border-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer{border-color:rgba(255,82,82,0.38);border-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-progress-spinner.md-theme-default .md-progress-spinner-circle{stroke:#448aff;stroke:var(--md-theme-default-primary, #448aff)}.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle{stroke:#ff5252;stroke:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-radio-container:after{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-radio.md-theme-default .md-radio-container{border-color:rgba(0,0,0,0.54)}.md-radio.md-theme-default.md-disabled .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container{border-color:rgba(0,0,0,0.26)}.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after{background-color:rgba(0,0,0,0.26)}.md-snackbar.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-text-primary, #fff);background-color:#323232}.md-steppers.md-theme-default{background-color:#fff;background-color:var(--md-theme-default-background, #fff);color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-icon:after,.md-steppers.md-theme-default .md-stepper-icon:before,.md-steppers.md-theme-default .md-stepper-number:after,.md-steppers.md-theme-default .md-stepper-number:before,.md-steppers.md-theme-default .md-stepper:after,.md-steppers.md-theme-default .md-stepper:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-number{background-color:rgba(0,0,0,0.38);background-color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38));color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-text-hint, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-text-hint, #fff)}.md-steppers.md-theme-default .md-stepper-header .md-button-content{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-hint-on-background, rgba(0,0,0,0.38))}.md-steppers.md-theme-default .md-stepper-header .md-button-content:after,.md-steppers.md-theme-default .md-stepper-header .md-button-content:before{background-color:rgba(0,0,0,0.12);background-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content,.md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg,.md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff);fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744)}.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg{color:#ff1744;color:var(--md-theme-default-steppervariant, #ff1744);fill:#ff1744;fill:var(--md-theme-default-steppervariant, #ff1744)}.md-subheader.md-theme-default{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-subheader.md-theme-default.md-primary{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-switch.md-theme-default.md-checked .md-switch-container{background-color:rgba(255,82,82,0.38);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.38))}.md-switch.md-theme-default.md-checked .md-switch-thumb{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked .md-ripple{color:#ff5252;color:var(--md-theme-default-accent, #ff5252)}.md-switch.md-theme-default.md-checked.md-primary .md-switch-container{background-color:rgba(68,138,255,0.38);background-color:var(--md-theme-default-primary-on-, rgba(68,138,255,0.38))}.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default.md-checked.md-primary .md-ripple{color:#448aff;color:var(--md-theme-default-primary, #448aff)}.md-switch.md-theme-default .md-switch-container{background-color:rgba(0,0,0,0.38)}.md-switch.md-theme-default .md-switch-thumb{background-color:#f5f5f5;background-color:var(--md-theme-default-switchvariant, #f5f5f5)}.md-switch.md-theme-default.md-disabled .md-switch-container{background-color:rgba(0,0,0,0.12)}.md-switch.md-theme-default.md-disabled .md-switch-thumb{background-color:#bdbdbd;background-color:var(--md-theme-default-switchvariant, #bdbdbd)}.md-table.md-theme-default .md-table-content,.md-table.md-theme-default .md-table-alternate-header{background-color:#fff;background-color:var(--md-theme-default-background, #fff)}.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));background-color:rgba(255,82,82,0.2);background-color:var(--md-theme-default-accent-on-, rgba(255,82,82,0.2))}.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell{background-color:rgba(0,0,0,0.08);background-color:var(--md-theme-default-highlight-on-background, rgba(0,0,0,0.08))}.md-table.md-theme-default .md-table-row.md-selected,.md-table.md-theme-default .md-table-row.md-selected-single{background-color:#f5f5f5;background-color:var(--md-theme-default-rowvariant, #f5f5f5)}.md-table.md-theme-default .md-table-row.md-selected.md-primary,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after{border-color:#448aff;border-color:var(--md-theme-default-primary, #448aff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple{color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container{background-color:#fff;border-color:#fff}.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after,.md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after{border-color:#ff5252;border-color:var(--md-theme-default-accent, #ff5252)}.md-table.md-theme-default .md-table-row td{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-table-head{color:rgba(0,0,0,0.54);color:var(--md-theme-default-text-accent-on-background, rgba(0,0,0,0.54))}.md-table.md-theme-default .md-table-fixed-header-active{border-bottom-color:rgba(0,0,0,0.12);border-bottom-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-table.md-theme-default .md-sortable:hover,.md-table.md-theme-default .md-sortable.md-sorted{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-sortable:hover svg,.md-table.md-theme-default .md-sortable.md-sorted svg{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87));fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-table.md-theme-default .md-table-pagination{border-top-color:rgba(0,0,0,0.12);border-top-color:var(--md-theme-default-divider-on-background, rgba(0,0,0,0.12))}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default .md-tabs-navigation{background-color:#fff;background-color:var(--md-theme-default-background-on-background, #fff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled]{color:rgba(0,0,0,0.38);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.38))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon{color:rgba(0,0,0,0.7);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg{fill:rgba(0,0,0,0.7);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.7))}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon{color:#448aff;color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#448aff;fill:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default .md-tabs-indicator{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation{background-color:#448aff;background-color:var(--md-theme-default-primary-on-background, #448aff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-primary, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-primary .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation{background-color:#ff5252;background-color:var(--md-theme-default-accent-on-background, #ff5252)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled]{color:rgba(255,255,255,0.38);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.38))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon{color:rgba(255,255,255,0.7);color:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg{fill:rgba(255,255,255,0.7);fill:var(--md-theme-default-text-primary-on-accent, rgba(255,255,255,0.7))}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-tabs.md-theme-default.md-accent .md-tabs-indicator{background-color:#fff;background-color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87));background-color:#f5f5f5;background-color:var(--md-theme-default-toolbarvariant, #f5f5f5)}.md-toolbar.md-theme-default .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default .md-title,.md-toolbar.md-theme-default .md-display-1,.md-toolbar.md-theme-default .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background-variant, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-primary{background-color:#448aff;background-color:var(--md-theme-default-primary, #448aff);color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-primary .md-title,.md-toolbar.md-theme-default.md-primary .md-display-1,.md-toolbar.md-theme-default.md-primary .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-primary, #fff)}.md-toolbar.md-theme-default.md-accent{background-color:#ff5252;background-color:var(--md-theme-default-accent, #ff5252);color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-icon svg{fill:#fff;fill:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised){color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-accent .md-title,.md-toolbar.md-theme-default.md-accent .md-display-1,.md-toolbar.md-theme-default.md-accent .md-display-2{color:#fff;color:var(--md-theme-default-text-primary-on-accent, #fff)}.md-toolbar.md-theme-default.md-transparent{background-color:transparent;color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-icon svg{fill:rgba(0,0,0,0.87);fill:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-toolbar.md-theme-default.md-transparent .md-title,.md-toolbar.md-theme-default.md-transparent .md-display-1,.md-toolbar.md-theme-default.md-transparent .md-display-2{color:rgba(0,0,0,0.87);color:var(--md-theme-default-text-primary-on-background, rgba(0,0,0,0.87))}.md-tooltip.md-theme-default{color:#fff;color:var(--md-theme-default-text-primary-on-tooltip, #fff);background-color:rgba(97,97,97,0.9);background-color:var(--md-theme-default-tooltip-on-background, rgba(97,97,97,0.9))}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzcz8wZTE5Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIjpyb290ey0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5OiM0NDhhZmY7LS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudDojZmY1MjUyOy0tbWQtdGhlbWUtZGVmYXVsdC10aGVtZTpcXFwibGlnaHRcXFwifS5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVye2NvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDY4LDEzOCwyNTUsMC44KSl9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVye2NvbG9yOnJnYmEoMjU1LDgyLDgyLDAuOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgyNTUsODIsODIsMC44KSl9aHRtbC5tZC10aGVtZS1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yLC5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTMsLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktNHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6I2UxZTFlMTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLWJhY2tncm91bmQtb24tYmFja2dyb3VuZC12YXJpYW50LCAjZTFlMWUxKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izc1NzU3NTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSl9Lm1kLWFwcDpub3QoLm1kLW92ZXJsYXApLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWF1dG9jb21wbGV0ZS1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCwubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiNmZmY7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjM4KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1hdXRvY29tcGxldGUtYm94LWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdDphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtYXZhdGFyLWljb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6IzExNmFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjMTE2YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW17Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmY1MjUyO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6I2ZmMWYxZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgI2ZmMWYxZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmNTI1MjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWRbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pe2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSl7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24taW1hZ2V7ZmlsbDpyZ2JhKDAsMCwwLDAuMzgpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpe2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2ZpbGw6cmdiYSgwLDAsMCwwLjU0KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQ+Lm1kLWNhcmQtYXJlYTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4xMikpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNTQpKTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjEyKSl9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtib3JkZXItY29sb3I6I2ZmNTI1Mjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKTtib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLDAsMCwwLjEyKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeSwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtcHJpbWFyeSwgI2ZmZik7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb257ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjg3KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjg3KSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC44Nyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LDI1NSwyNTUsMC44NykpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWlucHV0LWFjdGlvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1kaXNhYmxlZCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuODcpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuODcpKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwwLDAsMC4xKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtY2hpcHMubWQtdGhlbWUtZGVmYXVsdCAubWQtY2xlYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWZvb3RlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2Vla3tjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjI2KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uOmhvdmVyLC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXBlcnNpc3RlbnQtbWluaXtib3JkZXItcmlnaHQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4yNik7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMjYpKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4wNikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oZWxwZXItdGV4dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtY291bnQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMCwwLDAsMC41NCl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhey13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnJnYmEoMCwwLDAsMC44Nyl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwwLDAsMC4zOCkgMCUsIHJnYmEoMCwwLDAsMC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYXtjb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Pi5tZC1pY29uOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMTc0NDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNmZjE3NDQ7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIGxhYmVse2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9ye2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIC5tZC1kYXRlLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO2ZpbGw6I2ZmMTc0NDtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWF7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZD4ubWQtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQ+Lm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgbGFiZWx7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1wcmltYXJ5e2ZpbGw6IzQ0OGFmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLWFjY2VudHtmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250Lm1kLWFjY2VudHtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMil7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlciwubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5e2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50LC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMjU1LDgyLDgyLDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdCAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1jaXJjbGV7c3Ryb2tlOiM0NDhhZmY7c3Ryb2tlOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle3N0cm9rZTojZmY1MjUyO3N0cm9rZTp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1zbmFja2Jhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzJ9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlciBzdmd7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZil9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtYnV0dG9uLWNvbnRlbnR7Y29sb3I6I2ZmMTc0NDtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7ZmlsbDojZmYxNzQ0O2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCl9Lm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDgyLDgyLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZXtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zOCl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjZjVmNWY1KX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2JkYmRiZDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2JkYmRiZCl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciAubWQtdGFibGUtdG9vbGJhcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpO2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4yKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdzpob3Zlcjpub3QoLm1kLWhlYWRlci1yb3cpIC5tZC10YWJsZS1jZWxse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4wOCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnksLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1yaXBwbGUsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWhlYWR7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZle2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtc29ydGFibGU6aG92ZXIsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciBzdmcsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmd7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKTtmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcGFnaW5hdGlvbntib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjcpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpe2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOm5vdCgubWQtcmFpc2VkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjg3KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbHRpcC5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdG9vbHRpcCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDk3LDk3LDk3LDAuOSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2x0aXAtb24tYmFja2dyb3VuZCwgcmdiYSg5Nyw5Nyw5NywwLjkpKX1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQSxNQUFNLG1DQUFtQyxrQ0FBa0MsZ0NBQWdDLENBQUMsNERBQXVELHlCQUF5Qix1RUFBdUUsV0FBVywwREFBMEQsQ0FBNU4sdURBQXVELHlCQUF5Qix1RUFBdUUsV0FBVywwREFBMEQsQ0FBQyxvQ0FBb0MsY0FBYyw0REFBNEQsQ0FBQywwQ0FBMEMsMkJBQTJCLHlFQUF5RSxDQUFDLDhDQUE4QyxjQUFjLDJEQUEyRCxDQUFDLG9EQUFvRCwwQkFBMEIsdUVBQXVFLENBQUMsc0JBQXNCLHlCQUF5QixxRUFBcUUsdUJBQXVCLGtGQUFrRixDQUFDLDhKQUE4Six1QkFBdUIsaUZBQWlGLENBQUMsaUhBQWlILG1CQUFtQixzRkFBc0YsQ0FBQyx3REFBd0QsbUJBQW1CLDJFQUEyRSxDQUFDLDBDQUEwQyxzQkFBc0IseURBQXlELENBQUMsMEVBQTBFLGNBQWMsNERBQTRELENBQUMsbURBQW1ELHdDQUF3QywyRUFBMkUsQ0FBQyxzREFBc0Qsc0JBQXNCLHlEQUF5RCxDQUFDLHVFQUF1RSx1QkFBdUIsdUVBQXVFLENBQUMsa0VBQWtFLHdDQUF3QywyRUFBMkUsQ0FBQyxnSkFBZ0osV0FBVyw0REFBNEQsNkJBQTZCLDZFQUE2RSxDQUFDLHNFQUFzRSxVQUFVLDBEQUEwRCxDQUFDLDZFQUE2RSxzQkFBc0IseURBQXlELENBQUMsc0tBQXNLLHVCQUF1Qix3RUFBd0UseUNBQXlDLHlGQUF5RixDQUFDLGlGQUFpRixzQkFBc0Isc0VBQXNFLENBQUMsb0RBQW9ELHNCQUFzQiwwREFBMEQscUNBQXFDLHFFQUFxRSxDQUFDLDJDQUEyQyxrQ0FBa0MseUVBQXlFLFdBQVcsaUVBQWlFLENBQUMsb0RBQW9ELFdBQVcsa0VBQWtFLFVBQVUsZ0VBQWdFLENBQUMsdUNBQXVDLHlCQUF5Qix5REFBeUQsQ0FBQyxzREFBc0QseUJBQXlCLDBEQUEwRCxXQUFXLDJEQUEyRCxDQUFDLCtEQUErRCxXQUFXLDREQUE0RCxVQUFVLDBEQUEwRCxDQUFDLHNDQUFzQyx5QkFBeUIsd0RBQXdELENBQUMscURBQXFELHlCQUF5Qix5REFBeUQsV0FBVywwREFBMEQsQ0FBQyw4REFBOEQsV0FBVywyREFBMkQsVUFBVSx5REFBeUQsQ0FBQyw4Q0FBOEMsc0JBQXNCLHlEQUF5RCxDQUFDLDRFQUE0RSxjQUFjLDREQUE0RCxDQUFDLHFGQUFxRixjQUFjLDREQUE0RCxDQUFDLHlGQUF5RixhQUFhLDJEQUEyRCxDQUFDLDhDQUE4Qyx5QkFBeUIsMERBQTBELDRCQUE0Qiw0RUFBNEUsQ0FBQyx5RUFBeUUseUJBQXlCLG9FQUFvRSxDQUFDLHVEQUF1RCxXQUFXLG1EQUFtRCxDQUFDLDJEQUEyRCxVQUFVLGtEQUFrRCxDQUFDLGtFQUFrRSxXQUFXLDJEQUEyRCxDQUFDLHNGQUFzRixXQUFXLDJEQUEyRCxDQUFDLDBGQUEwRixVQUFVLDBEQUEwRCxDQUFDLHdEQUF3RCxzQkFBc0IseURBQXlELENBQUMsc0ZBQXNGLGNBQWMsMkRBQTJELENBQUMsK0ZBQStGLGNBQWMsMkRBQTJELENBQUMsbUdBQW1HLGFBQWEsMERBQTBELENBQUMsd0RBQXdELHlCQUF5Qix5REFBeUQsNEJBQTRCLDJFQUEyRSxDQUFDLG1GQUFtRix5QkFBeUIsa0VBQWtFLENBQUMsaUVBQWlFLFdBQVcsa0RBQWtELENBQUMscUVBQXFFLFVBQVUsaURBQWlELENBQUMsNEVBQTRFLFdBQVcsMERBQTBELENBQUMsZ0dBQWdHLFdBQVcsMERBQTBELENBQUMsb0dBQW9HLFVBQVUseURBQXlELENBQUMsNEJBQTRCLHVCQUF1QiwwRUFBMEUsQ0FBQyx1Q0FBdUMsY0FBYyw0REFBNEQsQ0FBQyxxREFBcUQsY0FBYyw0REFBNEQsQ0FBQyxzREFBc0QsYUFBYSwyREFBMkQsQ0FBQyxzQ0FBc0MsY0FBYywyREFBMkQsQ0FBQyxvREFBb0QsY0FBYywyREFBMkQsQ0FBQyxxREFBcUQsYUFBYSwwREFBMEQsQ0FBQyxnREFBZ0Qsa0NBQWtDLDZGQUE2Rix1QkFBdUIsd0RBQXdELENBQUMsc0RBQXNELHNCQUFzQiwwREFBMEQsdUJBQXVCLDBFQUEwRSxDQUFDLGlFQUFpRSxXQUFXLDREQUE0RCx5QkFBeUIseURBQXlELENBQUMsK0VBQStFLFdBQVcsMkRBQTJELENBQUMsZ0ZBQWdGLFVBQVUsMERBQTBELENBQUMsZ0VBQWdFLFdBQVcsMkRBQTJELHlCQUF5Qix3REFBd0QsQ0FBQyw4RUFBOEUsV0FBVywwREFBMEQsQ0FBQywrRUFBK0UsVUFBVSx5REFBeUQsQ0FBQyw2Q0FBNkMsa0NBQWtDLDRGQUE0RixDQUFDLG1EQUFtRCx5QkFBeUIsd0RBQXdELENBQUMsaUVBQWlFLFdBQVcsMERBQTBELENBQUMsa0VBQWtFLFVBQVUseURBQXlELENBQUMsOERBQThELHlCQUF5Qix5REFBeUQsQ0FBQyw0RUFBNEUsV0FBVywyREFBMkQsQ0FBQyw2RUFBNkUsVUFBVSwwREFBMEQsQ0FBQyxzQ0FBc0MsdUJBQXVCLHNFQUFzRSxDQUFDLG9EQUFvRCx1QkFBdUIsMkVBQTJFLENBQUMscURBQXFELHNCQUFzQiwwRUFBMEUsQ0FBQywwQkFBMEIsc0JBQXNCLDBEQUEwRCx1QkFBdUIsMEVBQTBFLENBQUMsMkRBQTJELHNCQUFzQix5REFBeUQsQ0FBQyw2S0FBNkssdUJBQXVCLDBFQUEwRSxDQUFDLDZOQUE2Tix1QkFBdUIsMkVBQTJFLHNCQUFzQix5RUFBeUUsQ0FBQyw4Q0FBOEMsa0NBQWtDLGdGQUFnRixDQUFDLHFDQUFxQyx5QkFBeUIsMERBQTBELFdBQVcsMkRBQTJELENBQUMsc0VBQXNFLHlCQUF5Qix5REFBeUQsQ0FBQyxtTUFBbU0sV0FBVywyREFBMkQsQ0FBQyxtUEFBbVAsNkJBQTZCLDhFQUE4RSw0QkFBNEIsNEVBQTRFLENBQUMseURBQXlELHdDQUF3QyxtRkFBbUYsQ0FBQyxvQ0FBb0MseUJBQXlCLHlEQUF5RCxXQUFXLDBEQUEwRCxDQUFDLHFFQUFxRSx5QkFBeUIsd0RBQXdELENBQUMsaU1BQWlNLFdBQVcsMERBQTBELENBQUMsaVBBQWlQLDZCQUE2Qiw2RUFBNkUsNEJBQTRCLDJFQUEyRSxDQUFDLHdEQUF3RCx3Q0FBd0Msa0ZBQWtGLENBQUMsZ0VBQWdFLHlCQUF5Qix5REFBeUQscUJBQXFCLG9EQUFvRCxDQUFDLHNFQUFzRSxrQkFBa0IscURBQXFELENBQUMsb0RBQW9ELGNBQWMsNkNBQTZDLENBQUMsMkVBQTJFLHlCQUF5QiwwREFBMEQscUJBQXFCLHFEQUFxRCxDQUFDLCtEQUErRCxjQUFjLDhDQUE4QyxDQUFDLHFEQUFxRCw2QkFBNkIsQ0FBQyxpRUFBaUUsNkJBQTZCLENBQUMsNEVBQTRFLDhCQUE4QixpQ0FBaUMsQ0FBQywwQkFBMEIsa0NBQWtDLHFFQUFxRSx1QkFBdUIsNERBQTRELENBQUMscURBQXFELFdBQVcsaUVBQWlFLFVBQVUsK0RBQStELENBQUMsOEhBQThILGtDQUFrQyxnRUFBZ0UsV0FBVyx3REFBd0QsQ0FBQyxnSkFBZ0osVUFBVSx1REFBdUQsQ0FBQyxnS0FBZ0ssd0NBQXdDLDRFQUE0RSx1QkFBdUIsa0VBQWtFLENBQUMsMExBQTBMLHNCQUFzQixrRUFBa0UsdUJBQXVCLGtFQUFrRSxDQUFDLHFDQUFxQyx5QkFBeUIsMERBQTBELFdBQVcsMkRBQTJELENBQUMsc0RBQXNELFdBQVcscURBQXFELGtDQUFrQyxtRUFBbUUsQ0FBQyxvSkFBb0osV0FBVyx5REFBeUQsa0NBQWtDLCtEQUErRCxDQUFDLHNMQUFzTCx3Q0FBd0MsMkVBQTJFLENBQUMsb0NBQW9DLHlCQUF5Qix5REFBeUQsV0FBVywwREFBMEQsQ0FBQyxxREFBcUQsV0FBVyxxREFBcUQsa0NBQWtDLG1FQUFtRSxDQUFDLGtKQUFrSixrQ0FBa0MsZ0VBQWdFLFdBQVcsd0RBQXdELENBQUMsb0xBQW9MLHdDQUF3QywyRUFBMkUsQ0FBQyxzQ0FBc0MsaUNBQWlDLG9FQUFvRSx1QkFBdUIsMkRBQTJELENBQUMscUNBQXFDLGdDQUFnQyxDQUFDLDZCQUE2QixzQkFBc0IsMERBQTBELHVCQUF1QiwwRUFBMEUsQ0FBQyx3Q0FBd0MseUJBQXlCLDBEQUEwRCxXQUFXLDJEQUEyRCxDQUFDLHVDQUF1Qyx5QkFBeUIseURBQXlELFdBQVcsMERBQTBELENBQUMscUNBQXFDLG1DQUFtQyxpRkFBaUYsQ0FBQyx1Q0FBdUMsc0JBQXNCLDBEQUEwRCx1QkFBdUIsMEVBQTBFLENBQUMsNkRBQTZELHlCQUF5QiwwREFBMEQsV0FBVywyREFBMkQsQ0FBQyxpSkFBaUosc0JBQXNCLHlEQUF5RCxDQUFDLGtFQUFrRSxzQkFBc0IsMERBQTBELHVCQUF1QiwwRUFBMEUsQ0FBQywyREFBMkQsdUJBQXVCLHlFQUF5RSxDQUFDLCtEQUErRCx1QkFBdUIsc0VBQXNFLENBQUMsNERBQTRELGNBQWMsNERBQTRELENBQUMsd05BQXdOLGtDQUFrQyxrRUFBa0UsQ0FBQyx3RkFBd0YseUJBQXlCLDBEQUEwRCxXQUFXLDJEQUEyRCxDQUFDLG1MQUFtTCxjQUFjLDREQUE0RCxDQUFDLG9FQUFvRSxxQ0FBcUMsbUZBQW1GLENBQUMsNEJBQTRCLHNCQUFzQiwwREFBMEQsdUJBQXVCLDBFQUEwRSxDQUFDLDZCQUE2QixrQ0FBa0Msa0VBQWtFLENBQUMsNEJBQTRCLHNCQUFzQiwwREFBMEQsdUJBQXVCLDBFQUEwRSxDQUFDLCtDQUErQyxvQ0FBb0Msa0ZBQWtGLENBQUMsd0VBQXdFLHNCQUFzQixxRUFBcUUsQ0FBQyxtRUFBbUUsdUJBQXVCLHNFQUFzRSxDQUFDLDRDQUE0QyxrQ0FBa0MsbUVBQW1FLENBQUMsbUZBQW1GLGFBQWEsMkRBQTJELENBQUMsOEVBQThFLGNBQWMsNERBQTRELENBQUMsa0ZBQWtGLGFBQWEsMERBQTBELENBQUMsNkVBQTZFLGNBQWMsMkRBQTJELENBQUMsaUNBQWlDLGlDQUFpQyxDQUFDLGtDQUFrQyx5QkFBeUIseURBQXlELENBQUMsaUhBQWlILHNCQUFzQixDQUFDLG1JQUFtSSxzQkFBc0IsQ0FBQywwTUFBME0sd0NBQXdDLENBQUMsbUVBQW1FLDZCQUE2QixDQUFDLG9FQUFvRSxxQkFBcUIscURBQXFELENBQUMsNkNBQTZDLHFHQUFxRyxDQUFDLGtKQUFrSixzQkFBc0IsQ0FBQywwQ0FBMEMseUJBQXlCLG9FQUFvRSxDQUFDLDRDQUE0Qyx5QkFBeUIsOERBQThELENBQUMsK0VBQStFLHFCQUFxQiwwREFBMEQsQ0FBQyw0Q0FBNEMsY0FBYyxtREFBbUQsQ0FBQyxnREFBZ0QsY0FBYyxtREFBbUQsQ0FBQyw0R0FBNEcsY0FBYyxvREFBb0QsYUFBYSxrREFBa0QsQ0FBQywwTUFBME0sY0FBYyw0REFBNEQsQ0FBQyxnR0FBZ0csY0FBYyw2REFBNkQsYUFBYSwyREFBMkQsQ0FBQyw0Q0FBNEMsY0FBYyw0REFBNEQsQ0FBQyxvREFBb0Qsc0JBQXNCLHFFQUFxRSxDQUFDLDRDQUE0QyxzQkFBc0IsaUVBQWlFLENBQUMsdURBQXVELGFBQWEsMkRBQTJELENBQUMsc0RBQXNELGFBQWEsMERBQTBELENBQUMsdUNBQXVDLHVCQUF1QixrRUFBa0UsQ0FBQyxrREFBa0QsY0FBYyw0REFBNEQsQ0FBQyxpREFBaUQsY0FBYywyREFBMkQsQ0FBQywwQkFBMEIsc0JBQXNCLDBEQUEwRCx1QkFBdUIsMEVBQTBFLENBQUMsMEVBQTBFLHVCQUF1Qix5RUFBeUUsQ0FBQywwRUFBMEUsdUJBQXVCLHlFQUF5RSxDQUFDLGdFQUFnRSxrQ0FBa0MsZ0ZBQWdGLENBQUMsa0RBQWtELHVCQUF1QiwwRUFBMEUsQ0FBQyxtR0FBbUcsa0NBQWtDLGlGQUFpRix1QkFBdUIsMEVBQTBFLENBQUMscUNBQXFDLHVCQUF1QixzRUFBc0UsQ0FBQyx1SUFBdUksY0FBYyw0REFBNEQsQ0FBQyx5REFBeUQsOEJBQThCLDRFQUE0RSxDQUFDLDJMQUEyTCxjQUFjLDREQUE0RCxDQUFDLHdMQUF3TCxjQUFjLDJEQUEyRCxDQUFDLDhGQUE4Rix1Q0FBdUMsMkVBQTJFLENBQUMsOFNBQThTLHlCQUF5Qix5REFBeUQsQ0FBQyxrSEFBa0gsc0NBQXNDLHlFQUF5RSxDQUFDLHNWQUFzVix5QkFBeUIsd0RBQXdELENBQUMsaURBQWlELHVDQUF1QywyRUFBMkUsQ0FBQyx1RUFBdUUseUJBQXlCLHlEQUF5RCxDQUFDLDJEQUEyRCxzQ0FBc0MseUVBQXlFLENBQUMsaUZBQWlGLHlCQUF5Qix3REFBd0QsQ0FBQyxrRUFBa0UseUJBQXlCLHlEQUF5RCxDQUFDLG1FQUFtRSx1Q0FBdUMsMkVBQTJFLENBQUMsb0VBQW9FLG1DQUFtQyx1RUFBdUUsQ0FBQyw0RUFBNEUseUJBQXlCLHdEQUF3RCxDQUFDLDZFQUE2RSxzQ0FBc0MseUVBQXlFLENBQUMsOEVBQThFLGtDQUFrQyxxRUFBcUUsQ0FBQyxrRUFBa0UsZUFBZSwrQ0FBK0MsQ0FBQyw0RUFBNEUsZUFBZSw4Q0FBOEMsQ0FBQywwREFBMEQscUJBQXFCLG9EQUFvRCxDQUFDLGdFQUFnRSx5QkFBeUIsd0RBQXdELENBQUMsaURBQWlELGNBQWMsNkNBQTZDLENBQUMscUVBQXFFLHFCQUFxQixxREFBcUQsQ0FBQywyRUFBMkUseUJBQXlCLHlEQUF5RCxDQUFDLDREQUE0RCxjQUFjLDhDQUE4QyxDQUFDLCtDQUErQyw2QkFBNkIsQ0FBQywyREFBMkQsNkJBQTZCLENBQUMsc0VBQXNFLDZCQUE2QixDQUFDLDRFQUE0RSxpQ0FBaUMsQ0FBQyw4QkFBOEIsV0FBVyxpRUFBaUUsd0JBQXdCLENBQUMsOEJBQThCLHNCQUFzQiwwREFBMEQsdUJBQXVCLDBFQUEwRSxDQUFDLDJUQUEyVCxrQ0FBa0MsZ0ZBQWdGLENBQUMsaURBQWlELGtDQUFrQyxtRkFBbUYsV0FBVyw2REFBNkQsQ0FBQyxxREFBcUQsV0FBVyw4REFBOEQsVUFBVSw0REFBNEQsQ0FBQyxvRUFBb0UsdUJBQXVCLHVFQUF1RSxDQUFDLHFKQUFxSixrQ0FBa0MsZ0ZBQWdGLENBQUMsMEpBQTBKLHVCQUF1QiwwRUFBMEUsQ0FBQywwSkFBMEoseUJBQXlCLHdFQUF3RSxXQUFXLDJEQUEyRCxDQUFDLGtLQUFrSyxXQUFXLDREQUE0RCxVQUFVLDBEQUEwRCxDQUFDLDZFQUE2RSxjQUFjLHFEQUFxRCxDQUFDLHVFQUF1RSxjQUFjLHNEQUFzRCxhQUFhLG9EQUFvRCxDQUFDLCtCQUErQix1QkFBdUIseUVBQXlFLENBQUMsMENBQTBDLGNBQWMsNERBQTRELENBQUMsNERBQTRELHNDQUFzQyx5RUFBeUUsQ0FBQyx3REFBd0QseUJBQXlCLHdEQUF3RCxDQUFDLGtEQUFrRCxjQUFjLDZDQUE2QyxDQUFDLHVFQUF1RSx1Q0FBdUMsMkVBQTJFLENBQUMsbUVBQW1FLHlCQUF5Qix5REFBeUQsQ0FBQyw2REFBNkQsY0FBYyw4Q0FBOEMsQ0FBQyxpREFBaUQsaUNBQWlDLENBQUMsNkNBQTZDLHlCQUF5QiwrREFBK0QsQ0FBQyw2REFBNkQsaUNBQWlDLENBQUMseURBQXlELHlCQUF5QiwrREFBK0QsQ0FBQyxtR0FBbUcsc0JBQXNCLHlEQUF5RCxDQUFDLHdFQUF3RSx1QkFBdUIsMkVBQTJFLHFDQUFxQyx3RUFBd0UsQ0FBQyxrRkFBa0Ysa0NBQWtDLGtGQUFrRixDQUFDLGlIQUFpSCx5QkFBeUIsNERBQTRELENBQUMsdUlBQXVJLHlCQUF5Qix3RUFBd0UsV0FBVywyREFBMkQsQ0FBQyw2SkFBNkosVUFBVSxDQUFDLHFMQUFxTCxzQkFBc0IsaUJBQWlCLENBQUMsaU1BQWlNLHFCQUFxQixxREFBcUQsQ0FBQyxxSUFBcUkseUJBQXlCLHVFQUF1RSxXQUFXLDBEQUEwRCxDQUFDLDJKQUEySixVQUFVLENBQUMsbUxBQW1MLHNCQUFzQixpQkFBaUIsQ0FBQywrTEFBK0wscUJBQXFCLG9EQUFvRCxDQUFDLDRDQUE0QyxrQ0FBa0MsZ0ZBQWdGLENBQUMsMENBQTBDLHVCQUF1Qix5RUFBeUUsQ0FBQyx5REFBeUQscUNBQXFDLG1GQUFtRixDQUFDLGdHQUFnRyx1QkFBdUIsMEVBQTBFLENBQUMsd0dBQXdHLHVCQUF1QiwyRUFBMkUsc0JBQXNCLHlFQUF5RSxDQUFDLGdEQUFnRCxrQ0FBa0MsZ0ZBQWdGLENBQUMsOENBQThDLHNCQUFzQix1RUFBdUUsQ0FBQyx5REFBeUQsc0JBQXNCLHlFQUF5RSxDQUFDLG1FQUFtRSx1QkFBdUIsMEVBQTBFLENBQUMsa0VBQWtFLHNCQUFzQix5RUFBeUUsQ0FBQyxzRUFBc0UscUJBQXFCLHdFQUF3RSxDQUFDLG1FQUFtRSxjQUFjLDREQUE0RCxDQUFDLDRFQUE0RSxjQUFjLDREQUE0RCxDQUFDLGdGQUFnRixhQUFhLDJEQUEyRCxDQUFDLDZDQUE2Qyx5QkFBeUIsdUVBQXVFLENBQUMseURBQXlELHlCQUF5Qix1RUFBdUUsQ0FBQyxvRUFBb0UsNEJBQTRCLDRFQUE0RSxDQUFDLDhFQUE4RSw2QkFBNkIsNkVBQTZFLENBQUMsNkVBQTZFLDRCQUE0Qiw0RUFBNEUsQ0FBQyxpRkFBaUYsMkJBQTJCLDJFQUEyRSxDQUFDLDhFQUE4RSxXQUFXLDJEQUEyRCxDQUFDLHVGQUF1RixXQUFXLDJEQUEyRCxDQUFDLDJGQUEyRixVQUFVLDBEQUEwRCxDQUFDLHdEQUF3RCxzQkFBc0Isc0VBQXNFLENBQUMsd0RBQXdELHlCQUF5QixzRUFBc0UsQ0FBQyxtRUFBbUUsNEJBQTRCLDJFQUEyRSxDQUFDLDZFQUE2RSw2QkFBNkIsNEVBQTRFLENBQUMsNEVBQTRFLDRCQUE0QiwyRUFBMkUsQ0FBQyxnRkFBZ0YsMkJBQTJCLDBFQUEwRSxDQUFDLDZFQUE2RSxXQUFXLDBEQUEwRCxDQUFDLHNGQUFzRixXQUFXLDBEQUEwRCxDQUFDLDBGQUEwRixVQUFVLHlEQUF5RCxDQUFDLHVEQUF1RCxzQkFBc0IscUVBQXFFLENBQUMsOENBQThDLHNCQUFzQix1RUFBdUUsQ0FBQyx5REFBeUQsc0JBQXNCLHlFQUF5RSxDQUFDLG1FQUFtRSx1QkFBdUIsMEVBQTBFLENBQUMsa0VBQWtFLHNCQUFzQix5RUFBeUUsQ0FBQyxzRUFBc0UscUJBQXFCLHdFQUF3RSxDQUFDLG1FQUFtRSxjQUFjLDREQUE0RCxDQUFDLDRFQUE0RSxjQUFjLDREQUE0RCxDQUFDLGdGQUFnRixhQUFhLDJEQUEyRCxDQUFDLDZDQUE2Qyx5QkFBeUIsdUVBQXVFLENBQUMseURBQXlELHlCQUF5Qix1RUFBdUUsQ0FBQyxvRUFBb0UsNEJBQTRCLDRFQUE0RSxDQUFDLDhFQUE4RSw2QkFBNkIsNkVBQTZFLENBQUMsNkVBQTZFLDRCQUE0Qiw0RUFBNEUsQ0FBQyxpRkFBaUYsMkJBQTJCLDJFQUEyRSxDQUFDLDhFQUE4RSxXQUFXLDJEQUEyRCxDQUFDLHVGQUF1RixXQUFXLDJEQUEyRCxDQUFDLDJGQUEyRixVQUFVLDBEQUEwRCxDQUFDLHdEQUF3RCxzQkFBc0Isc0VBQXNFLENBQUMsd0RBQXdELHlCQUF5QixzRUFBc0UsQ0FBQyxtRUFBbUUsNEJBQTRCLDJFQUEyRSxDQUFDLDZFQUE2RSw2QkFBNkIsNEVBQTRFLENBQUMsNEVBQTRFLDRCQUE0QiwyRUFBMkUsQ0FBQyxnRkFBZ0YsMkJBQTJCLDBFQUEwRSxDQUFDLDZFQUE2RSxXQUFXLDBEQUEwRCxDQUFDLHNGQUFzRixXQUFXLDBEQUEwRCxDQUFDLDBGQUEwRixVQUFVLHlEQUF5RCxDQUFDLHVEQUF1RCxzQkFBc0IscUVBQXFFLENBQUMsNkJBQTZCLHVCQUF1QixtRkFBbUYseUJBQXlCLGdFQUFnRSxDQUFDLHNDQUFzQyx1QkFBdUIsa0ZBQWtGLENBQUMsMENBQTBDLHNCQUFzQixpRkFBaUYsQ0FBQyw2SEFBNkgsdUJBQXVCLGtGQUFrRixDQUFDLHdDQUF3Qyx5QkFBeUIsMERBQTBELFdBQVcsMkRBQTJELENBQUMsaURBQWlELFdBQVcsMkRBQTJELENBQUMscURBQXFELFVBQVUsMERBQTBELENBQUMsbUZBQW1GLFdBQVcsMkRBQTJELENBQUMsOEpBQThKLFdBQVcsMkRBQTJELENBQUMsdUNBQXVDLHlCQUF5Qix5REFBeUQsV0FBVywwREFBMEQsQ0FBQyxnREFBZ0QsV0FBVywwREFBMEQsQ0FBQyxvREFBb0QsVUFBVSx5REFBeUQsQ0FBQyxrRkFBa0YsV0FBVywwREFBMEQsQ0FBQywySkFBMkosV0FBVywwREFBMEQsQ0FBQyw0Q0FBNEMsNkJBQTZCLHVCQUF1QiwwRUFBMEUsQ0FBQyxxREFBcUQsdUJBQXVCLDBFQUEwRSxDQUFDLHlEQUF5RCxzQkFBc0IseUVBQXlFLENBQUMsMEtBQTBLLHVCQUF1QiwwRUFBMEUsQ0FBQyw2QkFBNkIsV0FBVyw0REFBNEQsb0NBQW9DLGtGQUFrRixDQUFDXCIsXCJmaWxlXCI6XCJkZWZhdWx0LmNzc1wiLFwic291cmNlc0NvbnRlbnRcIjpbXCI6cm9vdHstLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTojNDQ4YWZmOy0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6I2ZmNTI1MjstLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6XFxcImxpZ2h0XFxcIn0ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVye2NvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDY4LDEzOCwyNTUsMC44KSl9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVye2NvbG9yOnJnYmEoMjU1LDgyLDgyLDAuOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgyNTUsODIsODIsMC44KSl9aHRtbC5tZC10aGVtZS1kZWZhdWx0e2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yLC5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTMsLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktNHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6I2UxZTFlMTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLWJhY2tncm91bmQtb24tYmFja2dyb3VuZC12YXJpYW50LCAjZTFlMWUxKX0ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izc1NzU3NTtiYWNrZ3JvdW5kOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSl9Lm1kLWFwcDpub3QoLm1kLW92ZXJsYXApLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoe2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWF1dG9jb21wbGV0ZS1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3h7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCwubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiNmZmY7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpOy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjM4KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1hdXRvY29tcGxldGUtYm94LWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdDphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWF2YXRhci1pY29ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtYXZhdGFyLWljb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKTtmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6IzExNmFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjMTE2YWZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW17Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmY1MjUyO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZle2JhY2tncm91bmQtY29sb3I6I2ZmMWYxZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgI2ZmMWYxZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3Zne2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmNTI1MjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWRbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pe2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSl7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnR7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWltYWdle2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udHtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2V7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24taW1hZ2V7ZmlsbDpyZ2JhKDAsMCwwLDAuMzgpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpe2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2ZpbGw6cmdiYSgwLDAsMCwwLjU0KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQ+Lm1kLWNhcmQtYXJlYTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiwubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjU0KSl9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4xMikpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNTQpKTtmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41NCkpfS5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Pi5tZC1jYXJkLWFyZWE6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjEyKSl9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtib3JkZXItY29sb3I6I2ZmNTI1Mjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKTtib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4yNil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLDAsMCwwLjEyKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeSwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtcHJpbWFyeSwgI2ZmZik7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb257ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjg3KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsMjU1LDI1NSwwLjg3KSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNTQpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjI2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3Zlcntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjU0KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC44Nyk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LDI1NSwyNTUsMC44NykpfS5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWlucHV0LWFjdGlvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1kaXNhYmxlZCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyLC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41NCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwwLDAsMC41NCkpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZil9Lm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb257YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuODcpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwyNTUsMjU1LDAuODcpKX0ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwwLDAsMC4xKSk7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtY2hpcHMubWQtdGhlbWUtZGVmYXVsdCAubWQtY2xlYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMil9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5e2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdHtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1ib2R5LWZvb3RlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2Vla3tjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjI2KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4yNikpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uOmhvdmVyLC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXBlcnNpc3RlbnQtbWluaXtib3JkZXItcmlnaHQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOnJnYmEoMCwwLDAsMC4yNik7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMjYpKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1yb3VuZGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA2KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwwLDAsMC4wNikpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250e2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oZWxwZXItdGV4dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtY291bnQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMCwwLDAsMC41NCl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhey13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnJnYmEoMCwwLDAsMC44Nyl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwwLDAsMC4zOCkgMCUsIHJnYmEoMCwwLDAsMC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSl9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYXtjb2xvcjpyZ2JhKDAsMCwwLDAuNDIpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Pi5tZC1pY29uOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMTc0NDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNmZjE3NDQ7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIGxhYmVse2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9ye2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkIC5tZC1kYXRlLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO2ZpbGw6I2ZmMTc0NDtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KX0ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWF7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZD4ubWQtaWNvbiwubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQ+Lm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgbGFiZWx7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjI2KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC41NCk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjU0KSl9Lm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1wcmltYXJ5e2ZpbGw6IzQ0OGFmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLWFjY2VudHtmaWxsOiNmZjUyNTI7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjZmY1MjUyKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1wcmltYXJ5e2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250Lm1kLWFjY2VudHtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMil7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDAsMCwwLDAuMjYpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjI2KSl9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlciwubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9ue2NvbG9yOiNmZjUyNTI7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5e2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50LC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMjU1LDgyLDgyLDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDY4LDEzOCwyNTUsMC4zOCk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDY4LDEzOCwyNTUsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXJ7Ym9yZGVyLWNvbG9yOnJnYmEoNjgsMTM4LDI1NSwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICNmZjUyNTIpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4zOCkpfS5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci1jb2xvcjpyZ2JhKDI1NSw4Miw4MiwwLjM4KTtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdCAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1jaXJjbGV7c3Ryb2tlOiM0NDhhZmY7c3Ryb2tlOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle3N0cm9rZTojZmY1MjUyO3N0cm9rZTp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGV7Y29sb3I6I2ZmNTI1Mjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOiM0NDhhZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgIzQ0OGFmZil9Lm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjU0KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVye2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcntib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjI2KX0ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMjYpfS5tZC1zbmFja2Jhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzJ9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSk7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlciBzdmd7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZil9Lm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4zOCkpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4xMikpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHN2Z3tjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpO2ZpbGw6I2ZmZjtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtYnV0dG9uLWNvbnRlbnR7Y29sb3I6I2ZmMTc0NDtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KX0ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWljb24gc3Zne2NvbG9yOiNmZjE3NDQ7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7ZmlsbDojZmYxNzQ0O2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCl9Lm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC41NCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNTQpKX0ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDgyLDgyLDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDI1NSw4Miw4MiwwLjM4KSl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZXtjb2xvcjojZmY1MjUyO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSg2OCwxMzgsMjU1LDAuMzgpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSg2OCwxMzgsMjU1LDAuMzgpKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zOCl9Lm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjZjVmNWY1KX0ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpfS5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2JkYmRiZDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2JkYmRiZCl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciAubWQtdGFibGUtdG9vbGJhcntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpO2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsODIsODIsMC4yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgyNTUsODIsODIsMC4yKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdzpob3Zlcjpub3QoLm1kLWhlYWRlci1yb3cpIC5tZC10YWJsZS1jZWxse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA4KTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC4wOCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGV7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnksLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcntib3JkZXItY29sb3I6IzQ0OGFmZjtib3JkZXItY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjNDQ4YWZmKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnR7YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mik7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1yaXBwbGUsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGV7Y29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZn0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye2JvcmRlci1jb2xvcjojZmY1MjUyO2JvcmRlci1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgI2ZmNTI1Mil9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWhlYWR7Y29sb3I6cmdiYSgwLDAsMCwwLjU0KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC41NCkpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZle2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwwLjEyKTtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMTIpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtc29ydGFibGU6aG92ZXIsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciBzdmcsLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmd7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKTtmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcGFnaW5hdGlvbntib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsMC4xMik7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjEyKSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgwLDAsMCwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuMzgpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDAsMCwwLDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojNDQ4YWZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiM0NDhhZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjojZmY1MjUyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgI2ZmNTI1Mil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRde2NvbG9yOnJnYmEoMCwwLDAsMC4zOCk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjM4KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgwLDAsMCwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjcpO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmV7Y29sb3I6IzQ0OGFmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29ue2NvbG9yOiM0NDhhZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojNDQ4YWZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICM0NDhhZmYpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9ye2JhY2tncm91bmQtY29sb3I6IzQ0OGFmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjNDQ4YWZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgIzQ0OGFmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgyNTUsMjU1LDI1NSwwLjcpKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMzgpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb257Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZle2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLWluZGljYXRvcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICNmZjUyNTIpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF17Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjM4KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC4zOCkpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDI1NSwyNTUsMjU1LDAuNykpfS5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmd7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMjU1LDI1NSwyNTUsMC43KSl9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmd7ZmlsbDojZmZmO2ZpbGw6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3J7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKTtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2Z3tmaWxsOnJnYmEoMCwwLDAsMC44Nyk7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmY7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICM0NDhhZmYpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29ue2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCAjZmZmKX0ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpe2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50e2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjZmY1MjUyKTtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb257Y29sb3I6I2ZmZjtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHN2Z3tmaWxsOiNmZmY7ZmlsbDp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsICNmZmYpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOm5vdCgubWQtcmFpc2VkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWRpc3BsYXktMntjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgI2ZmZil9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLDAsMCwwLjg3KSl9Lm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbntjb2xvcjpyZ2JhKDAsMCwwLDAuODcpO2NvbG9yOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24gc3Zne2ZpbGw6cmdiYSgwLDAsMCwwLjg3KTtmaWxsOnZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwwLDAsMC44NykpfS5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMSwubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTJ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtjb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsMCwwLDAuODcpKX0ubWQtdG9vbHRpcC5tZC10aGVtZS1kZWZhdWx0e2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdG9vbHRpcCwgI2ZmZik7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDk3LDk3LDk3LDAuOSk7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2x0aXAtb24tYmFja2dyb3VuZCwgcmdiYSg5Nyw5Nyw5NywwLjkpKX1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9kZWZhdWx0LmNzc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/theme/default.css\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/vue-material.min.css": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"/*!\\n * vue-material v1.0.0-beta-7\\n * Made with <3 by marcosmoura 2017\\n * Released under the MIT License.\\n */html{height:100%;box-sizing:border-box;transition:background-color .3s cubic-bezier(.25,.8,.25,1)}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,Noto Sans,-apple-system,BlinkMacSystemFont,sans-serif}a:not(.md-button){transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:color,background-color,opacity}audio,canvas,embed,iframe,img,object,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar{width:8px;height:8px;border-radius:8px}.md-scrollbar::-webkit-scrollbar-thumb{border-radius:8px}.md-scrollbar::-webkit-scrollbar-button{display:none}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button){text-decoration:none}a:not(.md-button):hover{text-decoration:underline}button:focus{outline:none}.md-app{display:flex;overflow:hidden;position:relative}.md-app.md-fixed .md-app-scroller{overflow:auto}.md-app.md-fixed-last,.md-app.md-flexible,.md-app.md-overlap,.md-app.md-reveal{transform:translateZ(0)}.md-app.md-fixed-last .md-app-toolbar,.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar,.md-app.md-reveal .md-app-toolbar{position:absolute;top:0}.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar{min-height:0}.md-app.md-flexible .md-toolbar-row:first-child{z-index:2}.md-app.md-flexible .md-toolbar-row:last-child{position:fixed;bottom:0;z-index:1}.md-app.md-flexible .md-display-1{position:fixed}.md-app.md-overlap .md-app-toolbar{z-index:1}.md-app.md-overlap .md-app-content{margin:-64px 24px 24px;position:relative;z-index:2}.md-app-content{padding:16px}.md-app-content>p:first-child{margin-top:0}.md-app-content>p:last-child{margin-bottom:0}.md-app-container{display:flex;overflow:auto;transform:translate3D(0,0,0);transition:padding-left .4s cubic-bezier(.4,0,.2,1);will-change:padding-left}.md-app-container,.md-app-scroller{flex:1}@media (max-width:944px){.md-app.md-overlap .md-app-content{margin:-64px 16px 16px}}@media (max-width:600px){.md-app.md-overlap .md-app-content{margin:-64px 8px 8px}}@media (min-width:600px){.md-app-drawer.md-permanent-card+.md-app-scroller .md-content{padding-left:0;border-left:none}.md-app-content{border-left:1px solid transparent}}.md-app-internal-drawer,.md-app-side-drawer .md-app-container{flex-direction:column}.md-app-internal-drawer .md-app-scroller{overflow:auto}.md-no-elevation{box-shadow:none!important}.md-fixed-last .md-reveal-active,.md-flexible .md-reveal-active,.md-overlap .md-reveal-active,.md-reveal .md-reveal-active{transform:translate3d(0,calc(100% + 10px),0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,transform;will-change:height,box-shadow,transform}.md-overlap .md-app-toolbar{height:196px}.md-fixed-last-active{transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,transform;will-change:height,box-shadow,transform}.md-overlap-off{z-index:3!important}.md-app-content{height:100%}.md-app-content .md-card{margin-right:16px;margin-left:16px;overflow:visible}.md-autocomplete .md-menu{width:100%;display:flex}.md-autocomplete-loading{display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;z-index:9}.md-field.md-inline.md-autocomplete-box{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);padding-top:2px;border-radius:2px}.md-field.md-inline.md-autocomplete-box.md-focused{z-index:11}.md-field.md-inline.md-autocomplete-box:after,.md-field.md-inline.md-autocomplete-box:before{display:none}.md-toolbar .md-field.md-inline.md-autocomplete-box{min-height:40px;height:40px;margin:0;box-shadow:none}.md-field.md-inline.md-autocomplete-box .md-menu{align-items:center}.md-field.md-inline.md-autocomplete-box .md-input{padding-left:16px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box .md-input-action,.md-field.md-inline.md-autocomplete-box label{top:50%;transform:translateY(-50%)}.md-field.md-inline.md-autocomplete-box .md-input-action{right:8px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box label{margin-top:2px;left:16px}.md-autocomplete-box-content:after{height:6px;position:absolute;top:-6px;right:0;left:0;z-index:11;border-bottom:1px solid;content:\\\"\\\"}.md-avatar{width:40px;min-width:40px;height:40px;margin:auto;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:24px;letter-spacing:-.05em;vertical-align:middle}.md-avatar.md-large{min-width:64px;min-height:64px;border-radius:64px;font-size:32px}.md-avatar.md-large .md-icon{font-size:40px!important}.md-avatar.md-small{width:24px;min-width:24px;height:24px;border-radius:24px;font-size:14px}.md-avatar.md-small .md-icon{font-size:16px!important}.md-avatar .md-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ripple{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;border-radius:50%}.md-bottom-bar{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);width:100%;transition:background-color .5s cubic-bezier(.4,0,.2,1)}.md-bottom-bar>.md-ripple{display:flex;flex-wrap:wrap}.md-bottom-bar.md-type-fixed{justify-content:center}.md-bottom-bar.md-type-fixed .md-bottom-bar-item{min-width:80px;max-width:168px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color;will-change:color}.md-bottom-bar.md-type-fixed .md-bottom-bar-item .md-bottom-bar-label{transform:scale(.8571) translate3D(0,4px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-ripple{padding-top:6px}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-icon{transform:translate3d(0,-2px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-label{transform:translate3D(0,3px,0)}.md-bottom-bar.md-type-shift{justify-content:center}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter-active{transition-duration:1.1s!important}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter{opacity:1}.md-bottom-bar.md-type-shift .md-bottom-bar-item{min-width:56px;max-width:96px;flex:1 1 32px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:padding,min-width,max-width,flex,color;will-change:padding,min-width,max-width,flex,color}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-ripple{padding:16px}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-icon{transform:translate3d(0,8px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-label{opacity:0;transform:scale(.7) translate3d(0,6px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;flex:1 1 72px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-ripple{padding:6px 0 10px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-icon{transform:translateZ(0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-label{opacity:1;transform:translate3d(0,3px,0)}.md-bottom-bar .md-bottom-bar-item{height:56px;margin:0;flex:1;cursor:pointer;border-radius:0;font-size:14px;font-weight:400;line-height:1em;text-transform:none}.md-bottom-bar .md-bottom-bar-item .md-ripple{padding:8px 12px 10px;transition:padding .3s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-bottom-bar .md-bottom-bar-item .md-button-content{position:static;display:flex;flex-direction:column;align-items:center}.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-icon,.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-label{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-ripple{width:100%;height:100%;position:relative;z-index:4;overflow:hidden;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0)}.md-ripple-wave{position:absolute;z-index:1;pointer-events:none;background:currentColor;border-radius:50%;opacity:0;transform:scale(2) translateZ(0)}.md-ripple-wave.md-centered{top:50%;left:50%}.md-ripple-wave~*{position:relative;z-index:2}.md-ripple-enter-active{transition:.8s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform;will-change:opacity,transform}.md-ripple-enter-active.md-centered{transition-duration:1.2s}.md-ripple-enter{opacity:.26;transform:scale(.26) translateZ(0)}.md-button,.md-button-clean{margin:0;padding:0;display:inline-block;position:relative;overflow:hidden;outline:none;background:transparent;border:0;border-radius:0;transition:.4s cubic-bezier(.4,0,.2,1);font-family:inherit;line-height:normal;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button{min-width:88px;height:36px;margin:6px 8px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:2px;font-size:14px;font-weight:500}.md-button:active{outline:none}.md-button[disabled]{pointer-events:none}.md-button:not([disabled]){cursor:pointer}.md-button:not([disabled]).md-focused:before,.md-button:not([disabled]):active:before,.md-button:not([disabled]):hover:before{background-color:currentColor;opacity:.12}.md-button:not([disabled]).md-focused.md-accent:before,.md-button:not([disabled]).md-focused.md-primary:before,.md-button:not([disabled]):active:before{opacity:.2}.md-button:not([disabled]).md-ripple-off:active:before{opacity:.26}.md-button.md-plain.md-button.md-raised:not([disabled]){color:rgba(0,0,0,.87);background-color:#fff}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-font{color:rgba(0,0,0,.87)}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-image{fill:rgba(0,0,0,.87)}.md-button::-moz-focus-inner{padding:0;border:0}.md-button:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,opacity;content:\\\" \\\"}.md-button.md-dense{height:32px;font-size:13px}.md-button.md-raised:not([disabled]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]):active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]).md-ripple-off:active:before{opacity:.2}.md-button+.md-button{margin-left:0}.md-button .md-ripple{padding:0 8px;display:flex;justify-content:center;align-items:center}.md-button-spaced .md-ripple{padding:0 16px}.md-fab,.md-fab .md-ripple,.md-fab:before,.md-icon-button,.md-icon-button .md-ripple,.md-icon-button:before{border-radius:50%}.md-fab.md-dense .md-ripple-wave,.md-fab.md-mini .md-ripple-wave,.md-icon-button .md-ripple-wave{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px}.md-icon-button.md-dense{width:32px;min-width:32px;height:32px}.md-icon-button .md-ripple-enter-active{transition-duration:1.2s}.md-fab{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);width:56px;height:56px;min-width:0;overflow:hidden}.md-fab:active{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-fab.md-dense,.md-fab.md-mini{width:40px;height:40px}.md-fab.md-fab-top-left,.md-fab.md-fab-top-right{position:absolute;top:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right{position:absolute;bottom:24px}.md-fab.md-fab-bottom-center,.md-fab.md-fab-top-center{position:absolute;left:50%;transform:translateX(-50%);top:24px}.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-right{right:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-top-left{left:24px}.md-fab.md-fixed{position:fixed}.md-fab .md-ripple{padding:0}.md-button-content{position:relative;z-index:2}.md-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;z-index:1;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color}.md-card.md-with-hover{cursor:pointer;transition:background-color .3s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.25,.8,.25,1);will-change:background-color,box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card.md-expand-active .md-card-expand-trigger.md-icon-button{transform:rotate(180deg)}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card-header{padding:16px}.md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card-header:last-child{margin-bottom:8px}.md-card-header.md-card-header-flex{display:flex;justify-content:space-between}.md-card-header+.md-card-content{padding-top:0}.md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card-header>img{border-radius:50%}.md-card-header .md-avatar,.md-card-header>img{margin-right:16px;float:left}.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-title{font-size:14px}.md-card-header .md-avatar~.md-subhead,.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-subhead,.md-card-header>img~.md-title{font-weight:500;line-height:20px}.md-card-header .md-button{margin:0}.md-card-header .md-button:last-child{margin-right:-4px}.md-card-header .md-button+.md-button{margin-left:8px}.md-card-header .md-card-header-text{flex:1}.md-card-header .md-card-media{width:80px;height:80px;margin-left:16px;flex:0 0 80px}.md-card-header .md-card-media.md-medium{width:120px;height:120px;flex:0 0 120px}.md-card-header .md-card-media.md-big{width:160px;height:160px;flex:0 0 160px}.md-card-media{position:relative}.md-card-media.md-ratio-16-9{overflow:hidden}.md-card-media.md-ratio-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-16-9 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media.md-ratio-4-3{overflow:hidden}.md-card-media.md-ratio-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-4-3 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media.md-ratio-1-1{overflow:hidden}.md-card-media.md-ratio-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-1-1 img{position:absolute;top:50%;right:0;left:0;transform:translateY(-50%)}.md-card-media+.md-card-header{padding-top:24px}.md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card-media img{width:100%}.md-card-media-actions{padding:16px;display:flex;justify-content:space-between}.md-card-media-actions .md-card-media{max-width:240px;max-height:240px;flex:1}.md-card-media-actions .md-card-actions{margin-left:16px;flex-direction:column;justify-content:flex-start;align-items:center}.md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card-media-cover{position:relative;color:#fff}.md-card-media-cover.md-solid .md-card-area{background-color:rgba(0,0,0,.54)}.md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card-media-cover .md-card-area,.md-card-media-cover .md-card-header{display:flex;flex-direction:column}.md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card-media-cover .md-subhead{opacity:1}.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:#fff!important}.md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card-content:last-of-type{padding-bottom:24px}.md-card-expand{overflow:hidden}.md-card-expand .md-card-actions{position:relative;z-index:2}.md-card-expand .md-card-expand-content{position:relative;z-index:1}.md-card-expand-trigger.md-icon-button{transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card-expand-content{overflow:hidden;transform:translate3D(0,0,0);transition:.4s cubic-bezier(.4,0,.2,1);transition-property:opacity,margin-top;will-change:opacity,margin-top}.md-card-actions{padding:8px;display:flex;align-items:center}.md-card-actions.md-alignment-right{justify-content:flex-end}.md-card-actions.md-alignment-left{justify-content:flex-start}.md-card-actions.md-alignment-space-between{justify-content:space-between}.md-card-actions .md-button{margin:0}.md-card-actions .md-button:first-child{margin-left:0}.md-card-actions .md-button:last-child{margin-right:0}.md-card-actions .md-button+.md-button{margin-left:4px}.md-checkbox{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid transparent;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:after,.md-checkbox .md-checkbox-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;transform:translate(-50%,-50%)}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;top:0;left:5px;z-index:6;border:2px solid transparent;border-top:0;border-left:0;opacity:0;transform:rotate(45deg) scale3D(.15,.15,1)}.md-checkbox .md-checkbox-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%);border-radius:50%}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;transform:rotate(45deg) scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox.md-disabled.md-checked .md-checkbox-container{border-color:transparent!important}.md-checkbox.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-chips.md-field{padding-top:12px;flex-wrap:wrap}.md-chips.md-field.md-has-value label{top:-6px}.md-chips.md-field .md-chip{margin-bottom:4px}.md-chips.md-field .md-chip:last-of-type{margin-right:8px}.md-chips.md-field .md-input{min-width:128px}.md-field{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:flex;position:relative;font-family:inherit}.md-field:after,.md-field:before{position:absolute;bottom:0;right:0;left:0;z-index:1;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:border,opacity,transform;content:\\\" \\\"}.md-field:after{height:1px}.md-field:before{height:2px;z-index:2;opacity:0;transform:scaleX(.12)}.md-field label{position:absolute;top:23px;left:0;pointer-events:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;font-size:16px;line-height:20px}.md-field .md-input,.md-field .md-textarea{width:100%;height:32px;padding:0;display:block;flex:1;border:none;background:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,padding-top,color;font-family:inherit;font-size:1px;line-height:32px}.md-field .md-input[type=date],.md-field .md-textarea[type=date]{font-size:16px}.md-field .md-input[disabled],.md-field .md-textarea[disabled]{cursor:default}.md-field .md-input:focus,.md-field .md-textarea:focus{outline:none}.md-field .md-input::-webkit-input-placeholder,.md-field .md-textarea::-webkit-input-placeholder{font-size:16px;text-shadow:none;-webkit-text-fill-color:initial;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,color}.md-field .md-textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-field .md-count,.md-field .md-error,.md-field .md-helper-text{height:20px;position:absolute;bottom:-22px;font-size:12px;transition:.3s cubic-bezier(.4,0,.2,1)}.md-field .md-error{display:block!important;left:0;opacity:0;transform:translate3d(0,-8px,0)}.md-field .md-count{right:0}.md-field .md-input-action{width:32px;min-width:32px;height:32px;margin:0;position:absolute;top:16px;right:0;transition:.4s cubic-bezier(.4,0,.2,1)}.md-field .md-input-action.md-input-action-enter-active,.md-field .md-input-action.md-input-action-leave-active{opacity:0}.md-field .md-input-action.md-input-action-enter-to{opacity:1}.md-field>.md-icon{margin:4px auto;position:relative;z-index:3;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-field>.md-icon:last-of-type:not(:first-child):after{display:none}.md-field>.md-icon:after{width:37px;height:4px;position:absolute;left:-1px;bottom:-5px;transition:.3s cubic-bezier(.4,0,.2,1);content:\\\"\\\"}.md-field>.md-icon~label{left:36px}.md-field>.md-icon~.md-file,.md-field>.md-icon~.md-input,.md-field>.md-icon~.md-textarea{margin-left:12px}.md-field+.md-has-textarea:not(.md-autogrow){margin-top:36px}.md-field.md-has-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-field.md-has-placeholder .md-input,.md-field.md-has-placeholder .md-textarea{font-size:16px}.md-field.md-has-textarea:not(.md-autogrow):after,.md-field.md-has-textarea:not(.md-autogrow):before{height:auto;pointer-events:none;top:0;bottom:0;transform:none;background:none!important;border:1px solid transparent;border-radius:3px}.md-field.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-has-textarea:not(.md-autogrow) label{top:16px;left:16px}.md-field.md-has-textarea:not(.md-autogrow) .md-textarea{min-height:100px;padding:0 16px;resize:vertical}.md-field.md-has-textarea:not(.md-autogrow)>.md-icon{position:absolute;top:6px;right:6px;z-index:3}.md-field.md-has-textarea:not(.md-autogrow) .md-count{right:6px;bottom:2px}.md-field.md-has-textarea:not(.md-autogrow) .md-clear{top:6px;right:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused label,.md-field.md-has-textarea:not(.md-autogrow).md-has-value label{top:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused .md-textarea,.md-field.md-has-textarea:not(.md-autogrow).md-has-value .md-textarea{padding-top:10px}.md-field.md-has-file:after,.md-field.md-has-file:before,.md-field.md-has-file label{left:36px}.md-field.md-has-file .md-input{margin-left:12px}.md-field.md-focused:before,.md-field.md-highlight:before{opacity:1;transform:scaleX(1);transition:.3s cubic-bezier(.4,0,.2,1);transition-property:border,opacity,transform}.md-field.md-focused label,.md-field.md-has-value label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-field.md-focused .md-input,.md-field.md-focused .md-textarea,.md-field.md-has-value .md-input,.md-field.md-has-value .md-textarea{font-size:16px}.md-field.md-inline label{pointer-events:none}.md-field.md-inline.md-focused label{top:23px;font-size:16px}.md-field.md-inline.md-has-value label{opacity:0}.md-field.md-disabled:after{background:0 100% repeat-x;background-size:4px 1px}.md-field.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px}.md-field.md-has-password .md-toggle-password svg{width:22px;height:22px}.md-field.md-clearable .md-input{padding-right:30px}@keyframes a{10%,90%{transform:translate3d(-1px,0,0)}30%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.md-field.md-invalid.md-has-value label:not(:focus){animation:a .4s cubic-bezier(.4,0,.2,1) both;-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px}.md-field.md-invalid.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-invalid .md-error{opacity:1;transform:translateZ(0)}.md-field.md-invalid .md-helper-text{opacity:0;transform:translate3d(0,-8px,0)}.md-field.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-icon{width:24px;min-width:24px;height:24px;font-size:24px!important;margin:auto;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;align-items:center;justify-content:center;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;font-size:48px!important}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;font-size:72px!important}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;font-size:96px!important}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;font-size:120px!important}.md-icon-image svg{height:100%;flex:1;transition:fill .4s cubic-bezier(.4,0,.2,1)}.md-icon{transition:color .4s cubic-bezier(.4,0,.2,1);direction:ltr;font-family:Material Icons;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-style:normal;letter-spacing:normal;line-height:1;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;white-space:nowrap;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-svg-loader{display:block}.md-svg-loader svg{width:100%}.md-chip{height:32px;padding:0 12px;display:inline-block;cursor:default;border-radius:32px;transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:background-color,color,opacity,transform,box-shadow;will-change:background-color,color,opacity,transform,box-shadow;font-size:13px;line-height:32px;vertical-align:middle;white-space:nowrap}.md-chip:focus{outline:none}.md-chip.md-chip-enter-active,.md-chip.md-chip-leave-active{opacity:0;transform:transformZ(0) scale(.8)}.md-chip.md-chip-enter-to{opacity:1;transform:transformZ(0) scale(1)}.md-chip.md-clickable:not(.md-disabled):active,.md-chip.md-deletable:not(.md-disabled):active,.md-chip.md-focused{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-chip.md-clickable{padding:0;cursor:pointer}.md-chip.md-clickable>.md-ripple{padding:0 12px}.md-chip.md-deletable{padding-right:32px;position:relative}.md-chip.md-deletable.md-clickable{padding-right:0}.md-chip.md-deletable.md-clickable>.md-ripple{padding-right:32px}.md-chip.md-disabled{cursor:default}.md-chip+.md-chip{margin-left:4px}.md-chip .md-button.md-input-action{width:18px;min-width:18px;height:18px;margin:0;position:absolute;top:50%;right:7px;z-index:5;transform:translate3D(0,-50%,0);transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1);font-size:18px}.md-chip .md-button.md-input-action .md-ripple{padding:0}.md-chip .md-button.md-input-action .md-button-content{height:14px}.md-chip .md-button.md-input-action .md-icon{width:14px;min-width:14px;height:14px;font-size:14px!important;vertical-align:top}.md-chip .md-button.md-input-action .md-icon svg{transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1)}.md-datepicker-overlay{opacity:0}.md-datepicker .md-date-icon{cursor:pointer}.md-datepicker input[type=date]::-webkit-calendar-picker-indicator,.md-datepicker input[type=date]::-webkit-clear-button,.md-datepicker input[type=date]::-webkit-inner-spin-button{display:none}@media (max-width:600px){.md-datepicker-overlay{opacity:1}}.md-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;background:rgba(0,0,0,.6);transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity;will-change:opacity}.md-overlay.md-fixed,body>.md-overlay{position:fixed}.md-overlay-enter,.md-overlay-leave-active{opacity:0}.md-datepicker-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);display:flex;overflow:hidden;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;transform-origin:top left;transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-datepicker-dialog-leave-active{opacity:0}.md-datepicker-dialog-enter{opacity:0;transform:scale(.9)}.md-datepicker-dialog-enter .md-datepicker-body .md-datepicker-calendar{opacity:0;transform:translate3D(0,10%,0)}.md-datepicker-header{min-width:150px;padding:16px}.md-datepicker-header .md-datepicker-year-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:16px;font-weight:700;letter-spacing:.01em;line-height:24px}.md-datepicker-header .md-datepicker-date-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:32px;font-weight:900;letter-spacing:0;line-height:1.2em}.md-datepicker-header .md-datepicker-dayname{display:block}.md-datepicker-header .md-selected{opacity:1}.md-datepicker-body{width:320px;position:relative;overflow:hidden;transition:width .3s cubic-bezier(.25,.8,.25,1);will-change:width}.md-datepicker-body .md-button{margin:0}.md-datepicker-body-header{padding:8px;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;right:0;left:0;pointer-events:none}.md-datepicker-body-header:after,.md-datepicker-body-header:before{width:48px;height:48px;position:absolute;top:0;z-index:2;pointer-events:none;content:\\\" \\\"}.md-datepicker-body-header:after{left:0}.md-datepicker-body-header:before{right:0}.md-datepicker-body-header .md-button{pointer-events:auto;z-index:3}.md-datepicker-body-header-enter .md-button:first-child,.md-datepicker-body-header-leave-active .md-button:first-child{transform:translate3d(-150%,0,0)}.md-datepicker-body-header-enter .md-button:last-child,.md-datepicker-body-header-leave-active .md-button:last-child{transform:translate3d(150%,0,0)}.md-datepicker-body-content{overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1);will-change:height}.md-datepicker-panel{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-calendar.md-datepicker-view-enter,.md-datepicker-calendar.md-datepicker-view-leave-active{transform:translate3d(0,100%,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter{transform:translate3D(-100%,0,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter .md-datepicker-month-trigger{transform:translate3D(-30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter,.md-datepicker-calendar.md-previous .md-datepicker-month-leave-active{transform:translate3D(100%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter .md-datepicker-month-trigger{transform:translate3D(30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-leave-active{transform:translate3D(-100%,0,0)}.md-datepicker-month{top:8px;bottom:auto;flex-direction:column;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-month .md-datepicker-month-trigger{min-height:32px;margin:0 46px 10px;flex:1;border-radius:0;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}.md-datepicker-week{display:flex;align-items:center}.md-datepicker-week span{flex:1;font-size:12px;text-align:center}.md-datepicker-days{display:flex;flex-wrap:wrap}.md-datepicker-days .md-datepicker-day,.md-datepicker-days .md-datepicker-empty{margin:1px 0;display:flex;align-items:center;justify-content:center;flex:0 1 14.28571%}.md-datepicker-days .md-datepicker-day-button{width:30px;min-width:30px;height:30px;cursor:pointer;border-radius:30px;transition:.3s cubic-bezier(.4,0,.2,1);line-height:30px;text-align:center}.md-datepicker-days .md-datepicker-selected,.md-datepicker-days .md-datepicker-today{font-weight:700}.md-datepicker-days .md-datepicker-disabled{pointer-events:none}.md-datepicker-month-selector{padding:6px 8px 10px;flex-wrap:wrap;bottom:auto;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:transform,opacity;will-change:transform,opacity}.md-datepicker-month-selector.md-datepicker-view-enter,.md-datepicker-month-selector.md-datepicker-view-leave-active{transform:translate3d(0,-100%,0)}.md-datepicker-month-selector .md-datepicker-year-trigger{width:100%;margin:0 0 8px;flex:1 1 100%}.md-datepicker-month-button,.md-datepicker-year-button{height:36px;margin:3px 0;cursor:pointer;transition:.3s cubic-bezier(.4,0,.2,1);line-height:36px;font-weight:500;text-align:center;text-transform:uppercase}.md-datepicker-month-button{flex:1 1 33.3333%;border-radius:2px;font-size:13px}.md-datepicker-year-selector{flex-direction:column;overflow:auto;bottom:52px;border-bottom:1px solid}.md-datepicker-year-selector.md-datepicker-view-enter,.md-datepicker-year-selector.md-datepicker-view-leave-active{transform:translate3d(0,-100%,0)}.md-datepicker-year-selector .md-button{min-height:36px}.md-datepicker-year-button{font-size:16px}.md-datepicker-year-button.md-datepicker-selected{font-size:24px}@media (max-width:600px){.md-datepicker-dialog{flex-direction:column;top:50%!important;left:50%!important;transform:translate3D(-50%,-50%,0);transform-origin:center center}.md-datepicker-dialog-enter{transform:translate3D(-50%,-50%,0) scale(.9)}.md-datepicker-header{min-width:auto;padding:16px 20px}.md-datepicker-header .md-datepicker-dayname{display:inline-block}.md-datepicker-body{width:296px}.md-datepicker-month{padding:0 6px}}.md-popover.md-rendering{opacity:0;transition:none!important}.md-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);min-width:280px;max-width:80%;max-height:80%;margin:auto;display:flex;flex-flow:column;overflow:hidden;position:fixed;top:50%;left:50%;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;transform:translate(-50%,-50%);transform-origin:center center;transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-dialog>.md-dialog-actions,.md-dialog>.md-dialog-content,.md-dialog>.md-dialog-tabs,.md-dialog>.md-dialog-title{transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-dialog-enter-active,.md-dialog-leave-active{opacity:0;transform:translate(-50%,-50%) scale(.9)}.md-dialog-enter-active>.md-dialog-actions,.md-dialog-enter-active>.md-dialog-content,.md-dialog-enter-active>.md-dialog-tabs,.md-dialog-enter-active>.md-dialog-title,.md-dialog-leave-active>.md-dialog-actions,.md-dialog-leave-active>.md-dialog-content,.md-dialog-leave-active>.md-dialog-tabs,.md-dialog-leave-active>.md-dialog-title{opacity:0;transform:scale(.95) translate3D(0,10%,0)}.md-dialog-container{display:flex;flex-flow:column}.md-dialog-container,.md-dialog-container .md-tabs{flex:1}.md-dialog-container .md-tabs-navigation{padding:0 12px}@media (max-width:600px){.md-dialog-container .md-tab{padding:12px}.md-dialog-fullscreen{max-width:100%;max-height:100%;position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;transform:none}.md-dialog-fullscreen.md-dialog-enter{opacity:0;transform:translate3D(0,30%,0)}.md-dialog-fullscreen.md-dialog-leave-active{opacity:0;transform:translate3D(0,0,0)}}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;flex:1;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:flex;align-items:center;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);will-change:margin-left}.md-divider.md-inset{margin-left:72px}.md-drawer{position:absolute;top:0;bottom:0;left:0;z-index:7;transform:translate3D(-100%,0,0);transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform,box-shadow;width:400px;max-width:calc(100vw - 56px);overflow-x:hidden;overflow-y:auto}.md-drawer.md-right{right:0;left:auto;transform:translate3D(100%,0,0)}.md-drawer.md-fixed{position:fixed}.md-drawer.md-active{transform:translate3D(0,0,0);transition-timing-function:cubic-bezier(.4,0,.2,1)}.md-drawer.md-temporary+.md-app-container .md-content{border-left:none}.md-drawer.md-temporary.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-drawer.md-persistent:not(.md-active)+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini{border-right:1px solid;transform:translate3D(0,64px,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:transform,width;will-change:transform,box-shadow}.md-drawer.md-persistent-mini.md-active+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini:not(.md-active){width:70px!important;z-index:1;white-space:nowrap}.md-drawer.md-persistent-mini:not(.md-active) .md-toolbar{display:none}.md-drawer.md-persistent-mini:not(.md-active) .md-list-item-content{padding:0 23px}.md-drawer.md-persistent-mini.md-active{position:relative;transform:translate3D(0,0,0);white-space:normal}.md-drawer .md-list-item-container{font-size:14px;text-transform:none}@media (max-width:600px){.md-drawer{width:320px}.md-drawer.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}}@media (min-width:600px){.md-drawer:not(.md-temporary)~.md-overlay{background:none;pointer-events:none}.md-drawer.md-permanent{position:relative;transform:translate3D(0,0,0)}.md-drawer.md-permanent-full{z-index:3}.md-drawer.md-permanent-full .md-list{padding-top:0}.md-drawer.md-permanent-card,.md-drawer.md-permanent-clipped{z-index:1}.md-drawer.md-permanent-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;margin:8px;z-index:1}}@media (min-width:960px){.md-drawer.md-permanent-card{margin:16px}}@media (min-width:1280px){.md-drawer.md-permanent-card{margin:24px}}.md-elevation-0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.md-elevation-1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.md-elevation-2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-elevation-3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-elevation-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-elevation-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-elevation-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-elevation-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-elevation-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-elevation-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-elevation-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-elevation-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-elevation-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-elevation-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-elevation-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-elevation-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-elevation-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-elevation-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-elevation-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-elevation-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-elevation-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-elevation-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-elevation-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-elevation-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-elevation-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.md-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:420px;padding:36px;margin:0 auto;position:relative;transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1);will-change:transform,opacity}.md-empty-state.md-rounded{max-width:auto;border-radius:50%}.md-empty-state.md-rounded .md-empty-state-container{padding:40px;position:absolute;top:0;right:0;bottom:0;left:0}.md-empty-state .md-button{margin:.5em 0 0}.md-empty-state-enter{opacity:0;transform:scale(.87)}.md-empty-state-enter .md-empty-state-container{opacity:0}.md-empty-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:opacity .4s cubic-bezier(.4,0,.2,1);will-change:opacity}.md-empty-state-icon{width:160px;min-width:160px;height:160px;font-size:160px!important;margin:0}.md-empty-state-label{font-size:26px;font-weight:500;line-height:40px}.md-empty-state-description{margin:1em 0;font-size:16px;line-height:24px}.md-menu.md-select{display:flex;flex:1}.md-menu.md-select:not(.md-disabled) .md-icon,.md-menu.md-select:not(.md-disabled) .md-input{cursor:pointer;outline:none}.md-menu.md-select .md-input{flex:1}.md-menu.md-select .md-input-fake,.md-menu.md-select select{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-menu-content.md-select-menu{width:100%}.md-menu-content.md-select-menu.md-menu-content-enter{transform:translate3d(0,-8px,0) scaleY(.3)}.md-menu-content.md-select-menu .md-list{transition:opacity .3s cubic-bezier(.55,0,.55,.2)}.md-menu-content.md-select-menu .md-dense .md-ripple.md-list-item-content{font-size:14px}.md-menu{display:inline-block}.md-menu>.md-button{margin:0}.md-menu-content{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);min-width:112px;max-width:280px;max-height:35vh;display:flex;flex-direction:column;position:absolute;z-index:8;border-radius:2px;transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,top,left!important}.md-menu-content.md-shallow{position:fixed!important;top:-9999em!important;left:-9999em!important;pointer-events:none}.md-menu-content.md-menu-content-enter-active{opacity:1;transform:translateZ(0)}.md-menu-content.md-menu-content-leave-active{transition:opacity .4s cubic-bezier(.4,0,.2,1);opacity:0}.md-menu-content.md-menu-content-enter.md-menu-content-top-start{transform-origin:bottom left;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-top-end{transform-origin:bottom right;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-start{transform-origin:left top;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-end{transform-origin:left bottom;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-start{transform-origin:top left;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-end{transform-origin:top right;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-start{transform-origin:right top;transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-end{transform-origin:right bottom;transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter .md-list{opacity:0}.md-menu-content.md-menu-content-medium{min-width:168px}.md-menu-content.md-menu-content-big{min-width:224px}.md-menu-content.md-menu-content-huge{min-width:280px}.md-menu-content-container{flex:1;overflow:auto}.md-menu-content-container .md-list{transition:opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity;font-family:Roboto,sans-serif;text-transform:none;white-space:nowrap}@media (max-width:944px){.md-menu-content-container .md-list{font-size:14px}}.md-list{margin:0;padding:8px 0;display:flex;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list .md-divider{margin-top:-1px}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-optgroup .md-subheader{text-transform:uppercase}.md-optgroup .md-ripple.md-list-item-content{padding-left:24px}.md-file{display:flex;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-highlight-text{flex:1}.md-highlight-text-match{font-weight:500}.md-image{display:flex;justify-content:center;align-items:center}.md-layout{display:flex;flex-wrap:wrap}.md-layout .md-layout{flex:1}.md-layout .md-layout-nowrap{flex-wrap:nowrap}.md-layout.md-centered{width:100%;max-width:1200px;margin:0 auto}.md-layout.md-gutter{margin-right:-20px;margin-left:-20px}.md-layout.md-gutter>.md-layout-item{padding-right:20px;padding-left:20px}@media (max-width:1264px){.md-layout.md-gutter{margin-right:-12px;margin-left:-12px}.md-layout.md-gutter>.md-layout-item{padding-right:12px;padding-left:12px}}@media (max-width:944px){.md-layout.md-gutter{margin-right:-8px;margin-left:-8px}.md-layout.md-gutter>.md-layout-item{padding-right:8px;padding-left:8px}}@media (max-width:600px){.md-layout.md-gutter{margin-right:-4px;margin-left:-4px}.md-layout.md-gutter>.md-layout-item{padding-right:4px;padding-left:4px}}.md-layout.md-alignment-top-left{justify-content:flex-start;align-items:flex-start}.md-layout.md-alignment-top-center{justify-content:center;align-items:flex-start}.md-layout.md-alignment-top-right{justify-content:flex-end;align-items:flex-start}.md-layout.md-alignment-top-space-around{justify-content:space-around;align-items:flex-start}.md-layout.md-alignment-top-space-between{justify-content:space-between;align-items:flex-start}.md-layout.md-alignment-center-left{justify-content:flex-start;align-items:center}.md-layout.md-alignment-center,.md-layout.md-alignment-center-center{justify-content:center;align-items:center}.md-layout.md-alignment-center-right{justify-content:flex-end;align-items:center}.md-layout.md-alignment-center-space-around{justify-content:space-around;align-items:center}.md-layout.md-alignment-center-space-between{justify-content:space-between;align-items:center}.md-layout.md-alignment-bottom-left{justify-content:flex-start;align-items:flex-end}.md-layout.md-alignment-bottom-center{justify-content:center;align-items:flex-end}.md-layout.md-alignment-bottom-right{justify-content:flex-end;align-items:flex-end}.md-layout.md-alignment-bottom-space-around{justify-content:space-around;align-items:flex-end}.md-layout.md-alignment-bottom-space-between{justify-content:space-between;align-items:flex-end}.md-layout.md-alignment-space-around-left{justify-content:flex-start;align-items:space-around}.md-layout.md-alignment-space-around-center{justify-content:center;align-items:space-around}.md-layout.md-alignment-space-around-right{justify-content:flex-end;align-items:space-around}.md-layout.md-alignment-space-around-space-around{justify-content:space-around;align-items:space-around}.md-layout.md-alignment-space-around-space-between{justify-content:space-between;align-items:space-around}.md-layout.md-alignment-space-between-left{justify-content:flex-start;align-items:space-between}.md-layout.md-alignment-space-between-center{justify-content:center;align-items:space-between}.md-layout.md-alignment-space-between-right{justify-content:flex-end;align-items:space-between}.md-layout.md-alignment-space-between-space-around{justify-content:space-around;align-items:space-between}.md-layout.md-alignment-space-between-space-between{justify-content:space-between;align-items:space-between}.md-layout-item,.md-layout-item.md-size{flex:1 1}.md-layout-item.md-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}@media (max-width:1264px){.md-layout-item.md-medium-size{flex:1 1}.md-layout-item.md-medium-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-medium-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-medium-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-medium-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-medium-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-medium-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-medium-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-medium-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-medium-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-medium-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-medium-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-medium-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-medium-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-medium-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-medium-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-medium-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-medium-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-medium-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-medium-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-medium-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-medium-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-medium-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:944px){.md-layout-item.md-small-size{flex:1 1}.md-layout-item.md-small-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-small-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-small-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-small-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-small-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-small-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-small-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-small-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-small-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-small-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-small-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-small-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-small-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-small-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-small-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-small-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-small-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-small-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-small-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-small-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-small-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-small-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:600px){.md-layout-item.md-xsmall-size{flex:1 1}.md-layout-item.md-xsmall-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-xsmall-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-xsmall-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-xsmall-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-xsmall-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-xsmall-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-xsmall-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-xsmall-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-xsmall-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-xsmall-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-xsmall-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-xsmall-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-xsmall-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-xsmall-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-xsmall-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-xsmall-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-xsmall-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-xsmall-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-xsmall-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-xsmall-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-xsmall-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-xsmall-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}.md-hide{display:none}@media (max-width:1264px){.md-medium-hide{display:none}}@media (max-width:944px){.md-small-hide{display:none}}@media (max-width:600px){.md-xsmall-hide{display:none}}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-inset .md-list-item-content{padding-left:72px}.md-list-item .md-icon{margin:0;transition-property:color,margin-right}.md-list-item-container{width:100%;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item-container:not(.md-list-item-default):not([disabled]){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.md-list-item-container.md-button-clean:hover{opacity:1;text-decoration:none}.md-list-item-content{min-height:48px;padding:4px 16px;display:flex;align-items:center;justify-content:space-between;transition:padding .4s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-list.md-dense .md-list-item-content{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item-content>.md-avatar{margin-top:0;margin-bottom:0}.md-list.md-dense .md-list-item-content>.md-avatar:not(.md-small){width:36px;min-width:36px;height:36px}.md-list.md-dense .md-list-item-content>.md-avatar:first-child{margin-right:20px}.md-list.md-double-line .md-list-item-content{min-height:72px}.md-list.md-double-line.md-dense .md-list-item-content{min-height:60px}.md-list.md-triple-line .md-list-item-content{min-height:88px}.md-list.md-triple-line.md-dense .md-list-item-content{min-height:76px}.md-list-item-content .md-list-action{margin:0 -10px 0 0}.md-list-item-content .md-list-action:last-of-type{margin:0 -10px 0 16px}.md-list.md-triple-line .md-list-item-content .md-list-action:last-of-type{align-self:flex-start}.md-list-item-content>.md-icon:first-child{margin-right:32px}.md-list-item-content>.md-icon:last-child{margin-left:16px}.md-list-item-content>.md-checkbox,.md-list-item-content>.md-radio{margin:0}.md-list-item-content>.md-checkbox:first-child,.md-list-item-content>.md-radio:first-child{margin-right:36px}.md-list-item-content>.md-switch{margin:0}.md-list-item-content>.md-switch:first-child{margin-right:22px}.md-list-item-content>.md-avatar{margin:4px 0}.md-list-item-content>.md-avatar:first-child{margin-right:16px}.md-list-item-text{flex:1;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;line-height:1.25em;white-space:nowrap}.md-list.md-dense .md-list-item-text{font-size:13px}.md-list-item-text *{width:100%;margin:0;overflow:hidden;line-height:1.25em;text-overflow:ellipsis}.md-list-item-text :nth-child(2),.md-list-item-text :nth-child(3){font-size:14px}.md-list.md-dense .md-list-item-text *{font-size:13px}.md-list-item-expand{border-top:1px solid transparent;border-bottom:1px solid transparent;transition:border .4s cubic-bezier(.25,.8,.25,1);will-change:border}.md-list-item-expand.md-active .md-list-expand-icon{perspective:1000px;perspective-origin:50% 50%;transform:rotateX(180deg)}.md-list-item-expand.md-active .md-list-expand{opacity:1;transform:translate3D(0,0,0)}.md-list-item-expand .md-list-expand{height:0;opacity:0;overflow:hidden;transform:translate3D(0,-24px,0);transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:transform,opacity;will-change:transform,opacity}.md-list-item-expand .md-list-expand-icon{transition:transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}@keyframes b{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(.5,0,.7,.5);transform:translateX(0)}60%{animation-timing-function:cubic-bezier(.3,.38,.55,.96);transform:translateX(83.67%)}to{transform:translateX(200.61%)}}@keyframes c{0%{transform:scaleX(.08)}35%{animation-timing-function:cubic-bezier(.33,.12,.79,1);transform:scaleX(.08)}70%{animation-timing-function:cubic-bezier(.06,.11,.6,1);transform:scaleX(.66)}to{transform:scaleX(.08)}}@keyframes d{0%{animation-timing-function:cubic-bezier(.15,0,.52,.41);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(.31,.28,.8,.73);transform:translateX(37.65%)}50%{animation-timing-function:cubic-bezier(.4,.63,.6,.9);transform:translateX(84.39%)}to{transform:translateX(160.28%)}}@keyframes e{0%{animation-timing-function:cubic-bezier(.15,0,.52,.41);transform:scaleX(.08)}20%{animation-timing-function:cubic-bezier(.31,.28,.8,.73);transform:scaleX(.46)}45%{animation-timing-function:cubic-bezier(.4,.63,.6,.9);transform:scaleX(.73)}to{transform:scaleX(.08)}}@keyframes f{to{transform:translate3D(-8px,0,0)}}.md-progress-bar{height:5px;overflow:hidden;position:relative;transform:translateZ(0) scaleY(1);transform-origin:top center;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-progress-bar.md-indeterminate .md-progress-bar-track,.md-progress-bar.md-query .md-progress-bar-track{left:-150%;animation:b 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-query .md-progress-bar-track:after{animation:c 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill,.md-progress-bar.md-query .md-progress-bar-fill{left:-55%;animation:d 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-query .md-progress-bar-fill:after{animation:e 2s infinite linear}.md-progress-bar.md-buffer .md-progress-bar-buffer,.md-progress-bar.md-buffer .md-progress-bar-fill,.md-progress-bar.md-buffer .md-progress-bar-track,.md-progress-bar.md-determinate .md-progress-bar-buffer,.md-progress-bar.md-determinate .md-progress-bar-fill,.md-progress-bar.md-determinate .md-progress-bar-track{transition:.25s cubic-bezier(.25,.8,.25,1)}.md-progress-bar.md-determinate .md-progress-bar-track{display:none}.md-progress-bar.md-buffer .md-progress-bar-buffer{border-top:4px dotted;animation:f .25s infinite linear}.md-progress-bar.md-query{transform:rotate(180deg)}.md-progress-bar-enter,.md-progress-bar-leave-active{opacity:.5;transform:translateZ(0) scaleY(0)}.md-progress-bar-buffer,.md-progress-bar-fill,.md-progress-bar-track{transform-origin:top left}.md-progress-bar-buffer,.md-progress-bar-buffer:after,.md-progress-bar-fill,.md-progress-bar-fill:after,.md-progress-bar-track,.md-progress-bar-track:after{width:100%;height:100%;position:absolute;will-change:transform}.md-progress-bar-buffer:after,.md-progress-bar-fill:after,.md-progress-bar-track:after{display:inline-block;left:0;content:\\\" \\\"}@keyframes g{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes h{0%{opacity:0;transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{transform:rotate(270deg) translateZ(0)}}.md-progress-spinner{display:inline-flex;position:relative}.md-progress-spinner.md-indeterminate{animation:g 2s linear infinite}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active{transition-duration:.4s}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter .md-progress-spinner-draw,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active .md-progress-spinner-draw{opacity:0;transform:scale(.1)}.md-progress-spinner.md-indeterminate .md-progress-spinner-circle{animation:4s infinite cubic-bezier(.25,.8,.25,1)}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active{transition-duration:2s}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active .md-progress-spinner-draw,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active .md-progress-spinner-draw{animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-progress-spinner.md-determinate .md-progress-spinner-draw{transition:none}.md-progress-spinner-draw{overflow:visible;transform:scale(1) rotate(-90deg);transform-origin:center;transition:.4s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform}.md-progress-spinner-circle{fill:none;transform-origin:center;transition:stroke-dashoffset .25s cubic-bezier(.25,.8,.25,1);will-change:stroke-dashoffset,stroke-dasharray,stroke-width,animation-name,r}.md-radio{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;min-width:20px;height:20px;position:relative;border:2px solid transparent;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:focus{outline:none}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;transform:translate(-50%,-50%)}.md-radio .md-radio-container:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;opacity:0;transform:scale3D(.38,.38,1);content:\\\" \\\"}.md-radio .md-radio-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%);border-radius:50%}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;transform:scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-snackbar{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);min-width:288px;max-width:568px;min-height:48px;max-height:80px;padding:14px 24px;display:flex;align-items:center;position:fixed;z-index:12;border-radius:2px;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,color,opacity,transform}.md-snackbar.md-position-center{margin:0 auto;right:0;bottom:0;left:0}.md-snackbar.md-position-center.md-snackbar-enter,.md-snackbar.md-position-center.md-snackbar-leave-active{transform:translate3D(0,calc(100% + 8px),0)}.md-snackbar.md-position-left{bottom:24px;left:24px}.md-snackbar.md-position-left.md-snackbar-enter,.md-snackbar.md-position-left.md-snackbar-leave-active{transform:translate3D(0,calc(100% + 32px),0)}.md-snackbar-enter,.md-snackbar-enter .md-snackbar-content,.md-snackbar-leave-active,.md-snackbar-leave-active .md-snackbar-content{opacity:0}.md-snackbar-content{flex:1;display:flex;align-items:center;justify-content:space-between;transition:opacity .38s cubic-bezier(.55,0,.55,.2)}.md-snackbar-content .md-button{min-width:0;margin:-8px -8px -8px 36px}.md-snackbar-content .md-button+.md-button{margin-left:16px}@media (max-width:600px){.md-snackbar{left:0;transform:none;border-radius:0}.md-snackbar-content .md-button{margin-left:12px}}.md-speed-dial{display:inline-flex;flex-direction:column}.md-speed-dial.md-top-left,.md-speed-dial.md-top-right{position:absolute;top:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-bottom-right{position:absolute;bottom:24px}.md-speed-dial.md-bottom-center,.md-speed-dial.md-top-center{position:absolute;left:50%;transform:translateX(-50%)}.md-speed-dial.md-top-center{top:24px}.md-speed-dial.md-bottom-center{bottom:24px}.md-speed-dial.md-bottom-right,.md-speed-dial.md-top-right{right:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-top-left{left:24px}.md-speed-dial.md-fixed{position:fixed}.md-speed-dial.md-direction-top.md-effect-fling .md-speed-dial-content .md-button{transform:translate3d(0,50%,0) scale(.8)}.md-speed-dial.md-direction-top .md-speed-dial-target{order:2;margin-bottom:0!important}.md-speed-dial.md-direction-top .md-speed-dial-content{order:1}.md-speed-dial.md-direction-top .md-speed-dial-content .md-button:first-child{margin-top:0}.md-speed-dial.md-direction-bottom.md-effect-fling .md-speed-dial-content .md-button{transform:translate3d(0,-50%,0) scale(.8)}.md-speed-dial.md-direction-bottom .md-speed-dial-target{order:1;margin-top:0!important}.md-speed-dial.md-direction-bottom .md-speed-dial-content{order:2}.md-speed-dial.md-direction-bottom .md-speed-dial-content .md-button:last-child{margin-bottom:0}.md-speed-dial.md-effect-scale .md-speed-dial-content .md-button{transform:scale(.3)}.md-speed-dial.md-active .md-morph-initial,.md-speed-dial.md-with-hover:hover .md-morph-initial{opacity:0;transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7)}.md-speed-dial.md-active .md-morph-final,.md-speed-dial.md-with-hover:hover .md-morph-final{opacity:1;transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1)}.md-speed-dial.md-active .md-speed-dial-content .md-button,.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button{pointer-events:auto;opacity:1;transform:translateZ(0) scale(1)!important;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1)}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"]{transition-delay:0s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"]{transition-delay:.1s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"]{transition-delay:.2s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"]{transition-delay:.3s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"]{transition-delay:.4s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"]{transition-delay:.5s}.md-speed-dial .md-button{margin:6px 0}.md-speed-dial .md-speed-dial-content .md-button{pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:opacity,transform}.md-speed-dial .md-morph-final,.md-speed-dial .md-morph-initial{position:absolute;top:50%;left:50%;transform:translate3D(-50%,-50%,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform;will-change:opacity,transform}.md-speed-dial .md-morph-final{opacity:0;transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg)}.md-speed-dial-target{z-index:1}.md-speed-dial-content{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2}.md-speed-dial-content,.md-steppers{transition:.3s cubic-bezier(.4,0,.2,1)}.md-steppers{transition-property:color,background-color;will-change:color,background-color}.md-steppers.md-no-transition *{transition:none!important}.md-steppers.md-dynamic-height .md-steppers-wrapper{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-steppers.md-horizontal.md-alternative .md-stepper-header{height:104px}.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-number:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-number:after{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-ripple{justify-content:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content{padding-top:16px;flex-direction:column}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:before{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-text{height:32px;justify-content:flex-start;text-align:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number{margin:0 8px 8px;position:relative}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{width:9999%;height:1px;position:absolute;top:50%;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after{left:calc(100% + 8px)}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{right:32px}.md-steppers.md-vertical .md-stepper-header{height:56px}.md-steppers.md-vertical .md-stepper-header .md-ripple{padding:0 24px 0 16px}.md-steppers.md-vertical .md-steppers-container{flex-direction:column}.md-steppers.md-vertical .md-button-content:after,.md-steppers.md-vertical .md-button-content:before{content:none}.md-steppers.md-vertical .md-stepper-icon,.md-steppers.md-vertical .md-stepper-number{margin-right:12px}.md-steppers.md-vertical .md-stepper{padding:0;position:relative}.md-steppers.md-vertical .md-stepper:last-of-type:after{content:none}.md-steppers.md-vertical .md-stepper:after{width:1px;position:absolute;top:48px;bottom:-8px;left:36px;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers-navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:flex}.md-steppers-navigation .md-stepper-header{width:auto}.md-stepper-header{width:100%;height:72px;margin:0;flex:1;border-radius:0;font-weight:400;text-align:left;text-transform:none}.md-stepper-header:first-of-type .md-button-content:before,.md-stepper-header:last-of-type .md-button-content:after{content:none}.md-stepper-header.md-active,.md-stepper-header.md-error{font-weight:500}.md-stepper-header .md-ripple{padding:0 16px;justify-content:flex-start}.md-stepper-header .md-button-content{padding:0 8px;display:flex;align-items:center;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-header .md-button-content:after,.md-stepper-header .md-button-content:before{height:1px;position:absolute;top:50%;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-stepper-header .md-button-content:after{width:9999%;left:100%}.md-stepper-header .md-button-content:before{width:16px;left:-16px}.md-stepper-header .md-button-content svg{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,fill;will-change:color,fill}.md-stepper-text{display:flex;flex-direction:column;justify-content:center;line-height:16px;white-space:nowrap}.md-stepper-icon,.md-stepper-number{margin-right:8px;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-number{width:24px;height:24px;border-radius:24px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:12px;line-height:24px;text-align:center}.md-stepper-done{width:20px;height:20px}.md-stepper-done,.md-stepper-editable{transform:translateY(-1px)}.md-stepper-editable{width:14px;height:14px}.md-stepper-description,.md-stepper-error{font-size:12px;font-weight:400;line-height:16px}.md-stepper-description{opacity:.54}.md-steppers-wrapper{overflow:hidden;transition:none;will-change:height}.md-steppers-container{display:flex;align-items:flex-start;flex-wrap:nowrap;transform:translateZ(0);transition:transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-stepper{width:100%;flex:1 0 100%;padding:16px 24px}@media (max-width:944px){.md-stepper{padding:8px 16px}}.md-steppers.md-vertical .md-stepper-content{padding:0 24px 0 60px;height:0;overflow:hidden;opacity:0;transform:translate3D(0,-20px,0);transition:.35s cubic-bezier(.25,.8,.25,1);transition-property:opacity,transform,height,padding-bottom;will-change:opacity,transform,height,padding-bottom}.md-steppers.md-vertical .md-stepper-content.md-active{height:auto;padding-bottom:40px;opacity:1;transform:translate3D(0,0,0)}.md-subheader{min-height:48px;padding:0 16px;display:flex;align-items:center;flex-flow:row wrap;font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 16px 16px 0;display:inline-flex;position:relative}.md-switch:not(.md-disabled),.md-switch:not(.md-disabled) .md-switch-label{cursor:pointer}.md-switch .md-switch-container{width:34px;min-width:34px;height:14px;margin:3px 0;display:flex;align-items:center;position:relative;border-radius:14px;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);width:20px;height:20px;position:relative;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb:before{width:48px;height:48px;top:50%;left:50%;z-index:5;content:\\\" \\\"}.md-switch .md-switch-thumb .md-ripple,.md-switch .md-switch-thumb:before{position:absolute;transform:translate(-50%,-50%)}.md-switch .md-switch-thumb .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;border-radius:50%}.md-switch .md-switch-thumb input{position:absolute;left:-999em}.md-switch .md-switch-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-switch.md-checked .md-switch-thumb{transform:translate3d(15px,0,0)}.md-switch.md-required label:after{position:absolute;top:2px;right:0;transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-table{display:flex;flex-flow:column wrap;overflow-x:auto}.md-table .md-table-fixed-header{position:relative}.md-table .md-table-fixed-header-active{border-bottom:1px solid}.md-table .md-table-content{flex:1;overflow-x:auto;transition:height .3s cubic-bezier(.4,0,.2,1)}.md-table .md-table-empty{display:flex;align-items:center;justify-content:center}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table-head{padding:0;position:relative;font-size:12px;line-height:16px;text-align:left}.md-table-head:last-child .md-table-head-label{padding-right:24px}.md-table-head.md-numeric{text-align:right}.md-table-head.md-sortable:first-of-type .md-table-sortable-icon,.md-table-head.md-table-cell-selection+.md-sortable .md-table-sortable-icon{right:8px;left:auto}.md-table-head .md-icon{width:16px;height:16px;font-size:16px}.md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table-head .md-icon:first-child{margin-left:0}.md-table-head .md-icon:last-child{margin-right:0}.md-sortable{cursor:pointer}.md-sortable.md-sorted .md-table-sortable-icon,.md-sortable:hover .md-table-sortable-icon{opacity:1}.md-sortable.md-sorted-desc .md-table-sortable-icon{transform:translateY(-50%) rotate(180deg)}.md-table-head-container{height:56px;padding:14px 0}.md-table-head-container,.md-table-head-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-table-head-label{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;line-height:28px}.md-table-sortable-icon{position:absolute;top:50%;left:0;transition:.3s cubic-bezier(.4,0,.2,1);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:2;will-change:opacity,transform}.md-table-alternate-header-enter,.md-table-alternate-header-leave-active{opacity:0;transform:translate3d(0,-100%,0)}.md-table-alternate-header-enter-active{transition:.3s cubic-bezier(.4,0,.2,1)}.md-table-alternate-header-leave-active{transition:.2s cubic-bezier(.4,0,1,1)}.md-table-row{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:background-color,font-weight;will-change:background-color,font-weight}.md-table-row.md-has-selection{cursor:pointer}.md-table-row.md-selected-single{font-weight:500}tbody .md-table-row td{border-top:1px solid}.md-table-cell-selection{width:66px}.md-table-cell-selection+td .md-table-cell-container,.md-table-cell-selection+th .md-table-head-label{padding-left:0}.md-table-cell-selection .md-table-cell-container,.md-table-cell-selection .md-table-cell-label,.md-table-cell-selection .md-table-head-container,.md-table-cell-selection .md-table-head-label{padding:0;display:flex;align-items:center;justify-content:center;overflow:visible}.md-table-cell-selection .md-checkbox{margin:0}.md-table-cell-selection .md-checkbox .md-checkbox-container{width:18px;min-width:18px;height:18px}.md-table-cell-selection .md-checkbox .md-checkbox-container:after{top:-1px;left:4px}.md-table-toolbar{padding-left:24px}.md-table-toolbar .md-title{flex:1;font-size:20px}.md-toolbar,.md-toolbar-row{width:100%;min-height:64px;display:flex;align-items:center;align-content:center;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,background-color,box-shadow,transform,color,min-height;will-change:opacity,background-color,box-shadow,transform,color,min-height}.md-toolbar{padding:0 16px;flex-flow:row wrap;position:relative;z-index:2}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-large .md-toolbar-row,.md-toolbar.md-medium .md-toolbar-row{min-height:64px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-large{min-height:128px;align-content:inherit}.md-toolbar.md-large.md-dense{min-height:96px}.md-toolbar.md-large.md-dense .md-toolbar-row+.md-toolbar-row{min-height:32px}.md-toolbar .md-toolbar-offset{margin-left:56px}.md-toolbar .md-button,.md-toolbar .md-icon{z-index:1}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:24px}.md-toolbar .md-button+.md-button,.md-toolbar .md-button:last-child{margin-right:0}.md-toolbar .md-button:first-child{margin-left:0}.md-toolbar .md-display-1,.md-toolbar .md-display-2,.md-toolbar .md-title{margin:0;margin-left:8px;overflow:hidden;font-weight:400;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.md-toolbar .md-display-1{padding:12px 0}.md-toolbar .md-field{margin-top:2px;margin-bottom:14px;padding-top:16px}.md-toolbar-row{align-self:flex-start}.md-toolbar-section-end,.md-toolbar-section-start{display:flex;align-items:center;flex:1}.md-toolbar-section-start{justify-content:flex-start;order:0}.md-toolbar-section-end{justify-content:flex-end;order:10}@media (max-width:944px){.md-toolbar,.md-toolbar-row{min-height:48px}.md-toolbar{padding:0 8px}.md-toolbar .md-toolbar-offset{margin-left:48px}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:16px}}@media (max-width:600px){.md-toolbar,.md-toolbar-row{min-height:56px}}.md-table-empty-state{padding-left:24px}.md-table-cell{height:48px;position:relative;transition:.3s cubic-bezier(.4,0,.2,1);font-size:13px;line-height:18px}.md-table-cell.md-numeric{text-align:right}.md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table-cell-container{padding:6px 32px 6px 24px}.md-table-pagination{height:56px;display:flex;flex:1;align-items:center;justify-content:flex-end;border-top:1px solid;font-size:12px}.md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-pagination .md-field{width:48px;min-width:36px;margin:-16px 24px 0 32px}.md-table-pagination .md-field:after,.md-table-pagination .md-field:before{display:none}.md-table-pagination .md-field .md-select-value{font-size:13px}.md-menu-content.md-pagination-select{max-width:82px;min-width:56px;margin-top:5px}.md-tabs{display:flex;flex-direction:column}.md-tabs.md-no-transition *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-tabs.md-transparent .md-tabs-navigation{background-color:transparent!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .35s cubic-bezier(.25,.8,.25,1)}.md-tabs.md-alignment-left .md-tabs-navigation{justify-content:flex-start}.md-tabs.md-alignment-right .md-tabs-navigation{justify-content:flex-end}.md-tabs.md-alignment-centered .md-tabs-navigation,.md-tabs.md-alignment-fixed .md-tabs-navigation{justify-content:center}.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{max-width:264px;min-width:160px;flex:1}.md-toolbar .md-tabs{padding-left:48px}.md-tabs-navigation{display:flex;position:relative}.md-tabs-navigation .md-button{max-width:264px;min-width:72px;height:48px;margin:0;cursor:pointer;border-radius:0;font-size:13px}.md-tabs-navigation .md-button-content{position:static}.md-tabs-navigation .md-icon-label{height:72px}.md-tabs-navigation .md-icon-label .md-button-content{display:flex;flex-direction:column;justify-content:center}.md-tabs-navigation .md-icon-label .md-tab-icon+.md-tab-label{margin-top:10px}.md-tabs-navigation .md-ripple{padding:0 24px}.md-tabs-indicator{height:2px;position:absolute;bottom:0;left:0;transform:translateZ(0);will-change:left,right}.md-tabs-indicator.md-tabs-indicator-left{transition:left .3s cubic-bezier(.4,0,.2,1),right .35s cubic-bezier(.4,0,.2,1)}.md-tabs-indicator.md-tabs-indicator-right{transition:right .3s cubic-bezier(.4,0,.2,1),left .35s cubic-bezier(.4,0,.2,1)}.md-tabs-content{overflow:hidden;transition:none;will-change:height}.md-tabs-container{display:flex;align-items:flex-start;flex-wrap:nowrap;transform:translateZ(0);transition:transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-tab{width:100%;flex:1 0 100%;padding:16px}@media (max-width:944px){.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{min-width:72px}.md-toolbar .md-tabs{margin:0 -8px;padding-left:0}.md-tabs-navigation .md-ripple{padding:0 12px}.md-tab{padding:8px}}.md-tooltip{height:22px;padding:0 8px;position:fixed;z-index:8;pointer-events:none;border-radius:2px;transition:.15s cubic-bezier(0,0,.2,1);transition-property:opacity,transform;will-change:opacity,transform,top,left!important;font-size:10px;line-height:22px;text-transform:none;white-space:nowrap}.md-tooltip.md-tooltip-leave-active{transition-timing-function:cubic-bezier(.4,0,1,1)}.md-tooltip.md-tooltip-enter,.md-tooltip.md-tooltip-leave-active{opacity:0}.md-tooltip.md-tooltip-enter.md-tooltip-top,.md-tooltip.md-tooltip-leave-active.md-tooltip-top{transform:translate3d(0,4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-right,.md-tooltip.md-tooltip-leave-active.md-tooltip-right{transform:translate3d(-4px,0,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-bottom,.md-tooltip.md-tooltip-leave-active.md-tooltip-bottom{transform:translate3d(0,-4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-left,.md-tooltip.md-tooltip-leave-active.md-tooltip-left{transform:translate3d(4px,0,0) scale(.95)}@media (max-width:944px){.md-tooltip{height:32px;font-size:14px;line-height:32px}}\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/vue-material.min.css\"],\"names\":[],\"mappings\":\"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\",\"file\":\"vue-material.min.css\",\"sourcesContent\":[\"/*!\\n * vue-material v1.0.0-beta-7\\n * Made with <3 by marcosmoura 2017\\n * Released under the MIT License.\\n */html{height:100%;box-sizing:border-box;transition:background-color .3s cubic-bezier(.25,.8,.25,1)}html *,html :after,html :before{box-sizing:inherit}body{min-height:100%;margin:0;position:relative;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,Noto Sans,-apple-system,BlinkMacSystemFont,sans-serif}a:not(.md-button){transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:color,background-color,opacity}audio,canvas,embed,iframe,img,object,video{max-width:100%;font-style:italic;vertical-align:middle}audio:not(.md-image),canvas:not(.md-image),embed:not(.md-image),iframe:not(.md-image),img:not(.md-image),object:not(.md-image),video:not(.md-image){height:auto}[tabindex=\\\"-1\\\"]:focus{outline:none!important}.md-scrollbar::-webkit-scrollbar{width:8px;height:8px;border-radius:8px}.md-scrollbar::-webkit-scrollbar-thumb{border-radius:8px}.md-scrollbar::-webkit-scrollbar-button{display:none}.md-caption{font-size:12px;font-weight:400;letter-spacing:.02em;line-height:17px}.md-body-1,body{font-weight:400;line-height:20px}.md-body-1,.md-body-2,body{font-size:14px;letter-spacing:.01em}.md-body-2{font-weight:500;line-height:24px}.md-subheading{font-size:16px;font-weight:400;letter-spacing:.01em;line-height:24px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em;line-height:26px}.md-headline{font-size:24px;line-height:32px}.md-display-1,.md-headline{font-weight:400;letter-spacing:0}.md-display-1{font-size:34px;line-height:40px}.md-display-2{font-size:45px;font-weight:400;letter-spacing:0;line-height:48px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:58px}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.01em;line-height:112px}a:not(.md-button){text-decoration:none}a:not(.md-button):hover{text-decoration:underline}button:focus{outline:none}.md-app{display:-webkit-box;display:flex;overflow:hidden;position:relative}.md-app.md-fixed .md-app-scroller{overflow:auto}.md-app.md-fixed-last,.md-app.md-flexible,.md-app.md-overlap,.md-app.md-reveal{-webkit-transform:translateZ(0);transform:translateZ(0)}.md-app.md-fixed-last .md-app-toolbar,.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar,.md-app.md-reveal .md-app-toolbar{position:absolute;top:0}.md-app.md-flexible .md-app-toolbar,.md-app.md-overlap .md-app-toolbar{min-height:0}.md-app.md-flexible .md-toolbar-row:first-child{z-index:2}.md-app.md-flexible .md-toolbar-row:last-child{position:fixed;bottom:0;z-index:1}.md-app.md-flexible .md-display-1{position:fixed}.md-app.md-overlap .md-app-toolbar{z-index:1}.md-app.md-overlap .md-app-content{margin:-64px 24px 24px;position:relative;z-index:2}.md-app-content{padding:16px}.md-app-content>p:first-child{margin-top:0}.md-app-content>p:last-child{margin-bottom:0}.md-app-container{display:-webkit-box;display:flex;overflow:auto;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition:padding-left .4s cubic-bezier(.4,0,.2,1);will-change:padding-left}.md-app-container,.md-app-scroller{-webkit-box-flex:1;flex:1}@media (max-width:944px){.md-app.md-overlap .md-app-content{margin:-64px 16px 16px}}@media (max-width:600px){.md-app.md-overlap .md-app-content{margin:-64px 8px 8px}}@media (min-width:600px){.md-app-drawer.md-permanent-card+.md-app-scroller .md-content{padding-left:0;border-left:none}.md-app-content{border-left:1px solid transparent}}.md-app-internal-drawer,.md-app-side-drawer .md-app-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-app-internal-drawer .md-app-scroller{overflow:auto}.md-no-elevation{box-shadow:none!important}.md-fixed-last .md-reveal-active,.md-flexible .md-reveal-active,.md-overlap .md-reveal-active,.md-reveal .md-reveal-active{-webkit-transform:translate3d(0,calc(100% + 10px),0);transform:translate3d(0,calc(100% + 10px),0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,-webkit-transform;transition-property:box-shadow,transform;transition-property:box-shadow,transform,-webkit-transform;will-change:height,box-shadow,transform}.md-overlap .md-app-toolbar{height:196px}.md-fixed-last-active{transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow,-webkit-transform;transition-property:box-shadow,transform;transition-property:box-shadow,transform,-webkit-transform;will-change:height,box-shadow,transform}.md-overlap-off{z-index:3!important}.md-app-content{height:100%}.md-app-content .md-card{margin-right:16px;margin-left:16px;overflow:visible}.md-autocomplete .md-menu{width:100%;display:-webkit-box;display:flex}.md-autocomplete-loading{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;z-index:9}.md-field.md-inline.md-autocomplete-box{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);padding-top:2px;border-radius:2px}.md-field.md-inline.md-autocomplete-box.md-focused{z-index:11}.md-field.md-inline.md-autocomplete-box:after,.md-field.md-inline.md-autocomplete-box:before{display:none}.md-toolbar .md-field.md-inline.md-autocomplete-box{min-height:40px;height:40px;margin:0;box-shadow:none}.md-field.md-inline.md-autocomplete-box .md-menu{-webkit-box-align:center;align-items:center}.md-field.md-inline.md-autocomplete-box .md-input{padding-left:16px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box .md-input-action,.md-field.md-inline.md-autocomplete-box label{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-field.md-inline.md-autocomplete-box .md-input-action{right:8px}.md-field.md-inline.md-autocomplete-box.md-focused label,.md-field.md-inline.md-autocomplete-box label{margin-top:2px;left:16px}.md-autocomplete-box-content:after{height:6px;position:absolute;top:-6px;right:0;left:0;z-index:11;border-bottom:1px solid;content:\\\"\\\"}.md-avatar{width:40px;min-width:40px;height:40px;margin:auto;display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;border-radius:40px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:24px;letter-spacing:-.05em;vertical-align:middle}.md-avatar.md-large{min-width:64px;min-height:64px;border-radius:64px;font-size:32px}.md-avatar.md-large .md-icon{font-size:40px!important}.md-avatar.md-small{width:24px;min-width:24px;height:24px;border-radius:24px;font-size:14px}.md-avatar.md-small .md-icon{font-size:16px!important}.md-avatar .md-icon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-avatar img{width:100%;height:100%;display:block}.md-avatar .md-ripple{cursor:pointer;display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;border-radius:50%}.md-bottom-bar{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);width:100%;transition:background-color .5s cubic-bezier(.4,0,.2,1)}.md-bottom-bar>.md-ripple{display:-webkit-box;display:flex;flex-wrap:wrap}.md-bottom-bar.md-type-fixed{-webkit-box-pack:center;justify-content:center}.md-bottom-bar.md-type-fixed .md-bottom-bar-item{min-width:80px;max-width:168px;transition:.4s cubic-bezier(.4,0,.2,1);transition-property:color;will-change:color}.md-bottom-bar.md-type-fixed .md-bottom-bar-item .md-bottom-bar-label{-webkit-transform:scale(.8571) translate3D(0,4px,0);transform:scale(.8571) translate3D(0,4px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-ripple{padding-top:6px}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-icon{-webkit-transform:translate3d(0,-2px,0);transform:translate3d(0,-2px,0)}.md-bottom-bar.md-type-fixed .md-bottom-bar-item.md-active .md-bottom-bar-label{-webkit-transform:translate3D(0,3px,0);transform:translate3D(0,3px,0)}.md-bottom-bar.md-type-shift{-webkit-box-pack:center;justify-content:center}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter-active{transition-duration:1.1s!important}.md-bottom-bar.md-type-shift>.md-ripple .md-ripple-enter{opacity:1}.md-bottom-bar.md-type-shift .md-bottom-bar-item{min-width:56px;max-width:96px;-webkit-box-flex:1;flex:1 1 32px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:padding,min-width,max-width,color,-webkit-box-flex;transition-property:padding,min-width,max-width,flex,color;transition-property:padding,min-width,max-width,flex,color,-webkit-box-flex;will-change:padding,min-width,max-width,flex,color}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-ripple{padding:16px}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-icon{-webkit-transform:translate3d(0,8px,0);transform:translate3d(0,8px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item .md-bottom-bar-label{opacity:0;-webkit-transform:scale(.7) translate3d(0,6px,0);transform:scale(.7) translate3d(0,6px,0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active{min-width:96px;max-width:168px;-webkit-box-flex:1;flex:1 1 72px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-ripple{padding:6px 0 10px}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-icon{-webkit-transform:translateZ(0);transform:translateZ(0)}.md-bottom-bar.md-type-shift .md-bottom-bar-item.md-active .md-bottom-bar-label{opacity:1;-webkit-transform:translate3d(0,3px,0);transform:translate3d(0,3px,0)}.md-bottom-bar .md-bottom-bar-item{height:56px;margin:0;-webkit-box-flex:1;flex:1;cursor:pointer;border-radius:0;font-size:14px;font-weight:400;line-height:1em;text-transform:none}.md-bottom-bar .md-bottom-bar-item .md-ripple{padding:8px 12px 10px;transition:padding .3s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-bottom-bar .md-bottom-bar-item .md-button-content{position:static;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center}.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-icon,.md-bottom-bar .md-bottom-bar-item .md-bottom-bar-label{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-ripple{width:100%;height:100%;position:relative;z-index:4;overflow:hidden;-webkit-mask-image:radial-gradient(circle,#fff 100%,#000 0)}.md-ripple-wave{position:absolute;z-index:1;pointer-events:none;background:currentColor;border-radius:50%;opacity:0;-webkit-transform:scale(2) translateZ(0);transform:scale(2) translateZ(0)}.md-ripple-wave.md-centered{top:50%;left:50%}.md-ripple-wave~*{position:relative;z-index:2}.md-ripple-enter-active{transition:.8s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform}.md-ripple-enter-active.md-centered{transition-duration:1.2s}.md-ripple-enter{opacity:.26;-webkit-transform:scale(.26) translateZ(0);transform:scale(.26) translateZ(0)}.md-button,.md-button-clean{margin:0;padding:0;display:inline-block;position:relative;overflow:hidden;outline:none;background:transparent;border:0;border-radius:0;transition:.4s cubic-bezier(.4,0,.2,1);font-family:inherit;line-height:normal;text-transform:uppercase;text-decoration:none;vertical-align:top;white-space:nowrap}.md-button{min-width:88px;height:36px;margin:6px 8px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:2px;font-size:14px;font-weight:500}.md-button:active{outline:none}.md-button[disabled]{pointer-events:none}.md-button:not([disabled]){cursor:pointer}.md-button:not([disabled]).md-focused:before,.md-button:not([disabled]):active:before,.md-button:not([disabled]):hover:before{background-color:currentColor;opacity:.12}.md-button:not([disabled]).md-focused.md-accent:before,.md-button:not([disabled]).md-focused.md-primary:before,.md-button:not([disabled]):active:before{opacity:.2}.md-button:not([disabled]).md-ripple-off:active:before{opacity:.26}.md-button.md-plain.md-button.md-raised:not([disabled]){color:rgba(0,0,0,.87);background-color:#fff}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-font{color:rgba(0,0,0,.87)}.md-button.md-plain.md-button.md-raised:not([disabled]) .md-icon-image{fill:rgba(0,0,0,.87)}.md-button::-moz-focus-inner{padding:0;border:0}.md-button:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,opacity;content:\\\" \\\"}.md-button.md-dense{height:32px;font-size:13px}.md-button.md-raised:not([disabled]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]):active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-button.md-raised:not([disabled]).md-ripple-off:active:before{opacity:.2}.md-button+.md-button{margin-left:0}.md-button .md-ripple{padding:0 8px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.md-button-spaced .md-ripple{padding:0 16px}.md-fab,.md-fab .md-ripple,.md-fab:before,.md-icon-button,.md-icon-button .md-ripple,.md-icon-button:before{border-radius:50%}.md-fab.md-dense .md-ripple-wave,.md-fab.md-mini .md-ripple-wave,.md-icon-button .md-ripple-wave{top:0!important;right:0!important;bottom:0!important;left:0!important}.md-icon-button{width:40px;min-width:40px;height:40px;margin:0 6px}.md-icon-button.md-dense{width:32px;min-width:32px;height:32px}.md-icon-button .md-ripple-enter-active{transition-duration:1.2s}.md-fab{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);width:56px;height:56px;min-width:0;overflow:hidden}.md-fab:active{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-fab.md-dense,.md-fab.md-mini{width:40px;height:40px}.md-fab.md-fab-top-left,.md-fab.md-fab-top-right{position:absolute;top:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-bottom-right{position:absolute;bottom:24px}.md-fab.md-fab-bottom-center,.md-fab.md-fab-top-center{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);top:24px}.md-fab.md-fab-bottom-right,.md-fab.md-fab-top-right{right:24px}.md-fab.md-fab-bottom-left,.md-fab.md-fab-top-left{left:24px}.md-fab.md-fixed{position:fixed}.md-fab .md-ripple{padding:0}.md-button-content{position:relative;z-index:2}.md-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;z-index:1;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color}.md-card.md-with-hover{cursor:pointer;transition:background-color .3s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.25,.8,.25,1);will-change:background-color,box-shadow}.md-card.md-with-hover:hover{z-index:2;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-card.md-expand-active .md-card-expand-trigger.md-icon-button{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.md-card .md-subhead,.md-card .md-subheading,.md-card .md-title{margin:0;font-weight:400}.md-card .md-subhead{opacity:.54;font-size:14px;letter-spacing:.01em;line-height:20px}.md-card .md-subhead+.md-title{margin-top:4px}.md-card .md-title{font-size:24px;letter-spacing:0;line-height:32px}.md-card-area,.md-card>.md-card-area:not(:last-child){position:relative}.md-card>.md-card-area:not(:last-child):after{height:1px;position:absolute;bottom:0;content:\\\" \\\"}.md-card>.md-card-area:not(:last-child):not(.md-inset):after{right:0;left:0}.md-card>.md-card-area:not(:last-child).md-inset:after{right:16px;left:16px}.md-card-header{padding:16px}.md-card-header:first-child>.md-card-header-text>.md-title:first-child,.md-card-header:first-child>.md-title:first-child{margin-top:8px}.md-card-header:last-child{margin-bottom:8px}.md-card-header.md-card-header-flex{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.md-card-header+.md-card-content{padding-top:0}.md-card-header+.md-card-actions:not(:last-child){padding:0 8px}.md-card-header>img{border-radius:50%}.md-card-header .md-avatar,.md-card-header>img{margin-right:16px;float:left}.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-title{font-size:14px}.md-card-header .md-avatar~.md-subhead,.md-card-header .md-avatar~.md-title,.md-card-header>img~.md-subhead,.md-card-header>img~.md-title{font-weight:500;line-height:20px}.md-card-header .md-button{margin:0}.md-card-header .md-button:last-child{margin-right:-4px}.md-card-header .md-button+.md-button{margin-left:8px}.md-card-header .md-card-header-text{-webkit-box-flex:1;flex:1}.md-card-header .md-card-media{width:80px;height:80px;margin-left:16px;-webkit-box-flex:0;flex:0 0 80px}.md-card-header .md-card-media.md-medium{width:120px;height:120px;-webkit-box-flex:0;flex:0 0 120px}.md-card-header .md-card-media.md-big{width:160px;height:160px;-webkit-box-flex:0;flex:0 0 160px}.md-card-media{position:relative}.md-card-media.md-ratio-16-9{overflow:hidden}.md-card-media.md-ratio-16-9:before{width:100%;padding-top:56.25%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-16-9 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media.md-ratio-4-3{overflow:hidden}.md-card-media.md-ratio-4-3:before{width:100%;padding-top:75%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-4-3 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media.md-ratio-1-1{overflow:hidden}.md-card-media.md-ratio-1-1:before{width:100%;padding-top:100%;display:block;content:\\\" \\\"}.md-card-media.md-ratio-1-1 img{position:absolute;top:50%;right:0;left:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.md-card-media+.md-card-header{padding-top:24px}.md-card-media+.md-card-content:last-child{padding-bottom:16px}.md-card-media img{width:100%}.md-card-media-actions{padding:16px;display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}.md-card-media-actions .md-card-media{max-width:240px;max-height:240px;-webkit-box-flex:1;flex:1}.md-card-media-actions .md-card-actions{margin-left:16px;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:start;justify-content:flex-start;-webkit-box-align:center;align-items:center}.md-card-media-actions .md-card-actions .md-button+.md-button{margin:8px 0 0}.md-card-media-cover{position:relative;color:#fff}.md-card-media-cover.md-solid .md-card-area{background-color:rgba(0,0,0,.54)}.md-card-media-cover.md-text-scrim .md-card-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.md-card-media-cover .md-card-area{position:absolute;right:0;bottom:0;left:0;z-index:2}.md-card-media-cover .md-card-area,.md-card-media-cover .md-card-header{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-card-media-cover .md-card-header+.md-card-actions{padding-top:0}.md-card-media-cover .md-subhead{opacity:1}.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent),.md-card-media-cover .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon{color:#fff!important}.md-card-content{padding:16px;font-size:14px;line-height:22px}.md-card-content:last-of-type{padding-bottom:24px}.md-card-expand{overflow:hidden}.md-card-expand .md-card-actions{position:relative;z-index:2}.md-card-expand .md-card-expand-content{position:relative;z-index:1}.md-card-expand-trigger.md-icon-button{transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}.md-card-expand-content{overflow:hidden;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition:.4s cubic-bezier(.4,0,.2,1);transition-property:opacity,margin-top;will-change:opacity,margin-top}.md-card-actions{padding:8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.md-card-actions.md-alignment-right{-webkit-box-pack:end;justify-content:flex-end}.md-card-actions.md-alignment-left{-webkit-box-pack:start;justify-content:flex-start}.md-card-actions.md-alignment-space-between{-webkit-box-pack:justify;justify-content:space-between}.md-card-actions .md-button{margin:0}.md-card-actions .md-button:first-child{margin-left:0}.md-card-actions .md-button:last-child{margin-right:0}.md-card-actions .md-button+.md-button{margin-left:4px}.md-checkbox{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-checkbox:not(.md-disabled),.md-checkbox:not(.md-disabled) .md-checkbox-label{cursor:pointer}.md-checkbox .md-checkbox-container{width:20px;min-width:20px;height:20px;position:relative;border-radius:2px;border:2px solid transparent;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox .md-checkbox-container:focus{outline:none}.md-checkbox .md-checkbox-container:after,.md-checkbox .md-checkbox-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-checkbox .md-checkbox-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-checkbox .md-checkbox-container:after{width:6px;height:13px;top:0;left:5px;z-index:6;border:2px solid transparent;border-top:0;border-left:0;opacity:0;-webkit-transform:rotate(45deg) scale3D(.15,.15,1);transform:rotate(45deg) scale3D(.15,.15,1)}.md-checkbox .md-checkbox-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border-radius:50%}.md-checkbox .md-checkbox-container input{position:absolute;left:-999em}.md-checkbox .md-checkbox-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-checkbox.md-checked .md-checkbox-container:after{opacity:1;-webkit-transform:rotate(45deg) scale3D(1,1,1);transform:rotate(45deg) scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-checkbox.md-disabled.md-checked .md-checkbox-container{border-color:transparent!important}.md-checkbox.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-chips.md-field{padding-top:12px;flex-wrap:wrap}.md-chips.md-field.md-has-value label{top:-6px}.md-chips.md-field .md-chip{margin-bottom:4px}.md-chips.md-field .md-chip:last-of-type{margin-right:8px}.md-chips.md-field .md-input{min-width:128px}.md-field{width:100%;min-height:48px;margin:4px 0 24px;padding-top:16px;display:-webkit-box;display:flex;position:relative;font-family:inherit}.md-field:after,.md-field:before{position:absolute;bottom:0;right:0;left:0;z-index:1;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:border .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s,-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:border,opacity,transform;content:\\\" \\\"}.md-field:after{height:1px}.md-field:before{height:2px;z-index:2;opacity:0;-webkit-transform:scaleX(.12);transform:scaleX(.12)}.md-field label{position:absolute;top:23px;left:0;pointer-events:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-duration:.3s;font-size:16px;line-height:20px}.md-field .md-input,.md-field .md-textarea{width:100%;height:32px;padding:0;display:block;-webkit-box-flex:1;flex:1;border:none;background:none;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,padding-top,color;font-family:inherit;font-size:1px;line-height:32px}.md-field .md-input[type=date],.md-field .md-textarea[type=date]{font-size:16px}.md-field .md-input[disabled],.md-field .md-textarea[disabled]{cursor:default}.md-field .md-input:focus,.md-field .md-textarea:focus{outline:none}.md-field .md-input::-webkit-input-placeholder,.md-field .md-textarea::-webkit-input-placeholder{font-size:16px;text-shadow:none;-webkit-text-fill-color:initial;transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:font-size,color}.md-field .md-textarea{min-height:32px;max-height:230px;padding:5px 0;resize:none;line-height:1.3em}.md-field .md-count,.md-field .md-error,.md-field .md-helper-text{height:20px;position:absolute;bottom:-22px;font-size:12px;transition:.3s cubic-bezier(.4,0,.2,1)}.md-field .md-error{display:block!important;left:0;opacity:0;-webkit-transform:translate3d(0,-8px,0);transform:translate3d(0,-8px,0)}.md-field .md-count{right:0}.md-field .md-input-action{width:32px;min-width:32px;height:32px;margin:0;position:absolute;top:16px;right:0;transition:.4s cubic-bezier(.4,0,.2,1)}.md-field .md-input-action.md-input-action-enter-active,.md-field .md-input-action.md-input-action-leave-active{opacity:0}.md-field .md-input-action.md-input-action-enter-to{opacity:1}.md-field>.md-icon{margin:4px auto;position:relative;z-index:3;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-field>.md-icon:last-of-type:not(:first-child):after{display:none}.md-field>.md-icon:after{width:37px;height:4px;position:absolute;left:-1px;bottom:-5px;transition:.3s cubic-bezier(.4,0,.2,1);content:\\\"\\\"}.md-field>.md-icon~label{left:36px}.md-field>.md-icon~.md-file,.md-field>.md-icon~.md-input,.md-field>.md-icon~.md-textarea{margin-left:12px}.md-field+.md-has-textarea:not(.md-autogrow){margin-top:36px}.md-field.md-has-placeholder label{pointer-events:auto;top:10px;opacity:0;font-size:12px}.md-field.md-has-placeholder .md-input,.md-field.md-has-placeholder .md-textarea{font-size:16px}.md-field.md-has-textarea:not(.md-autogrow):after,.md-field.md-has-textarea:not(.md-autogrow):before{height:auto;pointer-events:none;top:0;bottom:0;-webkit-transform:none;transform:none;background:none!important;border:1px solid transparent;border-radius:3px}.md-field.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-has-textarea:not(.md-autogrow) label{top:16px;left:16px}.md-field.md-has-textarea:not(.md-autogrow) .md-textarea{min-height:100px;padding:0 16px;resize:vertical}.md-field.md-has-textarea:not(.md-autogrow)>.md-icon{position:absolute;top:6px;right:6px;z-index:3}.md-field.md-has-textarea:not(.md-autogrow) .md-count{right:6px;bottom:2px}.md-field.md-has-textarea:not(.md-autogrow) .md-clear{top:6px;right:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused label,.md-field.md-has-textarea:not(.md-autogrow).md-has-value label{top:6px}.md-field.md-has-textarea:not(.md-autogrow).md-focused .md-textarea,.md-field.md-has-textarea:not(.md-autogrow).md-has-value .md-textarea{padding-top:10px}.md-field.md-has-file:after,.md-field.md-has-file:before,.md-field.md-has-file label{left:36px}.md-field.md-has-file .md-input{margin-left:12px}.md-field.md-focused:before,.md-field.md-highlight:before{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1);transition:.3s cubic-bezier(.4,0,.2,1);transition-property:border,opacity,-webkit-transform;transition-property:border,opacity,transform;transition-property:border,opacity,transform,-webkit-transform}.md-field.md-focused label,.md-field.md-has-value label{pointer-events:auto;top:0;opacity:1;font-size:12px}.md-field.md-focused .md-input,.md-field.md-focused .md-textarea,.md-field.md-has-value .md-input,.md-field.md-has-value .md-textarea{font-size:16px}.md-field.md-inline label{pointer-events:none}.md-field.md-inline.md-focused label{top:23px;font-size:16px}.md-field.md-inline.md-has-value label{opacity:0}.md-field.md-disabled:after{background:0 100% repeat-x;background-size:4px 1px}.md-field.md-has-password .md-toggle-password{margin:0;position:absolute;right:0;bottom:-2px}.md-field.md-has-password .md-toggle-password svg{width:22px;height:22px}.md-field.md-clearable .md-input{padding-right:30px}@-webkit-keyframes a{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}30%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}@keyframes a{10%,90%{-webkit-transform:translate3d(-1px,0,0);transform:translate3d(-1px,0,0)}30%,70%{-webkit-transform:translate3d(-4px,0,0);transform:translate3d(-4px,0,0)}40%,60%{-webkit-transform:translate3d(4px,0,0);transform:translate3d(4px,0,0)}}.md-field.md-invalid.md-has-value label:not(:focus){-webkit-animation:a .4s cubic-bezier(.4,0,.2,1) both;animation:a .4s cubic-bezier(.4,0,.2,1) both;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.md-field.md-invalid.md-has-textarea:not(.md-autogrow):before{border-width:2px}.md-field.md-invalid .md-error{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}.md-field.md-invalid .md-helper-text{opacity:0;-webkit-transform:translate3d(0,-8px,0);transform:translate3d(0,-8px,0)}.md-field.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-icon{width:24px;min-width:24px;height:24px;font-size:24px!important;margin:auto;display:-webkit-inline-box;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;vertical-align:middle}.md-icon.md-size-2x{width:48px;min-width:48px;height:48px;font-size:48px!important}.md-icon.md-size-3x{width:72px;min-width:72px;height:72px;font-size:72px!important}.md-icon.md-size-4x{width:96px;min-width:96px;height:96px;font-size:96px!important}.md-icon.md-size-5x{width:120px;min-width:120px;height:120px;font-size:120px!important}.md-icon-image svg{height:100%;-webkit-box-flex:1;flex:1;transition:fill .4s cubic-bezier(.4,0,.2,1)}.md-icon{transition:color .4s cubic-bezier(.4,0,.2,1);direction:ltr;font-family:Material Icons;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-style:normal;letter-spacing:normal;line-height:1;text-rendering:optimizeLegibility;text-transform:none;word-wrap:normal;white-space:nowrap;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-svg-loader{display:block}.md-svg-loader svg{width:100%}.md-chip{height:32px;padding:0 12px;display:inline-block;cursor:default;border-radius:32px;transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:background-color,color,opacity,box-shadow,-webkit-transform;transition-property:background-color,color,opacity,transform,box-shadow;transition-property:background-color,color,opacity,transform,box-shadow,-webkit-transform;will-change:background-color,color,opacity,transform,box-shadow;font-size:13px;line-height:32px;vertical-align:middle;white-space:nowrap}.md-chip:focus{outline:none}.md-chip.md-chip-enter-active,.md-chip.md-chip-leave-active{opacity:0;-webkit-transform:transformZ(0) scale(.8);transform:transformZ(0) scale(.8)}.md-chip.md-chip-enter-to{opacity:1;-webkit-transform:transformZ(0) scale(1);transform:transformZ(0) scale(1)}.md-chip.md-clickable:not(.md-disabled):active,.md-chip.md-deletable:not(.md-disabled):active,.md-chip.md-focused{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-chip.md-clickable{padding:0;cursor:pointer}.md-chip.md-clickable>.md-ripple{padding:0 12px}.md-chip.md-deletable{padding-right:32px;position:relative}.md-chip.md-deletable.md-clickable{padding-right:0}.md-chip.md-deletable.md-clickable>.md-ripple{padding-right:32px}.md-chip.md-disabled{cursor:default}.md-chip+.md-chip{margin-left:4px}.md-chip .md-button.md-input-action{width:18px;min-width:18px;height:18px;margin:0;position:absolute;top:50%;right:7px;z-index:5;-webkit-transform:translate3D(0,-50%,0);transform:translate3D(0,-50%,0);transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1);font-size:18px}.md-chip .md-button.md-input-action .md-ripple{padding:0}.md-chip .md-button.md-input-action .md-button-content{height:14px}.md-chip .md-button.md-input-action .md-icon{width:14px;min-width:14px;height:14px;font-size:14px!important;vertical-align:top}.md-chip .md-button.md-input-action .md-icon svg{transition-duration:.3s;transition-timing-function:cubic-bezier(.25,.8,.25,1)}.md-datepicker-overlay{opacity:0}.md-datepicker .md-date-icon{cursor:pointer}.md-datepicker input[type=date]::-webkit-calendar-picker-indicator,.md-datepicker input[type=date]::-webkit-clear-button,.md-datepicker input[type=date]::-webkit-inner-spin-button{display:none}@media (max-width:600px){.md-datepicker-overlay{opacity:1}}.md-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;background:rgba(0,0,0,.6);transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity;will-change:opacity}.md-overlay.md-fixed,body>.md-overlay{position:fixed}.md-overlay-enter,.md-overlay-leave-active{opacity:0}.md-datepicker-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);display:-webkit-box;display:flex;overflow:hidden;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;-webkit-transform-origin:top left;transform-origin:top left;transition:opacity .2s cubic-bezier(.25,.8,.25,1),-webkit-transform .35s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1),-webkit-transform .35s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-datepicker-dialog-leave-active{opacity:0}.md-datepicker-dialog-enter{opacity:0;-webkit-transform:scale(.9);transform:scale(.9)}.md-datepicker-dialog-enter .md-datepicker-body .md-datepicker-calendar{opacity:0;-webkit-transform:translate3D(0,10%,0);transform:translate3D(0,10%,0)}.md-datepicker-header{min-width:150px;padding:16px}.md-datepicker-header .md-datepicker-year-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:16px;font-weight:700;letter-spacing:.01em;line-height:24px}.md-datepicker-header .md-datepicker-date-select{cursor:pointer;opacity:.54;transition:opacity .3s cubic-bezier(.4,0,.2,1);font-size:32px;font-weight:900;letter-spacing:0;line-height:1.2em}.md-datepicker-header .md-datepicker-dayname{display:block}.md-datepicker-header .md-selected{opacity:1}.md-datepicker-body{width:320px;position:relative;overflow:hidden;transition:width .3s cubic-bezier(.25,.8,.25,1);will-change:width}.md-datepicker-body .md-button{margin:0}.md-datepicker-body-header{padding:8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;position:absolute;top:0;right:0;left:0;pointer-events:none}.md-datepicker-body-header:after,.md-datepicker-body-header:before{width:48px;height:48px;position:absolute;top:0;z-index:2;pointer-events:none;content:\\\" \\\"}.md-datepicker-body-header:after{left:0}.md-datepicker-body-header:before{right:0}.md-datepicker-body-header .md-button{pointer-events:auto;z-index:3}.md-datepicker-body-header-enter .md-button:first-child,.md-datepicker-body-header-leave-active .md-button:first-child{-webkit-transform:translate3d(-150%,0,0);transform:translate3d(-150%,0,0)}.md-datepicker-body-header-enter .md-button:last-child,.md-datepicker-body-header-leave-active .md-button:last-child{-webkit-transform:translate3d(150%,0,0);transform:translate3d(150%,0,0)}.md-datepicker-body-content{overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1);will-change:height}.md-datepicker-panel{display:-webkit-box;display:flex;position:absolute;top:0;right:0;bottom:0;left:0;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-calendar.md-datepicker-view-enter,.md-datepicker-calendar.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter{-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0)}.md-datepicker-calendar.md-previous .md-datepicker-month-enter .md-datepicker-month-trigger{-webkit-transform:translate3D(-30%,0,0);transform:translate3D(-30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter,.md-datepicker-calendar.md-previous .md-datepicker-month-leave-active{-webkit-transform:translate3D(100%,0,0);transform:translate3D(100%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-enter .md-datepicker-month-trigger{-webkit-transform:translate3D(30%,0,0);transform:translate3D(30%,0,0)}.md-datepicker-calendar.md-next .md-datepicker-month-leave-active{-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0)}.md-datepicker-month{top:8px;bottom:auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-month .md-datepicker-month-trigger{min-height:32px;margin:0 46px 10px;-webkit-box-flex:1;flex:1;border-radius:0;transition:-webkit-transform .45s cubic-bezier(.4,0,.2,1);transition:transform .45s cubic-bezier(.4,0,.2,1);transition:transform .45s cubic-bezier(.4,0,.2,1),-webkit-transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}.md-datepicker-week{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.md-datepicker-week span{-webkit-box-flex:1;flex:1;font-size:12px;text-align:center}.md-datepicker-days{display:-webkit-box;display:flex;flex-wrap:wrap}.md-datepicker-days .md-datepicker-day,.md-datepicker-days .md-datepicker-empty{margin:1px 0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-flex:0;flex:0 1 14.28571%}.md-datepicker-days .md-datepicker-day-button{width:30px;min-width:30px;height:30px;cursor:pointer;border-radius:30px;transition:.3s cubic-bezier(.4,0,.2,1);line-height:30px;text-align:center}.md-datepicker-days .md-datepicker-selected,.md-datepicker-days .md-datepicker-today{font-weight:700}.md-datepicker-days .md-datepicker-disabled{pointer-events:none}.md-datepicker-month-selector{padding:6px 8px 10px;flex-wrap:wrap;bottom:auto;transition:.35s cubic-bezier(.4,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-datepicker-month-selector.md-datepicker-view-enter,.md-datepicker-month-selector.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-datepicker-month-selector .md-datepicker-year-trigger{width:100%;margin:0 0 8px;-webkit-box-flex:1;flex:1 1 100%}.md-datepicker-month-button,.md-datepicker-year-button{height:36px;margin:3px 0;cursor:pointer;transition:.3s cubic-bezier(.4,0,.2,1);line-height:36px;font-weight:500;text-align:center;text-transform:uppercase}.md-datepicker-month-button{-webkit-box-flex:1;flex:1 1 33.3333%;border-radius:2px;font-size:13px}.md-datepicker-year-selector{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;overflow:auto;bottom:52px;border-bottom:1px solid}.md-datepicker-year-selector.md-datepicker-view-enter,.md-datepicker-year-selector.md-datepicker-view-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-datepicker-year-selector .md-button{min-height:36px}.md-datepicker-year-button{font-size:16px}.md-datepicker-year-button.md-datepicker-selected{font-size:24px}@media (max-width:600px){.md-datepicker-dialog{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;top:50%!important;left:50%!important;-webkit-transform:translate3D(-50%,-50%,0);transform:translate3D(-50%,-50%,0);-webkit-transform-origin:center center;transform-origin:center center}.md-datepicker-dialog-enter{-webkit-transform:translate3D(-50%,-50%,0) scale(.9);transform:translate3D(-50%,-50%,0) scale(.9)}.md-datepicker-header{min-width:auto;padding:16px 20px}.md-datepicker-header .md-datepicker-dayname{display:inline-block}.md-datepicker-body{width:296px}.md-datepicker-month{padding:0 6px}}.md-popover.md-rendering{opacity:0;transition:none!important}.md-dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);min-width:280px;max-width:80%;max-height:80%;margin:auto;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column;overflow:hidden;position:fixed;top:50%;left:50%;z-index:10;border-radius:2px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center;transition:opacity .15s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1);transition:opacity .15s cubic-bezier(.25,.8,.25,1),transform .2s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,left,top}.md-dialog>.md-dialog-actions,.md-dialog>.md-dialog-content,.md-dialog>.md-dialog-tabs,.md-dialog>.md-dialog-title{transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-dialog-enter-active,.md-dialog-leave-active{opacity:0;-webkit-transform:translate(-50%,-50%) scale(.9);transform:translate(-50%,-50%) scale(.9)}.md-dialog-enter-active>.md-dialog-actions,.md-dialog-enter-active>.md-dialog-content,.md-dialog-enter-active>.md-dialog-tabs,.md-dialog-enter-active>.md-dialog-title,.md-dialog-leave-active>.md-dialog-actions,.md-dialog-leave-active>.md-dialog-content,.md-dialog-leave-active>.md-dialog-tabs,.md-dialog-leave-active>.md-dialog-title{opacity:0;-webkit-transform:scale(.95) translate3D(0,10%,0);transform:scale(.95) translate3D(0,10%,0)}.md-dialog-container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column}.md-dialog-container,.md-dialog-container .md-tabs{-webkit-box-flex:1;flex:1}.md-dialog-container .md-tabs-navigation{padding:0 12px}@media (max-width:600px){.md-dialog-container .md-tab{padding:12px}.md-dialog-fullscreen{max-width:100%;max-height:100%;position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;-webkit-transform:none;transform:none}.md-dialog-fullscreen.md-dialog-enter{opacity:0;-webkit-transform:translate3D(0,30%,0);transform:translate3D(0,30%,0)}.md-dialog-fullscreen.md-dialog-leave-active{opacity:0;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}}.md-dialog-title{margin-bottom:20px;padding:24px 24px 0}.md-dialog-content{padding:0 24px 24px;-webkit-box-flex:1;flex:1;flex-basis:auto;overflow:auto;position:relative}.md-dialog-content:first-child{padding-top:24px}.md-dialog-content p:first-child:not(:only-child){margin-top:0}.md-dialog-content p:last-child:not(:only-child){margin-bottom:0}.md-dialog-actions{min-height:52px;padding:8px 8px 8px 24px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;position:relative}.md-dialog-actions:before{height:1px;position:absolute;top:-1px;right:0;left:0;content:\\\" \\\"}.md-dialog-actions .md-button{min-width:64px;margin:0}.md-dialog-actions .md-button+.md-button{margin-left:8px}.md-divider{height:1px;margin:0;padding:0;display:block;border:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);will-change:margin-left}.md-divider.md-inset{margin-left:72px}.md-drawer{position:absolute;top:0;bottom:0;left:0;z-index:7;-webkit-transform:translate3D(-100%,0,0);transform:translate3D(-100%,0,0);transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform,box-shadow;width:400px;max-width:calc(100vw - 56px);overflow-x:hidden;overflow-y:auto}.md-drawer.md-right{right:0;left:auto;-webkit-transform:translate3D(100%,0,0);transform:translate3D(100%,0,0)}.md-drawer.md-fixed{position:fixed}.md-drawer.md-active{-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);transition-timing-function:cubic-bezier(.4,0,.2,1)}.md-drawer.md-temporary+.md-app-container .md-content{border-left:none}.md-drawer.md-temporary.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-drawer.md-persistent:not(.md-active)+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini{border-right:1px solid;-webkit-transform:translate3D(0,64px,0);transform:translate3D(0,64px,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:width,-webkit-transform;transition-property:transform,width;transition-property:transform,width,-webkit-transform;will-change:transform,box-shadow}.md-drawer.md-persistent-mini.md-active+.md-app-container .md-content{border-left:none}.md-drawer.md-persistent-mini:not(.md-active){width:70px!important;z-index:1;white-space:nowrap}.md-drawer.md-persistent-mini:not(.md-active) .md-toolbar{display:none}.md-drawer.md-persistent-mini:not(.md-active) .md-list-item-content{padding:0 23px}.md-drawer.md-persistent-mini.md-active{position:relative;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0);white-space:normal}.md-drawer .md-list-item-container{font-size:14px;text-transform:none}@media (max-width:600px){.md-drawer{width:320px}.md-drawer.md-active{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}}@media (min-width:600px){.md-drawer:not(.md-temporary)~.md-overlay{background:none;pointer-events:none}.md-drawer.md-permanent{position:relative;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-drawer.md-permanent-full{z-index:3}.md-drawer.md-permanent-full .md-list{padding-top:0}.md-drawer.md-permanent-card,.md-drawer.md-permanent-clipped{z-index:1}.md-drawer.md-permanent-card{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);overflow:auto;position:relative;border-radius:2px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;margin:8px;z-index:1}}@media (min-width:960px){.md-drawer.md-permanent-card{margin:16px}}@media (min-width:1280px){.md-drawer.md-permanent-card{margin:24px}}.md-elevation-0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.md-elevation-1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.md-elevation-2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.md-elevation-3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.md-elevation-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-elevation-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-elevation-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-elevation-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-elevation-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-elevation-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-elevation-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-elevation-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-elevation-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-elevation-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-elevation-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-elevation-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-elevation-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-elevation-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-elevation-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-elevation-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-elevation-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-elevation-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-elevation-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-elevation-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-elevation-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.md-empty-state{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;text-align:center;max-width:420px;padding:36px;margin:0 auto;position:relative;transition:opacity .15s cubic-bezier(0,0,.2,1),-webkit-transform .3s cubic-bezier(0,0,.2,1);transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1);transition:opacity .15s cubic-bezier(0,0,.2,1),transform .3s cubic-bezier(0,0,.2,1),-webkit-transform .3s cubic-bezier(0,0,.2,1);will-change:transform,opacity}.md-empty-state.md-rounded{max-width:auto;border-radius:50%}.md-empty-state.md-rounded .md-empty-state-container{padding:40px;position:absolute;top:0;right:0;bottom:0;left:0}.md-empty-state .md-button{margin:.5em 0 0}.md-empty-state-enter{opacity:0;-webkit-transform:scale(.87);transform:scale(.87)}.md-empty-state-enter .md-empty-state-container{opacity:0}.md-empty-state-container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;text-align:center;transition:opacity .4s cubic-bezier(.4,0,.2,1);will-change:opacity}.md-empty-state-icon{width:160px;min-width:160px;height:160px;font-size:160px!important;margin:0}.md-empty-state-label{font-size:26px;font-weight:500;line-height:40px}.md-empty-state-description{margin:1em 0;font-size:16px;line-height:24px}.md-menu.md-select{display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1}.md-menu.md-select:not(.md-disabled) .md-icon,.md-menu.md-select:not(.md-disabled) .md-input{cursor:pointer;outline:none}.md-menu.md-select .md-input{-webkit-box-flex:1;flex:1}.md-menu.md-select .md-input-fake,.md-menu.md-select select{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-menu-content.md-select-menu{width:100%}.md-menu-content.md-select-menu.md-menu-content-enter{-webkit-transform:translate3d(0,-8px,0) scaleY(.3);transform:translate3d(0,-8px,0) scaleY(.3)}.md-menu-content.md-select-menu .md-list{transition:opacity .3s cubic-bezier(.55,0,.55,.2)}.md-menu-content.md-select-menu .md-dense .md-ripple.md-list-item-content{font-size:14px}.md-menu{display:inline-block}.md-menu>.md-button{margin:0}.md-menu-content{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);min-width:112px;max-width:280px;max-height:35vh;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;position:absolute;z-index:8;border-radius:2px;transition:opacity .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1);transition:transform .2s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .2s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform,top,left!important}.md-menu-content.md-shallow{position:fixed!important;top:-9999em!important;left:-9999em!important;pointer-events:none}.md-menu-content.md-menu-content-enter-active{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}.md-menu-content.md-menu-content-leave-active{transition:opacity .4s cubic-bezier(.4,0,.2,1);opacity:0}.md-menu-content.md-menu-content-enter.md-menu-content-top-start{-webkit-transform-origin:bottom left;transform-origin:bottom left;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-top-end{-webkit-transform-origin:bottom right;transform-origin:bottom right;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-start{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-right-end{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-start{-webkit-transform-origin:top left;transform-origin:top left;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-bottom-end{-webkit-transform-origin:top right;transform-origin:top right;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-start{-webkit-transform-origin:right top;transform-origin:right top;-webkit-transform:translate3d(0,-8px,0) scaleY(.95);transform:translate3d(0,-8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter.md-menu-content-left-end{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translate3d(0,8px,0) scaleY(.95);transform:translate3d(0,8px,0) scaleY(.95)}.md-menu-content.md-menu-content-enter .md-list{opacity:0}.md-menu-content.md-menu-content-medium{min-width:168px}.md-menu-content.md-menu-content-big{min-width:224px}.md-menu-content.md-menu-content-huge{min-width:280px}.md-menu-content-container{-webkit-box-flex:1;flex:1;overflow:auto}.md-menu-content-container .md-list{transition:opacity .3s cubic-bezier(.25,.8,.25,1);will-change:opacity;font-family:Roboto,sans-serif;text-transform:none;white-space:nowrap}@media (max-width:944px){.md-menu-content-container .md-list{font-size:14px}}.md-list{margin:0;padding:8px 0;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column nowrap;position:relative;list-style:none}.md-list.md-dense{padding:4px 0}.md-list .md-divider{margin-top:-1px}.md-list .md-subheader.md-inset{padding-left:72px}.md-list>.md-subheader:first-of-type{margin-top:-8px}.md-optgroup .md-subheader{text-transform:uppercase}.md-optgroup .md-ripple.md-list-item-content{padding-left:24px}.md-file{display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1}.md-file input[type=file]{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;clip:rect(0 0 0 0);border:0}.md-file .md-icon{cursor:pointer}.md-highlight-text{-webkit-box-flex:1;flex:1}.md-highlight-text-match{font-weight:500}.md-image{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.md-layout{display:flex;flex-wrap:wrap}.md-layout .md-layout{flex:1}.md-layout .md-layout-nowrap{flex-wrap:nowrap}.md-layout.md-centered{width:100%;max-width:1200px;margin:0 auto}.md-layout.md-gutter{margin-right:-20px;margin-left:-20px}.md-layout.md-gutter>.md-layout-item{padding-right:20px;padding-left:20px}@media (max-width:1264px){.md-layout.md-gutter{margin-right:-12px;margin-left:-12px}.md-layout.md-gutter>.md-layout-item{padding-right:12px;padding-left:12px}}@media (max-width:944px){.md-layout.md-gutter{margin-right:-8px;margin-left:-8px}.md-layout.md-gutter>.md-layout-item{padding-right:8px;padding-left:8px}}@media (max-width:600px){.md-layout.md-gutter{margin-right:-4px;margin-left:-4px}.md-layout.md-gutter>.md-layout-item{padding-right:4px;padding-left:4px}}.md-layout.md-alignment-top-left{justify-content:flex-start;align-items:flex-start}.md-layout.md-alignment-top-center{justify-content:center;align-items:flex-start}.md-layout.md-alignment-top-right{justify-content:flex-end;align-items:flex-start}.md-layout.md-alignment-top-space-around{justify-content:space-around;align-items:flex-start}.md-layout.md-alignment-top-space-between{justify-content:space-between;align-items:flex-start}.md-layout.md-alignment-center-left{justify-content:flex-start;align-items:center}.md-layout.md-alignment-center,.md-layout.md-alignment-center-center{justify-content:center;align-items:center}.md-layout.md-alignment-center-right{justify-content:flex-end;align-items:center}.md-layout.md-alignment-center-space-around{justify-content:space-around;align-items:center}.md-layout.md-alignment-center-space-between{justify-content:space-between;align-items:center}.md-layout.md-alignment-bottom-left{justify-content:flex-start;align-items:flex-end}.md-layout.md-alignment-bottom-center{justify-content:center;align-items:flex-end}.md-layout.md-alignment-bottom-right{justify-content:flex-end;align-items:flex-end}.md-layout.md-alignment-bottom-space-around{justify-content:space-around;align-items:flex-end}.md-layout.md-alignment-bottom-space-between{justify-content:space-between;align-items:flex-end}.md-layout.md-alignment-space-around-left{justify-content:flex-start;align-items:space-around}.md-layout.md-alignment-space-around-center{justify-content:center;align-items:space-around}.md-layout.md-alignment-space-around-right{justify-content:flex-end;align-items:space-around}.md-layout.md-alignment-space-around-space-around{justify-content:space-around;align-items:space-around}.md-layout.md-alignment-space-around-space-between{justify-content:space-between;align-items:space-around}.md-layout.md-alignment-space-between-left{justify-content:flex-start;align-items:space-between}.md-layout.md-alignment-space-between-center{justify-content:center;align-items:space-between}.md-layout.md-alignment-space-between-right{justify-content:flex-end;align-items:space-between}.md-layout.md-alignment-space-between-space-around{justify-content:space-around;align-items:space-between}.md-layout.md-alignment-space-between-space-between{justify-content:space-between;align-items:space-between}.md-layout-item,.md-layout-item.md-size{flex:1 1}.md-layout-item.md-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}@media (max-width:1264px){.md-layout-item.md-medium-size{flex:1 1}.md-layout-item.md-medium-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-medium-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-medium-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-medium-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-medium-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-medium-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-medium-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-medium-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-medium-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-medium-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-medium-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-medium-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-medium-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-medium-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-medium-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-medium-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-medium-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-medium-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-medium-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-medium-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-medium-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-medium-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:944px){.md-layout-item.md-small-size{flex:1 1}.md-layout-item.md-small-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-small-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-small-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-small-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-small-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-small-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-small-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-small-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-small-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-small-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-small-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-small-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-small-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-small-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-small-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-small-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-small-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-small-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-small-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-small-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-small-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-small-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}@media (max-width:600px){.md-layout-item.md-xsmall-size{flex:1 1}.md-layout-item.md-xsmall-size-5{min-width:5%;max-width:5%;flex:0 1 5%}.md-layout-item.md-xsmall-size-10{min-width:10%;max-width:10%;flex:0 1 10%}.md-layout-item.md-xsmall-size-15{min-width:15%;max-width:15%;flex:0 1 15%}.md-layout-item.md-xsmall-size-20{min-width:20%;max-width:20%;flex:0 1 20%}.md-layout-item.md-xsmall-size-25{min-width:25%;max-width:25%;flex:0 1 25%}.md-layout-item.md-xsmall-size-30{min-width:30%;max-width:30%;flex:0 1 30%}.md-layout-item.md-xsmall-size-35{min-width:35%;max-width:35%;flex:0 1 35%}.md-layout-item.md-xsmall-size-40{min-width:40%;max-width:40%;flex:0 1 40%}.md-layout-item.md-xsmall-size-45{min-width:45%;max-width:45%;flex:0 1 45%}.md-layout-item.md-xsmall-size-50{min-width:50%;max-width:50%;flex:0 1 50%}.md-layout-item.md-xsmall-size-55{min-width:55%;max-width:55%;flex:0 1 55%}.md-layout-item.md-xsmall-size-60{min-width:60%;max-width:60%;flex:0 1 60%}.md-layout-item.md-xsmall-size-65{min-width:65%;max-width:65%;flex:0 1 65%}.md-layout-item.md-xsmall-size-70{min-width:70%;max-width:70%;flex:0 1 70%}.md-layout-item.md-xsmall-size-75{min-width:75%;max-width:75%;flex:0 1 75%}.md-layout-item.md-xsmall-size-80{min-width:80%;max-width:80%;flex:0 1 80%}.md-layout-item.md-xsmall-size-85{min-width:85%;max-width:85%;flex:0 1 85%}.md-layout-item.md-xsmall-size-90{min-width:90%;max-width:90%;flex:0 1 90%}.md-layout-item.md-xsmall-size-95{min-width:95%;max-width:95%;flex:0 1 95%}.md-layout-item.md-xsmall-size-33{min-width:33.3333%;max-width:33.3333%;flex:0 1 33.3333%}.md-layout-item.md-xsmall-size-66{min-width:66.6666%;max-width:66.6666%;flex:0 1 66.6666%}.md-layout-item.md-xsmall-size-100{min-width:100%;max-width:100%;margin-left:0!important;flex:1 1 100%}}.md-hide{display:none}@media (max-width:1264px){.md-medium-hide{display:none}}@media (max-width:944px){.md-small-hide{display:none}}@media (max-width:600px){.md-xsmall-hide{display:none}}.md-list-item{height:auto;position:relative;z-index:2}.md-list-item.md-inset .md-list-item-content{padding-left:72px}.md-list-item .md-icon{margin:0;transition-property:color,margin-right}.md-list-item-container{width:100%;font-size:16px;font-weight:400;text-align:left;text-transform:none}.md-list-item-container:not(.md-list-item-default):not([disabled]){-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.md-list-item-container.md-button-clean:hover{opacity:1;text-decoration:none}.md-list-item-content{min-height:48px;padding:4px 16px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;transition:padding .4s cubic-bezier(.25,.8,.25,1);will-change:padding}.md-list.md-dense .md-list-item-content{min-height:40px;font-size:13px}.md-list.md-dense .md-list-item-content>.md-avatar{margin-top:0;margin-bottom:0}.md-list.md-dense .md-list-item-content>.md-avatar:not(.md-small){width:36px;min-width:36px;height:36px}.md-list.md-dense .md-list-item-content>.md-avatar:first-child{margin-right:20px}.md-list.md-double-line .md-list-item-content{min-height:72px}.md-list.md-double-line.md-dense .md-list-item-content{min-height:60px}.md-list.md-triple-line .md-list-item-content{min-height:88px}.md-list.md-triple-line.md-dense .md-list-item-content{min-height:76px}.md-list-item-content .md-list-action{margin:0 -10px 0 0}.md-list-item-content .md-list-action:last-of-type{margin:0 -10px 0 16px}.md-list.md-triple-line .md-list-item-content .md-list-action:last-of-type{align-self:flex-start}.md-list-item-content>.md-icon:first-child{margin-right:32px}.md-list-item-content>.md-icon:last-child{margin-left:16px}.md-list-item-content>.md-checkbox,.md-list-item-content>.md-radio{margin:0}.md-list-item-content>.md-checkbox:first-child,.md-list-item-content>.md-radio:first-child{margin-right:36px}.md-list-item-content>.md-switch{margin:0}.md-list-item-content>.md-switch:first-child{margin-right:22px}.md-list-item-content>.md-avatar{margin:4px 0}.md-list-item-content>.md-avatar:first-child{margin-right:16px}.md-list-item-text{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:start;align-items:flex-start;overflow:hidden;line-height:1.25em;white-space:nowrap}.md-list.md-dense .md-list-item-text{font-size:13px}.md-list-item-text *{width:100%;margin:0;overflow:hidden;line-height:1.25em;text-overflow:ellipsis}.md-list-item-text :nth-child(2),.md-list-item-text :nth-child(3){font-size:14px}.md-list.md-dense .md-list-item-text *{font-size:13px}.md-list-item-expand{border-top:1px solid transparent;border-bottom:1px solid transparent;transition:border .4s cubic-bezier(.25,.8,.25,1);will-change:border}.md-list-item-expand.md-active .md-list-expand-icon{-webkit-perspective:1000px;perspective:1000px;-webkit-perspective-origin:50% 50%;perspective-origin:50% 50%;-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}.md-list-item-expand.md-active .md-list-expand{opacity:1;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-list-item-expand .md-list-expand{height:0;opacity:0;overflow:hidden;-webkit-transform:translate3D(0,-24px,0);transform:translate3D(0,-24px,0);transition:.4s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;will-change:transform,opacity}.md-list-item-expand .md-list-expand-icon{transition:-webkit-transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1);transition:transform .4s cubic-bezier(.25,.8,.25,1),-webkit-transform .4s cubic-bezier(.25,.8,.25,1);will-change:transform}@-webkit-keyframes b{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(.5,0,.7,.5);animation-timing-function:cubic-bezier(.5,0,.7,.5);-webkit-transform:translateX(0);transform:translateX(0)}60%{-webkit-animation-timing-function:cubic-bezier(.3,.38,.55,.96);animation-timing-function:cubic-bezier(.3,.38,.55,.96);-webkit-transform:translateX(83.67%);transform:translateX(83.67%)}to{-webkit-transform:translateX(200.61%);transform:translateX(200.61%)}}@keyframes b{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{-webkit-animation-timing-function:cubic-bezier(.5,0,.7,.5);animation-timing-function:cubic-bezier(.5,0,.7,.5);-webkit-transform:translateX(0);transform:translateX(0)}60%{-webkit-animation-timing-function:cubic-bezier(.3,.38,.55,.96);animation-timing-function:cubic-bezier(.3,.38,.55,.96);-webkit-transform:translateX(83.67%);transform:translateX(83.67%)}to{-webkit-transform:translateX(200.61%);transform:translateX(200.61%)}}@-webkit-keyframes c{0%{-webkit-transform:scaleX(.08);transform:scaleX(.08)}35%{-webkit-animation-timing-function:cubic-bezier(.33,.12,.79,1);animation-timing-function:cubic-bezier(.33,.12,.79,1);-webkit-transform:scaleX(.08);transform:scaleX(.08)}70%{-webkit-animation-timing-function:cubic-bezier(.06,.11,.6,1);animation-timing-function:cubic-bezier(.06,.11,.6,1);-webkit-transform:scaleX(.66);transform:scaleX(.66)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@keyframes c{0%{-webkit-transform:scaleX(.08);transform:scaleX(.08)}35%{-webkit-animation-timing-function:cubic-bezier(.33,.12,.79,1);animation-timing-function:cubic-bezier(.33,.12,.79,1);-webkit-transform:scaleX(.08);transform:scaleX(.08)}70%{-webkit-animation-timing-function:cubic-bezier(.06,.11,.6,1);animation-timing-function:cubic-bezier(.06,.11,.6,1);-webkit-transform:scaleX(.66);transform:scaleX(.66)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@-webkit-keyframes d{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:translateX(37.65%);transform:translateX(37.65%)}50%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:translateX(84.39%);transform:translateX(84.39%)}to{-webkit-transform:translateX(160.28%);transform:translateX(160.28%)}}@keyframes d{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:translateX(37.65%);transform:translateX(37.65%)}50%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:translateX(84.39%);transform:translateX(84.39%)}to{-webkit-transform:translateX(160.28%);transform:translateX(160.28%)}}@-webkit-keyframes e{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:scaleX(.08);transform:scaleX(.08)}20%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:scaleX(.46);transform:scaleX(.46)}45%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:scaleX(.73);transform:scaleX(.73)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@keyframes e{0%{-webkit-animation-timing-function:cubic-bezier(.15,0,.52,.41);animation-timing-function:cubic-bezier(.15,0,.52,.41);-webkit-transform:scaleX(.08);transform:scaleX(.08)}20%{-webkit-animation-timing-function:cubic-bezier(.31,.28,.8,.73);animation-timing-function:cubic-bezier(.31,.28,.8,.73);-webkit-transform:scaleX(.46);transform:scaleX(.46)}45%{-webkit-animation-timing-function:cubic-bezier(.4,.63,.6,.9);animation-timing-function:cubic-bezier(.4,.63,.6,.9);-webkit-transform:scaleX(.73);transform:scaleX(.73)}to{-webkit-transform:scaleX(.08);transform:scaleX(.08)}}@-webkit-keyframes f{to{-webkit-transform:translate3D(-8px,0,0);transform:translate3D(-8px,0,0)}}@keyframes f{to{-webkit-transform:translate3D(-8px,0,0);transform:translate3D(-8px,0,0)}}.md-progress-bar{height:5px;overflow:hidden;position:relative;-webkit-transform:translateZ(0) scaleY(1);transform:translateZ(0) scaleY(1);-webkit-transform-origin:top center;transform-origin:top center;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.md-progress-bar.md-indeterminate .md-progress-bar-track,.md-progress-bar.md-query .md-progress-bar-track{left:-150%;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-track:after,.md-progress-bar.md-query .md-progress-bar-track:after{-webkit-animation:c 2s infinite linear;animation:c 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill,.md-progress-bar.md-query .md-progress-bar-fill{left:-55%;-webkit-animation:d 2s infinite linear;animation:d 2s infinite linear}.md-progress-bar.md-indeterminate .md-progress-bar-fill:after,.md-progress-bar.md-query .md-progress-bar-fill:after{-webkit-animation:e 2s infinite linear;animation:e 2s infinite linear}.md-progress-bar.md-buffer .md-progress-bar-buffer,.md-progress-bar.md-buffer .md-progress-bar-fill,.md-progress-bar.md-buffer .md-progress-bar-track,.md-progress-bar.md-determinate .md-progress-bar-buffer,.md-progress-bar.md-determinate .md-progress-bar-fill,.md-progress-bar.md-determinate .md-progress-bar-track{transition:.25s cubic-bezier(.25,.8,.25,1)}.md-progress-bar.md-determinate .md-progress-bar-track{display:none}.md-progress-bar.md-buffer .md-progress-bar-buffer{border-top:4px dotted;-webkit-animation:f .25s infinite linear;animation:f .25s infinite linear}.md-progress-bar.md-query{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.md-progress-bar-enter,.md-progress-bar-leave-active{opacity:.5;-webkit-transform:translateZ(0) scaleY(0);transform:translateZ(0) scaleY(0)}.md-progress-bar-buffer,.md-progress-bar-fill,.md-progress-bar-track{-webkit-transform-origin:top left;transform-origin:top left}.md-progress-bar-buffer,.md-progress-bar-buffer:after,.md-progress-bar-fill,.md-progress-bar-fill:after,.md-progress-bar-track,.md-progress-bar-track:after{width:100%;height:100%;position:absolute;will-change:transform}.md-progress-bar-buffer:after,.md-progress-bar-fill:after,.md-progress-bar-track:after{display:inline-block;left:0;content:\\\" \\\"}@-webkit-keyframes g{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes g{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes h{0%{opacity:0;-webkit-transform:rotate(-90deg) translateZ(0);transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{-webkit-transform:rotate(270deg) translateZ(0);transform:rotate(270deg) translateZ(0)}}@keyframes h{0%{opacity:0;-webkit-transform:rotate(-90deg) translateZ(0);transform:rotate(-90deg) translateZ(0)}20%{opacity:1}to{-webkit-transform:rotate(270deg) translateZ(0);transform:rotate(270deg) translateZ(0)}}.md-progress-spinner{display:-webkit-inline-box;display:inline-flex;position:relative}.md-progress-spinner.md-indeterminate{-webkit-animation:g 2s linear infinite;animation:g 2s linear infinite}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active{transition-duration:.4s}.md-progress-spinner.md-indeterminate.md-progress-spinner-enter .md-progress-spinner-draw,.md-progress-spinner.md-indeterminate.md-progress-spinner-leave-active .md-progress-spinner-draw{opacity:0;-webkit-transform:scale(.1);transform:scale(.1)}.md-progress-spinner.md-indeterminate .md-progress-spinner-circle{-webkit-animation:4s infinite cubic-bezier(.25,.8,.25,1);animation:4s infinite cubic-bezier(.25,.8,.25,1)}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active{transition-duration:2s}.md-progress-spinner.md-determinate.md-progress-spinner-enter-active .md-progress-spinner-draw,.md-progress-spinner.md-determinate.md-progress-spinner-leave-active .md-progress-spinner-draw{-webkit-animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards;animation:h 1.98s cubic-bezier(.25,.8,.25,1) forwards}.md-progress-spinner.md-determinate .md-progress-spinner-draw{transition:none}.md-progress-spinner-draw{overflow:visible;-webkit-transform:scale(1) rotate(-90deg);transform:scale(1) rotate(-90deg);-webkit-transform-origin:center;transform-origin:center;transition:.4s cubic-bezier(.25,.8,.25,1);will-change:opacity,transform}.md-progress-spinner-circle{fill:none;-webkit-transform-origin:center;transform-origin:center;transition:stroke-dashoffset .25s cubic-bezier(.25,.8,.25,1);will-change:stroke-dashoffset,stroke-dasharray,stroke-width,animation-name,r}.md-radio{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-radio:not(.md-disabled),.md-radio:not(.md-disabled) .md-radio-label{cursor:pointer}.md-radio .md-radio-container{width:20px;min-width:20px;height:20px;position:relative;border:2px solid transparent;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio .md-radio-container:focus{outline:none}.md-radio .md-radio-container:after,.md-radio .md-radio-container:before{position:absolute;transition:.4s cubic-bezier(.55,0,.55,.2);content:\\\" \\\"}.md-radio .md-radio-container:before{width:48px;height:48px;top:50%;left:50%;z-index:5;border-radius:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-radio .md-radio-container:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;opacity:0;-webkit-transform:scale3D(.38,.38,1);transform:scale3D(.38,.38,1);content:\\\" \\\"}.md-radio .md-radio-container .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border-radius:50%}.md-radio .md-radio-container input{position:absolute;left:-999em}.md-radio .md-radio-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-radio.md-checked .md-radio-container:after{opacity:1;-webkit-transform:scale3D(1,1,1);transform:scale3D(1,1,1);transition:.4s cubic-bezier(.25,.8,.25,1)}.md-radio.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-snackbar{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);min-width:288px;max-width:568px;min-height:48px;max-height:80px;padding:14px 24px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:fixed;z-index:12;border-radius:2px;transition:.4s cubic-bezier(.4,0,.2,1);will-change:background-color,color,opacity,transform}.md-snackbar.md-position-center{margin:0 auto;right:0;bottom:0;left:0}.md-snackbar.md-position-center.md-snackbar-enter,.md-snackbar.md-position-center.md-snackbar-leave-active{-webkit-transform:translate3D(0,calc(100% + 8px),0);transform:translate3D(0,calc(100% + 8px),0)}.md-snackbar.md-position-left{bottom:24px;left:24px}.md-snackbar.md-position-left.md-snackbar-enter,.md-snackbar.md-position-left.md-snackbar-leave-active{-webkit-transform:translate3D(0,calc(100% + 32px),0);transform:translate3D(0,calc(100% + 32px),0)}.md-snackbar-enter,.md-snackbar-enter .md-snackbar-content,.md-snackbar-leave-active,.md-snackbar-leave-active .md-snackbar-content{opacity:0}.md-snackbar-content{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;transition:opacity .38s cubic-bezier(.55,0,.55,.2)}.md-snackbar-content .md-button{min-width:0;margin:-8px -8px -8px 36px}.md-snackbar-content .md-button+.md-button{margin-left:16px}@media (max-width:600px){.md-snackbar{left:0;-webkit-transform:none;transform:none;border-radius:0}.md-snackbar-content .md-button{margin-left:12px}}.md-speed-dial{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-speed-dial.md-top-left,.md-speed-dial.md-top-right{position:absolute;top:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-bottom-right{position:absolute;bottom:24px}.md-speed-dial.md-bottom-center,.md-speed-dial.md-top-center{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.md-speed-dial.md-top-center{top:24px}.md-speed-dial.md-bottom-center{bottom:24px}.md-speed-dial.md-bottom-right,.md-speed-dial.md-top-right{right:24px}.md-speed-dial.md-bottom-left,.md-speed-dial.md-top-left{left:24px}.md-speed-dial.md-fixed{position:fixed}.md-speed-dial.md-direction-top.md-effect-fling .md-speed-dial-content .md-button{-webkit-transform:translate3d(0,50%,0) scale(.8);transform:translate3d(0,50%,0) scale(.8)}.md-speed-dial.md-direction-top .md-speed-dial-target{-webkit-box-ordinal-group:3;order:2;margin-bottom:0!important}.md-speed-dial.md-direction-top .md-speed-dial-content{-webkit-box-ordinal-group:2;order:1}.md-speed-dial.md-direction-top .md-speed-dial-content .md-button:first-child{margin-top:0}.md-speed-dial.md-direction-bottom.md-effect-fling .md-speed-dial-content .md-button{-webkit-transform:translate3d(0,-50%,0) scale(.8);transform:translate3d(0,-50%,0) scale(.8)}.md-speed-dial.md-direction-bottom .md-speed-dial-target{-webkit-box-ordinal-group:2;order:1;margin-top:0!important}.md-speed-dial.md-direction-bottom .md-speed-dial-content{-webkit-box-ordinal-group:3;order:2}.md-speed-dial.md-direction-bottom .md-speed-dial-content .md-button:last-child{margin-bottom:0}.md-speed-dial.md-effect-scale .md-speed-dial-content .md-button{-webkit-transform:scale(.3);transform:scale(.3)}.md-speed-dial.md-active .md-morph-initial,.md-speed-dial.md-with-hover:hover .md-morph-initial{opacity:0;-webkit-transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7);transform:translate3D(-50%,-50%,0) rotate(90deg) scale(.7)}.md-speed-dial.md-active .md-morph-final,.md-speed-dial.md-with-hover:hover .md-morph-final{opacity:1;-webkit-transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1);transform:translate3D(-50%,-50%,0) rotate(0deg) scale(1)}.md-speed-dial.md-active .md-speed-dial-content .md-button,.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button{pointer-events:auto;opacity:1;-webkit-transform:translateZ(0) scale(1)!important;transform:translateZ(0) scale(1)!important;transition:opacity .2s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1);transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.25,.8,.25,1),-webkit-transform .3s cubic-bezier(.25,.8,.25,1)}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"0\\\"]{transition-delay:0s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"1\\\"]{transition-delay:.1s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"2\\\"]{transition-delay:.2s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"3\\\"]{transition-delay:.3s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"4\\\"]{transition-delay:.4s}.md-speed-dial.md-active .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"],.md-speed-dial.md-with-hover:hover .md-speed-dial-content .md-button[md-button-index=\\\"5\\\"]{transition-delay:.5s}.md-speed-dial .md-button{margin:6px 0}.md-speed-dial .md-speed-dial-content .md-button{pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform 0s cubic-bezier(.4,0,.2,1) .3s,-webkit-transform 0s cubic-bezier(.4,0,.2,1) .3s;will-change:opacity,transform}.md-speed-dial .md-morph-final,.md-speed-dial .md-morph-initial{position:absolute;top:50%;left:50%;-webkit-transform:translate3D(-50%,-50%,0);transform:translate3D(-50%,-50%,0);transition:.3s cubic-bezier(.25,.8,.25,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform}.md-speed-dial .md-morph-final{opacity:0;-webkit-transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg);transform:translate3D(-50%,-50%,0) scale(.7) rotate(-90deg)}.md-speed-dial-target{z-index:1}.md-speed-dial-content{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;position:relative;z-index:2}.md-speed-dial-content,.md-steppers{transition:.3s cubic-bezier(.4,0,.2,1)}.md-steppers{transition-property:color,background-color;will-change:color,background-color}.md-steppers.md-no-transition *{transition:none!important}.md-steppers.md-dynamic-height .md-steppers-wrapper{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-steppers.md-horizontal.md-alternative .md-stepper-header{height:104px}.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:first-of-type .md-stepper-number:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header:last-of-type .md-stepper-number:after{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-ripple{-webkit-box-pack:center;justify-content:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content{padding-top:16px;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-button-content:before{content:none}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-text{height:32px;-webkit-box-pack:start;justify-content:flex-start;text-align:center}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number{margin:0 8px 8px;position:relative}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{width:9999%;height:1px;position:absolute;top:50%;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:after,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:after{left:calc(100% + 8px)}.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-icon:before,.md-steppers.md-horizontal.md-alternative .md-stepper-header .md-stepper-number:before{right:32px}.md-steppers.md-vertical .md-stepper-header{height:56px}.md-steppers.md-vertical .md-stepper-header .md-ripple{padding:0 24px 0 16px}.md-steppers.md-vertical .md-steppers-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-steppers.md-vertical .md-button-content:after,.md-steppers.md-vertical .md-button-content:before{content:none}.md-steppers.md-vertical .md-stepper-icon,.md-steppers.md-vertical .md-stepper-number{margin-right:12px}.md-steppers.md-vertical .md-stepper{padding:0;position:relative}.md-steppers.md-vertical .md-stepper:last-of-type:after{content:none}.md-steppers.md-vertical .md-stepper:after{width:1px;position:absolute;top:48px;bottom:-8px;left:36px;z-index:2;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-steppers-navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:-webkit-box;display:flex}.md-steppers-navigation .md-stepper-header{width:auto}.md-stepper-header{width:100%;height:72px;margin:0;-webkit-box-flex:1;flex:1;border-radius:0;font-weight:400;text-align:left;text-transform:none}.md-stepper-header:first-of-type .md-button-content:before,.md-stepper-header:last-of-type .md-button-content:after{content:none}.md-stepper-header.md-active,.md-stepper-header.md-error{font-weight:500}.md-stepper-header .md-ripple{padding:0 16px;-webkit-box-pack:start;justify-content:flex-start}.md-stepper-header .md-button-content{padding:0 8px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-header .md-button-content:after,.md-stepper-header .md-button-content:before{height:1px;position:absolute;top:50%;transition:background-color .3s cubic-bezier(.4,0,.2,1);will-change:background-color;content:\\\" \\\"}.md-stepper-header .md-button-content:after{width:9999%;left:100%}.md-stepper-header .md-button-content:before{width:16px;left:-16px}.md-stepper-header .md-button-content svg{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,fill;will-change:color,fill}.md-stepper-text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;line-height:16px;white-space:nowrap}.md-stepper-icon,.md-stepper-number{margin-right:8px;transition:color .3s cubic-bezier(.4,0,.2,1);will-change:color}.md-stepper-number{width:24px;height:24px;border-radius:24px;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:color,background-color;will-change:color,background-color;font-size:12px;line-height:24px;text-align:center}.md-stepper-done{width:20px;height:20px}.md-stepper-done,.md-stepper-editable{-webkit-transform:translateY(-1px);transform:translateY(-1px)}.md-stepper-editable{width:14px;height:14px}.md-stepper-description,.md-stepper-error{font-size:12px;font-weight:400;line-height:16px}.md-stepper-description{opacity:.54}.md-steppers-wrapper{overflow:hidden;transition:none;will-change:height}.md-steppers-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;flex-wrap:nowrap;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1),-webkit-transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-stepper{width:100%;-webkit-box-flex:1;flex:1 0 100%;padding:16px 24px}@media (max-width:944px){.md-stepper{padding:8px 16px}}.md-steppers.md-vertical .md-stepper-content{padding:0 24px 0 60px;height:0;overflow:hidden;opacity:0;-webkit-transform:translate3D(0,-20px,0);transform:translate3D(0,-20px,0);transition:.35s cubic-bezier(.25,.8,.25,1);transition-property:opacity,height,padding-bottom,-webkit-transform;transition-property:opacity,transform,height,padding-bottom;transition-property:opacity,transform,height,padding-bottom,-webkit-transform;will-change:opacity,transform,height,padding-bottom}.md-steppers.md-vertical .md-stepper-content.md-active{height:auto;padding-bottom:40px;opacity:1;-webkit-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}.md-subheader{min-height:48px;padding:0 16px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;font-size:14px;font-weight:500}.md-switch{width:auto;margin:16px 16px 16px 0;display:-webkit-inline-box;display:inline-flex;position:relative}.md-switch:not(.md-disabled),.md-switch:not(.md-disabled) .md-switch-label{cursor:pointer}.md-switch .md-switch-container{width:34px;min-width:34px;height:14px;margin:3px 0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;border-radius:14px;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);width:20px;height:20px;position:relative;border-radius:50%;transition:.4s cubic-bezier(.25,.8,.25,1)}.md-switch .md-switch-thumb:before{width:48px;height:48px;top:50%;left:50%;z-index:5;content:\\\" \\\"}.md-switch .md-switch-thumb .md-ripple,.md-switch .md-switch-thumb:before{position:absolute;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.md-switch .md-switch-thumb .md-ripple{width:48px!important;height:48px!important;top:50%!important;left:50%!important;border-radius:50%}.md-switch .md-switch-thumb input{position:absolute;left:-999em}.md-switch .md-switch-label{height:20px;padding-left:16px;position:relative;line-height:20px}.md-switch.md-checked .md-switch-thumb{-webkit-transform:translate3d(15px,0,0);transform:translate3d(15px,0,0)}.md-switch.md-required label:after{position:absolute;top:2px;right:0;-webkit-transform:translateX(calc(100% + 2px));transform:translateX(calc(100% + 2px));content:\\\"*\\\";line-height:1em;vertical-align:top}.md-table{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column wrap;overflow-x:auto}.md-table .md-table-fixed-header{position:relative}.md-table .md-table-fixed-header-active{border-bottom:1px solid}.md-table .md-table-content{-webkit-box-flex:1;flex:1;overflow-x:auto;transition:height .3s cubic-bezier(.4,0,.2,1)}.md-table .md-table-empty{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center}.md-table table{width:100%;border-spacing:0;border-collapse:collapse;overflow:hidden}.md-table-head{padding:0;position:relative;font-size:12px;line-height:16px;text-align:left}.md-table-head:last-child .md-table-head-label{padding-right:24px}.md-table-head.md-numeric{text-align:right}.md-table-head.md-sortable:first-of-type .md-table-sortable-icon,.md-table-head.md-table-cell-selection+.md-sortable .md-table-sortable-icon{right:8px;left:auto}.md-table-head .md-icon{width:16px;height:16px;font-size:16px}.md-table-head .md-icon:not(.md-sortable-icon){margin:0 4px}.md-table-head .md-icon:first-child{margin-left:0}.md-table-head .md-icon:last-child{margin-right:0}.md-sortable{cursor:pointer}.md-sortable.md-sorted .md-table-sortable-icon,.md-sortable:hover .md-table-sortable-icon{opacity:1}.md-sortable.md-sorted-desc .md-table-sortable-icon{-webkit-transform:translateY(-50%) rotate(180deg);transform:translateY(-50%) rotate(180deg)}.md-table-head-container{height:56px;padding:14px 0}.md-table-head-container,.md-table-head-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-table-head-label{height:28px;padding-right:32px;padding-left:24px;display:inline-block;position:relative;line-height:28px}.md-table-sortable-icon{position:absolute;top:50%;left:0;transition:.3s cubic-bezier(.4,0,.2,1);-webkit-transform:translateY(-50%);transform:translateY(-50%);opacity:0;color:rgba(0,0,0,.38)}.md-table-alternate-header{position:absolute;top:0;right:0;left:0;z-index:2;will-change:opacity,transform}.md-table-alternate-header-enter,.md-table-alternate-header-leave-active{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.md-table-alternate-header-enter-active{transition:.3s cubic-bezier(.4,0,.2,1)}.md-table-alternate-header-leave-active{transition:.2s cubic-bezier(.4,0,1,1)}.md-table-row{transition:.3s cubic-bezier(.4,0,.2,1);transition-property:background-color,font-weight;will-change:background-color,font-weight}.md-table-row.md-has-selection{cursor:pointer}.md-table-row.md-selected-single{font-weight:500}tbody .md-table-row td{border-top:1px solid}.md-table-cell-selection{width:66px}.md-table-cell-selection+td .md-table-cell-container,.md-table-cell-selection+th .md-table-head-label{padding-left:0}.md-table-cell-selection .md-table-cell-container,.md-table-cell-selection .md-table-cell-label,.md-table-cell-selection .md-table-head-container,.md-table-cell-selection .md-table-head-label{padding:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;overflow:visible}.md-table-cell-selection .md-checkbox{margin:0}.md-table-cell-selection .md-checkbox .md-checkbox-container{width:18px;min-width:18px;height:18px}.md-table-cell-selection .md-checkbox .md-checkbox-container:after{top:-1px;left:4px}.md-table-toolbar{padding-left:24px}.md-table-toolbar .md-title{-webkit-box-flex:1;flex:1;font-size:20px}.md-toolbar,.md-toolbar-row{width:100%;min-height:64px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;align-content:center;transition:.3s cubic-bezier(.4,0,.2,1);transition-property:opacity,background-color,box-shadow,color,min-height,-webkit-transform;transition-property:opacity,background-color,box-shadow,transform,color,min-height;transition-property:opacity,background-color,box-shadow,transform,color,min-height,-webkit-transform;will-change:opacity,background-color,box-shadow,transform,color,min-height}.md-toolbar{padding:0 16px;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;position:relative;z-index:2}.md-toolbar.md-dense{min-height:48px}.md-toolbar.md-large .md-toolbar-row,.md-toolbar.md-medium .md-toolbar-row{min-height:64px}.md-toolbar.md-medium{min-height:88px}.md-toolbar.md-large{min-height:128px;align-content:inherit}.md-toolbar.md-large.md-dense{min-height:96px}.md-toolbar.md-large.md-dense .md-toolbar-row+.md-toolbar-row{min-height:32px}.md-toolbar .md-toolbar-offset{margin-left:56px}.md-toolbar .md-button,.md-toolbar .md-icon{z-index:1}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:24px}.md-toolbar .md-button+.md-button,.md-toolbar .md-button:last-child{margin-right:0}.md-toolbar .md-button:first-child{margin-left:0}.md-toolbar .md-display-1,.md-toolbar .md-display-2,.md-toolbar .md-title{margin:0;margin-left:8px;overflow:hidden;font-weight:400;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.md-toolbar .md-display-1{padding:12px 0}.md-toolbar .md-field{margin-top:2px;margin-bottom:14px;padding-top:16px}.md-toolbar-row{align-self:flex-start}.md-toolbar-section-end,.md-toolbar-section-start{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-flex:1;flex:1}.md-toolbar-section-start{-webkit-box-pack:start;justify-content:flex-start;-webkit-box-ordinal-group:1;order:0}.md-toolbar-section-end{-webkit-box-pack:end;justify-content:flex-end;-webkit-box-ordinal-group:11;order:10}@media (max-width:944px){.md-toolbar,.md-toolbar-row{min-height:48px}.md-toolbar{padding:0 8px}.md-toolbar .md-toolbar-offset{margin-left:48px}.md-toolbar .md-button~.md-title,.md-toolbar .md-icon~.md-title{margin-left:16px}}@media (max-width:600px){.md-toolbar,.md-toolbar-row{min-height:56px}}.md-table-empty-state{padding-left:24px}.md-table-cell{height:48px;position:relative;transition:.3s cubic-bezier(.4,0,.2,1);font-size:13px;line-height:18px}.md-table-cell.md-numeric{text-align:right}.md-table-cell:last-child .md-table-cell-container{padding-right:24px}.md-table-cell-container{padding:6px 32px 6px 24px}.md-table-pagination{height:56px;display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;border-top:1px solid;font-size:12px}.md-table-pagination .md-table-pagination-previous{margin-right:2px;margin-left:18px}.md-table-pagination .md-field{width:48px;min-width:36px;margin:-16px 24px 0 32px}.md-table-pagination .md-field:after,.md-table-pagination .md-field:before{display:none}.md-table-pagination .md-field .md-select-value{font-size:13px}.md-menu-content.md-pagination-select{max-width:82px;min-width:56px;margin-top:5px}.md-tabs{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.md-tabs.md-no-transition *{transition:none!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .3s cubic-bezier(.4,0,.2,1);will-change:height}.md-tabs.md-transparent .md-tabs-navigation{background-color:transparent!important}.md-tabs.md-dynamic-height .md-tabs-content{transition:height .35s cubic-bezier(.25,.8,.25,1)}.md-tabs.md-alignment-left .md-tabs-navigation{-webkit-box-pack:start;justify-content:flex-start}.md-tabs.md-alignment-right .md-tabs-navigation{-webkit-box-pack:end;justify-content:flex-end}.md-tabs.md-alignment-centered .md-tabs-navigation,.md-tabs.md-alignment-fixed .md-tabs-navigation{-webkit-box-pack:center;justify-content:center}.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{max-width:264px;min-width:160px;-webkit-box-flex:1;flex:1}.md-toolbar .md-tabs{padding-left:48px}.md-tabs-navigation{display:-webkit-box;display:flex;position:relative}.md-tabs-navigation .md-button{max-width:264px;min-width:72px;height:48px;margin:0;cursor:pointer;border-radius:0;font-size:13px}.md-tabs-navigation .md-button-content{position:static}.md-tabs-navigation .md-icon-label{height:72px}.md-tabs-navigation .md-icon-label .md-button-content{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center}.md-tabs-navigation .md-icon-label .md-tab-icon+.md-tab-label{margin-top:10px}.md-tabs-navigation .md-ripple{padding:0 24px}.md-tabs-indicator{height:2px;position:absolute;bottom:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:left,right}.md-tabs-indicator.md-tabs-indicator-left{transition:left .3s cubic-bezier(.4,0,.2,1),right .35s cubic-bezier(.4,0,.2,1)}.md-tabs-indicator.md-tabs-indicator-right{transition:right .3s cubic-bezier(.4,0,.2,1),left .35s cubic-bezier(.4,0,.2,1)}.md-tabs-content{overflow:hidden;transition:none;will-change:height}.md-tabs-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;flex-wrap:nowrap;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1);transition:transform .35s cubic-bezier(.4,0,.2,1),-webkit-transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}.md-tab{width:100%;-webkit-box-flex:1;flex:1 0 100%;padding:16px}@media (max-width:944px){.md-tabs.md-alignment-fixed .md-tabs-navigation .md-button{min-width:72px}.md-toolbar .md-tabs{margin:0 -8px;padding-left:0}.md-tabs-navigation .md-ripple{padding:0 12px}.md-tab{padding:8px}}.md-tooltip{height:22px;padding:0 8px;position:fixed;z-index:8;pointer-events:none;border-radius:2px;transition:.15s cubic-bezier(0,0,.2,1);transition-property:opacity,-webkit-transform;transition-property:opacity,transform;transition-property:opacity,transform,-webkit-transform;will-change:opacity,transform,top,left!important;font-size:10px;line-height:22px;text-transform:none;white-space:nowrap}.md-tooltip.md-tooltip-leave-active{transition-timing-function:cubic-bezier(.4,0,1,1)}.md-tooltip.md-tooltip-enter,.md-tooltip.md-tooltip-leave-active{opacity:0}.md-tooltip.md-tooltip-enter.md-tooltip-top,.md-tooltip.md-tooltip-leave-active.md-tooltip-top{-webkit-transform:translate3d(0,4px,0) scale(.95);transform:translate3d(0,4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-right,.md-tooltip.md-tooltip-leave-active.md-tooltip-right{-webkit-transform:translate3d(-4px,0,0) scale(.95);transform:translate3d(-4px,0,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-bottom,.md-tooltip.md-tooltip-leave-active.md-tooltip-bottom{-webkit-transform:translate3d(0,-4px,0) scale(.95);transform:translate3d(0,-4px,0) scale(.95)}.md-tooltip.md-tooltip-enter.md-tooltip-left,.md-tooltip.md-tooltip-leave-active.md-tooltip-left{-webkit-transform:translate3d(4px,0,0) scale(.95);transform:translate3d(4px,0,0) scale(.95)}@media (max-width:944px){.md-tooltip{height:32px;font-size:14px;line-height:32px}}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzcz82ZDc4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIi8qIVxcbiAqIHZ1ZS1tYXRlcmlhbCB2MS4wLjAtYmV0YS03XFxuICogTWFkZSB3aXRoIDwzIGJ5IG1hcmNvc21vdXJhIDIwMTdcXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXFxuICovaHRtbHtoZWlnaHQ6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX1odG1sICosaHRtbCA6YWZ0ZXIsaHRtbCA6YmVmb3Jle2JveC1zaXppbmc6aW5oZXJpdH1ib2R5e21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10b3VjaC1jYWxsb3V0Om5vbmU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LWZhbWlseTpSb2JvdG8sTm90byBTYW5zLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LHNhbnMtc2VyaWZ9YTpub3QoLm1kLWJ1dHRvbil7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLG9wYWNpdHl9YXVkaW8sY2FudmFzLGVtYmVkLGlmcmFtZSxpbWcsb2JqZWN0LHZpZGVve21heC13aWR0aDoxMDAlO2ZvbnQtc3R5bGU6aXRhbGljO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1hdWRpbzpub3QoLm1kLWltYWdlKSxjYW52YXM6bm90KC5tZC1pbWFnZSksZW1iZWQ6bm90KC5tZC1pbWFnZSksaWZyYW1lOm5vdCgubWQtaW1hZ2UpLGltZzpub3QoLm1kLWltYWdlKSxvYmplY3Q6bm90KC5tZC1pbWFnZSksdmlkZW86bm90KC5tZC1pbWFnZSl7aGVpZ2h0OmF1dG99W3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3Vze291dGxpbmU6bm9uZSFpbXBvcnRhbnR9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9ue2Rpc3BsYXk6bm9uZX0ubWQtY2FwdGlvbntmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MTdweH0ubWQtYm9keS0xLGJvZHl7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWJvZHktMSwubWQtYm9keS0yLGJvZHl7Zm9udC1zaXplOjE0cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19Lm1kLWJvZHktMntmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjRweH0ubWQtc3ViaGVhZGluZ3tmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtdGl0bGV7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoyNnB4fS5tZC1oZWFkbGluZXtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4fS5tZC1kaXNwbGF5LTEsLm1kLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowfS5tZC1kaXNwbGF5LTF7Zm9udC1zaXplOjM0cHg7bGluZS1oZWlnaHQ6NDBweH0ubWQtZGlzcGxheS0ye2ZvbnQtc2l6ZTo0NXB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjQ4cHh9Lm1kLWRpc3BsYXktM3tmb250LXNpemU6NTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDo1OHB4fS5tZC1kaXNwbGF5LTR7Zm9udC1zaXplOjExMnB4O2ZvbnQtd2VpZ2h0OjMwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07bGluZS1oZWlnaHQ6MTEycHh9YTpub3QoLm1kLWJ1dHRvbil7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YTpub3QoLm1kLWJ1dHRvbik6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1idXR0b246Zm9jdXN7b3V0bGluZTpub25lfS5tZC1hcHB7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtYXBwLm1kLWZpeGVkIC5tZC1hcHAtc2Nyb2xsZXJ7b3ZlcmZsb3c6YXV0b30ubWQtYXBwLm1kLWZpeGVkLWxhc3QsLm1kLWFwcC5tZC1mbGV4aWJsZSwubWQtYXBwLm1kLW92ZXJsYXAsLm1kLWFwcC5tZC1yZXZlYWx7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWFwcC5tZC1maXhlZC1sYXN0IC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFyLC5tZC1hcHAubWQtcmV2ZWFsIC5tZC1hcHAtdG9vbGJhcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0ubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye21pbi1oZWlnaHQ6MH0ubWQtYXBwLm1kLWZsZXhpYmxlIC5tZC10b29sYmFyLXJvdzpmaXJzdC1jaGlsZHt6LWluZGV4OjJ9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtdG9vbGJhci1yb3c6bGFzdC1jaGlsZHtwb3NpdGlvbjpmaXhlZDtib3R0b206MDt6LWluZGV4OjF9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtZGlzcGxheS0xe3Bvc2l0aW9uOmZpeGVkfS5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLXRvb2xiYXJ7ei1pbmRleDoxfS5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDI0cHggMjRweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWFwcC1jb250ZW50e3BhZGRpbmc6MTZweH0ubWQtYXBwLWNvbnRlbnQ+cDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9Lm1kLWFwcC1jb250ZW50PnA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9Lm1kLWFwcC1jb250YWluZXJ7ZGlzcGxheTpmbGV4O292ZXJmbG93OmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOnBhZGRpbmctbGVmdCAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6cGFkZGluZy1sZWZ0fS5tZC1hcHAtY29udGFpbmVyLC5tZC1hcHAtc2Nyb2xsZXJ7ZmxleDoxfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCAxNnB4IDE2cHh9fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCA4cHggOHB4fX1AbWVkaWEgKG1pbi13aWR0aDo2MDBweCl7Lm1kLWFwcC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmQrLm1kLWFwcC1zY3JvbGxlciAubWQtY29udGVudHtwYWRkaW5nLWxlZnQ6MDtib3JkZXItbGVmdDpub25lfS5tZC1hcHAtY29udGVudHtib3JkZXItbGVmdDoxcHggc29saWQgdHJhbnNwYXJlbnR9fS5tZC1hcHAtaW50ZXJuYWwtZHJhd2VyLC5tZC1hcHAtc2lkZS1kcmF3ZXIgLm1kLWFwcC1jb250YWluZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1hcHAtaW50ZXJuYWwtZHJhd2VyIC5tZC1hcHAtc2Nyb2xsZXJ7b3ZlcmZsb3c6YXV0b30ubWQtbm8tZWxldmF0aW9ue2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9Lm1kLWZpeGVkLWxhc3QgLm1kLXJldmVhbC1hY3RpdmUsLm1kLWZsZXhpYmxlIC5tZC1yZXZlYWwtYWN0aXZlLC5tZC1vdmVybGFwIC5tZC1yZXZlYWwtYWN0aXZlLC5tZC1yZXZlYWwgLm1kLXJldmVhbC1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsY2FsYygxMDAlICsgMTBweCksMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93LHRyYW5zZm9ybTt3aWxsLWNoYW5nZTpoZWlnaHQsYm94LXNoYWRvdyx0cmFuc2Zvcm19Lm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye2hlaWdodDoxOTZweH0ubWQtZml4ZWQtbGFzdC1hY3RpdmV7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93LHRyYW5zZm9ybTt3aWxsLWNoYW5nZTpoZWlnaHQsYm94LXNoYWRvdyx0cmFuc2Zvcm19Lm1kLW92ZXJsYXAtb2Zme3otaW5kZXg6MyFpbXBvcnRhbnR9Lm1kLWFwcC1jb250ZW50e2hlaWdodDoxMDAlfS5tZC1hcHAtY29udGVudCAubWQtY2FyZHttYXJnaW4tcmlnaHQ6MTZweDttYXJnaW4tbGVmdDoxNnB4O292ZXJmbG93OnZpc2libGV9Lm1kLWF1dG9jb21wbGV0ZSAubWQtbWVudXt3aWR0aDoxMDAlO2Rpc3BsYXk6ZmxleH0ubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6OX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO3BhZGRpbmctdG9wOjJweDtib3JkZXItcmFkaXVzOjJweH0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZHt6LWluZGV4OjExfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveDphZnRlciwubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3g6YmVmb3Jle2Rpc3BsYXk6bm9uZX0ubWQtdG9vbGJhciAubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7bWluLWhlaWdodDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjowO2JveC1zaGFkb3c6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLW1lbnV7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCAubWQtaW5wdXR7cGFkZGluZy1sZWZ0OjE2cHh9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgbGFiZWwsLm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb24sLm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IGxhYmVse3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb257cmlnaHQ6OHB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHttYXJnaW4tdG9wOjJweDtsZWZ0OjE2cHh9Lm1kLWF1dG9jb21wbGV0ZS1ib3gtY29udGVudDphZnRlcntoZWlnaHQ6NnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTE7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Y29udGVudDpcXFwiXFxcIn0ubWQtYXZhdGFye3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOmF1dG87ZGlzcGxheTppbmxpbmUtZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6NDBweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjtmb250LXNpemU6MjRweDtsZXR0ZXItc3BhY2luZzotLjA1ZW07dmVydGljYWwtYWxpZ246bWlkZGxlfS5tZC1hdmF0YXIubWQtbGFyZ2V7bWluLXdpZHRoOjY0cHg7bWluLWhlaWdodDo2NHB4O2JvcmRlci1yYWRpdXM6NjRweDtmb250LXNpemU6MzJweH0ubWQtYXZhdGFyLm1kLWxhcmdlIC5tZC1pY29ue2ZvbnQtc2l6ZTo0MHB4IWltcG9ydGFudH0ubWQtYXZhdGFyLm1kLXNtYWxse3dpZHRoOjI0cHg7bWluLXdpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoyNHB4O2ZvbnQtc2l6ZToxNHB4fS5tZC1hdmF0YXIubWQtc21hbGwgLm1kLWljb257Zm9udC1zaXplOjE2cHghaW1wb3J0YW50fS5tZC1hdmF0YXIgLm1kLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9Lm1kLWF2YXRhciBpbWd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmJsb2NrfS5tZC1hdmF0YXIgLm1kLXJpcHBsZXtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1ib3R0b20tYmFye2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTt3aWR0aDoxMDAlO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWJvdHRvbS1iYXI+Lm1kLXJpcHBsZXtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZHtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbXttaW4td2lkdGg6ODBweDttYXgtd2lkdGg6MTY4cHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcjt3aWxsLWNoYW5nZTpjb2xvcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJvdHRvbS1iYXItbGFiZWx7dHJhbnNmb3JtOnNjYWxlKC44NTcxKSB0cmFuc2xhdGUzRCgwLDRweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1yaXBwbGV7cGFkZGluZy10b3A6NnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnR7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzIWltcG9ydGFudH0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5OjF9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVte21pbi13aWR0aDo1NnB4O21heC13aWR0aDo5NnB4O2ZsZXg6MSAxIDMycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcjt3aWxsLWNoYW5nZTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjE2cHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC43KSB0cmFuc2xhdGUzZCgwLDZweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZle21pbi13aWR0aDo5NnB4O21heC13aWR0aDoxNjhweDtmbGV4OjEgMSA3MnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nOjZweCAwIDEwcHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29ue3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDNweCwwKX0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVte2hlaWdodDo1NnB4O21hcmdpbjowO2ZsZXg6MTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjFlbTt0ZXh0LXRyYW5zZm9ybTpub25lfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjhweCAxMnB4IDEwcHg7dHJhbnNpdGlvbjpwYWRkaW5nIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpYztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb24sLm1kLWJvdHRvbS1iYXIgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1yaXBwbGV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMTAwJSwjMDAwIDApfS5tZC1yaXBwbGUtd2F2ZXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDIpIHRyYW5zbGF0ZVooMCl9Lm1kLXJpcHBsZS13YXZlLm1kLWNlbnRlcmVke3RvcDo1MCU7bGVmdDo1MCV9Lm1kLXJpcHBsZS13YXZlfip7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1yaXBwbGUtZW50ZXItYWN0aXZle3RyYW5zaXRpb246LjhzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXJpcHBsZS1lbnRlci1hY3RpdmUubWQtY2VudGVyZWR7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjJzfS5tZC1yaXBwbGUtZW50ZXJ7b3BhY2l0eTouMjY7dHJhbnNmb3JtOnNjYWxlKC4yNikgdHJhbnNsYXRlWigwKX0ubWQtYnV0dG9uLC5tZC1idXR0b24tY2xlYW57bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOnRvcDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWJ1dHRvbnttaW4td2lkdGg6ODhweDtoZWlnaHQ6MzZweDttYXJnaW46NnB4IDhweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1idXR0b246YWN0aXZle291dGxpbmU6bm9uZX0ubWQtYnV0dG9uW2Rpc2FibGVkXXtwb2ludGVyLWV2ZW50czpub25lfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pe2N1cnNvcjpwb2ludGVyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmUsLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6aG92ZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO29wYWNpdHk6LjEyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQubWQtYWNjZW50OmJlZm9yZSwubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1mb2N1c2VkLm1kLXByaW1hcnk6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMn0ubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1yaXBwbGUtb2ZmOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMjZ9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5tZC1idXR0b24ubWQtcGxhaW4ubWQtYnV0dG9uLm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkgLm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZXtmaWxsOnJnYmEoMCwwLDAsLjg3KX0ubWQtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MH0ubWQtYnV0dG9uOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjE7b3BhY2l0eTowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3Isb3BhY2l0eTtjb250ZW50OlxcXCIgXFxcIn0ubWQtYnV0dG9uLm1kLWRlbnNle2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pOmFjdGl2ZXtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLXJpcHBsZS1vZmY6YWN0aXZlOmJlZm9yZXtvcGFjaXR5Oi4yfS5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDowfS5tZC1idXR0b24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYnV0dG9uLXNwYWNlZCAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4fS5tZC1mYWIsLm1kLWZhYiAubWQtcmlwcGxlLC5tZC1mYWI6YmVmb3JlLC5tZC1pY29uLWJ1dHRvbiwubWQtaWNvbi1idXR0b24gLm1kLXJpcHBsZSwubWQtaWNvbi1idXR0b246YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5tZC1mYWIubWQtZGVuc2UgLm1kLXJpcHBsZS13YXZlLC5tZC1mYWIubWQtbWluaSAubWQtcmlwcGxlLXdhdmUsLm1kLWljb24tYnV0dG9uIC5tZC1yaXBwbGUtd2F2ZXt0b3A6MCFpbXBvcnRhbnQ7cmlnaHQ6MCFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50O2xlZnQ6MCFpbXBvcnRhbnR9Lm1kLWljb24tYnV0dG9ue3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOjAgNnB4fS5tZC1pY29uLWJ1dHRvbi5tZC1kZW5zZXt3aWR0aDozMnB4O21pbi13aWR0aDozMnB4O2hlaWdodDozMnB4fS5tZC1pY29uLWJ1dHRvbiAubWQtcmlwcGxlLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLWZhYntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbn0ubWQtZmFiOmFjdGl2ZXtib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTJweCAxN3B4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjJweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1mYWIubWQtZGVuc2UsLm1kLWZhYi5tZC1taW5pe3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHh9Lm1kLWZhYi5tZC1mYWItdG9wLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tY2VudGVyLC5tZC1mYWIubWQtZmFiLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7dG9wOjI0cHh9Lm1kLWZhYi5tZC1mYWItYm90dG9tLXJpZ2h0LC5tZC1mYWIubWQtZmFiLXRvcC1yaWdodHtyaWdodDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLXRvcC1sZWZ0e2xlZnQ6MjRweH0ubWQtZmFiLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1mYWIgLm1kLXJpcHBsZXtwYWRkaW5nOjB9Lm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtY2FyZHtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7b3ZlcmZsb3c6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7Ym9yZGVyLXJhZGl1czoycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3J9Lm1kLWNhcmQubWQtd2l0aC1ob3ZlcntjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJveC1zaGFkb3cgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsYm94LXNoYWRvd30ubWQtY2FyZC5tZC13aXRoLWhvdmVyOmhvdmVye3otaW5kZXg6Mjtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNhcmQubWQtZXhwYW5kLWFjdGl2ZSAubWQtY2FyZC1leHBhbmQtdHJpZ2dlci5tZC1pY29uLWJ1dHRvbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9Lm1kLWNhcmQgLm1kLXN1YmhlYWQsLm1kLWNhcmQgLm1kLXN1YmhlYWRpbmcsLm1kLWNhcmQgLm1kLXRpdGxle21hcmdpbjowO2ZvbnQtd2VpZ2h0OjQwMH0ubWQtY2FyZCAubWQtc3ViaGVhZHtvcGFjaXR5Oi41NDtmb250LXNpemU6MTRweDtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoyMHB4fS5tZC1jYXJkIC5tZC1zdWJoZWFkKy5tZC10aXRsZXttYXJnaW4tdG9wOjRweH0ubWQtY2FyZCAubWQtdGl0bGV7Zm9udC1zaXplOjI0cHg7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDozMnB4fS5tZC1jYXJkLWFyZWEsLm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKTphZnRlcntoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKTpub3QoLm1kLWluc2V0KTphZnRlcntyaWdodDowO2xlZnQ6MH0ubWQtY2FyZD4ubWQtY2FyZC1hcmVhOm5vdCg6bGFzdC1jaGlsZCkubWQtaW5zZXQ6YWZ0ZXJ7cmlnaHQ6MTZweDtsZWZ0OjE2cHh9Lm1kLWNhcmQtaGVhZGVye3BhZGRpbmc6MTZweH0ubWQtY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQ+Lm1kLWNhcmQtaGVhZGVyLXRleHQ+Lm1kLXRpdGxlOmZpcnN0LWNoaWxkLC5tZC1jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZD4ubWQtdGl0bGU6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDo4cHh9Lm1kLWNhcmQtaGVhZGVyOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTo4cHh9Lm1kLWNhcmQtaGVhZGVyLm1kLWNhcmQtaGVhZGVyLWZsZXh7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1jb250ZW50e3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtaGVhZGVyKy5tZC1jYXJkLWFjdGlvbnM6bm90KDpsYXN0LWNoaWxkKXtwYWRkaW5nOjAgOHB4fS5tZC1jYXJkLWhlYWRlcj5pbWd7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWNhcmQtaGVhZGVyIC5tZC1hdmF0YXIsLm1kLWNhcmQtaGVhZGVyPmltZ3ttYXJnaW4tcmlnaHQ6MTZweDtmbG9hdDpsZWZ0fS5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC10aXRsZSwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC10aXRsZXtmb250LXNpemU6MTRweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhcn4ubWQtc3ViaGVhZCwubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhcn4ubWQtdGl0bGUsLm1kLWNhcmQtaGVhZGVyPmltZ34ubWQtc3ViaGVhZCwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC10aXRsZXtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDotNHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1oZWFkZXItdGV4dHtmbGV4OjF9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhe3dpZHRoOjgwcHg7aGVpZ2h0OjgwcHg7bWFyZ2luLWxlZnQ6MTZweDtmbGV4OjAgMCA4MHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1tZWRpYS5tZC1tZWRpdW17d2lkdGg6MTIwcHg7aGVpZ2h0OjEyMHB4O2ZsZXg6MCAwIDEyMHB4fS5tZC1jYXJkLWhlYWRlciAubWQtY2FyZC1tZWRpYS5tZC1iaWd7d2lkdGg6MTYwcHg7aGVpZ2h0OjE2MHB4O2ZsZXg6MCAwIDE2MHB4fS5tZC1jYXJkLW1lZGlhe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTl7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTk6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6NTYuMjUlO2Rpc3BsYXk6YmxvY2s7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMTYtOSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby00LTN7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtMzpiZWZvcmV7d2lkdGg6MTAwJTtwYWRkaW5nLXRvcDo3NSU7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCIgXFxcIn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby00LTMgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7cmlnaHQ6MDtsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMS0xe292ZXJmbG93OmhpZGRlbn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby0xLTE6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6MTAwJTtkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTEtMSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1oZWFkZXJ7cGFkZGluZy10b3A6MjRweH0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1jb250ZW50Omxhc3QtY2hpbGR7cGFkZGluZy1ib3R0b206MTZweH0ubWQtY2FyZC1tZWRpYSBpbWd7d2lkdGg6MTAwJX0ubWQtY2FyZC1tZWRpYS1hY3Rpb25ze3BhZGRpbmc6MTZweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1tZWRpYXttYXgtd2lkdGg6MjQwcHg7bWF4LWhlaWdodDoyNDBweDtmbGV4OjF9Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1hY3Rpb25ze21hcmdpbi1sZWZ0OjE2cHg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtY2FyZC1tZWRpYS1hY3Rpb25zIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbjo4cHggMCAwfS5tZC1jYXJkLW1lZGlhLWNvdmVye3Bvc2l0aW9uOnJlbGF0aXZlO2NvbG9yOiNmZmZ9Lm1kLWNhcmQtbWVkaWEtY292ZXIubWQtc29saWQgLm1kLWNhcmQtYXJlYXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjU0KX0ubWQtY2FyZC1tZWRpYS1jb3Zlci5tZC10ZXh0LXNjcmltIC5tZC1jYXJkLWJhY2tkcm9we3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6MX0ubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hcmVhe3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6Mn0ubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hcmVhLC5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1hY3Rpb25ze3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLXN1YmhlYWR7b3BhY2l0eToxfS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb257Y29sb3I6I2ZmZiFpbXBvcnRhbnR9Lm1kLWNhcmQtY29udGVudHtwYWRkaW5nOjE2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjJweH0ubWQtY2FyZC1jb250ZW50Omxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbToyNHB4fS5tZC1jYXJkLWV4cGFuZHtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1leHBhbmQtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lm1kLWNhcmQtZXhwYW5kLXRyaWdnZXIubWQtaWNvbi1idXR0b257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtY2FyZC1leHBhbmQtY29udGVudHtvdmVyZmxvdzpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksbWFyZ2luLXRvcDt3aWxsLWNoYW5nZTpvcGFjaXR5LG1hcmdpbi10b3B9Lm1kLWNhcmQtYWN0aW9uc3twYWRkaW5nOjhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtY2FyZC1hY3Rpb25zLm1kLWFsaWdubWVudC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjRweH0ubWQtY2hlY2tib3h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGVja2JveDpub3QoLm1kLWRpc2FibGVkKSwubWQtY2hlY2tib3g6bm90KC5tZC1kaXNhYmxlZCkgLm1kLWNoZWNrYm94LWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVye3dpZHRoOjIwcHg7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt3aWR0aDo2cHg7aGVpZ2h0OjEzcHg7dG9wOjA7bGVmdDo1cHg7ei1pbmRleDo2O2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDowO2JvcmRlci1sZWZ0OjA7b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoLjE1LC4xNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2hlY2tib3gubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKSBzY2FsZTNEKDEsMSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3gubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVye2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm1kLWNoZWNrYm94Lm1kLXJlcXVpcmVkIGxhYmVsOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7cmlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWChjYWxjKDEwMCUgKyAycHgpKTtjb250ZW50OlxcXCIqXFxcIjtsaW5lLWhlaWdodDoxZW07dmVydGljYWwtYWxpZ246dG9wfS5tZC1jaGlwcy5tZC1maWVsZHtwYWRkaW5nLXRvcDoxMnB4O2ZsZXgtd3JhcDp3cmFwfS5tZC1jaGlwcy5tZC1maWVsZC5tZC1oYXMtdmFsdWUgbGFiZWx7dG9wOi02cHh9Lm1kLWNoaXBzLm1kLWZpZWxkIC5tZC1jaGlwe21hcmdpbi1ib3R0b206NHB4fS5tZC1jaGlwcy5tZC1maWVsZCAubWQtY2hpcDpsYXN0LW9mLXR5cGV7bWFyZ2luLXJpZ2h0OjhweH0ubWQtY2hpcHMubWQtZmllbGQgLm1kLWlucHV0e21pbi13aWR0aDoxMjhweH0ubWQtZmllbGR7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjQ4cHg7bWFyZ2luOjRweCAwIDI0cHg7cGFkZGluZy10b3A6MTZweDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6aW5oZXJpdH0ubWQtZmllbGQ6YWZ0ZXIsLm1kLWZpZWxkOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2xlZnQ6MDt6LWluZGV4OjE7dHJhbnNpdGlvbjpib3JkZXIgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1maWVsZDphZnRlcntoZWlnaHQ6MXB4fS5tZC1maWVsZDpiZWZvcmV7aGVpZ2h0OjJweDt6LWluZGV4OjI7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoLjEyKX0ubWQtZmllbGQgbGFiZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIzcHg7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjBweH0ubWQtZmllbGQgLm1kLWlucHV0LC5tZC1maWVsZCAubWQtdGV4dGFyZWF7d2lkdGg6MTAwJTtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jaztmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpub25lO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Zm9udC1zaXplLHBhZGRpbmctdG9wLGNvbG9yO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFweDtsaW5lLWhlaWdodDozMnB4fS5tZC1maWVsZCAubWQtaW5wdXRbdHlwZT1kYXRlXSwubWQtZmllbGQgLm1kLXRleHRhcmVhW3R5cGU9ZGF0ZV17Zm9udC1zaXplOjE2cHh9Lm1kLWZpZWxkIC5tZC1pbnB1dFtkaXNhYmxlZF0sLm1kLWZpZWxkIC5tZC10ZXh0YXJlYVtkaXNhYmxlZF17Y3Vyc29yOmRlZmF1bHR9Lm1kLWZpZWxkIC5tZC1pbnB1dDpmb2N1cywubWQtZmllbGQgLm1kLXRleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZX0ubWQtZmllbGQgLm1kLWlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC5tZC1maWVsZCAubWQtdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Zm9udC1zaXplOjE2cHg7dGV4dC1zaGFkb3c6bm9uZTstd2Via2l0LXRleHQtZmlsbC1jb2xvcjppbml0aWFsO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Zm9udC1zaXplLGNvbG9yfS5tZC1maWVsZCAubWQtdGV4dGFyZWF7bWluLWhlaWdodDozMnB4O21heC1oZWlnaHQ6MjMwcHg7cGFkZGluZzo1cHggMDtyZXNpemU6bm9uZTtsaW5lLWhlaWdodDoxLjNlbX0ubWQtZmllbGQgLm1kLWNvdW50LC5tZC1maWVsZCAubWQtZXJyb3IsLm1kLWZpZWxkIC5tZC1oZWxwZXItdGV4dHtoZWlnaHQ6MjBweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206LTIycHg7Zm9udC1zaXplOjEycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWZpZWxkIC5tZC1lcnJvcntkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtsZWZ0OjA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCl9Lm1kLWZpZWxkIC5tZC1jb3VudHtyaWdodDowfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjMycHg7bWluLXdpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjE2cHg7cmlnaHQ6MDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtZmllbGQgLm1kLWlucHV0LWFjdGlvbi5tZC1pbnB1dC1hY3Rpb24tZW50ZXItYWN0aXZlLC5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1lbnRlci10b3tvcGFjaXR5OjF9Lm1kLWZpZWxkPi5tZC1pY29ue21hcmdpbjo0cHggYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjM7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLWZpZWxkPi5tZC1pY29uOmxhc3Qtb2YtdHlwZTpub3QoOmZpcnN0LWNoaWxkKTphZnRlcntkaXNwbGF5Om5vbmV9Lm1kLWZpZWxkPi5tZC1pY29uOmFmdGVye3dpZHRoOjM3cHg7aGVpZ2h0OjRweDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xcHg7Ym90dG9tOi01cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Y29udGVudDpcXFwiXFxcIn0ubWQtZmllbGQ+Lm1kLWljb25+bGFiZWx7bGVmdDozNnB4fS5tZC1maWVsZD4ubWQtaWNvbn4ubWQtZmlsZSwubWQtZmllbGQ+Lm1kLWljb25+Lm1kLWlucHV0LC5tZC1maWVsZD4ubWQtaWNvbn4ubWQtdGV4dGFyZWF7bWFyZ2luLWxlZnQ6MTJweH0ubWQtZmllbGQrLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KXttYXJnaW4tdG9wOjM2cHh9Lm1kLWZpZWxkLm1kLWhhcy1wbGFjZWhvbGRlciBsYWJlbHtwb2ludGVyLWV2ZW50czphdXRvO3RvcDoxMHB4O29wYWNpdHk6MDtmb250LXNpemU6MTJweH0ubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIC5tZC1pbnB1dCwubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIC5tZC10ZXh0YXJlYXtmb250LXNpemU6MTZweH0ubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVyLC5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3Jle2hlaWdodDphdXRvO3BvaW50ZXItZXZlbnRzOm5vbmU7dG9wOjA7Ym90dG9tOjA7dHJhbnNmb3JtOm5vbmU7YmFja2dyb3VuZDpub25lIWltcG9ydGFudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6M3B4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3Jle2JvcmRlci13aWR0aDoycHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSBsYWJlbHt0b3A6MTZweDtsZWZ0OjE2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtdGV4dGFyZWF7bWluLWhlaWdodDoxMDBweDtwYWRkaW5nOjAgMTZweDtyZXNpemU6dmVydGljYWx9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KT4ubWQtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3JpZ2h0OjZweDt6LWluZGV4OjN9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtY291bnR7cmlnaHQ6NnB4O2JvdHRvbToycHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSAubWQtY2xlYXJ7dG9wOjZweDtyaWdodDo2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtaGFzLXZhbHVlIGxhYmVse3RvcDo2cHh9Lm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpLm1kLWhhcy12YWx1ZSAubWQtdGV4dGFyZWF7cGFkZGluZy10b3A6MTBweH0ubWQtZmllbGQubWQtaGFzLWZpbGU6YWZ0ZXIsLm1kLWZpZWxkLm1kLWhhcy1maWxlOmJlZm9yZSwubWQtZmllbGQubWQtaGFzLWZpbGUgbGFiZWx7bGVmdDozNnB4fS5tZC1maWVsZC5tZC1oYXMtZmlsZSAubWQtaW5wdXR7bWFyZ2luLWxlZnQ6MTJweH0ubWQtZmllbGQubWQtZm9jdXNlZDpiZWZvcmUsLm1kLWZpZWxkLm1kLWhpZ2hsaWdodDpiZWZvcmV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3JkZXIsb3BhY2l0eSx0cmFuc2Zvcm19Lm1kLWZpZWxkLm1kLWZvY3VzZWQgbGFiZWwsLm1kLWZpZWxkLm1kLWhhcy12YWx1ZSBsYWJlbHtwb2ludGVyLWV2ZW50czphdXRvO3RvcDowO29wYWNpdHk6MTtmb250LXNpemU6MTJweH0ubWQtZmllbGQubWQtZm9jdXNlZCAubWQtaW5wdXQsLm1kLWZpZWxkLm1kLWZvY3VzZWQgLm1kLXRleHRhcmVhLC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUgbGFiZWx7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWZvY3VzZWQgbGFiZWx7dG9wOjIzcHg7Zm9udC1zaXplOjE2cHh9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1oYXMtdmFsdWUgbGFiZWx7b3BhY2l0eTowfS5tZC1maWVsZC5tZC1kaXNhYmxlZDphZnRlcntiYWNrZ3JvdW5kOjAgMTAwJSByZXBlYXQteDtiYWNrZ3JvdW5kLXNpemU6NHB4IDFweH0ubWQtZmllbGQubWQtaGFzLXBhc3N3b3JkIC5tZC10b2dnbGUtcGFzc3dvcmR7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDtib3R0b206LTJweH0ubWQtZmllbGQubWQtaGFzLXBhc3N3b3JkIC5tZC10b2dnbGUtcGFzc3dvcmQgc3Zne3dpZHRoOjIycHg7aGVpZ2h0OjIycHh9Lm1kLWZpZWxkLm1kLWNsZWFyYWJsZSAubWQtaW5wdXR7cGFkZGluZy1yaWdodDozMHB4fUBrZXlmcmFtZXMgYXsxMCUsOTAle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMXB4LDAsMCl9MzAlLDcwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApfTQwJSw2MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDRweCwwLDApfX0ubWQtZmllbGQubWQtaW52YWxpZC5tZC1oYXMtdmFsdWUgbGFiZWw6bm90KDpmb2N1cyl7YW5pbWF0aW9uOmEgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpIGJvdGg7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtwZXJzcGVjdGl2ZToxMDAwcHh9Lm1kLWZpZWxkLm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZXtib3JkZXItd2lkdGg6MnB4fS5tZC1maWVsZC5tZC1pbnZhbGlkIC5tZC1lcnJvcntvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWZpZWxkLm1kLWludmFsaWQgLm1kLWhlbHBlci10ZXh0e29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApfS5tZC1maWVsZC5tZC1yZXF1aXJlZCBsYWJlbDphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O3JpZ2h0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtaWNvbnt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZvbnQtc2l6ZToyNHB4IWltcG9ydGFudDttYXJnaW46YXV0bztkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm1kLWljb24ubWQtc2l6ZS0yeHt3aWR0aDo0OHB4O21pbi13aWR0aDo0OHB4O2hlaWdodDo0OHB4O2ZvbnQtc2l6ZTo0OHB4IWltcG9ydGFudH0ubWQtaWNvbi5tZC1zaXplLTN4e3dpZHRoOjcycHg7bWluLXdpZHRoOjcycHg7aGVpZ2h0OjcycHg7Zm9udC1zaXplOjcycHghaW1wb3J0YW50fS5tZC1pY29uLm1kLXNpemUtNHh7d2lkdGg6OTZweDttaW4td2lkdGg6OTZweDtoZWlnaHQ6OTZweDtmb250LXNpemU6OTZweCFpbXBvcnRhbnR9Lm1kLWljb24ubWQtc2l6ZS01eHt3aWR0aDoxMjBweDttaW4td2lkdGg6MTIwcHg7aGVpZ2h0OjEyMHB4O2ZvbnQtc2l6ZToxMjBweCFpbXBvcnRhbnR9Lm1kLWljb24taW1hZ2Ugc3Zne2hlaWdodDoxMDAlO2ZsZXg6MTt0cmFuc2l0aW9uOmZpbGwgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1pY29ue3RyYW5zaXRpb246Y29sb3IgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2RpcmVjdGlvbjpsdHI7Zm9udC1mYW1pbHk6TWF0ZXJpYWwgSWNvbnM7LXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6XFxcImxpZ2FcXFwiO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpcXFwibGlnYVxcXCI7Zm9udC1zdHlsZTpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0OjE7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5O3RleHQtdHJhbnNmb3JtOm5vbmU7d29yZC13cmFwOm5vcm1hbDt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9Lm1kLXN2Zy1sb2FkZXJ7ZGlzcGxheTpibG9ja30ubWQtc3ZnLWxvYWRlciBzdmd7d2lkdGg6MTAwJX0ubWQtY2hpcHtoZWlnaHQ6MzJweDtwYWRkaW5nOjAgMTJweDtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6ZGVmYXVsdDtib3JkZXItcmFkaXVzOjMycHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLWNvbG9yLGNvbG9yLG9wYWNpdHksdHJhbnNmb3JtLGJveC1zaGFkb3c7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93O2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjMycHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtY2hpcDpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoaXAubWQtY2hpcC1lbnRlci1hY3RpdmUsLm1kLWNoaXAubWQtY2hpcC1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2Zvcm1aKDApIHNjYWxlKC44KX0ubWQtY2hpcC5tZC1jaGlwLWVudGVyLXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKX0ubWQtY2hpcC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6YWN0aXZlLC5tZC1jaGlwLm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTphY3RpdmUsLm1kLWNoaXAubWQtZm9jdXNlZHtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNoaXAubWQtY2xpY2thYmxle3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0ubWQtY2hpcC5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtY2hpcC5tZC1kZWxldGFibGV7cGFkZGluZy1yaWdodDozMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGV7cGFkZGluZy1yaWdodDowfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nLXJpZ2h0OjMycHh9Lm1kLWNoaXAubWQtZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9Lm1kLWNoaXArLm1kLWNoaXB7bWFyZ2luLWxlZnQ6NHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjE4cHg7bWluLXdpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDo3cHg7ei1pbmRleDo1O3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC01MCUsMCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7Zm9udC1zaXplOjE4cHh9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjB9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLWJ1dHRvbi1jb250ZW50e2hlaWdodDoxNHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29ue3dpZHRoOjE0cHg7bWluLXdpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Zm9udC1zaXplOjE0cHghaW1wb3J0YW50O3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtY2hpcCAubWQtYnV0dG9uLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmd7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLWRhdGVwaWNrZXItb3ZlcmxheXtvcGFjaXR5OjB9Lm1kLWRhdGVwaWNrZXIgLm1kLWRhdGUtaWNvbntjdXJzb3I6cG9pbnRlcn0ubWQtZGF0ZXBpY2tlciBpbnB1dFt0eXBlPWRhdGVdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3IsLm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1jbGVhci1idXR0b24sLm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kYXRlcGlja2VyLW92ZXJsYXl7b3BhY2l0eToxfX0ubWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt3aWxsLWNoYW5nZTpvcGFjaXR5fS5tZC1vdmVybGF5Lm1kLWZpeGVkLGJvZHk+Lm1kLW92ZXJsYXl7cG9zaXRpb246Zml4ZWR9Lm1kLW92ZXJsYXktZW50ZXIsLm1kLW92ZXJsYXktbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtZGF0ZXBpY2tlci1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLHRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGxlZnQsdG9wfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45KX0ubWQtZGF0ZXBpY2tlci1kaWFsb2ctZW50ZXIgLm1kLWRhdGVwaWNrZXItYm9keSAubWQtZGF0ZXBpY2tlci1jYWxlbmRhcntvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMTAlLDApfS5tZC1kYXRlcGlja2VyLWhlYWRlcnttaW4td2lkdGg6MTUwcHg7cGFkZGluZzoxNnB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdHtjdXJzb3I6cG9pbnRlcjtvcGFjaXR5Oi41NDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoyNHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXRlLXNlbGVjdHtjdXJzb3I6cG9pbnRlcjtvcGFjaXR5Oi41NDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZTozMnB4O2ZvbnQtd2VpZ2h0OjkwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjEuMmVtfS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6YmxvY2t9Lm1kLWRhdGVwaWNrZXItaGVhZGVyIC5tZC1zZWxlY3RlZHtvcGFjaXR5OjF9Lm1kLWRhdGVwaWNrZXItYm9keXt3aWR0aDozMjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjp3aWR0aCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6d2lkdGh9Lm1kLWRhdGVwaWNrZXItYm9keSAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVye3BhZGRpbmc6OHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlciwubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZTtjb250ZW50OlxcXCIgXFxcIn0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjphZnRlcntsZWZ0OjB9Lm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YmVmb3Jle3JpZ2h0OjB9Lm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXIgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6M30ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1lbnRlciAubWQtYnV0dG9uOmZpcnN0LWNoaWxkLC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWxlYXZlLWFjdGl2ZSAubWQtYnV0dG9uOmZpcnN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUwJSwwLDApfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWVudGVyIC5tZC1idXR0b246bGFzdC1jaGlsZCwubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1sZWF2ZS1hY3RpdmUgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxNTAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItYm9keS1jb250ZW50e292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmhlaWdodH0ubWQtZGF0ZXBpY2tlci1wYW5lbHtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlciAubWQtZGF0ZXBpY2tlci1tb250aC10cmlnZ2Vye3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMzAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtbmV4dCAubWQtZGF0ZXBpY2tlci1tb250aC1lbnRlciwubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1wcmV2aW91cyAubWQtZGF0ZXBpY2tlci1tb250aC1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDMwJSwwLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLW5leHQgLm1kLWRhdGVwaWNrZXItbW9udGgtbGVhdmUtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMTAwJSwwLDApfS5tZC1kYXRlcGlja2VyLW1vbnRoe3RvcDo4cHg7Ym90dG9tOmF1dG87ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1kYXRlcGlja2VyLW1vbnRoIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7bWluLWhlaWdodDozMnB4O21hcmdpbjowIDQ2cHggMTBweDtmbGV4OjE7Ym9yZGVyLXJhZGl1czowO3RyYW5zaXRpb246dHJhbnNmb3JtIC40NXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC1kYXRlcGlja2VyLXdlZWt7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtZGF0ZXBpY2tlci13ZWVrIHNwYW57ZmxleDoxO2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246Y2VudGVyfS5tZC1kYXRlcGlja2VyLWRheXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS5tZC1kYXRlcGlja2VyLWRheXMgLm1kLWRhdGVwaWNrZXItZGF5LC5tZC1kYXRlcGlja2VyLWRheXMgLm1kLWRhdGVwaWNrZXItZW1wdHl7bWFyZ2luOjFweCAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4OjAgMSAxNC4yODU3MSV9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXktYnV0dG9ue3dpZHRoOjMwcHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozMHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLXRvZGF5e2ZvbnQtd2VpZ2h0OjcwMH0ubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3J7cGFkZGluZzo2cHggOHB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym90dG9tOmF1dG87dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLW1vbnRoLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IgLm1kLWRhdGVwaWNrZXIteWVhci10cmlnZ2Vye3dpZHRoOjEwMCU7bWFyZ2luOjAgMCA4cHg7ZmxleDoxIDEgMTAwJX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b257aGVpZ2h0OjM2cHg7bWFyZ2luOjNweCAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b257ZmxleDoxIDEgMzMuMzMzMyU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjEzcHh9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvcntmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6YXV0bztib3R0b206NTJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZH0ubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1lbnRlciwubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvciAubWQtYnV0dG9ue21pbi1oZWlnaHQ6MzZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbntmb250LXNpemU6MTZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2ZvbnQtc2l6ZToyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1kaWFsb2d7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcn0ubWQtZGF0ZXBpY2tlci1kaWFsb2ctZW50ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItaGVhZGVye21pbi13aWR0aDphdXRvO3BhZGRpbmc6MTZweCAyMHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6Mjk2cHh9Lm1kLWRhdGVwaWNrZXItbW9udGh7cGFkZGluZzowIDZweH19Lm1kLXBvcG92ZXIubWQtcmVuZGVyaW5ne29wYWNpdHk6MDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO21pbi13aWR0aDoyODBweDttYXgtd2lkdGg6ODAlO21heC1oZWlnaHQ6ODAlO21hcmdpbjphdXRvO2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpmaXhlZDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6MTA7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtwb2ludGVyLWV2ZW50czphdXRvO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxsZWZ0LHRvcH0ubWQtZGlhbG9nPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nPi5tZC1kaWFsb2ctY29udGVudCwubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZSwubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC45KX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLWFjdGlvbnMsLm1kLWRpYWxvZy1lbnRlci1hY3RpdmU+Lm1kLWRpYWxvZy1jb250ZW50LC5tZC1kaWFsb2ctZW50ZXItYWN0aXZlPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLXRpdGxlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZT4ubWQtZGlhbG9nLWNvbnRlbnQsLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmU+Lm1kLWRpYWxvZy10YWJzLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctdGl0bGV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguOTUpIHRyYW5zbGF0ZTNEKDAsMTAlLDApfS5tZC1kaWFsb2ctY29udGFpbmVye2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1ufS5tZC1kaWFsb2ctY29udGFpbmVyLC5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJze2ZsZXg6MX0ubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFicy1uYXZpZ2F0aW9ue3BhZGRpbmc6MCAxMnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFie3BhZGRpbmc6MTJweH0ubWQtZGlhbG9nLWZ1bGxzY3JlZW57bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO3Bvc2l0aW9uOmZpeGVkO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2JvcmRlci1yYWRpdXM6MDt0cmFuc2Zvcm06bm9uZX0ubWQtZGlhbG9nLWZ1bGxzY3JlZW4ubWQtZGlhbG9nLWVudGVye29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzMCUsMCl9Lm1kLWRpYWxvZy1mdWxsc2NyZWVuLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9fS5tZC1kaWFsb2ctdGl0bGV7bWFyZ2luLWJvdHRvbToyMHB4O3BhZGRpbmc6MjRweCAyNHB4IDB9Lm1kLWRpYWxvZy1jb250ZW50e3BhZGRpbmc6MCAyNHB4IDI0cHg7ZmxleDoxO2ZsZXgtYmFzaXM6YXV0bztvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1kaWFsb2ctY29udGVudDpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDoyNHB4fS5tZC1kaWFsb2ctY29udGVudCBwOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCl7bWFyZ2luLXRvcDowfS5tZC1kaWFsb2ctY29udGVudCBwOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tYm90dG9tOjB9Lm1kLWRpYWxvZy1hY3Rpb25ze21pbi1oZWlnaHQ6NTJweDtwYWRkaW5nOjhweCA4cHggOHB4IDI0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWRpYWxvZy1hY3Rpb25zOmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMXB4O3JpZ2h0OjA7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9ue21pbi13aWR0aDo2NHB4O21hcmdpbjowfS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6YmxvY2s7Ym9yZGVyOjA7dHJhbnNpdGlvbjptYXJnaW4tbGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6bWFyZ2luLWxlZnR9Lm1kLWRpdmlkZXIubWQtaW5zZXR7bWFyZ2luLWxlZnQ6NzJweH0ubWQtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4Ojc7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxib3gtc2hhZG93O3dpZHRoOjQwMHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gNTZweCk7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5tZC1kcmF3ZXIubWQtcmlnaHR7cmlnaHQ6MDtsZWZ0OmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZHJhd2VyLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1kcmF3ZXIubWQtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWRyYXdlci5tZC10ZW1wb3JhcnkrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXRlbXBvcmFyeS5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50Om5vdCgubWQtYWN0aXZlKSsubWQtYXBwLWNvbnRhaW5lciAubWQtY29udGVudHtib3JkZXItbGVmdDpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pe2JvcmRlci1yaWdodDoxcHggc29saWQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsNjRweCwwKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aDt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvd30ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaS5tZC1hY3RpdmUrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSl7d2lkdGg6NzBweCFpbXBvcnRhbnQ7ei1pbmRleDoxO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSkgLm1kLXRvb2xiYXJ7ZGlzcGxheTpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pOm5vdCgubWQtYWN0aXZlKSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZzowIDIzcHh9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50LW1pbmkubWQtYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7d2hpdGUtc3BhY2U6bm9ybWFsfS5tZC1kcmF3ZXIgLm1kLWxpc3QtaXRlbS1jb250YWluZXJ7Zm9udC1zaXplOjE0cHg7dGV4dC10cmFuc2Zvcm06bm9uZX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWRyYXdlcnt3aWR0aDozMjBweH0ubWQtZHJhd2VyLm1kLWFjdGl2ZXtib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKX19QG1lZGlhIChtaW4td2lkdGg6NjAwcHgpey5tZC1kcmF3ZXI6bm90KC5tZC10ZW1wb3Jhcnkpfi5tZC1vdmVybGF5e2JhY2tncm91bmQ6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS5tZC1kcmF3ZXIubWQtcGVybWFuZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtZnVsbHt6LWluZGV4OjN9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtZnVsbCAubWQtbGlzdHtwYWRkaW5nLXRvcDowfS5tZC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmQsLm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2xpcHBlZHt6LWluZGV4OjF9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7b3ZlcmZsb3c6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjttYXJnaW46OHB4O3otaW5kZXg6MX19QG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey5tZC1kcmF3ZXIubWQtcGVybWFuZW50LWNhcmR7bWFyZ2luOjE2cHh9fUBtZWRpYSAobWluLXdpZHRoOjEyODBweCl7Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHttYXJnaW46MjRweH19Lm1kLWVsZXZhdGlvbi0we2JveC1zaGFkb3c6MCAwIDAgMCByZ2JhKDAsMCwwLC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsLjE0KSwwIDAgMCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTF7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMntib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0ze2JveC1zaGFkb3c6MCAzcHggM3B4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAzcHggNHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDhweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTR7Ym94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTV7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDVweCA4cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTRweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTZ7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi03e2JveC1zaGFkb3c6MCA0cHggNXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCA3cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgMnB4IDE2cHggMXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTh7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tOXtib3gtc2hhZG93OjAgNXB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOXB4IDEycHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNnB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xMHtib3gtc2hhZG93OjAgNnB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgMTBweCAxNHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCA0cHggMThweCAzcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTF7Ym94LXNoYWRvdzowIDZweCA3cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDExcHggMTVweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDIwcHggM3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEye2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxMnB4IDE3cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyMnB4IDRweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xM3tib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTNweCAxOXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjRweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTR7Ym94LXNoYWRvdzowIDdweCA5cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDE0cHggMjFweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI2cHggNHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE1e2JveC1zaGFkb3c6MCA4cHggOXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNXB4IDIycHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAyOHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xNntib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE3e2JveC1zaGFkb3c6MCA4cHggMTFweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTdweCAyNnB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzJweCA1cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTh7Ym94LXNoYWRvdzowIDlweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxOHB4IDI4cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDdweCAzNHB4IDZweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xOXtib3gtc2hhZG93OjAgOXB4IDEycHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDE5cHggMjlweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgN3B4IDM2cHggNnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIwe2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIwcHggMzFweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDM4cHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIxe2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIxcHggMzNweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQwcHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIye2JveC1zaGFkb3c6MCAxMHB4IDE0cHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIycHggMzVweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQycHggN3B4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTIze2JveC1zaGFkb3c6MCAxMXB4IDE0cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDIzcHggMzZweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ0cHggOHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTI0e2JveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZW1wdHktc3RhdGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzozNnB4O21hcmdpbjowIGF1dG87cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLm1kLXJvdW5kZWR7bWF4LXdpZHRoOmF1dG87Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWVtcHR5LXN0YXRlLm1kLXJvdW5kZWQgLm1kLWVtcHR5LXN0YXRlLWNvbnRhaW5lcntwYWRkaW5nOjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lm1kLWVtcHR5LXN0YXRlIC5tZC1idXR0b257bWFyZ2luOi41ZW0gMCAwfS5tZC1lbXB0eS1zdGF0ZS1lbnRlcntvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC44Nyl9Lm1kLWVtcHR5LXN0YXRlLWVudGVyIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7b3BhY2l0eTowfS5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLWljb257d2lkdGg6MTYwcHg7bWluLXdpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtmb250LXNpemU6MTYwcHghaW1wb3J0YW50O21hcmdpbjowfS5tZC1lbXB0eS1zdGF0ZS1sYWJlbHtmb250LXNpemU6MjZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6NDBweH0ubWQtZW1wdHktc3RhdGUtZGVzY3JpcHRpb257bWFyZ2luOjFlbSAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI0cHh9Lm1kLW1lbnUubWQtc2VsZWN0e2Rpc3BsYXk6ZmxleDtmbGV4OjF9Lm1kLW1lbnUubWQtc2VsZWN0Om5vdCgubWQtZGlzYWJsZWQpIC5tZC1pY29uLC5tZC1tZW51Lm1kLXNlbGVjdDpub3QoLm1kLWRpc2FibGVkKSAubWQtaW5wdXR7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTpub25lfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXR7ZmxleDoxfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXQtZmFrZSwubWQtbWVudS5tZC1zZWxlY3Qgc2VsZWN0e3dpZHRoOjFweDtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O3BhZGRpbmc6MDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7Y2xpcDpyZWN0KDAgMCAwIDApO2JvcmRlcjowfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnV7d2lkdGg6MTAwJX0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51Lm1kLW1lbnUtY29udGVudC1lbnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguMyl9Lm1kLW1lbnUtY29udGVudC5tZC1zZWxlY3QtbWVudSAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnUgLm1kLWRlbnNlIC5tZC1yaXBwbGUubWQtbGlzdC1pdGVtLWNvbnRlbnR7Zm9udC1zaXplOjE0cHh9Lm1kLW1lbnV7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm1kLW1lbnU+Lm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtbWVudS1jb250ZW50e2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTttaW4td2lkdGg6MTEycHg7bWF4LXdpZHRoOjI4MHB4O21heC1oZWlnaHQ6MzV2aDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50fS5tZC1tZW51LWNvbnRlbnQubWQtc2hhbGxvd3twb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnQ7dG9wOi05OTk5ZW0haW1wb3J0YW50O2xlZnQ6LTk5OTllbSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci1hY3RpdmV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO29wYWNpdHk6MH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtdG9wLXN0YXJ0e3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIGxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC10b3AtZW5ke3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIHJpZ2h0O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtcmlnaHQtc3RhcnR7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1yaWdodC1lbmR7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGJvdHRvbTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1zdGFydHt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1lbmR7dHJhbnNmb3JtLW9yaWdpbjp0b3AgcmlnaHQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtbGVmdC1zdGFydHt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IHRvcDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1sZWZ0LWVuZHt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIgLm1kLWxpc3R7b3BhY2l0eTowfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LW1lZGl1bXttaW4td2lkdGg6MTY4cHh9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtYmlne21pbi13aWR0aDoyMjRweH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1odWdle21pbi13aWR0aDoyODBweH0ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lcntmbGV4OjE7b3ZlcmZsb3c6YXV0b30ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lciAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHk7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyIC5tZC1saXN0e2ZvbnQtc2l6ZToxNHB4fX0ubWQtbGlzdHttYXJnaW46MDtwYWRkaW5nOjhweCAwO2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uIG5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTtsaXN0LXN0eWxlOm5vbmV9Lm1kLWxpc3QubWQtZGVuc2V7cGFkZGluZzo0cHggMH0ubWQtbGlzdCAubWQtZGl2aWRlcnttYXJnaW4tdG9wOi0xcHh9Lm1kLWxpc3QgLm1kLXN1YmhlYWRlci5tZC1pbnNldHtwYWRkaW5nLWxlZnQ6NzJweH0ubWQtbGlzdD4ubWQtc3ViaGVhZGVyOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDotOHB4fS5tZC1vcHRncm91cCAubWQtc3ViaGVhZGVye3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtb3B0Z3JvdXAgLm1kLXJpcHBsZS5tZC1saXN0LWl0ZW0tY29udGVudHtwYWRkaW5nLWxlZnQ6MjRweH0ubWQtZmlsZXtkaXNwbGF5OmZsZXg7ZmxleDoxfS5tZC1maWxlIGlucHV0W3R5cGU9ZmlsZV17d2lkdGg6MXB4O2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtjbGlwOnJlY3QoMCAwIDAgMCk7Ym9yZGVyOjB9Lm1kLWZpbGUgLm1kLWljb257Y3Vyc29yOnBvaW50ZXJ9Lm1kLWhpZ2hsaWdodC10ZXh0e2ZsZXg6MX0ubWQtaGlnaGxpZ2h0LXRleHQtbWF0Y2h7Zm9udC13ZWlnaHQ6NTAwfS5tZC1pbWFnZXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWxheW91dCAubWQtbGF5b3V0e2ZsZXg6MX0ubWQtbGF5b3V0IC5tZC1sYXlvdXQtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXB9Lm1kLWxheW91dC5tZC1jZW50ZXJlZHt3aWR0aDoxMDAlO21heC13aWR0aDoxMjAwcHg7bWFyZ2luOjAgYXV0b30ubWQtbGF5b3V0Lm1kLWd1dHRlcnttYXJnaW4tcmlnaHQ6LTIwcHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweH1AbWVkaWEgKG1heC13aWR0aDoxMjY0cHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotMTJweDttYXJnaW4tbGVmdDotMTJweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoxMnB4fX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLWxheW91dC5tZC1ndXR0ZXJ7bWFyZ2luLXJpZ2h0Oi04cHg7bWFyZ2luLWxlZnQ6LThweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjhweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotNHB4O21hcmdpbi1sZWZ0Oi00cHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDo0cHh9fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlciwubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1jZW50ZXItY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tc3BhY2UtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDthbGlnbi1pdGVtczpzcGFjZS1hcm91bmR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYXJvdW5kLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtc3BhY2UtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7YWxpZ24taXRlbXM6c3BhY2UtYXJvdW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXNwYWNlLWFyb3VuZC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLXNwYWNlLWFyb3VuZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC1pdGVtLC5tZC1sYXlvdXQtaXRlbS5tZC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0xMHttaW4td2lkdGg6MTAlO21heC13aWR0aDoxMCU7ZmxleDowIDEgMTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0yNXttaW4td2lkdGg6MjUlO21heC13aWR0aDoyNSU7ZmxleDowIDEgMjUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS00MHttaW4td2lkdGg6NDAlO21heC13aWR0aDo0MCU7ZmxleDowIDEgNDAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS01NXttaW4td2lkdGg6NTUlO21heC13aWR0aDo1NSU7ZmxleDowIDEgNTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS03MHttaW4td2lkdGg6NzAlO21heC13aWR0aDo3MCU7ZmxleDowIDEgNzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS04NXttaW4td2lkdGg6ODUlO21heC13aWR0aDo4NSU7ZmxleDowIDEgODUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0zM3ttaW4td2lkdGg6MzMuMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMlO2ZsZXg6MCAxIDMzLjMzMzMlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemV7ZmxleDoxIDF9Lm1kLWxheW91dC1pdGVtLm1kLW1lZGl1bS1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTV7bWluLXdpZHRoOjE1JTttYXgtd2lkdGg6MTUlO2ZsZXg6MCAxIDE1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzB7bWluLXdpZHRoOjMwJTttYXgtd2lkdGg6MzAlO2ZsZXg6MCAxIDMwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDV7bWluLXdpZHRoOjQ1JTttYXgtd2lkdGg6NDUlO2ZsZXg6MCAxIDQ1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjB7bWluLXdpZHRoOjYwJTttYXgtd2lkdGg6NjAlO2ZsZXg6MCAxIDYwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzV7bWluLXdpZHRoOjc1JTttYXgtd2lkdGg6NzUlO2ZsZXg6MCAxIDc1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTB7bWluLXdpZHRoOjkwJTttYXgtd2lkdGg6OTAlO2ZsZXg6MCAxIDkwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjZ7bWluLXdpZHRoOjY2LjY2NjYlO21heC13aWR0aDo2Ni42NjY2JTtmbGV4OjAgMSA2Ni42NjY2JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZXtmbGV4OjEgMX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0xNXttaW4td2lkdGg6MTUlO21heC13aWR0aDoxNSU7ZmxleDowIDEgMTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0zMHttaW4td2lkdGg6MzAlO21heC13aWR0aDozMCU7ZmxleDowIDEgMzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS00NXttaW4td2lkdGg6NDUlO21heC13aWR0aDo0NSU7ZmxleDowIDEgNDUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02MHttaW4td2lkdGg6NjAlO21heC13aWR0aDo2MCU7ZmxleDowIDEgNjAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS03NXttaW4td2lkdGg6NzUlO21heC13aWR0aDo3NSU7ZmxleDowIDEgNzUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS05MHttaW4td2lkdGg6OTAlO21heC13aWR0aDo5MCU7ZmxleDowIDEgOTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02NnttaW4td2lkdGg6NjYuNjY2NiU7bWF4LXdpZHRoOjY2LjY2NjYlO2ZsZXg6MCAxIDY2LjY2NjYlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC14c21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwe21pbi13aWR0aDoxMCU7bWF4LXdpZHRoOjEwJTtmbGV4OjAgMSAxMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTI1e21pbi13aWR0aDoyNSU7bWF4LXdpZHRoOjI1JTtmbGV4OjAgMSAyNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQwe21pbi13aWR0aDo0MCU7bWF4LXdpZHRoOjQwJTtmbGV4OjAgMSA0MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTU1e21pbi13aWR0aDo1NSU7bWF4LXdpZHRoOjU1JTtmbGV4OjAgMSA1NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTcwe21pbi13aWR0aDo3MCU7bWF4LXdpZHRoOjcwJTtmbGV4OjAgMSA3MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTg1e21pbi13aWR0aDo4NSU7bWF4LXdpZHRoOjg1JTtmbGV4OjAgMSA4NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMze21pbi13aWR0aDozMy4zMzMzJTttYXgtd2lkdGg6MzMuMzMzMyU7ZmxleDowIDEgMzMuMzMzMyV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX0ubWQtaGlkZXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbWVkaXVtLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXNtYWxsLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXhzbWFsbC1oaWRle2Rpc3BsYXk6bm9uZX19Lm1kLWxpc3QtaXRlbXtoZWlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWxpc3QtaXRlbS5tZC1pbnNldCAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZy1sZWZ0OjcycHh9Lm1kLWxpc3QtaXRlbSAubWQtaWNvbnttYXJnaW46MDt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLG1hcmdpbi1yaWdodH0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06bm9uZX0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSl7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2N1cnNvcjpwb2ludGVyfS5tZC1saXN0LWl0ZW0tY29udGFpbmVyLm1kLWJ1dHRvbi1jbGVhbjpob3ZlcntvcGFjaXR5OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjRweCAxNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47dHJhbnNpdGlvbjpwYWRkaW5nIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjQwcHg7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXJ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpub3QoLm1kLXNtYWxsKXt3aWR0aDozNnB4O21pbi13aWR0aDozNnB4O2hlaWdodDozNnB4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFyOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDoyMHB4fS5tZC1saXN0Lm1kLWRvdWJsZS1saW5lIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjcycHh9Lm1kLWxpc3QubWQtZG91YmxlLWxpbmUubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NjBweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo4OHB4fS5tZC1saXN0Lm1kLXRyaXBsZS1saW5lLm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0Ojc2cHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50IC5tZC1saXN0LWFjdGlvbnttYXJnaW46MCAtMTBweCAwIDB9Lm1kLWxpc3QtaXRlbS1jb250ZW50IC5tZC1saXN0LWFjdGlvbjpsYXN0LW9mLXR5cGV7bWFyZ2luOjAgLTEwcHggMCAxNnB4fS5tZC1saXN0Lm1kLXRyaXBsZS1saW5lIC5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb246bGFzdC1vZi10eXBle2FsaWduLXNlbGY6ZmxleC1zdGFydH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWljb246Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjMycHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1pY29uOmxhc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MTZweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWNoZWNrYm94LC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtcmFkaW97bWFyZ2luOjB9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1jaGVja2JveDpmaXJzdC1jaGlsZCwubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXJhZGlvOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDozNnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtc3dpdGNoe21hcmdpbjowfS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtc3dpdGNoOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDoyMnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFye21hcmdpbjo0cHggMH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTZweH0ubWQtbGlzdC1pdGVtLXRleHR7ZmxleDoxO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNWVtO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLXRleHR7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QtaXRlbS10ZXh0ICp7d2lkdGg6MTAwJTttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNWVtO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMiksLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMyl7Zm9udC1zaXplOjE0cHh9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS10ZXh0ICp7Zm9udC1zaXplOjEzcHh9Lm1kLWxpc3QtaXRlbS1leHBhbmR7Ym9yZGVyLXRvcDoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpib3JkZXIgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOmJvcmRlcn0ubWQtbGlzdC1pdGVtLWV4cGFuZC5tZC1hY3RpdmUgLm1kLWxpc3QtZXhwYW5kLWljb257cGVyc3BlY3RpdmU6MTAwMHB4O3BlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlO3RyYW5zZm9ybTpyb3RhdGVYKDE4MGRlZyl9Lm1kLWxpc3QtaXRlbS1leHBhbmQubWQtYWN0aXZlIC5tZC1saXN0LWV4cGFuZHtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX0ubWQtbGlzdC1pdGVtLWV4cGFuZCAubWQtbGlzdC1leHBhbmR7aGVpZ2h0OjA7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwtMjRweCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1saXN0LWl0ZW0tZXhwYW5kIC5tZC1saXN0LWV4cGFuZC1pY29ue3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19QGtleWZyYW1lcyBiezAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfTIwJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX02MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMsLjM4LC41NSwuOTYpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDgzLjY3JSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSl9fUBrZXlmcmFtZXMgY3swJXt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MzUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMywuMTIsLjc5LDEpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX03MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTt0cmFuc2Zvcm06c2NhbGVYKC42Nil9dG97dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1Aa2V5ZnJhbWVzIGR7MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgzNy42NSUpfTUwJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTYwLjI4JSl9fUBrZXlmcmFtZXMgZXswJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTUsMCwuNTIsLjQxKTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MjAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTt0cmFuc2Zvcm06c2NhbGVYKC40Nil9NDUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7dHJhbnNmb3JtOnNjYWxlWCguNzMpfXRve3RyYW5zZm9ybTpzY2FsZVgoLjA4KX19QGtleWZyYW1lcyBme3Rve3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtOHB4LDAsMCl9fS5tZC1wcm9ncmVzcy1iYXJ7aGVpZ2h0OjVweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDEpO3RyYW5zZm9ybS1vcmlnaW46dG9wIGNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2ssLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre2xlZnQ6LTE1MCU7YW5pbWF0aW9uOmIgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcnthbmltYXRpb246YyAycyBpbmZpbml0ZSBsaW5lYXJ9Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtsZWZ0Oi01NSU7YW5pbWF0aW9uOmQgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXJ7YW5pbWF0aW9uOmUgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXIubWQtZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zaXRpb246LjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7ZGlzcGxheTpub25lfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci10b3A6NHB4IGRvdHRlZDthbmltYXRpb246ZiAuMjVzIGluZmluaXRlIGxpbmVhcn0ubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5e3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ubWQtcHJvZ3Jlc3MtYmFyLWVudGVyLC5tZC1wcm9ncmVzcy1iYXItbGVhdmUtYWN0aXZle29wYWNpdHk6LjU7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDApfS5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifUBrZXlmcmFtZXMgZ3swJXt0cmFuc2Zvcm06cm90YXRlKDApfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1Aa2V5ZnJhbWVzIGh7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVaKDApfTIwJXtvcGFjaXR5OjF9dG97dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fS5tZC1wcm9ncmVzcy1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZXthbmltYXRpb246ZyAycyBsaW5lYXIgaW5maW5pdGV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjEpfS5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle2FuaW1hdGlvbjo0cyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLWFjdGl2ZSwubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjJzfS5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWRldGVybWluYXRlLm1kLXByb2dyZXNzLXNwaW5uZXItZW50ZXItYWN0aXZlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmUgLm1kLXByb2dyZXNzLXNwaW5uZXItZHJhd3thbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e3RyYW5zaXRpb246bm9uZX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e292ZXJmbG93OnZpc2libGU7dHJhbnNmb3JtOnNjYWxlKDEpIHJvdGF0ZSgtOTBkZWcpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtfS5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZXtmaWxsOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbjpzdHJva2UtZGFzaG9mZnNldCAuMjVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOnN0cm9rZS1kYXNob2Zmc2V0LHN0cm9rZS1kYXNoYXJyYXksc3Ryb2tlLXdpZHRoLGFuaW1hdGlvbi1uYW1lLHJ9Lm1kLXJhZGlve3dpZHRoOmF1dG87bWFyZ2luOjE2cHggMTZweCAxNnB4IDA7ZGlzcGxheTppbmxpbmUtZmxleDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtcmFkaW86bm90KC5tZC1kaXNhYmxlZCksLm1kLXJhZGlvOm5vdCgubWQtZGlzYWJsZWQpIC5tZC1yYWRpby1sYWJlbHtjdXJzb3I6cG9pbnRlcn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcnt3aWR0aDoyMHB4O21pbi13aWR0aDoyMHB4O2hlaWdodDoyMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6Zm9jdXN7b3V0bGluZTpub25lfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyLC5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKTtjb250ZW50OlxcXCIgXFxcIn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6NTtib3JkZXItcmFkaXVzOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjNweDtyaWdodDozcHg7Ym90dG9tOjNweDtsZWZ0OjNweDtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM0QoLjM4LC4zOCwxKTtjb250ZW50OlxcXCIgXFxcIn0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1yYWRpbyAubWQtcmFkaW8tbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtcmFkaW8ubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUzRCgxLDEsMSk7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXJhZGlvLm1kLXJlcXVpcmVkIGxhYmVsOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7cmlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWChjYWxjKDEwMCUgKyAycHgpKTtjb250ZW50OlxcXCIqXFxcIjtsaW5lLWhlaWdodDoxZW07dmVydGljYWwtYWxpZ246dG9wfS5tZC1zbmFja2Jhcntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTttaW4td2lkdGg6Mjg4cHg7bWF4LXdpZHRoOjU2OHB4O21pbi1oZWlnaHQ6NDhweDttYXgtaGVpZ2h0OjgwcHg7cGFkZGluZzoxNHB4IDI0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjEyO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWNlbnRlcnttYXJnaW46MCBhdXRvO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXIubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWNlbnRlci5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsY2FsYygxMDAlICsgOHB4KSwwKX0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdHtib3R0b206MjRweDtsZWZ0OjI0cHh9Lm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWxlZnQubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLm1kLXBvc2l0aW9uLWxlZnQubWQtc25hY2tiYXItbGVhdmUtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLGNhbGMoMTAwJSArIDMycHgpLDApfS5tZC1zbmFja2Jhci1lbnRlciwubWQtc25hY2tiYXItZW50ZXIgLm1kLXNuYWNrYmFyLWNvbnRlbnQsLm1kLXNuYWNrYmFyLWxlYXZlLWFjdGl2ZSwubWQtc25hY2tiYXItbGVhdmUtYWN0aXZlIC5tZC1zbmFja2Jhci1jb250ZW50e29wYWNpdHk6MH0ubWQtc25hY2tiYXItY29udGVudHtmbGV4OjE7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjM4cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21pbi13aWR0aDowO21hcmdpbjotOHB4IC04cHggLThweCAzNnB4fS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDoxNnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtc25hY2tiYXJ7bGVmdDowO3RyYW5zZm9ybTpub25lO2JvcmRlci1yYWRpdXM6MH0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjEycHh9fS5tZC1zcGVlZC1kaWFse2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zcGVlZC1kaWFsLm1kLXRvcC1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tbGVmdCwubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tcmlnaHR7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWNlbnRlciwubWQtc3BlZWQtZGlhbC5tZC10b3AtY2VudGVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfS5tZC1zcGVlZC1kaWFsLm1kLXRvcC1jZW50ZXJ7dG9wOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWNlbnRlcntib3R0b206MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tcmlnaHQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLXJpZ2h0e3JpZ2h0OjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLWxlZnQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLWxlZnR7bGVmdDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi10b3AubWQtZWZmZWN0LWZsaW5nIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi10b3AgLm1kLXNwZWVkLWRpYWwtdGFyZ2V0e29yZGVyOjI7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7b3JkZXI6MX0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLWJvdHRvbS5tZC1lZmZlY3QtZmxpbmcgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtdGFyZ2V0e29yZGVyOjE7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tYm90dG9tIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7b3JkZXI6Mn0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tYm90dG9tIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubWQtc3BlZWQtZGlhbC5tZC1lZmZlY3Qtc2NhbGUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3RyYW5zZm9ybTpzY2FsZSguMyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1pbml0aWFsLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLW1vcnBoLWluaXRpYWx7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCkgcm90YXRlKDkwZGVnKSBzY2FsZSguNyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1maW5hbCwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1tb3JwaC1maW5hbHtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbiwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSgxKSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIwXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIwXFxcIl17dHJhbnNpdGlvbi1kZWxheTowc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiMVxcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiMVxcXCJde3RyYW5zaXRpb24tZGVsYXk6LjFzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIyXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIyXFxcIl17dHJhbnNpdGlvbi1kZWxheTouMnN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjNcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjNcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi4zc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiNFxcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiNFxcXCJde3RyYW5zaXRpb24tZGVsYXk6LjRzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI1XFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI1XFxcIl17dHJhbnNpdGlvbi1kZWxheTouNXN9Lm1kLXNwZWVkLWRpYWwgLm1kLWJ1dHRvbnttYXJnaW46NnB4IDB9Lm1kLXNwZWVkLWRpYWwgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9ue3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtc3BlZWQtZGlhbCAubWQtbW9ycGgtZmluYWwsLm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWluaXRpYWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWZpbmFse29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApIHNjYWxlKC43KSByb3RhdGUoLTkwZGVnKX0ubWQtc3BlZWQtZGlhbC10YXJnZXR7ei1pbmRleDoxfS5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1zcGVlZC1kaWFsLWNvbnRlbnQsLm1kLXN0ZXBwZXJze3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1zdGVwcGVyc3t0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcn0ubWQtc3RlcHBlcnMubWQtbm8tdHJhbnNpdGlvbiAqe3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9Lm1kLXN0ZXBwZXJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC1zdGVwcGVycy13cmFwcGVye3RyYW5zaXRpb246aGVpZ2h0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpoZWlnaHR9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDoxMDRweH0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6Zmlyc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1pY29uOmJlZm9yZSwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6Zmlyc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1udW1iZXI6YmVmb3JlLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlcjpsYXN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1yaXBwbGV7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50e3BhZGRpbmctdG9wOjE2cHg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci10ZXh0e2hlaWdodDozMnB4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3RleHQtYWxpZ246Y2VudGVyfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luOjAgOHB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZXt3aWR0aDo5OTk5JTtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVye2xlZnQ6Y2FsYygxMDAlICsgOHB4KX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmV7cmlnaHQ6MzJweH0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDo1NnB4fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweCAwIDE2cHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVycy1jb250YWluZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjEycHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVye3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6bGFzdC1vZi10eXBlOmFmdGVye2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6YWZ0ZXJ7d2lkdGg6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2JvdHRvbTotOHB4O2xlZnQ6MzZweDt6LWluZGV4OjI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVycy1uYXZpZ2F0aW9ue2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5OmZsZXh9Lm1kLXN0ZXBwZXJzLW5hdmlnYXRpb24gLm1kLXN0ZXBwZXItaGVhZGVye3dpZHRoOmF1dG99Lm1kLXN0ZXBwZXItaGVhZGVye3dpZHRoOjEwMCU7aGVpZ2h0OjcycHg7bWFyZ2luOjA7ZmxleDoxO2JvcmRlci1yYWRpdXM6MDtmb250LXdlaWdodDo0MDA7dGV4dC1hbGlnbjpsZWZ0O3RleHQtdHJhbnNmb3JtOm5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSwubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1idXR0b24tY29udGVudDphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSwubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3J7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnR7cGFkZGluZzowIDhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3RyYW5zaXRpb246Y29sb3IgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmNvbG9yfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7aGVpZ2h0OjFweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVye3dpZHRoOjk5OTklO2xlZnQ6MTAwJX0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZXt3aWR0aDoxNnB4O2xlZnQ6LTE2cHh9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudCBzdmd7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixmaWxsO3dpbGwtY2hhbmdlOmNvbG9yLGZpbGx9Lm1kLXN0ZXBwZXItdGV4dHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGluZS1oZWlnaHQ6MTZweDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXN0ZXBwZXItaWNvbiwubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjhweDt0cmFuc2l0aW9uOmNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpjb2xvcn0ubWQtc3RlcHBlci1udW1iZXJ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjI0cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3I7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjRweDt0ZXh0LWFsaWduOmNlbnRlcn0ubWQtc3RlcHBlci1kb25le3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lm1kLXN0ZXBwZXItZG9uZSwubWQtc3RlcHBlci1lZGl0YWJsZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0ubWQtc3RlcHBlci1lZGl0YWJsZXt3aWR0aDoxNHB4O2hlaWdodDoxNHB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9uLC5tZC1zdGVwcGVyLWVycm9ye2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxNnB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9ue29wYWNpdHk6LjU0fS5tZC1zdGVwcGVycy13cmFwcGVye292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy1jb250YWluZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZmxleC13cmFwOm5vd3JhcDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtc3RlcHBlcnt3aWR0aDoxMDAlO2ZsZXg6MSAwIDEwMCU7cGFkZGluZzoxNnB4IDI0cHh9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1zdGVwcGVye3BhZGRpbmc6OHB4IDE2cHh9fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1jb250ZW50e3BhZGRpbmc6MCAyNHB4IDAgNjBweDtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtLGhlaWdodCxwYWRkaW5nLWJvdHRvbTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxoZWlnaHQscGFkZGluZy1ib3R0b219Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVyLWNvbnRlbnQubWQtYWN0aXZle2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjQwcHg7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLXN1YmhlYWRlcnttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzowIDE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4LWZsb3c6cm93IHdyYXA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zd2l0Y2h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1zd2l0Y2g6bm90KC5tZC1kaXNhYmxlZCksLm1kLXN3aXRjaDpub3QoLm1kLWRpc2FibGVkKSAubWQtc3dpdGNoLWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC1jb250YWluZXJ7d2lkdGg6MzRweDttaW4td2lkdGg6MzRweDtoZWlnaHQ6MTRweDttYXJnaW46M3B4IDA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjE0cHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1ie2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYjpiZWZvcmV7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDt0b3A6NTAlO2xlZnQ6NTAlO3otaW5kZXg6NTtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWIgLm1kLXJpcHBsZSwubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWIgLm1kLXJpcHBsZXt3aWR0aDo0OHB4IWltcG9ydGFudDtoZWlnaHQ6NDhweCFpbXBvcnRhbnQ7dG9wOjUwJSFpbXBvcnRhbnQ7bGVmdDo1MCUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NTAlfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTllbX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtc3dpdGNoLm1kLWNoZWNrZWQgLm1kLXN3aXRjaC10aHVtYnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTVweCwwLDApfS5tZC1zd2l0Y2gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKGNhbGMoMTAwJSArIDJweCkpO2NvbnRlbnQ6XFxcIipcXFwiO2xpbmUtaGVpZ2h0OjFlbTt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm1kLXRhYmxle2Rpc3BsYXk6ZmxleDtmbGV4LWZsb3c6Y29sdW1uIHdyYXA7b3ZlcmZsb3cteDphdXRvfS5tZC10YWJsZSAubWQtdGFibGUtZml4ZWQtaGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC10YWJsZSAubWQtdGFibGUtZml4ZWQtaGVhZGVyLWFjdGl2ZXtib3JkZXItYm90dG9tOjFweCBzb2xpZH0ubWQtdGFibGUgLm1kLXRhYmxlLWNvbnRlbnR7ZmxleDoxO292ZXJmbG93LXg6YXV0bzt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLXRhYmxlIC5tZC10YWJsZS1lbXB0eXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lm1kLXRhYmxlIHRhYmxle3dpZHRoOjEwMCU7Ym9yZGVyLXNwYWNpbmc6MDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7b3ZlcmZsb3c6aGlkZGVufS5tZC10YWJsZS1oZWFke3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZTtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4O3RleHQtYWxpZ246bGVmdH0ubWQtdGFibGUtaGVhZDpsYXN0LWNoaWxkIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmctcmlnaHQ6MjRweH0ubWQtdGFibGUtaGVhZC5tZC1udW1lcmlje3RleHQtYWxpZ246cmlnaHR9Lm1kLXRhYmxlLWhlYWQubWQtc29ydGFibGU6Zmlyc3Qtb2YtdHlwZSAubWQtdGFibGUtc29ydGFibGUtaWNvbiwubWQtdGFibGUtaGVhZC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbisubWQtc29ydGFibGUgLm1kLXRhYmxlLXNvcnRhYmxlLWljb257cmlnaHQ6OHB4O2xlZnQ6YXV0b30ubWQtdGFibGUtaGVhZCAubWQtaWNvbnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZvbnQtc2l6ZToxNnB4fS5tZC10YWJsZS1oZWFkIC5tZC1pY29uOm5vdCgubWQtc29ydGFibGUtaWNvbil7bWFyZ2luOjAgNHB4fS5tZC10YWJsZS1oZWFkIC5tZC1pY29uOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjB9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MH0ubWQtc29ydGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXNvcnRhYmxlLm1kLXNvcnRlZCAubWQtdGFibGUtc29ydGFibGUtaWNvbiwubWQtc29ydGFibGU6aG92ZXIgLm1kLXRhYmxlLXNvcnRhYmxlLWljb257b3BhY2l0eToxfS5tZC1zb3J0YWJsZS5tZC1zb3J0ZWQtZGVzYyAubWQtdGFibGUtc29ydGFibGUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKX0ubWQtdGFibGUtaGVhZC1jb250YWluZXJ7aGVpZ2h0OjU2cHg7cGFkZGluZzoxNHB4IDB9Lm1kLXRhYmxlLWhlYWQtY29udGFpbmVyLC5tZC10YWJsZS1oZWFkLWxhYmVse292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtdGFibGUtaGVhZC1sYWJlbHtoZWlnaHQ6MjhweDtwYWRkaW5nLXJpZ2h0OjMycHg7cGFkZGluZy1sZWZ0OjI0cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjhweH0ubWQtdGFibGUtc29ydGFibGUtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6MDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6Mjt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1lbnRlciwubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMDAlLDApfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjouMnMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdGFibGUtcm93e3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixmb250LXdlaWdodDt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yLGZvbnQtd2VpZ2h0fS5tZC10YWJsZS1yb3cubWQtaGFzLXNlbGVjdGlvbntjdXJzb3I6cG9pbnRlcn0ubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZXtmb250LXdlaWdodDo1MDB9dGJvZHkgLm1kLXRhYmxlLXJvdyB0ZHtib3JkZXItdG9wOjFweCBzb2xpZH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb257d2lkdGg6NjZweH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24rdGQgLm1kLXRhYmxlLWNlbGwtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbit0aCAubWQtdGFibGUtaGVhZC1sYWJlbHtwYWRkaW5nLWxlZnQ6MH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLXRhYmxlLWNlbGwtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtY2VsbC1sYWJlbCwubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLXRhYmxlLWhlYWQtY29udGFpbmVyLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtaGVhZC1sYWJlbHtwYWRkaW5nOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO292ZXJmbG93OnZpc2libGV9Lm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC1jaGVja2JveHttYXJnaW46MH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXJ7d2lkdGg6MThweDttaW4td2lkdGg6MThweDtoZWlnaHQ6MThweH0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXJ7dG9wOi0xcHg7bGVmdDo0cHh9Lm1kLXRhYmxlLXRvb2xiYXJ7cGFkZGluZy1sZWZ0OjI0cHh9Lm1kLXRhYmxlLXRvb2xiYXIgLm1kLXRpdGxle2ZsZXg6MTtmb250LXNpemU6MjBweH0ubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjY0cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0O3dpbGwtY2hhbmdlOm9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0fS5tZC10b29sYmFye3BhZGRpbmc6MCAxNnB4O2ZsZXgtZmxvdzpyb3cgd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLXRvb2xiYXIubWQtZGVuc2V7bWluLWhlaWdodDo0OHB4fS5tZC10b29sYmFyLm1kLWxhcmdlIC5tZC10b29sYmFyLXJvdywubWQtdG9vbGJhci5tZC1tZWRpdW0gLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NjRweH0ubWQtdG9vbGJhci5tZC1tZWRpdW17bWluLWhlaWdodDo4OHB4fS5tZC10b29sYmFyLm1kLWxhcmdle21pbi1oZWlnaHQ6MTI4cHg7YWxpZ24tY29udGVudDppbmhlcml0fS5tZC10b29sYmFyLm1kLWxhcmdlLm1kLWRlbnNle21pbi1oZWlnaHQ6OTZweH0ubWQtdG9vbGJhci5tZC1sYXJnZS5tZC1kZW5zZSAubWQtdG9vbGJhci1yb3crLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6MzJweH0ubWQtdG9vbGJhciAubWQtdG9vbGJhci1vZmZzZXR7bWFyZ2luLWxlZnQ6NTZweH0ubWQtdG9vbGJhciAubWQtYnV0dG9uLC5tZC10b29sYmFyIC5tZC1pY29ue3otaW5kZXg6MX0ubWQtdG9vbGJhciAubWQtYnV0dG9ufi5tZC10aXRsZSwubWQtdG9vbGJhciAubWQtaWNvbn4ubWQtdGl0bGV7bWFyZ2luLWxlZnQ6MjRweH0ubWQtdG9vbGJhciAubWQtYnV0dG9uKy5tZC1idXR0b24sLm1kLXRvb2xiYXIgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC10b29sYmFyIC5tZC1idXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ubWQtdG9vbGJhciAubWQtZGlzcGxheS0xLC5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTIsLm1kLXRvb2xiYXIgLm1kLXRpdGxle21hcmdpbjowO21hcmdpbi1sZWZ0OjhweDtvdmVyZmxvdzpoaWRkZW47Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi4wMmVtO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtdG9vbGJhciAubWQtZGlzcGxheS0xe3BhZGRpbmc6MTJweCAwfS5tZC10b29sYmFyIC5tZC1maWVsZHttYXJnaW4tdG9wOjJweDttYXJnaW4tYm90dG9tOjE0cHg7cGFkZGluZy10b3A6MTZweH0ubWQtdG9vbGJhci1yb3d7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS5tZC10b29sYmFyLXNlY3Rpb24tZW5kLC5tZC10b29sYmFyLXNlY3Rpb24tc3RhcnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjF9Lm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtvcmRlcjowfS5tZC10b29sYmFyLXNlY3Rpb24tZW5ke2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtvcmRlcjoxMH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRvb2xiYXIsLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NDhweH0ubWQtdG9vbGJhcntwYWRkaW5nOjAgOHB4fS5tZC10b29sYmFyIC5tZC10b29sYmFyLW9mZnNldHttYXJnaW4tbGVmdDo0OHB4fS5tZC10b29sYmFyIC5tZC1idXR0b25+Lm1kLXRpdGxlLC5tZC10b29sYmFyIC5tZC1pY29ufi5tZC10aXRsZXttYXJnaW4tbGVmdDoxNnB4fX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXRvb2xiYXIsLm1kLXRvb2xiYXItcm93e21pbi1oZWlnaHQ6NTZweH19Lm1kLXRhYmxlLWVtcHR5LXN0YXRle3BhZGRpbmctbGVmdDoyNHB4fS5tZC10YWJsZS1jZWxse2hlaWdodDo0OHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjE4cHh9Lm1kLXRhYmxlLWNlbGwubWQtbnVtZXJpY3t0ZXh0LWFsaWduOnJpZ2h0fS5tZC10YWJsZS1jZWxsOmxhc3QtY2hpbGQgLm1kLXRhYmxlLWNlbGwtY29udGFpbmVye3BhZGRpbmctcmlnaHQ6MjRweH0ubWQtdGFibGUtY2VsbC1jb250YWluZXJ7cGFkZGluZzo2cHggMzJweCA2cHggMjRweH0ubWQtdGFibGUtcGFnaW5hdGlvbntoZWlnaHQ6NTZweDtkaXNwbGF5OmZsZXg7ZmxleDoxO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Ym9yZGVyLXRvcDoxcHggc29saWQ7Zm9udC1zaXplOjEycHh9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLXRhYmxlLXBhZ2luYXRpb24tcHJldmlvdXN7bWFyZ2luLXJpZ2h0OjJweDttYXJnaW4tbGVmdDoxOHB4fS5tZC10YWJsZS1wYWdpbmF0aW9uIC5tZC1maWVsZHt3aWR0aDo0OHB4O21pbi13aWR0aDozNnB4O21hcmdpbjotMTZweCAyNHB4IDAgMzJweH0ubWQtdGFibGUtcGFnaW5hdGlvbiAubWQtZmllbGQ6YWZ0ZXIsLm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkOmJlZm9yZXtkaXNwbGF5Om5vbmV9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkIC5tZC1zZWxlY3QtdmFsdWV7Zm9udC1zaXplOjEzcHh9Lm1kLW1lbnUtY29udGVudC5tZC1wYWdpbmF0aW9uLXNlbGVjdHttYXgtd2lkdGg6ODJweDttaW4td2lkdGg6NTZweDttYXJnaW4tdG9wOjVweH0ubWQtdGFic3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC10YWJzLm1kLW5vLXRyYW5zaXRpb24gKnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC10YWJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC10YWJzLWNvbnRlbnR7dHJhbnNpdGlvbjpoZWlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmhlaWdodH0ubWQtdGFicy5tZC10cmFuc3BhcmVudCAubWQtdGFicy1uYXZpZ2F0aW9ue2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5tZC10YWJzLm1kLWR5bmFtaWMtaGVpZ2h0IC5tZC10YWJzLWNvbnRlbnR7dHJhbnNpdGlvbjpoZWlnaHQgLjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtdGFicy5tZC1hbGlnbm1lbnQtbGVmdCAubWQtdGFicy1uYXZpZ2F0aW9ue2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZC10YWJzLm1kLWFsaWdubWVudC1yaWdodCAubWQtdGFicy1uYXZpZ2F0aW9ue2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtdGFicy5tZC1hbGlnbm1lbnQtY2VudGVyZWQgLm1kLXRhYnMtbmF2aWdhdGlvbiwubWQtdGFicy5tZC1hbGlnbm1lbnQtZml4ZWQgLm1kLXRhYnMtbmF2aWdhdGlvbntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLm1kLWFsaWdubWVudC1maXhlZCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b257bWF4LXdpZHRoOjI2NHB4O21pbi13aWR0aDoxNjBweDtmbGV4OjF9Lm1kLXRvb2xiYXIgLm1kLXRhYnN7cGFkZGluZy1sZWZ0OjQ4cHh9Lm1kLXRhYnMtbmF2aWdhdGlvbntkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue21heC13aWR0aDoyNjRweDttaW4td2lkdGg6NzJweDtoZWlnaHQ6NDhweDttYXJnaW46MDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjEzcHh9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLWNvbnRlbnR7cG9zaXRpb246c3RhdGljfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWx7aGVpZ2h0OjcycHh9Lm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtaWNvbi1sYWJlbCAubWQtYnV0dG9uLWNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLXRhYi1pY29uKy5tZC10YWItbGFiZWx7bWFyZ2luLXRvcDoxMHB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweH0ubWQtdGFicy1pbmRpY2F0b3J7aGVpZ2h0OjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7d2lsbC1jaGFuZ2U6bGVmdCxyaWdodH0ubWQtdGFicy1pbmRpY2F0b3IubWQtdGFicy1pbmRpY2F0b3ItbGVmdHt0cmFuc2l0aW9uOmxlZnQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHJpZ2h0IC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLXRhYnMtaW5kaWNhdG9yLm1kLXRhYnMtaW5kaWNhdG9yLXJpZ2h0e3RyYW5zaXRpb246cmlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLGxlZnQgLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFicy1jb250ZW50e292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC10YWJzLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LXdyYXA6bm93cmFwO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC10YWJ7d2lkdGg6MTAwJTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttaW4td2lkdGg6NzJweH0ubWQtdG9vbGJhciAubWQtdGFic3ttYXJnaW46MCAtOHB4O3BhZGRpbmctbGVmdDowfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtdGFie3BhZGRpbmc6OHB4fX0ubWQtdG9vbHRpcHtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgOHB4O3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6ODtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50O2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjIycHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtdG9wLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtdG9we3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDRweCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1yaWdodCwubWQtdG9vbHRpcC5tZC10b29sdGlwLWxlYXZlLWFjdGl2ZS5tZC10b29sdGlwLXJpZ2h0e3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCkgc2NhbGUoLjk1KX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtYm90dG9tLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtYm90dG9te3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC00cHgsMCkgc2NhbGUoLjk1KX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtbGVmdCwubWQtdG9vbHRpcC5tZC10b29sdGlwLWxlYXZlLWFjdGl2ZS5tZC10b29sdGlwLWxlZnR7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDRweCwwLDApIHNjYWxlKC45NSl9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC10b29sdGlwe2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjMycHh9fVwiLCBcIlwiLCB7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3Z1ZS1tYXRlcmlhbC5taW4uY3NzXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUFBOzs7O0dBSUcsS0FBSyxZQUFZLHNCQUFzQiwwREFBMEQsQ0FBQyxnQ0FBZ0Msa0JBQWtCLENBQUMsS0FBSyxnQkFBZ0IsU0FBUyxrQkFBa0Isd0NBQXdDLDJCQUEyQiw4QkFBOEIsMEJBQTBCLGtDQUFrQyxtQ0FBbUMsd0VBQXdFLENBQUMsa0JBQWtCLDBDQUEwQyxrREFBa0QsQ0FBQywyQ0FBMkMsZUFBZSxrQkFBa0IscUJBQXFCLENBQUMsb0pBQW9KLFdBQVcsQ0FBQyxzQkFBc0Isc0JBQXNCLENBQUMsaUNBQWlDLFVBQVUsV0FBVyxpQkFBaUIsQ0FBQyx1Q0FBdUMsaUJBQWlCLENBQUMsd0NBQXdDLFlBQVksQ0FBQyxZQUFZ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QXlHLGVBQWUsaUJBQWlCLG9CQUFvQixrQkFBa0IsQ0FBQyxvQ0FBb0MsaURBQWlELENBQUMsaUVBQWlFLFNBQVMsQ0FBQywrRkFBaUoseUNBQXlDLENBQUMsbUdBQXNKLDBDQUEwQyxDQUFDLHFHQUF3SiwwQ0FBMEMsQ0FBQyxpR0FBbUoseUNBQXlDLENBQUMseUJBQXlCLFlBQVksWUFBWSxlQUFlLGdCQUFnQixDQUFDLENBQUNcIixcImZpbGVcIjpcInZ1ZS1tYXRlcmlhbC5taW4uY3NzXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIi8qIVxcbiAqIHZ1ZS1tYXRlcmlhbCB2MS4wLjAtYmV0YS03XFxuICogTWFkZSB3aXRoIDwzIGJ5IG1hcmNvc21vdXJhIDIwMTdcXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXFxuICovaHRtbHtoZWlnaHQ6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX1odG1sICosaHRtbCA6YWZ0ZXIsaHRtbCA6YmVmb3Jle2JveC1zaXppbmc6aW5oZXJpdH1ib2R5e21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10b3VjaC1jYWxsb3V0Om5vbmU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LWZhbWlseTpSb2JvdG8sTm90byBTYW5zLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LHNhbnMtc2VyaWZ9YTpub3QoLm1kLWJ1dHRvbil7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLG9wYWNpdHl9YXVkaW8sY2FudmFzLGVtYmVkLGlmcmFtZSxpbWcsb2JqZWN0LHZpZGVve21heC13aWR0aDoxMDAlO2ZvbnQtc3R5bGU6aXRhbGljO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1hdWRpbzpub3QoLm1kLWltYWdlKSxjYW52YXM6bm90KC5tZC1pbWFnZSksZW1iZWQ6bm90KC5tZC1pbWFnZSksaWZyYW1lOm5vdCgubWQtaW1hZ2UpLGltZzpub3QoLm1kLWltYWdlKSxvYmplY3Q6bm90KC5tZC1pbWFnZSksdmlkZW86bm90KC5tZC1pbWFnZSl7aGVpZ2h0OmF1dG99W3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3Vze291dGxpbmU6bm9uZSFpbXBvcnRhbnR9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czo4cHh9Lm1kLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9ue2Rpc3BsYXk6bm9uZX0ubWQtY2FwdGlvbntmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MTdweH0ubWQtYm9keS0xLGJvZHl7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWJvZHktMSwubWQtYm9keS0yLGJvZHl7Zm9udC1zaXplOjE0cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19Lm1kLWJvZHktMntmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MjRweH0ubWQtc3ViaGVhZGluZ3tmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtdGl0bGV7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoyNnB4fS5tZC1oZWFkbGluZXtmb250LXNpemU6MjRweDtsaW5lLWhlaWdodDozMnB4fS5tZC1kaXNwbGF5LTEsLm1kLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowfS5tZC1kaXNwbGF5LTF7Zm9udC1zaXplOjM0cHg7bGluZS1oZWlnaHQ6NDBweH0ubWQtZGlzcGxheS0ye2ZvbnQtc2l6ZTo0NXB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjQ4cHh9Lm1kLWRpc3BsYXktM3tmb250LXNpemU6NTZweDtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDo1OHB4fS5tZC1kaXNwbGF5LTR7Zm9udC1zaXplOjExMnB4O2ZvbnQtd2VpZ2h0OjMwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07bGluZS1oZWlnaHQ6MTEycHh9YTpub3QoLm1kLWJ1dHRvbil7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YTpub3QoLm1kLWJ1dHRvbik6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1idXR0b246Zm9jdXN7b3V0bGluZTpub25lfS5tZC1hcHB7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1hcHAubWQtZml4ZWQgLm1kLWFwcC1zY3JvbGxlcntvdmVyZmxvdzphdXRvfS5tZC1hcHAubWQtZml4ZWQtbGFzdCwubWQtYXBwLm1kLWZsZXhpYmxlLC5tZC1hcHAubWQtb3ZlcmxhcCwubWQtYXBwLm1kLXJldmVhbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5tZC1hcHAubWQtZml4ZWQtbGFzdCAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhciwubWQtYXBwLm1kLXJldmVhbCAubWQtYXBwLXRvb2xiYXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtYXBwLXRvb2xiYXIsLm1kLWFwcC5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhcnttaW4taGVpZ2h0OjB9Lm1kLWFwcC5tZC1mbGV4aWJsZSAubWQtdG9vbGJhci1yb3c6Zmlyc3QtY2hpbGR7ei1pbmRleDoyfS5tZC1hcHAubWQtZmxleGlibGUgLm1kLXRvb2xiYXItcm93Omxhc3QtY2hpbGR7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7ei1pbmRleDoxfS5tZC1hcHAubWQtZmxleGlibGUgLm1kLWRpc3BsYXktMXtwb3NpdGlvbjpmaXhlZH0ubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC10b29sYmFye3otaW5kZXg6MX0ubWQtYXBwLm1kLW92ZXJsYXAgLm1kLWFwcC1jb250ZW50e21hcmdpbjotNjRweCAyNHB4IDI0cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1hcHAtY29udGVudHtwYWRkaW5nOjE2cHh9Lm1kLWFwcC1jb250ZW50PnA6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5tZC1hcHAtY29udGVudD5wOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5tZC1hcHAtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmF1dG87LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnBhZGRpbmctbGVmdH0ubWQtYXBwLWNvbnRhaW5lciwubWQtYXBwLXNjcm9sbGVyey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDE2cHggMTZweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1hcHAubWQtb3ZlcmxhcCAubWQtYXBwLWNvbnRlbnR7bWFyZ2luOi02NHB4IDhweCA4cHh9fUBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsubWQtYXBwLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZCsubWQtYXBwLXNjcm9sbGVyIC5tZC1jb250ZW50e3BhZGRpbmctbGVmdDowO2JvcmRlci1sZWZ0Om5vbmV9Lm1kLWFwcC1jb250ZW50e2JvcmRlci1sZWZ0OjFweCBzb2xpZCB0cmFuc3BhcmVudH19Lm1kLWFwcC1pbnRlcm5hbC1kcmF3ZXIsLm1kLWFwcC1zaWRlLWRyYXdlciAubWQtYXBwLWNvbnRhaW5lcnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLWFwcC1pbnRlcm5hbC1kcmF3ZXIgLm1kLWFwcC1zY3JvbGxlcntvdmVyZmxvdzphdXRvfS5tZC1uby1lbGV2YXRpb257Ym94LXNoYWRvdzpub25lIWltcG9ydGFudH0ubWQtZml4ZWQtbGFzdCAubWQtcmV2ZWFsLWFjdGl2ZSwubWQtZmxleGlibGUgLm1kLXJldmVhbC1hY3RpdmUsLm1kLW92ZXJsYXAgLm1kLXJldmVhbC1hY3RpdmUsLm1kLXJldmVhbCAubWQtcmV2ZWFsLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLGNhbGMoMTAwJSArIDEwcHgpLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLGNhbGMoMTAwJSArIDEwcHgpLDApO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OmJveC1zaGFkb3csdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdyx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6aGVpZ2h0LGJveC1zaGFkb3csdHJhbnNmb3JtfS5tZC1vdmVybGFwIC5tZC1hcHAtdG9vbGJhcntoZWlnaHQ6MTk2cHh9Lm1kLWZpeGVkLWxhc3QtYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OmJveC1zaGFkb3csdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdyx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6aGVpZ2h0LGJveC1zaGFkb3csdHJhbnNmb3JtfS5tZC1vdmVybGFwLW9mZnt6LWluZGV4OjMhaW1wb3J0YW50fS5tZC1hcHAtY29udGVudHtoZWlnaHQ6MTAwJX0ubWQtYXBwLWNvbnRlbnQgLm1kLWNhcmR7bWFyZ2luLXJpZ2h0OjE2cHg7bWFyZ2luLWxlZnQ6MTZweDtvdmVyZmxvdzp2aXNpYmxlfS5tZC1hdXRvY29tcGxldGUgLm1kLW1lbnV7d2lkdGg6MTAwJTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmd7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3otaW5kZXg6OX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO3BhZGRpbmctdG9wOjJweDtib3JkZXItcmFkaXVzOjJweH0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZHt6LWluZGV4OjExfS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveDphZnRlciwubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3g6YmVmb3Jle2Rpc3BsYXk6bm9uZX0ubWQtdG9vbGJhciAubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3h7bWluLWhlaWdodDo0MHB4O2hlaWdodDo0MHB4O21hcmdpbjowO2JveC1zaGFkb3c6bm9uZX0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLW1lbnV7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtZmllbGQubWQtaW5saW5lLm1kLWF1dG9jb21wbGV0ZS1ib3ggLm1kLWlucHV0e3BhZGRpbmctbGVmdDoxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCAubWQtaW5wdXQtYWN0aW9uLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1hdXRvY29tcGxldGUtYm94IC5tZC1pbnB1dC1hY3Rpb257cmlnaHQ6OHB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1pbmxpbmUubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbHttYXJnaW4tdG9wOjJweDtsZWZ0OjE2cHh9Lm1kLWF1dG9jb21wbGV0ZS1ib3gtY29udGVudDphZnRlcntoZWlnaHQ6NnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTE7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Y29udGVudDpcXFwiXFxcIn0ubWQtYXZhdGFye3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOmF1dG87ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXItcmFkaXVzOjQwcHg7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3I7Zm9udC1zaXplOjI0cHg7bGV0dGVyLXNwYWNpbmc6LS4wNWVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubWQtYXZhdGFyLm1kLWxhcmdle21pbi13aWR0aDo2NHB4O21pbi1oZWlnaHQ6NjRweDtib3JkZXItcmFkaXVzOjY0cHg7Zm9udC1zaXplOjMycHh9Lm1kLWF2YXRhci5tZC1sYXJnZSAubWQtaWNvbntmb250LXNpemU6NDBweCFpbXBvcnRhbnR9Lm1kLWF2YXRhci5tZC1zbWFsbHt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JvcmRlci1yYWRpdXM6MjRweDtmb250LXNpemU6MTRweH0ubWQtYXZhdGFyLm1kLXNtYWxsIC5tZC1pY29ue2ZvbnQtc2l6ZToxNnB4IWltcG9ydGFudH0ubWQtYXZhdGFyIC5tZC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30ubWQtYXZhdGFyIC5tZC1yaXBwbGV7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLWJvdHRvbS1iYXJ7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpO3dpZHRoOjEwMCU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtYm90dG9tLWJhcj4ubWQtcmlwcGxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWR7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW17bWluLXdpZHRoOjgwcHg7bWF4LXdpZHRoOjE2OHB4O3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3I7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC44NTcxKSB0cmFuc2xhdGUzRCgwLDRweCwwKTt0cmFuc2Zvcm06c2NhbGUoLjg1NzEpIHRyYW5zbGF0ZTNEKDAsNHB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nLXRvcDo2cHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTJweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWJvdHRvbS1iYXItbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnR7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzIWltcG9ydGFudH0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0Pi5tZC1yaXBwbGUgLm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5OjF9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVte21pbi13aWR0aDo1NnB4O21heC13aWR0aDo5NnB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMSAzMnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6cGFkZGluZyxtaW4td2lkdGgsbWF4LXdpZHRoLGNvbG9yLC13ZWJraXQtYm94LWZsZXg7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nLG1pbi13aWR0aCxtYXgtd2lkdGgsZmxleCxjb2xvcjt0cmFuc2l0aW9uLXByb3BlcnR5OnBhZGRpbmcsbWluLXdpZHRoLG1heC13aWR0aCxmbGV4LGNvbG9yLC13ZWJraXQtYm94LWZsZXg7d2lsbC1jaGFuZ2U6cGFkZGluZyxtaW4td2lkdGgsbWF4LXdpZHRoLGZsZXgsY29sb3J9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1yaXBwbGV7cGFkZGluZzoxNnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKX0ubWQtYm90dG9tLWJhci5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJvdHRvbS1iYXItbGFiZWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC43KSB0cmFuc2xhdGUzZCgwLDZweCwwKTt0cmFuc2Zvcm06c2NhbGUoLjcpIHRyYW5zbGF0ZTNkKDAsNnB4LDApfS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmV7bWluLXdpZHRoOjk2cHg7bWF4LXdpZHRoOjE2OHB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMSA3MnB4fS5tZC1ib3R0b20tYmFyLm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLXJpcHBsZXtwYWRkaW5nOjZweCAwIDEwcHh9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWJvdHRvbS1iYXIubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtYm90dG9tLWJhci1sYWJlbHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwzcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsM3B4LDApfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW17aGVpZ2h0OjU2cHg7bWFyZ2luOjA7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjFlbTt0ZXh0LXRyYW5zZm9ybTpub25lfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLXJpcHBsZXtwYWRkaW5nOjhweCAxMnB4IDEwcHg7dHJhbnNpdGlvbjpwYWRkaW5nIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpwYWRkaW5nfS5tZC1ib3R0b20tYmFyIC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpYztkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYm90dG9tLWJhciAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1ib3R0b20tYmFyLWljb24sLm1kLWJvdHRvbS1iYXIgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYm90dG9tLWJhci1sYWJlbHt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1yaXBwbGV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjQ7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMTAwJSwjMDAwIDApfS5tZC1yaXBwbGUtd2F2ZXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMikgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06c2NhbGUoMikgdHJhbnNsYXRlWigwKX0ubWQtcmlwcGxlLXdhdmUubWQtY2VudGVyZWR7dG9wOjUwJTtsZWZ0OjUwJX0ubWQtcmlwcGxlLXdhdmV+Kntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLXJpcHBsZS1lbnRlci1hY3RpdmV7dHJhbnNpdGlvbjouOHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtcmlwcGxlLWVudGVyLWFjdGl2ZS5tZC1jZW50ZXJlZHt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLXJpcHBsZS1lbnRlcntvcGFjaXR5Oi4yNjstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguMjYpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnNjYWxlKC4yNikgdHJhbnNsYXRlWigwKX0ubWQtYnV0dG9uLC5tZC1idXR0b24tY2xlYW57bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1mYW1pbHk6aW5oZXJpdDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lO3ZlcnRpY2FsLWFsaWduOnRvcDt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWJ1dHRvbnttaW4td2lkdGg6ODhweDtoZWlnaHQ6MzZweDttYXJnaW46NnB4IDhweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7Ym9yZGVyLXJhZGl1czoycHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwfS5tZC1idXR0b246YWN0aXZle291dGxpbmU6bm9uZX0ubWQtYnV0dG9uW2Rpc2FibGVkXXtwb2ludGVyLWV2ZW50czpub25lfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pe2N1cnNvcjpwb2ludGVyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmUsLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6aG92ZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO29wYWNpdHk6LjEyfS5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pLm1kLWZvY3VzZWQubWQtYWNjZW50OmJlZm9yZSwubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1mb2N1c2VkLm1kLXByaW1hcnk6YmVmb3JlLC5tZC1idXR0b246bm90KFtkaXNhYmxlZF0pOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMn0ubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKS5tZC1yaXBwbGUtb2ZmOmFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouMjZ9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyk7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5tZC1idXR0b24ubWQtcGxhaW4ubWQtYnV0dG9uLm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkgLm1kLWljb24tZm9udHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9Lm1kLWJ1dHRvbi5tZC1wbGFpbi5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZXtmaWxsOnJnYmEoMCwwLDAsLjg3KX0ubWQtYnV0dG9uOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MH0ubWQtYnV0dG9uOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjE7b3BhY2l0eTowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3Isb3BhY2l0eTtjb250ZW50OlxcXCIgXFxcIn0ubWQtYnV0dG9uLm1kLWRlbnNle2hlaWdodDozMnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1idXR0b24ubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKXtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pOmFjdGl2ZXtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWJ1dHRvbi5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLXJpcHBsZS1vZmY6YWN0aXZlOmJlZm9yZXtvcGFjaXR5Oi4yfS5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDowfS5tZC1idXR0b24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWQtYnV0dG9uLXNwYWNlZCAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4fS5tZC1mYWIsLm1kLWZhYiAubWQtcmlwcGxlLC5tZC1mYWI6YmVmb3JlLC5tZC1pY29uLWJ1dHRvbiwubWQtaWNvbi1idXR0b24gLm1kLXJpcHBsZSwubWQtaWNvbi1idXR0b246YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5tZC1mYWIubWQtZGVuc2UgLm1kLXJpcHBsZS13YXZlLC5tZC1mYWIubWQtbWluaSAubWQtcmlwcGxlLXdhdmUsLm1kLWljb24tYnV0dG9uIC5tZC1yaXBwbGUtd2F2ZXt0b3A6MCFpbXBvcnRhbnQ7cmlnaHQ6MCFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50O2xlZnQ6MCFpbXBvcnRhbnR9Lm1kLWljb24tYnV0dG9ue3dpZHRoOjQwcHg7bWluLXdpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luOjAgNnB4fS5tZC1pY29uLWJ1dHRvbi5tZC1kZW5zZXt3aWR0aDozMnB4O21pbi13aWR0aDozMnB4O2hlaWdodDozMnB4fS5tZC1pY29uLWJ1dHRvbiAubWQtcmlwcGxlLWVudGVyLWFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9Lm1kLWZhYntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbn0ubWQtZmFiOmFjdGl2ZXtib3gtc2hhZG93OjAgN3B4IDhweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTJweCAxN3B4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjJweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1mYWIubWQtZGVuc2UsLm1kLWZhYi5tZC1taW5pe3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHh9Lm1kLWZhYi5tZC1mYWItdG9wLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1mYWIubWQtZmFiLWJvdHRvbS1sZWZ0LC5tZC1mYWIubWQtZmFiLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tY2VudGVyLC5tZC1mYWIubWQtZmFiLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0b3A6MjRweH0ubWQtZmFiLm1kLWZhYi1ib3R0b20tcmlnaHQsLm1kLWZhYi5tZC1mYWItdG9wLXJpZ2h0e3JpZ2h0OjI0cHh9Lm1kLWZhYi5tZC1mYWItYm90dG9tLWxlZnQsLm1kLWZhYi5tZC1mYWItdG9wLWxlZnR7bGVmdDoyNHB4fS5tZC1mYWIubWQtZml4ZWR7cG9zaXRpb246Zml4ZWR9Lm1kLWZhYiAubWQtcmlwcGxle3BhZGRpbmc6MH0ubWQtYnV0dG9uLWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJke2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3I7d2lsbC1jaGFuZ2U6Y29sb3IsYmFja2dyb3VuZC1jb2xvcn0ubWQtY2FyZC5tZC13aXRoLWhvdmVye2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksYm94LXNoYWRvdyAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93fS5tZC1jYXJkLm1kLXdpdGgtaG92ZXI6aG92ZXJ7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtY2FyZC5tZC1leHBhbmQtYWN0aXZlIC5tZC1jYXJkLWV4cGFuZC10cmlnZ2VyLm1kLWljb24tYnV0dG9uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ubWQtY2FyZCAubWQtc3ViaGVhZCwubWQtY2FyZCAubWQtc3ViaGVhZGluZywubWQtY2FyZCAubWQtdGl0bGV7bWFyZ2luOjA7Zm9udC13ZWlnaHQ6NDAwfS5tZC1jYXJkIC5tZC1zdWJoZWFke29wYWNpdHk6LjU0O2ZvbnQtc2l6ZToxNHB4O2xldHRlci1zcGFjaW5nOi4wMWVtO2xpbmUtaGVpZ2h0OjIwcHh9Lm1kLWNhcmQgLm1kLXN1YmhlYWQrLm1kLXRpdGxle21hcmdpbi10b3A6NHB4fS5tZC1jYXJkIC5tZC10aXRsZXtmb250LXNpemU6MjRweDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjMycHh9Lm1kLWNhcmQtYXJlYSwubWQtY2FyZD4ubWQtY2FyZC1hcmVhOm5vdCg6bGFzdC1jaGlsZCl7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpOmFmdGVye2hlaWdodDoxcHg7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQ+Lm1kLWNhcmQtYXJlYTpub3QoOmxhc3QtY2hpbGQpOm5vdCgubWQtaW5zZXQpOmFmdGVye3JpZ2h0OjA7bGVmdDowfS5tZC1jYXJkPi5tZC1jYXJkLWFyZWE6bm90KDpsYXN0LWNoaWxkKS5tZC1pbnNldDphZnRlcntyaWdodDoxNnB4O2xlZnQ6MTZweH0ubWQtY2FyZC1oZWFkZXJ7cGFkZGluZzoxNnB4fS5tZC1jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZD4ubWQtY2FyZC1oZWFkZXItdGV4dD4ubWQtdGl0bGU6Zmlyc3QtY2hpbGQsLm1kLWNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkPi5tZC10aXRsZTpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjhweH0ubWQtY2FyZC1oZWFkZXI6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjhweH0ubWQtY2FyZC1oZWFkZXIubWQtY2FyZC1oZWFkZXItZmxleHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtaGVhZGVyKy5tZC1jYXJkLWNvbnRlbnR7cGFkZGluZy10b3A6MH0ubWQtY2FyZC1oZWFkZXIrLm1kLWNhcmQtYWN0aW9uczpub3QoOmxhc3QtY2hpbGQpe3BhZGRpbmc6MCA4cHh9Lm1kLWNhcmQtaGVhZGVyPmltZ3tib3JkZXItcmFkaXVzOjUwJX0ubWQtY2FyZC1oZWFkZXIgLm1kLWF2YXRhciwubWQtY2FyZC1oZWFkZXI+aW1ne21hcmdpbi1yaWdodDoxNnB4O2Zsb2F0OmxlZnR9Lm1kLWNhcmQtaGVhZGVyIC5tZC1hdmF0YXJ+Lm1kLXRpdGxlLC5tZC1jYXJkLWhlYWRlcj5pbWd+Lm1kLXRpdGxle2ZvbnQtc2l6ZToxNHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC1zdWJoZWFkLC5tZC1jYXJkLWhlYWRlciAubWQtYXZhdGFyfi5tZC10aXRsZSwubWQtY2FyZC1oZWFkZXI+aW1nfi5tZC1zdWJoZWFkLC5tZC1jYXJkLWhlYWRlcj5pbWd+Lm1kLXRpdGxle2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4fS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0Oi00cHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDo4cHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLWhlYWRlci10ZXh0ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhe3dpZHRoOjgwcHg7aGVpZ2h0OjgwcHg7bWFyZ2luLWxlZnQ6MTZweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgODBweH0ubWQtY2FyZC1oZWFkZXIgLm1kLWNhcmQtbWVkaWEubWQtbWVkaXVte3dpZHRoOjEyMHB4O2hlaWdodDoxMjBweDstd2Via2l0LWJveC1mbGV4OjA7ZmxleDowIDAgMTIwcHh9Lm1kLWNhcmQtaGVhZGVyIC5tZC1jYXJkLW1lZGlhLm1kLWJpZ3t3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHg7LXdlYmtpdC1ib3gtZmxleDowO2ZsZXg6MCAwIDE2MHB4fS5tZC1jYXJkLW1lZGlhe3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTl7b3ZlcmZsb3c6aGlkZGVufS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTE2LTk6YmVmb3Jle3dpZHRoOjEwMCU7cGFkZGluZy10b3A6NTYuMjUlO2Rpc3BsYXk6YmxvY2s7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMTYtOSBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtM3tvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tNC0zOmJlZm9yZXt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjc1JTtkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTQtMyBpbWd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2xlZnQ6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5tZC1jYXJkLW1lZGlhLm1kLXJhdGlvLTEtMXtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtbWVkaWEubWQtcmF0aW8tMS0xOmJlZm9yZXt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjEwMCU7ZGlzcGxheTpibG9jaztjb250ZW50OlxcXCIgXFxcIn0ubWQtY2FyZC1tZWRpYS5tZC1yYXRpby0xLTEgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7cmlnaHQ6MDtsZWZ0OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1oZWFkZXJ7cGFkZGluZy10b3A6MjRweH0ubWQtY2FyZC1tZWRpYSsubWQtY2FyZC1jb250ZW50Omxhc3QtY2hpbGR7cGFkZGluZy1ib3R0b206MTZweH0ubWQtY2FyZC1tZWRpYSBpbWd7d2lkdGg6MTAwJX0ubWQtY2FyZC1tZWRpYS1hY3Rpb25ze3BhZGRpbmc6MTZweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1tZWRpYXttYXgtd2lkdGg6MjQwcHg7bWF4LWhlaWdodDoyNDBweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxfS5tZC1jYXJkLW1lZGlhLWFjdGlvbnMgLm1kLWNhcmQtYWN0aW9uc3ttYXJnaW4tbGVmdDoxNnB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWNhcmQtbWVkaWEtYWN0aW9ucyAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW46OHB4IDAgMH0ubWQtY2FyZC1tZWRpYS1jb3Zlcntwb3NpdGlvbjpyZWxhdGl2ZTtjb2xvcjojZmZmfS5tZC1jYXJkLW1lZGlhLWNvdmVyLm1kLXNvbGlkIC5tZC1jYXJkLWFyZWF7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41NCl9Lm1kLWNhcmQtbWVkaWEtY292ZXIubWQtdGV4dC1zY3JpbSAubWQtY2FyZC1iYWNrZHJvcHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjF9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtYXJlYXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjJ9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtYXJlYSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1oZWFkZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWhlYWRlcisubWQtY2FyZC1hY3Rpb25ze3BhZGRpbmctdG9wOjB9Lm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLXN1YmhlYWR7b3BhY2l0eToxfS5tZC1jYXJkLW1lZGlhLWNvdmVyIC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSwubWQtY2FyZC1tZWRpYS1jb3ZlciAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksLm1kLWNhcmQtbWVkaWEtY292ZXIgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb257Y29sb3I6I2ZmZiFpbXBvcnRhbnR9Lm1kLWNhcmQtY29udGVudHtwYWRkaW5nOjE2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjJweH0ubWQtY2FyZC1jb250ZW50Omxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbToyNHB4fS5tZC1jYXJkLWV4cGFuZHtvdmVyZmxvdzpoaWRkZW59Lm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1leHBhbmQtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lm1kLWNhcmQtZXhwYW5kLXRyaWdnZXIubWQtaWNvbi1idXR0b257dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5tZC1jYXJkLWV4cGFuZC1jb250ZW50e292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksbWFyZ2luLXRvcDt3aWxsLWNoYW5nZTpvcGFjaXR5LG1hcmdpbi10b3B9Lm1kLWNhcmQtYWN0aW9uc3twYWRkaW5nOjhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1jYXJkLWFjdGlvbnMubWQtYWxpZ25tZW50LXJpZ2h0ey13ZWJraXQtYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubWQtY2FyZC1hY3Rpb25zLm1kLWFsaWdubWVudC1sZWZ0ey13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm1kLWNhcmQtYWN0aW9ucy5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbnstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9ue21hcmdpbjowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbisubWQtYnV0dG9ue21hcmdpbi1sZWZ0OjRweH0ubWQtY2hlY2tib3h7d2lkdGg6YXV0bzttYXJnaW46MTZweCAxNnB4IDE2cHggMDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGVja2JveDpub3QoLm1kLWRpc2FibGVkKSwubWQtY2hlY2tib3g6bm90KC5tZC1kaXNhYmxlZCkgLm1kLWNoZWNrYm94LWxhYmVse2N1cnNvcjpwb2ludGVyfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVye3dpZHRoOjIwcHg7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsLm1kLWNoZWNrYm94IC5tZC1jaGVja2JveC1jb250YWluZXI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNTUsMCwuNTUsLjIpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2JvcmRlci1yYWRpdXM6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt3aWR0aDo2cHg7aGVpZ2h0OjEzcHg7dG9wOjA7bGVmdDo1cHg7ei1pbmRleDo2O2JvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDowO2JvcmRlci1sZWZ0OjA7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZykgc2NhbGUzRCguMTUsLjE1LDEpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoLjE1LC4xNSwxKX0ubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lciAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtY29udGFpbmVyIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1jaGVja2JveCAubWQtY2hlY2tib3gtbGFiZWx7aGVpZ2h0OjIwcHg7cGFkZGluZy1sZWZ0OjE2cHg7cG9zaXRpb246cmVsYXRpdmU7bGluZS1oZWlnaHQ6MjBweH0ubWQtY2hlY2tib3gubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVye29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoMSwxLDEpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHNjYWxlM0QoMSwxLDEpO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1jaGVja2JveC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1jaGVja2JveC1jb250YWluZXJ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0ubWQtY2hlY2tib3gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtY2hpcHMubWQtZmllbGR7cGFkZGluZy10b3A6MTJweDtmbGV4LXdyYXA6d3JhcH0ubWQtY2hpcHMubWQtZmllbGQubWQtaGFzLXZhbHVlIGxhYmVse3RvcDotNnB4fS5tZC1jaGlwcy5tZC1maWVsZCAubWQtY2hpcHttYXJnaW4tYm90dG9tOjRweH0ubWQtY2hpcHMubWQtZmllbGQgLm1kLWNoaXA6bGFzdC1vZi10eXBle21hcmdpbi1yaWdodDo4cHh9Lm1kLWNoaXBzLm1kLWZpZWxkIC5tZC1pbnB1dHttaW4td2lkdGg6MTI4cHh9Lm1kLWZpZWxke3dpZHRoOjEwMCU7bWluLWhlaWdodDo0OHB4O21hcmdpbjo0cHggMCAyNHB4O3BhZGRpbmctdG9wOjE2cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6aW5oZXJpdH0ubWQtZmllbGQ6YWZ0ZXIsLm1kLWZpZWxkOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2xlZnQ6MDt6LWluZGV4OjE7dHJhbnNpdGlvbjpib3JkZXIgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt0cmFuc2l0aW9uOmJvcmRlciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zczt0cmFuc2l0aW9uOmJvcmRlciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zcywtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1maWVsZDphZnRlcntoZWlnaHQ6MXB4fS5tZC1maWVsZDpiZWZvcmV7aGVpZ2h0OjJweDt6LWluZGV4OjI7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMTIpO3RyYW5zZm9ybTpzY2FsZVgoLjEyKX0ubWQtZmllbGQgbGFiZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIzcHg7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3M7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjBweH0ubWQtZmllbGQgLm1kLWlucHV0LC5tZC1maWVsZCAubWQtdGV4dGFyZWF7d2lkdGg6MTAwJTtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jazstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmZvbnQtc2l6ZSxwYWRkaW5nLXRvcCxjb2xvcjtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcHg7bGluZS1oZWlnaHQ6MzJweH0ubWQtZmllbGQgLm1kLWlucHV0W3R5cGU9ZGF0ZV0sLm1kLWZpZWxkIC5tZC10ZXh0YXJlYVt0eXBlPWRhdGVde2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZCAubWQtaW5wdXRbZGlzYWJsZWRdLC5tZC1maWVsZCAubWQtdGV4dGFyZWFbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fS5tZC1maWVsZCAubWQtaW5wdXQ6Zm9jdXMsLm1kLWZpZWxkIC5tZC10ZXh0YXJlYTpmb2N1c3tvdXRsaW5lOm5vbmV9Lm1kLWZpZWxkIC5tZC1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwubWQtZmllbGQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2ZvbnQtc2l6ZToxNnB4O3RleHQtc2hhZG93Om5vbmU7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6aW5pdGlhbDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmZvbnQtc2l6ZSxjb2xvcn0ubWQtZmllbGQgLm1kLXRleHRhcmVhe21pbi1oZWlnaHQ6MzJweDttYXgtaGVpZ2h0OjIzMHB4O3BhZGRpbmc6NXB4IDA7cmVzaXplOm5vbmU7bGluZS1oZWlnaHQ6MS4zZW19Lm1kLWZpZWxkIC5tZC1jb3VudCwubWQtZmllbGQgLm1kLWVycm9yLC5tZC1maWVsZCAubWQtaGVscGVyLXRleHR7aGVpZ2h0OjIwcHg7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0yMnB4O2ZvbnQtc2l6ZToxMnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1maWVsZCAubWQtZXJyb3J7ZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7bGVmdDowO29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKX0ubWQtZmllbGQgLm1kLWNvdW50e3JpZ2h0OjB9Lm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb257d2lkdGg6MzJweDttaW4td2lkdGg6MzJweDtoZWlnaHQ6MzJweDttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTZweDtyaWdodDowO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC1maWVsZCAubWQtaW5wdXQtYWN0aW9uLm1kLWlucHV0LWFjdGlvbi1lbnRlci1hY3RpdmUsLm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb24ubWQtaW5wdXQtYWN0aW9uLWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjB9Lm1kLWZpZWxkIC5tZC1pbnB1dC1hY3Rpb24ubWQtaW5wdXQtYWN0aW9uLWVudGVyLXRve29wYWNpdHk6MX0ubWQtZmllbGQ+Lm1kLWljb257bWFyZ2luOjRweCBhdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mzt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtZmllbGQ+Lm1kLWljb246bGFzdC1vZi10eXBlOm5vdCg6Zmlyc3QtY2hpbGQpOmFmdGVye2Rpc3BsYXk6bm9uZX0ubWQtZmllbGQ+Lm1kLWljb246YWZ0ZXJ7d2lkdGg6MzdweDtoZWlnaHQ6NHB4O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTFweDtib3R0b206LTVweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtjb250ZW50OlxcXCJcXFwifS5tZC1maWVsZD4ubWQtaWNvbn5sYWJlbHtsZWZ0OjM2cHh9Lm1kLWZpZWxkPi5tZC1pY29ufi5tZC1maWxlLC5tZC1maWVsZD4ubWQtaWNvbn4ubWQtaW5wdXQsLm1kLWZpZWxkPi5tZC1pY29ufi5tZC10ZXh0YXJlYXttYXJnaW4tbGVmdDoxMnB4fS5tZC1maWVsZCsubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpe21hcmdpbi10b3A6MzZweH0ubWQtZmllbGQubWQtaGFzLXBsYWNlaG9sZGVyIGxhYmVse3BvaW50ZXItZXZlbnRzOmF1dG87dG9wOjEwcHg7b3BhY2l0eTowO2ZvbnQtc2l6ZToxMnB4fS5tZC1maWVsZC5tZC1oYXMtcGxhY2Vob2xkZXIgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1oYXMtcGxhY2Vob2xkZXIgLm1kLXRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YWZ0ZXIsLm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7aGVpZ2h0OmF1dG87cG9pbnRlci1ldmVudHM6bm9uZTt0b3A6MDtib3R0b206MDstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO2JhY2tncm91bmQ6bm9uZSFpbXBvcnRhbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjNweH0ubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZXtib3JkZXItd2lkdGg6MnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgbGFiZWx7dG9wOjE2cHg7bGVmdDoxNnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLXRleHRhcmVhe21pbi1oZWlnaHQ6MTAwcHg7cGFkZGluZzowIDE2cHg7cmVzaXplOnZlcnRpY2FsfS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk+Lm1kLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjZweDtyaWdodDo2cHg7ei1pbmRleDozfS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLWNvdW50e3JpZ2h0OjZweDtib3R0b206MnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykgLm1kLWNsZWFye3RvcDo2cHg7cmlnaHQ6NnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtZm9jdXNlZCBsYWJlbCwubWQtZmllbGQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpLm1kLWhhcy12YWx1ZSBsYWJlbHt0b3A6NnB4fS5tZC1maWVsZC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3JvdykubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsLm1kLWZpZWxkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KS5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhe3BhZGRpbmctdG9wOjEwcHh9Lm1kLWZpZWxkLm1kLWhhcy1maWxlOmFmdGVyLC5tZC1maWVsZC5tZC1oYXMtZmlsZTpiZWZvcmUsLm1kLWZpZWxkLm1kLWhhcy1maWxlIGxhYmVse2xlZnQ6MzZweH0ubWQtZmllbGQubWQtaGFzLWZpbGUgLm1kLWlucHV0e21hcmdpbi1sZWZ0OjEycHh9Lm1kLWZpZWxkLm1kLWZvY3VzZWQ6YmVmb3JlLC5tZC1maWVsZC5tZC1oaWdobGlnaHQ6YmVmb3Jle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmJvcmRlcixvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6Ym9yZGVyLG9wYWNpdHksdHJhbnNmb3JtLC13ZWJraXQtdHJhbnNmb3JtfS5tZC1maWVsZC5tZC1mb2N1c2VkIGxhYmVsLC5tZC1maWVsZC5tZC1oYXMtdmFsdWUgbGFiZWx7cG9pbnRlci1ldmVudHM6YXV0bzt0b3A6MDtvcGFjaXR5OjE7Zm9udC1zaXplOjEycHh9Lm1kLWZpZWxkLm1kLWZvY3VzZWQgLm1kLWlucHV0LC5tZC1maWVsZC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwubWQtZmllbGQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCwubWQtZmllbGQubWQtaGFzLXZhbHVlIC5tZC10ZXh0YXJlYXtmb250LXNpemU6MTZweH0ubWQtZmllbGQubWQtaW5saW5lIGxhYmVse3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWZpZWxkLm1kLWlubGluZS5tZC1mb2N1c2VkIGxhYmVse3RvcDoyM3B4O2ZvbnQtc2l6ZToxNnB4fS5tZC1maWVsZC5tZC1pbmxpbmUubWQtaGFzLXZhbHVlIGxhYmVse29wYWNpdHk6MH0ubWQtZmllbGQubWQtZGlzYWJsZWQ6YWZ0ZXJ7YmFja2dyb3VuZDowIDEwMCUgcmVwZWF0LXg7YmFja2dyb3VuZC1zaXplOjRweCAxcHh9Lm1kLWZpZWxkLm1kLWhhcy1wYXNzd29yZCAubWQtdG9nZ2xlLXBhc3N3b3Jke21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Ym90dG9tOi0ycHh9Lm1kLWZpZWxkLm1kLWhhcy1wYXNzd29yZCAubWQtdG9nZ2xlLXBhc3N3b3JkIHN2Z3t3aWR0aDoyMnB4O2hlaWdodDoyMnB4fS5tZC1maWVsZC5tZC1jbGVhcmFibGUgLm1kLWlucHV0e3BhZGRpbmctcmlnaHQ6MzBweH1ALXdlYmtpdC1rZXlmcmFtZXMgYXsxMCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTFweCwwLDApfTMwJSw3MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCl9NDAlLDYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNHB4LDAsMCl9fUBrZXlmcmFtZXMgYXsxMCUsOTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTFweCwwLDApfTMwJSw3MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNHB4LDAsMCl9NDAlLDYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNHB4LDAsMCl9fS5tZC1maWVsZC5tZC1pbnZhbGlkLm1kLWhhcy12YWx1ZSBsYWJlbDpub3QoOmZvY3VzKXstd2Via2l0LWFuaW1hdGlvbjphIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RoO2FuaW1hdGlvbjphIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RoOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47LXdlYmtpdC1wZXJzcGVjdGl2ZToxMDAwcHg7cGVyc3BlY3RpdmU6MTAwMHB4fS5tZC1maWVsZC5tZC1pbnZhbGlkLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmV7Ym9yZGVyLXdpZHRoOjJweH0ubWQtZmllbGQubWQtaW52YWxpZCAubWQtZXJyb3J7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9Lm1kLWZpZWxkLm1kLWludmFsaWQgLm1kLWhlbHBlci10ZXh0e29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKX0ubWQtZmllbGQubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtaWNvbnt3aWR0aDoyNHB4O21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZvbnQtc2l6ZToyNHB4IWltcG9ydGFudDttYXJnaW46YXV0bztkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlfS5tZC1pY29uLm1kLXNpemUtMnh7d2lkdGg6NDhweDttaW4td2lkdGg6NDhweDtoZWlnaHQ6NDhweDtmb250LXNpemU6NDhweCFpbXBvcnRhbnR9Lm1kLWljb24ubWQtc2l6ZS0zeHt3aWR0aDo3MnB4O21pbi13aWR0aDo3MnB4O2hlaWdodDo3MnB4O2ZvbnQtc2l6ZTo3MnB4IWltcG9ydGFudH0ubWQtaWNvbi5tZC1zaXplLTR4e3dpZHRoOjk2cHg7bWluLXdpZHRoOjk2cHg7aGVpZ2h0Ojk2cHg7Zm9udC1zaXplOjk2cHghaW1wb3J0YW50fS5tZC1pY29uLm1kLXNpemUtNXh7d2lkdGg6MTIwcHg7bWluLXdpZHRoOjEyMHB4O2hlaWdodDoxMjBweDtmb250LXNpemU6MTIwcHghaW1wb3J0YW50fS5tZC1pY29uLWltYWdlIHN2Z3toZWlnaHQ6MTAwJTstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO3RyYW5zaXRpb246ZmlsbCAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWljb257dHJhbnNpdGlvbjpjb2xvciAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlyZWN0aW9uOmx0cjtmb250LWZhbWlseTpNYXRlcmlhbCBJY29uczstd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczpcXFwibGlnYVxcXCI7Zm9udC1mZWF0dXJlLXNldHRpbmdzOlxcXCJsaWdhXFxcIjtmb250LXN0eWxlOm5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1oZWlnaHQ6MTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7dGV4dC10cmFuc2Zvcm06bm9uZTt3b3JkLXdyYXA6bm9ybWFsO3doaXRlLXNwYWNlOm5vd3JhcDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX0ubWQtc3ZnLWxvYWRlcntkaXNwbGF5OmJsb2NrfS5tZC1zdmctbG9hZGVyIHN2Z3t3aWR0aDoxMDAlfS5tZC1jaGlwe2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2N1cnNvcjpkZWZhdWx0O2JvcmRlci1yYWRpdXM6MzJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSxib3gtc2hhZG93LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93O3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZC1jb2xvcixjb2xvcixvcGFjaXR5LHRyYW5zZm9ybSxib3gtc2hhZG93LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsY29sb3Isb3BhY2l0eSx0cmFuc2Zvcm0sYm94LXNoYWRvdztmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozMnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWNoaXA6Zm9jdXN7b3V0bGluZTpub25lfS5tZC1jaGlwLm1kLWNoaXAtZW50ZXItYWN0aXZlLC5tZC1jaGlwLm1kLWNoaXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2Zvcm1aKDApIHNjYWxlKC44KTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSguOCl9Lm1kLWNoaXAubWQtY2hpcC1lbnRlci10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKTt0cmFuc2Zvcm06dHJhbnNmb3JtWigwKSBzY2FsZSgxKX0ubWQtY2hpcC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6YWN0aXZlLC5tZC1jaGlwLm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTphY3RpdmUsLm1kLWNoaXAubWQtZm9jdXNlZHtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWNoaXAubWQtY2xpY2thYmxle3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcn0ubWQtY2hpcC5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtY2hpcC5tZC1kZWxldGFibGV7cGFkZGluZy1yaWdodDozMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGV7cGFkZGluZy1yaWdodDowfS5tZC1jaGlwLm1kLWRlbGV0YWJsZS5tZC1jbGlja2FibGU+Lm1kLXJpcHBsZXtwYWRkaW5nLXJpZ2h0OjMycHh9Lm1kLWNoaXAubWQtZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9Lm1kLWNoaXArLm1kLWNoaXB7bWFyZ2luLWxlZnQ6NHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9ue3dpZHRoOjE4cHg7bWluLXdpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDo3cHg7ei1pbmRleDo1Oy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTUwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwtNTAlLDApO3RyYW5zaXRpb24tZHVyYXRpb246LjNzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO2ZvbnQtc2l6ZToxOHB4fS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1yaXBwbGV7cGFkZGluZzowfS5tZC1jaGlwIC5tZC1idXR0b24ubWQtaW5wdXQtYWN0aW9uIC5tZC1idXR0b24tY29udGVudHtoZWlnaHQ6MTRweH0ubWQtY2hpcCAubWQtYnV0dG9uLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbnt3aWR0aDoxNHB4O21pbi13aWR0aDoxNHB4O2hlaWdodDoxNHB4O2ZvbnQtc2l6ZToxNHB4IWltcG9ydGFudDt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm1kLWNoaXAgLm1kLWJ1dHRvbi5tZC1pbnB1dC1hY3Rpb24gLm1kLWljb24gc3Zne3RyYW5zaXRpb24tZHVyYXRpb246LjNzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1kYXRlcGlja2VyLW92ZXJsYXl7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyIC5tZC1kYXRlLWljb257Y3Vyc29yOnBvaW50ZXJ9Lm1kLWRhdGVwaWNrZXIgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yLC5tZC1kYXRlcGlja2VyIGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtY2xlYXItYnV0dG9uLC5tZC1kYXRlcGlja2VyIGlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b257ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1vdmVybGF5e29wYWNpdHk6MX19Lm1kLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDo0O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7d2lsbC1jaGFuZ2U6b3BhY2l0eX0ubWQtb3ZlcmxheS5tZC1maXhlZCxib2R5Pi5tZC1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkfS5tZC1vdmVybGF5LWVudGVyLC5tZC1vdmVybGF5LWxlYXZlLWFjdGl2ZXtvcGFjaXR5OjB9Lm1kLWRhdGVwaWNrZXItZGlhbG9ne2JveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSx0cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGxlZnQsdG9wfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowfS5tZC1kYXRlcGlja2VyLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjkpO3RyYW5zZm9ybTpzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLWVudGVyIC5tZC1kYXRlcGlja2VyLWJvZHkgLm1kLWRhdGVwaWNrZXItY2FsZW5kYXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMTAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDEwJSwwKX0ubWQtZGF0ZXBpY2tlci1oZWFkZXJ7bWluLXdpZHRoOjE1MHB4O3BhZGRpbmc6MTZweH0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3R7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNTQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MjRweH0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXItZGF0ZS1zZWxlY3R7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTouNTQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtmb250LXNpemU6MzJweDtmb250LXdlaWdodDo5MDA7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDoxLjJlbX0ubWQtZGF0ZXBpY2tlci1oZWFkZXIgLm1kLWRhdGVwaWNrZXItZGF5bmFtZXtkaXNwbGF5OmJsb2NrfS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtc2VsZWN0ZWR7b3BhY2l0eToxfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6MzIwcHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246d2lkdGggLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOndpZHRofS5tZC1kYXRlcGlja2VyLWJvZHkgLm1kLWJ1dHRvbnttYXJnaW46MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcntwYWRkaW5nOjhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmFmdGVyLC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czpub25lO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmFmdGVye2xlZnQ6MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlcjpiZWZvcmV7cmlnaHQ6MH0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlciAubWQtYnV0dG9ue3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDozfS5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyLWVudGVyIC5tZC1idXR0b246Zmlyc3QtY2hpbGQsLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXItbGVhdmUtYWN0aXZlIC5tZC1idXR0b246Zmlyc3QtY2hpbGR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1MCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1MCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1ib2R5LWhlYWRlci1lbnRlciAubWQtYnV0dG9uOmxhc3QtY2hpbGQsLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXItbGVhdmUtYWN0aXZlIC5tZC1idXR0b246bGFzdC1jaGlsZHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxNTAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDE1MCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1ib2R5LWNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246aGVpZ2h0IC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1kYXRlcGlja2VyLXBhbmVse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLWRhdGVwaWNrZXItdmlldy1lbnRlciwubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1kYXRlcGlja2VyLXZpZXctbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLXByZXZpb3VzIC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItY2FsZW5kYXIubWQtcHJldmlvdXMgLm1kLWRhdGVwaWNrZXItbW9udGgtZW50ZXIgLm1kLWRhdGVwaWNrZXItbW9udGgtdHJpZ2dlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtMzAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0zMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyLC5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLXByZXZpb3VzIC5tZC1kYXRlcGlja2VyLW1vbnRoLWxlYXZlLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgxMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKX0ubWQtZGF0ZXBpY2tlci1jYWxlbmRhci5tZC1uZXh0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWVudGVyIC5tZC1kYXRlcGlja2VyLW1vbnRoLXRyaWdnZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMzAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDMwJSwwLDApfS5tZC1kYXRlcGlja2VyLWNhbGVuZGFyLm1kLW5leHQgLm1kLWRhdGVwaWNrZXItbW9udGgtbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC0xMDAlLDAsMCl9Lm1kLWRhdGVwaWNrZXItbW9udGh7dG9wOjhweDtib3R0b206YXV0bzstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGggLm1kLWRhdGVwaWNrZXItbW9udGgtdHJpZ2dlcnttaW4taGVpZ2h0OjMycHg7bWFyZ2luOjAgNDZweCAxMHB4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7Ym9yZGVyLXJhZGl1czowO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjQ1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNDVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40NXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjQ1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLWRhdGVwaWNrZXItd2Vla3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1kYXRlcGlja2VyLXdlZWsgc3Bhbnstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246Y2VudGVyfS5tZC1kYXRlcGlja2VyLWRheXN7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXksLm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1lbXB0eXttYXJnaW46MXB4IDA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWZsZXg6MDtmbGV4OjAgMSAxNC4yODU3MSV9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1kYXktYnV0dG9ue3dpZHRoOjMwcHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozMHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGF5cyAubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCwubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLXRvZGF5e2ZvbnQtd2VpZ2h0OjcwMH0ubWQtZGF0ZXBpY2tlci1kYXlzIC5tZC1kYXRlcGlja2VyLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3J7cGFkZGluZzo2cHggOHB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym90dG9tOmF1dG87dHJhbnNpdGlvbjouMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9Lm1kLWRhdGVwaWNrZXItbW9udGgtc2VsZWN0b3IubWQtZGF0ZXBpY2tlci12aWV3LWVudGVyLC5tZC1kYXRlcGlja2VyLW1vbnRoLXNlbGVjdG9yLm1kLWRhdGVwaWNrZXItdmlldy1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX0ubWQtZGF0ZXBpY2tlci1tb250aC1zZWxlY3RvciAubWQtZGF0ZXBpY2tlci15ZWFyLXRyaWdnZXJ7d2lkdGg6MTAwJTttYXJnaW46MCAwIDhweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxIDEgMTAwJX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b24sLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b257aGVpZ2h0OjM2cHg7bWFyZ2luOjNweCAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC13ZWlnaHQ6NTAwO3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b257LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MSAxIDMzLjMzMzMlO2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3J7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmF1dG87Ym90dG9tOjUycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWR9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3Rvci5tZC1kYXRlcGlja2VyLXZpZXctZW50ZXIsLm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3Rvci5tZC1kYXRlcGlja2VyLXZpZXctbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLWRhdGVwaWNrZXIteWVhci1zZWxlY3RvciAubWQtYnV0dG9ue21pbi1oZWlnaHQ6MzZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbntmb250LXNpemU6MTZweH0ubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVke2ZvbnQtc2l6ZToyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtZGF0ZXBpY2tlci1kaWFsb2d7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXJ9Lm1kLWRhdGVwaWNrZXItZGlhbG9nLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguOSl9Lm1kLWRhdGVwaWNrZXItaGVhZGVye21pbi13aWR0aDphdXRvO3BhZGRpbmc6MTZweCAyMHB4fS5tZC1kYXRlcGlja2VyLWhlYWRlciAubWQtZGF0ZXBpY2tlci1kYXluYW1le2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1kYXRlcGlja2VyLWJvZHl7d2lkdGg6Mjk2cHh9Lm1kLWRhdGVwaWNrZXItbW9udGh7cGFkZGluZzowIDZweH19Lm1kLXBvcG92ZXIubWQtcmVuZGVyaW5ne29wYWNpdHk6MDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO21pbi13aWR0aDoyODBweDttYXgtd2lkdGg6ODAlO21heC1oZWlnaHQ6ODAlO21hcmdpbjphdXRvO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpjb2x1bW47b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmZpeGVkO3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDoxMDtib3JkZXItcmFkaXVzOjJweDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSx0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxsZWZ0LHRvcH0ubWQtZGlhbG9nPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nPi5tZC1kaWFsb2ctY29udGVudCwubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nPi5tZC1kaWFsb2ctdGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMjVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtfS5tZC1kaWFsb2ctZW50ZXItYWN0aXZlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSguOSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC45KX0ubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLWFjdGlvbnMsLm1kLWRpYWxvZy1lbnRlci1hY3RpdmU+Lm1kLWRpYWxvZy1jb250ZW50LC5tZC1kaWFsb2ctZW50ZXItYWN0aXZlPi5tZC1kaWFsb2ctdGFicywubWQtZGlhbG9nLWVudGVyLWFjdGl2ZT4ubWQtZGlhbG9nLXRpdGxlLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctYWN0aW9ucywubWQtZGlhbG9nLWxlYXZlLWFjdGl2ZT4ubWQtZGlhbG9nLWNvbnRlbnQsLm1kLWRpYWxvZy1sZWF2ZS1hY3RpdmU+Lm1kLWRpYWxvZy10YWJzLC5tZC1kaWFsb2ctbGVhdmUtYWN0aXZlPi5tZC1kaWFsb2ctdGl0bGV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC45NSkgdHJhbnNsYXRlM0QoMCwxMCUsMCk7dHJhbnNmb3JtOnNjYWxlKC45NSkgdHJhbnNsYXRlM0QoMCwxMCUsMCl9Lm1kLWRpYWxvZy1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OmNvbHVtbn0ubWQtZGlhbG9nLWNvbnRhaW5lciwubWQtZGlhbG9nLWNvbnRhaW5lciAubWQtdGFic3std2Via2l0LWJveC1mbGV4OjE7ZmxleDoxfS5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJzLW5hdmlnYXRpb257cGFkZGluZzowIDEycHh9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kaWFsb2ctY29udGFpbmVyIC5tZC10YWJ7cGFkZGluZzoxMnB4fS5tZC1kaWFsb2ctZnVsbHNjcmVlbnttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7cG9zaXRpb246Zml4ZWQ7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9Lm1kLWRpYWxvZy1mdWxsc2NyZWVuLm1kLWRpYWxvZy1lbnRlcntvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwzMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMzAlLDApfS5tZC1kaWFsb2ctZnVsbHNjcmVlbi5tZC1kaWFsb2ctbGVhdmUtYWN0aXZle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX19Lm1kLWRpYWxvZy10aXRsZXttYXJnaW4tYm90dG9tOjIwcHg7cGFkZGluZzoyNHB4IDI0cHggMH0ubWQtZGlhbG9nLWNvbnRlbnR7cGFkZGluZzowIDI0cHggMjRweDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6YXV0bztvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC1kaWFsb2ctY29udGVudDpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDoyNHB4fS5tZC1kaWFsb2ctY29udGVudCBwOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCl7bWFyZ2luLXRvcDowfS5tZC1kaWFsb2ctY29udGVudCBwOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tYm90dG9tOjB9Lm1kLWRpYWxvZy1hY3Rpb25ze21pbi1oZWlnaHQ6NTJweDtwYWRkaW5nOjhweCA4cHggOHB4IDI0cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cG9zaXRpb246cmVsYXRpdmV9Lm1kLWRpYWxvZy1hY3Rpb25zOmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMXB4O3JpZ2h0OjA7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9ue21pbi13aWR0aDo2NHB4O21hcmdpbjowfS5tZC1kaWFsb2ctYWN0aW9ucyAubWQtYnV0dG9uKy5tZC1idXR0b257bWFyZ2luLWxlZnQ6OHB4fS5tZC1kaXZpZGVye2hlaWdodDoxcHg7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6YmxvY2s7Ym9yZGVyOjA7dHJhbnNpdGlvbjptYXJnaW4tbGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6bWFyZ2luLWxlZnR9Lm1kLWRpdmlkZXIubWQtaW5zZXR7bWFyZ2luLWxlZnQ6NzJweH0ubWQtZHJhd2Vye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4Ojc7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTEwMCUsMCwwKTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvdzt3aWR0aDo0MDBweDttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDU2cHgpO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0b30ubWQtZHJhd2VyLm1kLXJpZ2h0e3JpZ2h0OjA7bGVmdDphdXRvOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMTAwJSwwLDApfS5tZC1kcmF3ZXIubWQtZml4ZWR7cG9zaXRpb246Zml4ZWR9Lm1kLWRyYXdlci5tZC1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9Lm1kLWRyYXdlci5tZC10ZW1wb3JhcnkrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXRlbXBvcmFyeS5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50Om5vdCgubWQtYWN0aXZlKSsubWQtYXBwLWNvbnRhaW5lciAubWQtY29udGVudHtib3JkZXItbGVmdDpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pe2JvcmRlci1yaWdodDoxcHggc29saWQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCw2NHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDY0cHgsMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp3aWR0aCwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSx3aWR0aCwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm94LXNoYWRvd30ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaS5tZC1hY3RpdmUrLm1kLWFwcC1jb250YWluZXIgLm1kLWNvbnRlbnR7Ym9yZGVyLWxlZnQ6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSl7d2lkdGg6NzBweCFpbXBvcnRhbnQ7ei1pbmRleDoxO3doaXRlLXNwYWNlOm5vd3JhcH0ubWQtZHJhd2VyLm1kLXBlcnNpc3RlbnQtbWluaTpub3QoLm1kLWFjdGl2ZSkgLm1kLXRvb2xiYXJ7ZGlzcGxheTpub25lfS5tZC1kcmF3ZXIubWQtcGVyc2lzdGVudC1taW5pOm5vdCgubWQtYWN0aXZlKSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZzowIDIzcHh9Lm1kLWRyYXdlci5tZC1wZXJzaXN0ZW50LW1pbmkubWQtYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3doaXRlLXNwYWNlOm5vcm1hbH0ubWQtZHJhd2VyIC5tZC1saXN0LWl0ZW0tY29udGFpbmVye2ZvbnQtc2l6ZToxNHB4O3RleHQtdHJhbnNmb3JtOm5vbmV9QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1kcmF3ZXJ7d2lkdGg6MzIwcHh9Lm1kLWRyYXdlci5tZC1hY3RpdmV7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMil9fUBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsubWQtZHJhd2VyOm5vdCgubWQtdGVtcG9yYXJ5KX4ubWQtb3ZlcmxheXtiYWNrZ3JvdW5kOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudHtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1mdWxse3otaW5kZXg6M30ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1mdWxsIC5tZC1saXN0e3BhZGRpbmctdG9wOjB9Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZCwubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jbGlwcGVke3otaW5kZXg6MX0ubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jYXJke2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjt3aWxsLWNoYW5nZTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO21hcmdpbjo4cHg7ei1pbmRleDoxfX1AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7Lm1kLWRyYXdlci5tZC1wZXJtYW5lbnQtY2FyZHttYXJnaW46MTZweH19QG1lZGlhIChtaW4td2lkdGg6MTI4MHB4KXsubWQtZHJhd2VyLm1kLXBlcm1hbmVudC1jYXJke21hcmdpbjoyNHB4fX0ubWQtZWxldmF0aW9uLTB7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMXtib3gtc2hhZG93OjAgMnB4IDFweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgMXB4IDFweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAzcHggMCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0ye2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTN7Ym94LXNoYWRvdzowIDNweCAzcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDNweCA0cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggOHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNHtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNXtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNXB4IDhweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxNHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tNntib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTd7Ym94LXNoYWRvdzowIDRweCA1cHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDdweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAycHggMTZweCAxcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tOHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi05e2JveC1zaGFkb3c6MCA1cHggNnB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA5cHggMTJweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE2cHggMnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEwe2JveC1zaGFkb3c6MCA2cHggNnB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCAxMHB4IDE0cHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDRweCAxOHB4IDNweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xMXtib3gtc2hhZG93OjAgNnB4IDdweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTFweCAxNXB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCA0cHggMjBweCAzcHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTJ7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEycHggMTdweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDIycHggNHB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTEze2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxM3B4IDE5cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyNHB4IDRweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xNHtib3gtc2hhZG93OjAgN3B4IDlweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTRweCAyMXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjZweCA0cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTV7Ym94LXNoYWRvdzowIDhweCA5cHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE1cHggMjJweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDI4cHggNXB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE2e2JveC1zaGFkb3c6MCA4cHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTZweCAyNHB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzBweCA1cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMTd7Ym94LXNoYWRvdzowIDhweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxN3B4IDI2cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMnB4IDVweCByZ2JhKDAsMCwwLC4xMil9Lm1kLWVsZXZhdGlvbi0xOHtib3gtc2hhZG93OjAgOXB4IDExcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE4cHggMjhweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgN3B4IDM0cHggNnB4IHJnYmEoMCwwLDAsLjEyKX0ubWQtZWxldmF0aW9uLTE5e2JveC1zaGFkb3c6MCA5cHggMTJweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMTlweCAyOXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA3cHggMzZweCA2cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjB7Ym94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjBweCAzMXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggMzhweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjF7Ym94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjFweCAzM3B4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDBweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjJ7Ym94LXNoYWRvdzowIDEwcHggMTRweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjJweCAzNXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDJweCA3cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjN7Ym94LXNoYWRvdzowIDExcHggMTRweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjNweCAzNnB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDRweCA4cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbGV2YXRpb24tMjR7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpfS5tZC1lbXB0eS1zdGF0ZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RleHQtYWxpZ246Y2VudGVyO21heC13aWR0aDo0MjBweDtwYWRkaW5nOjM2cHg7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGN1YmljLWJlemllcigwLDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5fS5tZC1lbXB0eS1zdGF0ZS5tZC1yb3VuZGVke21heC13aWR0aDphdXRvO2JvcmRlci1yYWRpdXM6NTAlfS5tZC1lbXB0eS1zdGF0ZS5tZC1yb3VuZGVkIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7cGFkZGluZzo0MHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS5tZC1lbXB0eS1zdGF0ZSAubWQtYnV0dG9ue21hcmdpbjouNWVtIDAgMH0ubWQtZW1wdHktc3RhdGUtZW50ZXJ7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC44Nyk7dHJhbnNmb3JtOnNjYWxlKC44Nyl9Lm1kLWVtcHR5LXN0YXRlLWVudGVyIC5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7b3BhY2l0eTowfS5tZC1lbXB0eS1zdGF0ZS1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOm9wYWNpdHl9Lm1kLWVtcHR5LXN0YXRlLWljb257d2lkdGg6MTYwcHg7bWluLXdpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtmb250LXNpemU6MTYwcHghaW1wb3J0YW50O21hcmdpbjowfS5tZC1lbXB0eS1zdGF0ZS1sYWJlbHtmb250LXNpemU6MjZweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6NDBweH0ubWQtZW1wdHktc3RhdGUtZGVzY3JpcHRpb257bWFyZ2luOjFlbSAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjI0cHh9Lm1kLW1lbnUubWQtc2VsZWN0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLW1lbnUubWQtc2VsZWN0Om5vdCgubWQtZGlzYWJsZWQpIC5tZC1pY29uLC5tZC1tZW51Lm1kLXNlbGVjdDpub3QoLm1kLWRpc2FibGVkKSAubWQtaW5wdXR7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTpub25lfS5tZC1tZW51Lm1kLXNlbGVjdCAubWQtaW5wdXR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtbWVudS5tZC1zZWxlY3QgLm1kLWlucHV0LWZha2UsLm1kLW1lbnUubWQtc2VsZWN0IHNlbGVjdHt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwIDAgMCAwKTtib3JkZXI6MH0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51e3dpZHRoOjEwMCV9Lm1kLW1lbnUtY29udGVudC5tZC1zZWxlY3QtbWVudS5tZC1tZW51LWNvbnRlbnQtZW50ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguMyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjMpfS5tZC1tZW51LWNvbnRlbnQubWQtc2VsZWN0LW1lbnUgLm1kLWxpc3R7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtbWVudS1jb250ZW50Lm1kLXNlbGVjdC1tZW51IC5tZC1kZW5zZSAubWQtcmlwcGxlLm1kLWxpc3QtaXRlbS1jb250ZW50e2ZvbnQtc2l6ZToxNHB4fS5tZC1tZW51e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5tZC1tZW51Pi5tZC1idXR0b257bWFyZ2luOjB9Lm1kLW1lbnUtY29udGVudHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMik7bWluLXdpZHRoOjExMnB4O21heC13aWR0aDoyODBweDttYXgtaGVpZ2h0OjM1dmg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6ODtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSksb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLG9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSx0b3AsbGVmdCFpbXBvcnRhbnR9Lm1kLW1lbnUtY29udGVudC5tZC1zaGFsbG93e3Bvc2l0aW9uOmZpeGVkIWltcG9ydGFudDt0b3A6LTk5OTllbSFpbXBvcnRhbnQ7bGVmdDotOTk5OWVtIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLWFjdGl2ZXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtvcGFjaXR5OjB9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXRvcC1zdGFydHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Ym90dG9tIGxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gbGVmdDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXRvcC1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSByaWdodDt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSByaWdodDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LXJpZ2h0LXN0YXJ0ey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgdG9wOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1yaWdodC1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46bGVmdCBib3R0b207LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw4cHgsMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1ib3R0b20tc3RhcnR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSl9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtZW50ZXIubWQtbWVudS1jb250ZW50LWJvdHRvbS1lbmR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCByaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnRvcCByaWdodDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC04cHgsMCkgc2NhbGVZKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlci5tZC1tZW51LWNvbnRlbnQtbGVmdC1zdGFydHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLThweCwwKSBzY2FsZVkoLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtOHB4LDApIHNjYWxlWSguOTUpfS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWVudGVyLm1kLW1lbnUtY29udGVudC1sZWZ0LWVuZHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsOHB4LDApIHNjYWxlWSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDhweCwwKSBzY2FsZVkoLjk1KX0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1lbnRlciAubWQtbGlzdHtvcGFjaXR5OjB9Lm1kLW1lbnUtY29udGVudC5tZC1tZW51LWNvbnRlbnQtbWVkaXVte21pbi13aWR0aDoxNjhweH0ubWQtbWVudS1jb250ZW50Lm1kLW1lbnUtY29udGVudC1iaWd7bWluLXdpZHRoOjIyNHB4fS5tZC1tZW51LWNvbnRlbnQubWQtbWVudS1jb250ZW50LWh1Z2V7bWluLXdpZHRoOjI4MHB4fS5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6YXV0b30ubWQtbWVudS1jb250ZW50LWNvbnRhaW5lciAubWQtbGlzdHt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3dpbGwtY2hhbmdlOm9wYWNpdHk7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6OTQ0cHgpey5tZC1tZW51LWNvbnRlbnQtY29udGFpbmVyIC5tZC1saXN0e2ZvbnQtc2l6ZToxNHB4fX0ubWQtbGlzdHttYXJnaW46MDtwYWRkaW5nOjhweCAwO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpjb2x1bW4gbm93cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO2xpc3Qtc3R5bGU6bm9uZX0ubWQtbGlzdC5tZC1kZW5zZXtwYWRkaW5nOjRweCAwfS5tZC1saXN0IC5tZC1kaXZpZGVye21hcmdpbi10b3A6LTFweH0ubWQtbGlzdCAubWQtc3ViaGVhZGVyLm1kLWluc2V0e3BhZGRpbmctbGVmdDo3MnB4fS5tZC1saXN0Pi5tZC1zdWJoZWFkZXI6Zmlyc3Qtb2YtdHlwZXttYXJnaW4tdG9wOi04cHh9Lm1kLW9wdGdyb3VwIC5tZC1zdWJoZWFkZXJ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5tZC1vcHRncm91cCAubWQtcmlwcGxlLm1kLWxpc3QtaXRlbS1jb250ZW50e3BhZGRpbmctbGVmdDoyNHB4fS5tZC1maWxle2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLWZpbGUgaW5wdXRbdHlwZT1maWxlXXt3aWR0aDoxcHg7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwIDAgMCAwKTtib3JkZXI6MH0ubWQtZmlsZSAubWQtaWNvbntjdXJzb3I6cG9pbnRlcn0ubWQtaGlnaGxpZ2h0LXRleHR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtaGlnaGxpZ2h0LXRleHQtbWF0Y2h7Zm9udC13ZWlnaHQ6NTAwfS5tZC1pbWFnZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXB9Lm1kLWxheW91dCAubWQtbGF5b3V0e2ZsZXg6MX0ubWQtbGF5b3V0IC5tZC1sYXlvdXQtbm93cmFwe2ZsZXgtd3JhcDpub3dyYXB9Lm1kLWxheW91dC5tZC1jZW50ZXJlZHt3aWR0aDoxMDAlO21heC13aWR0aDoxMjAwcHg7bWFyZ2luOjAgYXV0b30ubWQtbGF5b3V0Lm1kLWd1dHRlcnttYXJnaW4tcmlnaHQ6LTIwcHg7bWFyZ2luLWxlZnQ6LTIwcHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweH1AbWVkaWEgKG1heC13aWR0aDoxMjY0cHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotMTJweDttYXJnaW4tbGVmdDotMTJweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDoxMnB4O3BhZGRpbmctbGVmdDoxMnB4fX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLWxheW91dC5tZC1ndXR0ZXJ7bWFyZ2luLXJpZ2h0Oi04cHg7bWFyZ2luLWxlZnQ6LThweH0ubWQtbGF5b3V0Lm1kLWd1dHRlcj4ubWQtbGF5b3V0LWl0ZW17cGFkZGluZy1yaWdodDo4cHg7cGFkZGluZy1sZWZ0OjhweH19QG1lZGlhIChtYXgtd2lkdGg6NjAwcHgpey5tZC1sYXlvdXQubWQtZ3V0dGVye21hcmdpbi1yaWdodDotNHB4O21hcmdpbi1sZWZ0Oi00cHh9Lm1kLWxheW91dC5tZC1ndXR0ZXI+Lm1kLWxheW91dC1pdGVte3BhZGRpbmctcmlnaHQ6NHB4O3BhZGRpbmctbGVmdDo0cHh9fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtdG9wLXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXRvcC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlciwubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1jZW50ZXItY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWNlbnRlci1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpjZW50ZXJ9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtY2VudGVyLXNwYWNlLWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1jZW50ZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LWJvdHRvbS1zcGFjZS1hcm91bmR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1ib3R0b20tc3BhY2UtYmV0d2VlbntqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpmbGV4LWVuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDthbGlnbi1pdGVtczpzcGFjZS1hcm91bmR9Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYXJvdW5kLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1hcm91bmQtc3BhY2UtYXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7YWxpZ24taXRlbXM6c3BhY2UtYXJvdW5kfS5tZC1sYXlvdXQubWQtYWxpZ25tZW50LXNwYWNlLWFyb3VuZC1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWFyb3VuZH0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWxlZnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6c3BhY2UtYmV0d2Vlbn0ubWQtbGF5b3V0Lm1kLWFsaWdubWVudC1zcGFjZS1iZXR3ZWVuLXNwYWNlLWFyb3VuZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC5tZC1hbGlnbm1lbnQtc3BhY2UtYmV0d2Vlbi1zcGFjZS1iZXR3ZWVue2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOnNwYWNlLWJldHdlZW59Lm1kLWxheW91dC1pdGVtLC5tZC1sYXlvdXQtaXRlbS5tZC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0xMHttaW4td2lkdGg6MTAlO21heC13aWR0aDoxMCU7ZmxleDowIDEgMTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0yNXttaW4td2lkdGg6MjUlO21heC13aWR0aDoyNSU7ZmxleDowIDEgMjUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS00MHttaW4td2lkdGg6NDAlO21heC13aWR0aDo0MCU7ZmxleDowIDEgNDAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS01NXttaW4td2lkdGg6NTUlO21heC13aWR0aDo1NSU7ZmxleDowIDEgNTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS03MHttaW4td2lkdGg6NzAlO21heC13aWR0aDo3MCU7ZmxleDowIDEgNzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS04NXttaW4td2lkdGg6ODUlO21heC13aWR0aDo4NSU7ZmxleDowIDEgODUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc2l6ZS0zM3ttaW4td2lkdGg6MzMuMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMlO2ZsZXg6MCAxIDMzLjMzMzMlfS5tZC1sYXlvdXQtaXRlbS5tZC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemV7ZmxleDoxIDF9Lm1kLWxheW91dC1pdGVtLm1kLW1lZGl1bS1zaXplLTV7bWluLXdpZHRoOjUlO21heC13aWR0aDo1JTtmbGV4OjAgMSA1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTV7bWluLXdpZHRoOjE1JTttYXgtd2lkdGg6MTUlO2ZsZXg6MCAxIDE1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjB7bWluLXdpZHRoOjIwJTttYXgtd2lkdGg6MjAlO2ZsZXg6MCAxIDIwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzB7bWluLXdpZHRoOjMwJTttYXgtd2lkdGg6MzAlO2ZsZXg6MCAxIDMwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzV7bWluLXdpZHRoOjM1JTttYXgtd2lkdGg6MzUlO2ZsZXg6MCAxIDM1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNDV7bWluLXdpZHRoOjQ1JTttYXgtd2lkdGg6NDUlO2ZsZXg6MCAxIDQ1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTB7bWluLXdpZHRoOjUwJTttYXgtd2lkdGg6NTAlO2ZsZXg6MCAxIDUwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjB7bWluLXdpZHRoOjYwJTttYXgtd2lkdGg6NjAlO2ZsZXg6MCAxIDYwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjV7bWluLXdpZHRoOjY1JTttYXgtd2lkdGg6NjUlO2ZsZXg6MCAxIDY1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNzV7bWluLXdpZHRoOjc1JTttYXgtd2lkdGg6NzUlO2ZsZXg6MCAxIDc1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODB7bWluLXdpZHRoOjgwJTttYXgtd2lkdGg6ODAlO2ZsZXg6MCAxIDgwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTB7bWluLXdpZHRoOjkwJTttYXgtd2lkdGg6OTAlO2ZsZXg6MCAxIDkwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtOTV7bWluLXdpZHRoOjk1JTttYXgtd2lkdGg6OTUlO2ZsZXg6MCAxIDk1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtNjZ7bWluLXdpZHRoOjY2LjY2NjYlO21heC13aWR0aDo2Ni42NjY2JTtmbGV4OjAgMSA2Ni42NjY2JX0ubWQtbGF5b3V0LWl0ZW0ubWQtbWVkaXVtLXNpemUtMTAwe21pbi13aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50O2ZsZXg6MSAxIDEwMCV9fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZXtmbGV4OjEgMX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMTB7bWluLXdpZHRoOjEwJTttYXgtd2lkdGg6MTAlO2ZsZXg6MCAxIDEwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0xNXttaW4td2lkdGg6MTUlO21heC13aWR0aDoxNSU7ZmxleDowIDEgMTUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMjV7bWluLXdpZHRoOjI1JTttYXgtd2lkdGg6MjUlO2ZsZXg6MCAxIDI1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS0zMHttaW4td2lkdGg6MzAlO21heC13aWR0aDozMCU7ZmxleDowIDEgMzAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNDB7bWluLXdpZHRoOjQwJTttYXgtd2lkdGg6NDAlO2ZsZXg6MCAxIDQwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS00NXttaW4td2lkdGg6NDUlO21heC13aWR0aDo0NSU7ZmxleDowIDEgNDUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNTV7bWluLXdpZHRoOjU1JTttYXgtd2lkdGg6NTUlO2ZsZXg6MCAxIDU1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02MHttaW4td2lkdGg6NjAlO21heC13aWR0aDo2MCU7ZmxleDowIDEgNjAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtNzB7bWluLXdpZHRoOjcwJTttYXgtd2lkdGg6NzAlO2ZsZXg6MCAxIDcwJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS03NXttaW4td2lkdGg6NzUlO21heC13aWR0aDo3NSU7ZmxleDowIDEgNzUlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtODV7bWluLXdpZHRoOjg1JTttYXgtd2lkdGg6ODUlO2ZsZXg6MCAxIDg1JX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS05MHttaW4td2lkdGg6OTAlO21heC13aWR0aDo5MCU7ZmxleDowIDEgOTAlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXNtYWxsLXNpemUtMzN7bWluLXdpZHRoOjMzLjMzMzMlO21heC13aWR0aDozMy4zMzMzJTtmbGV4OjAgMSAzMy4zMzMzJX0ubWQtbGF5b3V0LWl0ZW0ubWQtc21hbGwtc2l6ZS02NnttaW4td2lkdGg6NjYuNjY2NiU7bWF4LXdpZHRoOjY2LjY2NjYlO2ZsZXg6MCAxIDY2LjY2NjYlfS5tZC1sYXlvdXQtaXRlbS5tZC1zbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXple2ZsZXg6MSAxfS5tZC1sYXlvdXQtaXRlbS5tZC14c21hbGwtc2l6ZS01e21pbi13aWR0aDo1JTttYXgtd2lkdGg6NSU7ZmxleDowIDEgNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwe21pbi13aWR0aDoxMCU7bWF4LXdpZHRoOjEwJTtmbGV4OjAgMSAxMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTE1e21pbi13aWR0aDoxNSU7bWF4LXdpZHRoOjE1JTtmbGV4OjAgMSAxNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTIwe21pbi13aWR0aDoyMCU7bWF4LXdpZHRoOjIwJTtmbGV4OjAgMSAyMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTI1e21pbi13aWR0aDoyNSU7bWF4LXdpZHRoOjI1JTtmbGV4OjAgMSAyNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMwe21pbi13aWR0aDozMCU7bWF4LXdpZHRoOjMwJTtmbGV4OjAgMSAzMCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTM1e21pbi13aWR0aDozNSU7bWF4LXdpZHRoOjM1JTtmbGV4OjAgMSAzNSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQwe21pbi13aWR0aDo0MCU7bWF4LXdpZHRoOjQwJTtmbGV4OjAgMSA0MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTQ1e21pbi13aWR0aDo0NSU7bWF4LXdpZHRoOjQ1JTtmbGV4OjAgMSA0NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTUwe21pbi13aWR0aDo1MCU7bWF4LXdpZHRoOjUwJTtmbGV4OjAgMSA1MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTU1e21pbi13aWR0aDo1NSU7bWF4LXdpZHRoOjU1JTtmbGV4OjAgMSA1NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTYwe21pbi13aWR0aDo2MCU7bWF4LXdpZHRoOjYwJTtmbGV4OjAgMSA2MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY1e21pbi13aWR0aDo2NSU7bWF4LXdpZHRoOjY1JTtmbGV4OjAgMSA2NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTcwe21pbi13aWR0aDo3MCU7bWF4LXdpZHRoOjcwJTtmbGV4OjAgMSA3MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTc1e21pbi13aWR0aDo3NSU7bWF4LXdpZHRoOjc1JTtmbGV4OjAgMSA3NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTgwe21pbi13aWR0aDo4MCU7bWF4LXdpZHRoOjgwJTtmbGV4OjAgMSA4MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTg1e21pbi13aWR0aDo4NSU7bWF4LXdpZHRoOjg1JTtmbGV4OjAgMSA4NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTkwe21pbi13aWR0aDo5MCU7bWF4LXdpZHRoOjkwJTtmbGV4OjAgMSA5MCV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTk1e21pbi13aWR0aDo5NSU7bWF4LXdpZHRoOjk1JTtmbGV4OjAgMSA5NSV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTMze21pbi13aWR0aDozMy4zMzMzJTttYXgtd2lkdGg6MzMuMzMzMyU7ZmxleDowIDEgMzMuMzMzMyV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTY2e21pbi13aWR0aDo2Ni42NjY2JTttYXgtd2lkdGg6NjYuNjY2NiU7ZmxleDowIDEgNjYuNjY2NiV9Lm1kLWxheW91dC1pdGVtLm1kLXhzbWFsbC1zaXplLTEwMHttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tbGVmdDowIWltcG9ydGFudDtmbGV4OjEgMSAxMDAlfX0ubWQtaGlkZXtkaXNwbGF5Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTI2NHB4KXsubWQtbWVkaXVtLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXNtYWxsLWhpZGV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo2MDBweCl7Lm1kLXhzbWFsbC1oaWRle2Rpc3BsYXk6bm9uZX19Lm1kLWxpc3QtaXRlbXtoZWlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9Lm1kLWxpc3QtaXRlbS5tZC1pbnNldCAubWQtbGlzdC1pdGVtLWNvbnRlbnR7cGFkZGluZy1sZWZ0OjcycHh9Lm1kLWxpc3QtaXRlbSAubWQtaWNvbnttYXJnaW46MDt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLG1hcmdpbi1yaWdodH0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDt0ZXh0LWFsaWduOmxlZnQ7dGV4dC10cmFuc2Zvcm06bm9uZX0ubWQtbGlzdC1pdGVtLWNvbnRhaW5lcjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSl7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2N1cnNvcjpwb2ludGVyfS5tZC1saXN0LWl0ZW0tY29udGFpbmVyLm1kLWJ1dHRvbi1jbGVhbjpob3ZlcntvcGFjaXR5OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjRweCAxNnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3RyYW5zaXRpb246cGFkZGluZyAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6cGFkZGluZ30ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo0MHB4O2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtYXZhdGFye21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjB9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXI6bm90KC5tZC1zbWFsbCl7d2lkdGg6MzZweDttaW4td2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ubWQtbGlzdC5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MjBweH0ubWQtbGlzdC5tZC1kb3VibGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo3MnB4fS5tZC1saXN0Lm1kLWRvdWJsZS1saW5lLm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tY29udGVudHttaW4taGVpZ2h0OjYwcHh9Lm1kLWxpc3QubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS1jb250ZW50e21pbi1oZWlnaHQ6ODhweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZS5tZC1kZW5zZSAubWQtbGlzdC1pdGVtLWNvbnRlbnR7bWluLWhlaWdodDo3NnB4fS5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb257bWFyZ2luOjAgLTEwcHggMCAwfS5tZC1saXN0LWl0ZW0tY29udGVudCAubWQtbGlzdC1hY3Rpb246bGFzdC1vZi10eXBle21hcmdpbjowIC0xMHB4IDAgMTZweH0ubWQtbGlzdC5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLWNvbnRlbnQgLm1kLWxpc3QtYWN0aW9uOmxhc3Qtb2YtdHlwZXthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1pY29uOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDozMnB4fS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtaWNvbjpsYXN0LWNoaWxke21hcmdpbi1sZWZ0OjE2cHh9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1jaGVja2JveCwubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXJhZGlve21hcmdpbjowfS5tZC1saXN0LWl0ZW0tY29udGVudD4ubWQtY2hlY2tib3g6Zmlyc3QtY2hpbGQsLm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1yYWRpbzpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MzZweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXN3aXRjaHttYXJnaW46MH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLXN3aXRjaDpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MjJweH0ubWQtbGlzdC1pdGVtLWNvbnRlbnQ+Lm1kLWF2YXRhcnttYXJnaW46NHB4IDB9Lm1kLWxpc3QtaXRlbS1jb250ZW50Pi5tZC1hdmF0YXI6Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjE2cHh9Lm1kLWxpc3QtaXRlbS10ZXh0ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjVlbTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLWxpc3QubWQtZGVuc2UgLm1kLWxpc3QtaXRlbS10ZXh0e2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0LWl0ZW0tdGV4dCAqe3dpZHRoOjEwMCU7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjVlbTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDIpLC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDMpe2ZvbnQtc2l6ZToxNHB4fS5tZC1saXN0Lm1kLWRlbnNlIC5tZC1saXN0LWl0ZW0tdGV4dCAqe2ZvbnQtc2l6ZToxM3B4fS5tZC1saXN0LWl0ZW0tZXhwYW5ke2JvcmRlci10b3A6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHRyYW5zcGFyZW50O3RyYW5zaXRpb246Ym9yZGVyIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpib3JkZXJ9Lm1kLWxpc3QtaXRlbS1leHBhbmQubWQtYWN0aXZlIC5tZC1saXN0LWV4cGFuZC1pY29uey13ZWJraXQtcGVyc3BlY3RpdmU6MTAwMHB4O3BlcnNwZWN0aXZlOjEwMDBweDstd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlO3BlcnNwZWN0aXZlLW9yaWdpbjo1MCUgNTAlOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgxODBkZWcpfS5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSAubWQtbGlzdC1leHBhbmR7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApfS5tZC1saXN0LWl0ZW0tZXhwYW5kIC5tZC1saXN0LWV4cGFuZHtoZWlnaHQ6MDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTI0cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsLTI0cHgsMCk7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sb3BhY2l0eX0ubWQtbGlzdC1pdGVtLWV4cGFuZCAubWQtbGlzdC1leHBhbmQtaWNvbnt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19QC13ZWJraXQta2V5ZnJhbWVzIGJ7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0yMCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNSwwLC43LC41KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfTYwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zLC4zOCwuNTUsLjk2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMywuMzgsLjU1LC45Nik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4My42NyUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDgzLjY3JSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAuNjElKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyMDAuNjElKX19QGtleWZyYW1lcyBiezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjUsMCwuNywuNSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjUsMCwuNywuNSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX02MCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMywuMzgsLjU1LC45Nik7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMsLjM4LC41NSwuOTYpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoODMuNjclKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCg4My42NyUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjAwLjYxJSl9fUAtd2Via2l0LWtleWZyYW1lcyBjezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX0zNSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsLjEyLC43OSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsLjEyLC43OSwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9NzAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDYsLjExLC42LDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguNjYpO3RyYW5zZm9ybTpzY2FsZVgoLjY2KX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9fUBrZXlmcmFtZXMgY3swJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjA4KTt0cmFuc2Zvcm06c2NhbGVYKC4wOCl9MzUley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMzLC4xMiwuNzksMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMzLC4xMiwuNzksMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfTcwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNiwuMTEsLjYsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA2LC4xMSwuNiwxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjY2KTt0cmFuc2Zvcm06c2NhbGVYKC42Nil9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZHswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDM3LjY1JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMzcuNjUlKX01MCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg4NC4zOSUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSl9dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNjAuMjglKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNjAuMjglKX19QGtleWZyYW1lcyBkezAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0yNSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMzcuNjUlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgzNy42NSUpfTUwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsLjYzLC42LC45KTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDg0LjM5JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoODQuMzklKX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE2MC4yOCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE2MC4yOCUpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZXswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNSwwLC41MiwuNDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX0yMCV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjMxLC4yOCwuOCwuNzMpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguNDYpO3RyYW5zZm9ybTpzY2FsZVgoLjQ2KX00NSV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwuNjMsLjYsLjkpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC43Myk7dHJhbnNmb3JtOnNjYWxlWCguNzMpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCguMDgpO3RyYW5zZm9ybTpzY2FsZVgoLjA4KX19QGtleWZyYW1lcyBlezAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE1LDAsLjUyLC40MSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfTIwJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zMSwuMjgsLjgsLjczKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzEsLjI4LC44LC43Myk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC40Nik7dHJhbnNmb3JtOnNjYWxlWCguNDYpfTQ1JXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LC42MywuNiwuOSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsLjYzLC42LC45KTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLjczKTt0cmFuc2Zvcm06c2NhbGVYKC43Myl9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC4wOCk7dHJhbnNmb3JtOnNjYWxlWCguMDgpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZnt0b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgtOHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC04cHgsMCwwKX19QGtleWZyYW1lcyBme3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC04cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLThweCwwLDApfX0ubWQtcHJvZ3Jlc3MtYmFye2hlaWdodDo1cHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGVZKDEpO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlWSgxKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2ssLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre2xlZnQ6LTE1MCU7LXdlYmtpdC1hbmltYXRpb246YiAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmIgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnkgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpjIDJzIGluZmluaXRlIGxpbmVhcjthbmltYXRpb246YyAycyBpbmZpbml0ZSBsaW5lYXJ9Lm1kLXByb2dyZXNzLWJhci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbHtsZWZ0Oi01NSU7LXdlYmtpdC1hbmltYXRpb246ZCAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmQgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246ZSAycyBpbmZpbml0ZSBsaW5lYXI7YW5pbWF0aW9uOmUgMnMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyLC5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItZmlsbCwubWQtcHJvZ3Jlc3MtYmFyLm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXIubWQtZGV0ZXJtaW5hdGUgLm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwsLm1kLXByb2dyZXNzLWJhci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNre3RyYW5zaXRpb246LjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcHJvZ3Jlc3MtYmFyLm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7ZGlzcGxheTpub25lfS5tZC1wcm9ncmVzcy1iYXIubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVye2JvcmRlci10b3A6NHB4IGRvdHRlZDstd2Via2l0LWFuaW1hdGlvbjpmIC4yNXMgaW5maW5pdGUgbGluZWFyO2FuaW1hdGlvbjpmIC4yNXMgaW5maW5pdGUgbGluZWFyfS5tZC1wcm9ncmVzcy1iYXIubWQtcXVlcnl7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5tZC1wcm9ncmVzcy1iYXItZW50ZXIsLm1kLXByb2dyZXNzLWJhci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTouNTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZVkoMCl9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItdHJhY2t7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnR9Lm1kLXByb2dyZXNzLWJhci1idWZmZXIsLm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsLC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciwubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLWJhci1idWZmZXI6YWZ0ZXIsLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGVmdDowO2NvbnRlbnQ6XFxcIiBcXFwifUAtd2Via2l0LWtleWZyYW1lcyBnezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwKTt0cmFuc2Zvcm06cm90YXRlKDApfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUBrZXlmcmFtZXMgZ3swJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMCk7dHJhbnNmb3JtOnJvdGF0ZSgwKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1ALXdlYmtpdC1rZXlmcmFtZXMgaHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKX0yMCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fUBrZXlmcmFtZXMgaHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKX0yMCV7b3BhY2l0eToxfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZVooMCl9fS5tZC1wcm9ncmVzcy1zcGlubmVye2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZXstd2Via2l0LWFuaW1hdGlvbjpnIDJzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246ZyAycyBsaW5lYXIgaW5maW5pdGV9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWluZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXcsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtaW5kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWxlYXZlLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguMSk7dHJhbnNmb3JtOnNjYWxlKC4xKX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZXstd2Via2l0LWFuaW1hdGlvbjo0cyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTthbmltYXRpb246NHMgaW5maW5pdGUgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1lbnRlci1hY3RpdmUsLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtZGV0ZXJtaW5hdGUubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjoyc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZS5tZC1wcm9ncmVzcy1zcGlubmVyLWVudGVyLWFjdGl2ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3LC5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLWRldGVybWluYXRlLm1kLXByb2dyZXNzLXNwaW5uZXItbGVhdmUtYWN0aXZlIC5tZC1wcm9ncmVzcy1zcGlubmVyLWRyYXd7LXdlYmtpdC1hbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkczthbmltYXRpb246aCAxLjk4cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSBmb3J3YXJkc30ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci5tZC1kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e3RyYW5zaXRpb246bm9uZX0ubWQtcHJvZ3Jlc3Mtc3Bpbm5lci1kcmF3e292ZXJmbG93OnZpc2libGU7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgcm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnNjYWxlKDEpIHJvdGF0ZSgtOTBkZWcpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xle2ZpbGw6bm9uZTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zaXRpb246c3Ryb2tlLWRhc2hvZmZzZXQgLjI1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aWxsLWNoYW5nZTpzdHJva2UtZGFzaG9mZnNldCxzdHJva2UtZGFzaGFycmF5LHN0cm9rZS13aWR0aCxhbmltYXRpb24tbmFtZSxyfS5tZC1yYWRpb3t3aWR0aDphdXRvO21hcmdpbjoxNnB4IDE2cHggMTZweCAwO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXJhZGlvOm5vdCgubWQtZGlzYWJsZWQpLC5tZC1yYWRpbzpub3QoLm1kLWRpc2FibGVkKSAubWQtcmFkaW8tbGFiZWx7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXJ7d2lkdGg6MjBweDttaW4td2lkdGg6MjBweDtoZWlnaHQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXI6MnB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmZvY3Vze291dGxpbmU6bm9uZX0ubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciwubWQtcmFkaW8gLm1kLXJhZGlvLWNvbnRhaW5lcjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC41NSwwLC41NSwuMik7Y29udGVudDpcXFwiIFxcXCJ9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXI6YmVmb3Jle3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7dG9wOjUwJTtsZWZ0OjUwJTt6LWluZGV4OjU7Ym9yZGVyLXJhZGl1czo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDozcHg7cmlnaHQ6M3B4O2JvdHRvbTozcHg7bGVmdDozcHg7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM0QoLjM4LC4zOCwxKTt0cmFuc2Zvcm06c2NhbGUzRCguMzgsLjM4LDEpO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1yYWRpbyAubWQtcmFkaW8tY29udGFpbmVyIC5tZC1yaXBwbGV7d2lkdGg6NDhweCFpbXBvcnRhbnQ7aGVpZ2h0OjQ4cHghaW1wb3J0YW50O3RvcDo1MCUhaW1wb3J0YW50O2xlZnQ6NTAlIWltcG9ydGFudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLXJhZGlvIC5tZC1yYWRpby1jb250YWluZXIgaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotOTk5ZW19Lm1kLXJhZGlvIC5tZC1yYWRpby1sYWJlbHtoZWlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZTtsaW5lLWhlaWdodDoyMHB4fS5tZC1yYWRpby5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXJ7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM0QoMSwxLDEpO3RyYW5zZm9ybTpzY2FsZTNEKDEsMSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtcmFkaW8ubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtc25hY2tiYXJ7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMik7bWluLXdpZHRoOjI4OHB4O21heC13aWR0aDo1NjhweDttaW4taGVpZ2h0OjQ4cHg7bWF4LWhlaWdodDo4MHB4O3BhZGRpbmc6MTRweCAyNHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoxMjtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yLGNvbG9yLG9wYWNpdHksdHJhbnNmb3JtfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXJ7bWFyZ2luOjAgYXV0bztyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tY2VudGVyLm1kLXNuYWNrYmFyLWVudGVyLC5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1jZW50ZXIubWQtc25hY2tiYXItbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKDAsY2FsYygxMDAlICsgOHB4KSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyA4cHgpLDApfS5tZC1zbmFja2Jhci5tZC1wb3NpdGlvbi1sZWZ0e2JvdHRvbToyNHB4O2xlZnQ6MjRweH0ubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdC5tZC1zbmFja2Jhci1lbnRlciwubWQtc25hY2tiYXIubWQtcG9zaXRpb24tbGVmdC5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyAzMnB4KSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCxjYWxjKDEwMCUgKyAzMnB4KSwwKX0ubWQtc25hY2tiYXItZW50ZXIsLm1kLXNuYWNrYmFyLWVudGVyIC5tZC1zbmFja2Jhci1jb250ZW50LC5tZC1zbmFja2Jhci1sZWF2ZS1hY3RpdmUsLm1kLXNuYWNrYmFyLWxlYXZlLWFjdGl2ZSAubWQtc25hY2tiYXItY29udGVudHtvcGFjaXR5OjB9Lm1kLXNuYWNrYmFyLWNvbnRlbnR7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjM4cyBjdWJpYy1iZXppZXIoLjU1LDAsLjU1LC4yKX0ubWQtc25hY2tiYXItY29udGVudCAubWQtYnV0dG9ue21pbi13aWR0aDowO21hcmdpbjotOHB4IC04cHggLThweCAzNnB4fS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b24rLm1kLWJ1dHRvbnttYXJnaW4tbGVmdDoxNnB4fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtc25hY2tiYXJ7bGVmdDowOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7Ym9yZGVyLXJhZGl1czowfS5tZC1zbmFja2Jhci1jb250ZW50IC5tZC1idXR0b257bWFyZ2luLWxlZnQ6MTJweH19Lm1kLXNwZWVkLWRpYWx7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLXNwZWVkLWRpYWwubWQtdG9wLWxlZnQsLm1kLXNwZWVkLWRpYWwubWQtdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1ib3R0b20tY2VudGVyLC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1jZW50ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0ubWQtc3BlZWQtZGlhbC5tZC10b3AtY2VudGVye3RvcDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1jZW50ZXJ7Ym90dG9tOjI0cHh9Lm1kLXNwZWVkLWRpYWwubWQtYm90dG9tLXJpZ2h0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1yaWdodHtyaWdodDoyNHB4fS5tZC1zcGVlZC1kaWFsLm1kLWJvdHRvbS1sZWZ0LC5tZC1zcGVlZC1kaWFsLm1kLXRvcC1sZWZ0e2xlZnQ6MjRweH0ubWQtc3BlZWQtZGlhbC5tZC1maXhlZHtwb3NpdGlvbjpmaXhlZH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wLm1kLWVmZmVjdC1mbGluZyAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1MCUsMCkgc2NhbGUoLjgpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDUwJSwwKSBzY2FsZSguOCl9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLXRvcCAubWQtc3BlZWQtZGlhbC10YXJnZXR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozO29yZGVyOjI7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWQtc3BlZWQtZGlhbC5tZC1kaXJlY3Rpb24tdG9wIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoyO29yZGVyOjF9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLXRvcCAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20ubWQtZWZmZWN0LWZsaW5nIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCkgc2NhbGUoLjgpfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtdGFyZ2V0ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjtvcmRlcjoxO21hcmdpbi10b3A6MCFpbXBvcnRhbnR9Lm1kLXNwZWVkLWRpYWwubWQtZGlyZWN0aW9uLWJvdHRvbSAubWQtc3BlZWQtZGlhbC1jb250ZW50ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MztvcmRlcjoyfS5tZC1zcGVlZC1kaWFsLm1kLWRpcmVjdGlvbi1ib3R0b20gLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5tZC1zcGVlZC1kaWFsLm1kLWVmZmVjdC1zY2FsZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjMpO3RyYW5zZm9ybTpzY2FsZSguMyl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1tb3JwaC1pbml0aWFsLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLW1vcnBoLWluaXRpYWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoOTBkZWcpIHNjYWxlKC43KTt0cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApIHJvdGF0ZSg5MGRlZykgc2NhbGUoLjcpfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtbW9ycGgtZmluYWwsLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtbW9ycGgtZmluYWx7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSByb3RhdGUoMGRlZykgc2NhbGUoMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbiwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvbntwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApIHNjYWxlKDEpIWltcG9ydGFudDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSgxKSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjBcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjBcXFwiXXt0cmFuc2l0aW9uLWRlbGF5OjBzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIxXFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCIxXFxcIl17dHJhbnNpdGlvbi1kZWxheTouMXN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjJcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjJcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi4yc30ubWQtc3BlZWQtZGlhbC5tZC1hY3RpdmUgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiM1xcXCJdLC5tZC1zcGVlZC1kaWFsLm1kLXdpdGgtaG92ZXI6aG92ZXIgLm1kLXNwZWVkLWRpYWwtY29udGVudCAubWQtYnV0dG9uW21kLWJ1dHRvbi1pbmRleD1cXFwiM1xcXCJde3RyYW5zaXRpb24tZGVsYXk6LjNzfS5tZC1zcGVlZC1kaWFsLm1kLWFjdGl2ZSAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI0XFxcIl0sLm1kLXNwZWVkLWRpYWwubWQtd2l0aC1ob3Zlcjpob3ZlciAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b25bbWQtYnV0dG9uLWluZGV4PVxcXCI0XFxcIl17dHJhbnNpdGlvbi1kZWxheTouNHN9Lm1kLXNwZWVkLWRpYWwubWQtYWN0aXZlIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjVcXFwiXSwubWQtc3BlZWQtZGlhbC5tZC13aXRoLWhvdmVyOmhvdmVyIC5tZC1zcGVlZC1kaWFsLWNvbnRlbnQgLm1kLWJ1dHRvblttZC1idXR0b24taW5kZXg9XFxcIjVcXFwiXXt0cmFuc2l0aW9uLWRlbGF5Oi41c30ubWQtc3BlZWQtZGlhbCAubWQtYnV0dG9ue21hcmdpbjo2cHggMH0ubWQtc3BlZWQtZGlhbCAubWQtc3BlZWQtZGlhbC1jb250ZW50IC5tZC1idXR0b257cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0cmFuc2Zvcm0gMHMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgLjNzO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksdHJhbnNmb3JtIDBzIGN1YmljLWJlemllciguNCwwLC4yLDEpIC4zcywtd2Via2l0LXRyYW5zZm9ybSAwcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSAuM3M7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm19Lm1kLXNwZWVkLWRpYWwgLm1kLW1vcnBoLWZpbmFsLC5tZC1zcGVlZC1kaWFsIC5tZC1tb3JwaC1pbml0aWFse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoLTUwJSwtNTAlLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgtNTAlLC01MCUsMCk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtc3BlZWQtZGlhbCAubWQtbW9ycGgtZmluYWx7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguNykgcm90YXRlKC05MGRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNEKC01MCUsLTUwJSwwKSBzY2FsZSguNykgcm90YXRlKC05MGRlZyl9Lm1kLXNwZWVkLWRpYWwtdGFyZ2V0e3otaW5kZXg6MX0ubWQtc3BlZWQtZGlhbC1jb250ZW50e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtc3BlZWQtZGlhbC1jb250ZW50LC5tZC1zdGVwcGVyc3t0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtc3RlcHBlcnN7dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO3dpbGwtY2hhbmdlOmNvbG9yLGJhY2tncm91bmQtY29sb3J9Lm1kLXN0ZXBwZXJzLm1kLW5vLXRyYW5zaXRpb24gKnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5tZC1zdGVwcGVycy5tZC1keW5hbWljLWhlaWdodCAubWQtc3RlcHBlcnMtd3JhcHBlcnt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlcntoZWlnaHQ6MTA0cHh9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZSwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyOmxhc3Qtb2YtdHlwZSAubWQtc3RlcHBlci1udW1iZXI6YWZ0ZXJ7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxley13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtwYWRkaW5nLXRvcDoxNnB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVyLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3Jle2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItdGV4dHtoZWlnaHQ6MzJweDstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3RleHQtYWxpZ246Y2VudGVyfS5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC1ob3Jpem9udGFsLm1kLWFsdGVybmF0aXZlIC5tZC1zdGVwcGVyLWhlYWRlciAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luOjAgOHB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZXt3aWR0aDo5OTk5JTtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcjtjb250ZW50OlxcXCIgXFxcIn0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjphZnRlciwubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVye2xlZnQ6Y2FsYygxMDAlICsgOHB4KX0ubWQtc3RlcHBlcnMubWQtaG9yaXpvbnRhbC5tZC1hbHRlcm5hdGl2ZSAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXN0ZXBwZXItaWNvbjpiZWZvcmUsLm1kLXN0ZXBwZXJzLm1kLWhvcml6b250YWwubWQtYWx0ZXJuYXRpdmUgLm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmV7cmlnaHQ6MzJweH0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItaGVhZGVye2hlaWdodDo1NnB4fS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweCAwIDE2cHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVycy1jb250YWluZXJ7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsLm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1idXR0b24tY29udGVudDpiZWZvcmV7Y29udGVudDpub25lfS5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1pY29uLC5tZC1zdGVwcGVycy5tZC12ZXJ0aWNhbCAubWQtc3RlcHBlci1udW1iZXJ7bWFyZ2luLXJpZ2h0OjEycHh9Lm1kLXN0ZXBwZXJzLm1kLXZlcnRpY2FsIC5tZC1zdGVwcGVye3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6bGFzdC1vZi10eXBlOmFmdGVye2NvbnRlbnQ6bm9uZX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXI6YWZ0ZXJ7d2lkdGg6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O2JvdHRvbTotOHB4O2xlZnQ6MzZweDt6LWluZGV4OjI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVycy1uYXZpZ2F0aW9ue2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleH0ubWQtc3RlcHBlcnMtbmF2aWdhdGlvbiAubWQtc3RlcHBlci1oZWFkZXJ7d2lkdGg6YXV0b30ubWQtc3RlcHBlci1oZWFkZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6NzJweDttYXJnaW46MDstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxO2JvcmRlci1yYWRpdXM6MDtmb250LXdlaWdodDo0MDA7dGV4dC1hbGlnbjpsZWZ0O3RleHQtdHJhbnNmb3JtOm5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyOmZpcnN0LW9mLXR5cGUgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSwubWQtc3RlcHBlci1oZWFkZXI6bGFzdC1vZi10eXBlIC5tZC1idXR0b24tY29udGVudDphZnRlcntjb250ZW50Om5vbmV9Lm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSwubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3J7Zm9udC13ZWlnaHQ6NTAwfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtcmlwcGxle3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudHtwYWRkaW5nOjAgOHB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dHJhbnNpdGlvbjpjb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLXN0ZXBwZXItaGVhZGVyIC5tZC1idXR0b24tY29udGVudDphZnRlciwubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZXtoZWlnaHQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yO2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXJ7d2lkdGg6OTk5OSU7bGVmdDoxMDAlfS5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3Jle3dpZHRoOjE2cHg7bGVmdDotMTZweH0ubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50IHN2Z3t0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGZpbGw7d2lsbC1jaGFuZ2U6Y29sb3IsZmlsbH0ubWQtc3RlcHBlci10ZXh0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjE2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5tZC1zdGVwcGVyLWljb24sLm1kLXN0ZXBwZXItbnVtYmVye21hcmdpbi1yaWdodDo4cHg7dHJhbnNpdGlvbjpjb2xvciAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6Y29sb3J9Lm1kLXN0ZXBwZXItbnVtYmVye3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoyNHB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcjt3aWxsLWNoYW5nZTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yO2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjI0cHg7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1kLXN0ZXBwZXItZG9uZXt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS5tZC1zdGVwcGVyLWRvbmUsLm1kLXN0ZXBwZXItZWRpdGFibGV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0ubWQtc3RlcHBlci1lZGl0YWJsZXt3aWR0aDoxNHB4O2hlaWdodDoxNHB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9uLC5tZC1zdGVwcGVyLWVycm9ye2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxNnB4fS5tZC1zdGVwcGVyLWRlc2NyaXB0aW9ue29wYWNpdHk6LjU0fS5tZC1zdGVwcGVycy13cmFwcGVye292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm5vbmU7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC1zdGVwcGVycy1jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LXdyYXA6bm93cmFwOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSwtd2Via2l0LXRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0ubWQtc3RlcHBlcnt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweCAyNHB4fUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtc3RlcHBlcntwYWRkaW5nOjhweCAxNnB4fX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItY29udGVudHtwYWRkaW5nOjAgMjRweCAwIDYwcHg7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLC0yMHB4LDApO3RyYW5zaXRpb246LjM1cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksaGVpZ2h0LHBhZGRpbmctYm90dG9tLC13ZWJraXQtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0saGVpZ2h0LHBhZGRpbmctYm90dG9tO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0saGVpZ2h0LHBhZGRpbmctYm90dG9tLC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtLGhlaWdodCxwYWRkaW5nLWJvdHRvbX0ubWQtc3RlcHBlcnMubWQtdmVydGljYWwgLm1kLXN0ZXBwZXItY29udGVudC5tZC1hY3RpdmV7aGVpZ2h0OmF1dG87cGFkZGluZy1ib3R0b206NDBweDtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM0QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzRCgwLDAsMCl9Lm1kLXN1YmhlYWRlcnttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzowIDE2cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZmxvdzpyb3cgd3JhcDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9Lm1kLXN3aXRjaHt3aWR0aDphdXRvO21hcmdpbjoxNnB4IDE2cHggMTZweCAwO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9Lm1kLXN3aXRjaDpub3QoLm1kLWRpc2FibGVkKSwubWQtc3dpdGNoOm5vdCgubWQtZGlzYWJsZWQpIC5tZC1zd2l0Y2gtbGFiZWx7Y3Vyc29yOnBvaW50ZXJ9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLWNvbnRhaW5lcnt3aWR0aDozNHB4O21pbi13aWR0aDozNHB4O2hlaWdodDoxNHB4O21hcmdpbjozcHggMDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTRweDt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0ubWQtc3dpdGNoIC5tZC1zd2l0Y2gtdGh1bWJ7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1iOmJlZm9yZXt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3RvcDo1MCU7bGVmdDo1MCU7ei1pbmRleDo1O2NvbnRlbnQ6XFxcIiBcXFwifS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiAubWQtcmlwcGxlLC5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC10aHVtYiAubWQtcmlwcGxle3dpZHRoOjQ4cHghaW1wb3J0YW50O2hlaWdodDo0OHB4IWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czo1MCV9Lm1kLXN3aXRjaCAubWQtc3dpdGNoLXRodW1iIGlucHV0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OWVtfS5tZC1zd2l0Y2ggLm1kLXN3aXRjaC1sYWJlbHtoZWlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZTtsaW5lLWhlaWdodDoyMHB4fS5tZC1zd2l0Y2gubWQtY2hlY2tlZCAubWQtc3dpdGNoLXRodW1iey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDE1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTVweCwwLDApfS5tZC1zd2l0Y2gubWQtcmVxdWlyZWQgbGFiZWw6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtyaWdodDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMnB4KSk7Y29udGVudDpcXFwiKlxcXCI7bGluZS1oZWlnaHQ6MWVtO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWQtdGFibGV7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OmNvbHVtbiB3cmFwO292ZXJmbG93LXg6YXV0b30ubWQtdGFibGUgLm1kLXRhYmxlLWZpeGVkLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZX0ubWQtdGFibGUgLm1kLXRhYmxlLWZpeGVkLWhlYWRlci1hY3RpdmV7Ym9yZGVyLWJvdHRvbToxcHggc29saWR9Lm1kLXRhYmxlIC5tZC10YWJsZS1jb250ZW50ey13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3cteDphdXRvO3RyYW5zaXRpb246aGVpZ2h0IC4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFibGUgLm1kLXRhYmxlLWVtcHR5e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtdGFibGUgdGFibGV7d2lkdGg6MTAwJTtib3JkZXItc3BhY2luZzowO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtvdmVyZmxvdzpoaWRkZW59Lm1kLXRhYmxlLWhlYWR7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjE2cHg7dGV4dC1hbGlnbjpsZWZ0fS5tZC10YWJsZS1oZWFkOmxhc3QtY2hpbGQgLm1kLXRhYmxlLWhlYWQtbGFiZWx7cGFkZGluZy1yaWdodDoyNHB4fS5tZC10YWJsZS1oZWFkLm1kLW51bWVyaWN7dGV4dC1hbGlnbjpyaWdodH0ubWQtdGFibGUtaGVhZC5tZC1zb3J0YWJsZTpmaXJzdC1vZi10eXBlIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uLC5tZC10YWJsZS1oZWFkLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uKy5tZC1zb3J0YWJsZSAubWQtdGFibGUtc29ydGFibGUtaWNvbntyaWdodDo4cHg7bGVmdDphdXRvfS5tZC10YWJsZS1oZWFkIC5tZC1pY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Zm9udC1zaXplOjE2cHh9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246bm90KC5tZC1zb3J0YWJsZS1pY29uKXttYXJnaW46MCA0cHh9Lm1kLXRhYmxlLWhlYWQgLm1kLWljb246Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ubWQtdGFibGUtaGVhZCAubWQtaWNvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5tZC1zb3J0YWJsZXtjdXJzb3I6cG9pbnRlcn0ubWQtc29ydGFibGUubWQtc29ydGVkIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uLC5tZC1zb3J0YWJsZTpob3ZlciAubWQtdGFibGUtc29ydGFibGUtaWNvbntvcGFjaXR5OjF9Lm1kLXNvcnRhYmxlLm1kLXNvcnRlZC1kZXNjIC5tZC10YWJsZS1zb3J0YWJsZS1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyl9Lm1kLXRhYmxlLWhlYWQtY29udGFpbmVye2hlaWdodDo1NnB4O3BhZGRpbmc6MTRweCAwfS5tZC10YWJsZS1oZWFkLWNvbnRhaW5lciwubWQtdGFibGUtaGVhZC1sYWJlbHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRhYmxlLWhlYWQtbGFiZWx7aGVpZ2h0OjI4cHg7cGFkZGluZy1yaWdodDozMnB4O3BhZGRpbmctbGVmdDoyNHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO2xpbmUtaGVpZ2h0OjI4cHh9Lm1kLXRhYmxlLXNvcnRhYmxlLWljb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5OjA7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6Mjt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybX0ubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1lbnRlciwubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlci1sZWF2ZS1hY3RpdmV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9Lm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXItZW50ZXItYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfS5tZC10YWJsZS1yb3d7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLWNvbG9yLGZvbnQtd2VpZ2h0O3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3IsZm9udC13ZWlnaHR9Lm1kLXRhYmxlLXJvdy5tZC1oYXMtc2VsZWN0aW9ue2N1cnNvcjpwb2ludGVyfS5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xle2ZvbnQtd2VpZ2h0OjUwMH10Ym9keSAubWQtdGFibGUtcm93IHRke2JvcmRlci10b3A6MXB4IHNvbGlkfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbnt3aWR0aDo2NnB4fS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbit0ZCAubWQtdGFibGUtY2VsbC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uK3RoIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmctbGVmdDowfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtY2VsbC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC10YWJsZS1jZWxsLWxhYmVsLC5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtdGFibGUtaGVhZC1jb250YWluZXIsLm1kLXRhYmxlLWNlbGwtc2VsZWN0aW9uIC5tZC10YWJsZS1oZWFkLWxhYmVse3BhZGRpbmc6MDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6dmlzaWJsZX0ubWQtdGFibGUtY2VsbC1zZWxlY3Rpb24gLm1kLWNoZWNrYm94e21hcmdpbjowfS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcnt3aWR0aDoxOHB4O21pbi13aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5tZC10YWJsZS1jZWxsLXNlbGVjdGlvbiAubWQtY2hlY2tib3ggLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlcnt0b3A6LTFweDtsZWZ0OjRweH0ubWQtdGFibGUtdG9vbGJhcntwYWRkaW5nLWxlZnQ6MjRweH0ubWQtdGFibGUtdG9vbGJhciAubWQtdGl0bGV7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MTtmb250LXNpemU6MjBweH0ubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjY0cHg7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LGNvbG9yLG1pbi1oZWlnaHQsLXdlYmtpdC10cmFuc2Zvcm07dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LGJhY2tncm91bmQtY29sb3IsYm94LXNoYWRvdyx0cmFuc2Zvcm0sY29sb3IsbWluLWhlaWdodDt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0LC13ZWJraXQtdHJhbnNmb3JtO3dpbGwtY2hhbmdlOm9wYWNpdHksYmFja2dyb3VuZC1jb2xvcixib3gtc2hhZG93LHRyYW5zZm9ybSxjb2xvcixtaW4taGVpZ2h0fS5tZC10b29sYmFye3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OnJvdyB3cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mn0ubWQtdG9vbGJhci5tZC1kZW5zZXttaW4taGVpZ2h0OjQ4cHh9Lm1kLXRvb2xiYXIubWQtbGFyZ2UgLm1kLXRvb2xiYXItcm93LC5tZC10b29sYmFyLm1kLW1lZGl1bSAubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo2NHB4fS5tZC10b29sYmFyLm1kLW1lZGl1bXttaW4taGVpZ2h0Ojg4cHh9Lm1kLXRvb2xiYXIubWQtbGFyZ2V7bWluLWhlaWdodDoxMjhweDthbGlnbi1jb250ZW50OmluaGVyaXR9Lm1kLXRvb2xiYXIubWQtbGFyZ2UubWQtZGVuc2V7bWluLWhlaWdodDo5NnB4fS5tZC10b29sYmFyLm1kLWxhcmdlLm1kLWRlbnNlIC5tZC10b29sYmFyLXJvdysubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDozMnB4fS5tZC10b29sYmFyIC5tZC10b29sYmFyLW9mZnNldHttYXJnaW4tbGVmdDo1NnB4fS5tZC10b29sYmFyIC5tZC1idXR0b24sLm1kLXRvb2xiYXIgLm1kLWljb257ei1pbmRleDoxfS5tZC10b29sYmFyIC5tZC1idXR0b25+Lm1kLXRpdGxlLC5tZC10b29sYmFyIC5tZC1pY29ufi5tZC10aXRsZXttYXJnaW4tbGVmdDoyNHB4fS5tZC10b29sYmFyIC5tZC1idXR0b24rLm1kLWJ1dHRvbiwubWQtdG9vbGJhciAubWQtYnV0dG9uOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjB9Lm1kLXRvb2xiYXIgLm1kLWJ1dHRvbjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowfS5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTEsLm1kLXRvb2xiYXIgLm1kLWRpc3BsYXktMiwubWQtdG9vbGJhciAubWQtdGl0bGV7bWFyZ2luOjA7bWFyZ2luLWxlZnQ6OHB4O292ZXJmbG93OmhpZGRlbjtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7dmVydGljYWwtYWxpZ246dG9wfS5tZC10b29sYmFyIC5tZC1kaXNwbGF5LTF7cGFkZGluZzoxMnB4IDB9Lm1kLXRvb2xiYXIgLm1kLWZpZWxke21hcmdpbi10b3A6MnB4O21hcmdpbi1ib3R0b206MTRweDtwYWRkaW5nLXRvcDoxNnB4fS5tZC10b29sYmFyLXJvd3thbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lm1kLXRvb2xiYXItc2VjdGlvbi1lbmQsLm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjF9Lm1kLXRvb2xiYXItc2VjdGlvbi1zdGFydHstd2Via2l0LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTtvcmRlcjowfS5tZC10b29sYmFyLXNlY3Rpb24tZW5key13ZWJraXQtYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExO29yZGVyOjEwfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo0OHB4fS5tZC10b29sYmFye3BhZGRpbmc6MCA4cHh9Lm1kLXRvb2xiYXIgLm1kLXRvb2xiYXItb2Zmc2V0e21hcmdpbi1sZWZ0OjQ4cHh9Lm1kLXRvb2xiYXIgLm1kLWJ1dHRvbn4ubWQtdGl0bGUsLm1kLXRvb2xiYXIgLm1kLWljb25+Lm1kLXRpdGxle21hcmdpbi1sZWZ0OjE2cHh9fUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsubWQtdG9vbGJhciwubWQtdG9vbGJhci1yb3d7bWluLWhlaWdodDo1NnB4fX0ubWQtdGFibGUtZW1wdHktc3RhdGV7cGFkZGluZy1sZWZ0OjI0cHh9Lm1kLXRhYmxlLWNlbGx7aGVpZ2h0OjQ4cHg7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MThweH0ubWQtdGFibGUtY2VsbC5tZC1udW1lcmlje3RleHQtYWxpZ246cmlnaHR9Lm1kLXRhYmxlLWNlbGw6bGFzdC1jaGlsZCAubWQtdGFibGUtY2VsbC1jb250YWluZXJ7cGFkZGluZy1yaWdodDoyNHB4fS5tZC10YWJsZS1jZWxsLWNvbnRhaW5lcntwYWRkaW5nOjZweCAzMnB4IDZweCAyNHB4fS5tZC10YWJsZS1wYWdpbmF0aW9ue2hlaWdodDo1NnB4O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjE7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Ym9yZGVyLXRvcDoxcHggc29saWQ7Zm9udC1zaXplOjEycHh9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLXRhYmxlLXBhZ2luYXRpb24tcHJldmlvdXN7bWFyZ2luLXJpZ2h0OjJweDttYXJnaW4tbGVmdDoxOHB4fS5tZC10YWJsZS1wYWdpbmF0aW9uIC5tZC1maWVsZHt3aWR0aDo0OHB4O21pbi13aWR0aDozNnB4O21hcmdpbjotMTZweCAyNHB4IDAgMzJweH0ubWQtdGFibGUtcGFnaW5hdGlvbiAubWQtZmllbGQ6YWZ0ZXIsLm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkOmJlZm9yZXtkaXNwbGF5Om5vbmV9Lm1kLXRhYmxlLXBhZ2luYXRpb24gLm1kLWZpZWxkIC5tZC1zZWxlY3QtdmFsdWV7Zm9udC1zaXplOjEzcHh9Lm1kLW1lbnUtY29udGVudC5tZC1wYWdpbmF0aW9uLXNlbGVjdHttYXgtd2lkdGg6ODJweDttaW4td2lkdGg6NTZweDttYXJnaW4tdG9wOjVweH0ubWQtdGFic3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1kLXRhYnMubWQtbm8tdHJhbnNpdGlvbiAqe3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9Lm1kLXRhYnMubWQtZHluYW1pYy1oZWlnaHQgLm1kLXRhYnMtY29udGVudHt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7d2lsbC1jaGFuZ2U6aGVpZ2h0fS5tZC10YWJzLm1kLXRyYW5zcGFyZW50IC5tZC10YWJzLW5hdmlnYXRpb257YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9Lm1kLXRhYnMubWQtZHluYW1pYy1oZWlnaHQgLm1kLXRhYnMtY29udGVudHt0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5tZC10YWJzLm1kLWFsaWdubWVudC1sZWZ0IC5tZC10YWJzLW5hdmlnYXRpb257LXdlYmtpdC1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubWQtdGFicy5tZC1hbGlnbm1lbnQtcmlnaHQgLm1kLXRhYnMtbmF2aWdhdGlvbnstd2Via2l0LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lm1kLXRhYnMubWQtYWxpZ25tZW50LWNlbnRlcmVkIC5tZC10YWJzLW5hdmlnYXRpb24sLm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb257LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubWQtdGFicy5tZC1hbGlnbm1lbnQtZml4ZWQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9ue21heC13aWR0aDoyNjRweDttaW4td2lkdGg6MTYwcHg7LXdlYmtpdC1ib3gtZmxleDoxO2ZsZXg6MX0ubWQtdG9vbGJhciAubWQtdGFic3twYWRkaW5nLWxlZnQ6NDhweH0ubWQtdGFicy1uYXZpZ2F0aW9ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttYXgtd2lkdGg6MjY0cHg7bWluLXdpZHRoOjcycHg7aGVpZ2h0OjQ4cHg7bWFyZ2luOjA7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czowO2ZvbnQtc2l6ZToxM3B4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi1jb250ZW50e3Bvc2l0aW9uOnN0YXRpY30ubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1pY29uLWxhYmVse2hlaWdodDo3MnB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLWJ1dHRvbi1jb250ZW50e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWljb24tbGFiZWwgLm1kLXRhYi1pY29uKy5tZC10YWItbGFiZWx7bWFyZ2luLXRvcDoxMHB4fS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMjRweH0ubWQtdGFicy1pbmRpY2F0b3J7aGVpZ2h0OjJweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt3aWxsLWNoYW5nZTpsZWZ0LHJpZ2h0fS5tZC10YWJzLWluZGljYXRvci5tZC10YWJzLWluZGljYXRvci1sZWZ0e3RyYW5zaXRpb246bGVmdCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkscmlnaHQgLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0ubWQtdGFicy1pbmRpY2F0b3IubWQtdGFicy1pbmRpY2F0b3ItcmlnaHR7dHJhbnNpdGlvbjpyaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksbGVmdCAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5tZC10YWJzLWNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246bm9uZTt3aWxsLWNoYW5nZTpoZWlnaHR9Lm1kLXRhYnMtY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZmxleC13cmFwOm5vd3JhcDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19Lm1kLXRhYnt3aWR0aDoxMDAlOy13ZWJraXQtYm94LWZsZXg6MTtmbGV4OjEgMCAxMDAlO3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo5NDRweCl7Lm1kLXRhYnMubWQtYWxpZ25tZW50LWZpeGVkIC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbnttaW4td2lkdGg6NzJweH0ubWQtdG9vbGJhciAubWQtdGFic3ttYXJnaW46MCAtOHB4O3BhZGRpbmctbGVmdDowfS5tZC10YWJzLW5hdmlnYXRpb24gLm1kLXJpcHBsZXtwYWRkaW5nOjAgMTJweH0ubWQtdGFie3BhZGRpbmc6OHB4fX0ubWQtdG9vbHRpcHtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgOHB4O3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6ODtwb2ludGVyLWV2ZW50czpub25lO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjE1cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSwtd2Via2l0LXRyYW5zZm9ybTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eSx0cmFuc2Zvcm0sLXdlYmtpdC10cmFuc2Zvcm07d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sdG9wLGxlZnQhaW1wb3J0YW50O2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjIycHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZle29wYWNpdHk6MH0ubWQtdG9vbHRpcC5tZC10b29sdGlwLWVudGVyLm1kLXRvb2x0aXAtdG9wLC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtdG9wey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNHB4LDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNHB4LDApIHNjYWxlKC45NSl9Lm1kLXRvb2x0aXAubWQtdG9vbHRpcC1lbnRlci5tZC10b29sdGlwLXJpZ2h0LC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtcmlnaHR7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTRweCwwLDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC00cHgsMCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1ib3R0b20sLm1kLXRvb2x0aXAubWQtdG9vbHRpcC1sZWF2ZS1hY3RpdmUubWQtdG9vbHRpcC1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNHB4LDApIHNjYWxlKC45NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZSguOTUpfS5tZC10b29sdGlwLm1kLXRvb2x0aXAtZW50ZXIubWQtdG9vbHRpcC1sZWZ0LC5tZC10b29sdGlwLm1kLXRvb2x0aXAtbGVhdmUtYWN0aXZlLm1kLXRvb2x0aXAtbGVmdHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKSBzY2FsZSguOTUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCg0cHgsMCwwKSBzY2FsZSguOTUpfUBtZWRpYSAobWF4LXdpZHRoOjk0NHB4KXsubWQtdG9vbHRpcHtoZWlnaHQ6MzJweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDozMnB4fX1cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC92dWUtbWF0ZXJpYWwubWluLmNzc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vue-material/dist/vue-material.min.css\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin() {\n\t\t\tconsole.log(\"test\");\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PGRpdiBjbGFzcz1cIm1kLWxheW91dCBtZC1ndXR0ZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCIgdGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblx0XHRcblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbWQtbGF5b3V0LWl0ZW1cIj5cblx0XHRcdFx0XHQ8ZGl2IHYtc2hvdz1cImlzUmVnaXN0ZXJcIiBjbGFzcz1cIm1kLWxheW91dFwiPlxuXHRcdFx0XHRcdFx0PHNwYW4+UmVnaXN0ZXI8L3NwYW4+XG5cdFx0XHRcdFx0XHQ8bWQtZmllbGQ+XG5cdFx0XHRcdFx0XHRcdDxsYWJlbD5FbWFpbDwvbGFiZWw+XG5cdFx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwicGFzc3dvcmRcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxtZC1pbnB1dCB2LW1vZGVsPVwidXNlcm5hbWVcIiBAa2V5dXAuZW50ZXI9XCJsb2dpblwiPjwvbWQtaW5wdXQ+XG5cdFx0XHRcdFx0XHQ8L21kLWZpZWxkPlxuXHRcdFx0XHRcdFx0PG1kLWZpZWxkPlxuXHRcdFx0XHRcdFx0XHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInBhc3N3b3JkXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IHYtc2hvdz1cIiFpc1JlZ2lzdGVyXCIgY2xhc3M9XCJtZC1sYXlvdXRcIj5cblx0XHRcdFx0XHRcdDxzcGFuPkxvZyBJbjwvc3Bhbj5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdDxsYWJlbD5Vc2VybmFtZTwvbGFiZWw+XG5cdFx0XHRcdFx0XHQ8bWQtaW5wdXQgdi1tb2RlbD1cInVzZXJuYW1lXCIgQGtleXVwLmVudGVyPVwibG9naW5cIj48L21kLWlucHV0PlxuXHRcdFx0XHRcdFx0PC9tZC1maWVsZD5cblx0XHRcdFx0XHRcdDxtZC1maWVsZD5cblx0XHRcdFx0XHRcdFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cblx0XHRcdFx0XHRcdFx0PG1kLWlucHV0IHYtbW9kZWw9XCJwYXNzd29yZFwiIEBrZXl1cC5lbnRlcj1cImxvZ2luXCI+PC9tZC1pbnB1dD5cblx0XHRcdFx0XHRcdDwvbWQtZmllbGQ+XG5cdFx0XHRcdFx0PC9kaXY+XG5cblx0XHRcdFx0XHQ8bWQtYnV0dG9uIEBjbGljaz1cImxvZ2luXCIgY2xhc3M9XCJtZC1yYWlzZWRcIj5Mb2cgSW48L21kLWJ1dHRvbj5cblx0XHRcdFx0XHQ8bWQtYnV0dG9uIEBjbGljaz1cImxvZ2luXCIgY2xhc3M9XCJtZC1yYWlzZWRcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0ZGF0YSgpe1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0dXNlcm5hbWU6IFwiXCIsXG5cdFx0XHRcdHBhc3N3b3JkOiBcIlwiLFxuXHRcdFx0XHRlbWFpbDogXCJcIixcblx0XHRcdFx0aXNSZWdpc3RlcjogZmFsc2UsXG5cdFx0XHRcdGNvbmZpcm1NYXRjaDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbigpe1xuXHRcdFx0XHRjb25zb2xlLmxvZyhcInRlc3RcIik7XG5cdFx0XHR9LFxuXHRcdH0sXG5cdFx0Y2FsY3VsYXRlZDoge1xuXHRcdH1cblxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cblx0LnRpdGxlIHtcblx0XHRmb250LXNpemU6IDVlbTtcblx0fVxuXHQubG9naW5ib3gge1xuXHRcdG1hcmdpbjogNSU7XG5cdFx0bWFyZ2luLXRvcDogNyU7XG5cdFx0cGFkZGluZzogNSU7XG5cdH1cblx0LmRlc2Mge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBMb2dJbi52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0NBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFMQTtBQU9BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFIQTtBQUtBO0FBQ0E7QUFoQkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); /***/ }), /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA2FA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTJGQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46ZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRsZXQgdXNlcm5hbWUgPSBcXFwiYm9qb2x1aXNcXFwiO1xcblxcdFxcdFxcdFxcdGxldCBwYXNzd29yZCA9IFxcXCIxMjM0XFxcIjtcXG5cXG5cXHRcXHRcXHRcXHRsZXQgb1JlcSA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xcblxcdFxcdFxcdFxcdGxldCBpc1ZhbGlkID0ge307XFxuXFxuXFx0XFx0XFx0XFx0b1JlcS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHtcXG5cXHRcXHRcXHQgICAgICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gNCAmJiB0aGlzLnN0YXR1cyA9PSAyMDApIHtcXG5cXHRcXHRcXHQgICAgICAgICAgICBpc1ZhbGlkID0gSlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlVGV4dCk7XFxuXFx0XFx0XFx0ICAgIFxcblxcdFxcdFxcdCAgICAgICAgICAgIGlmKGlzVmFsaWQuaXNWYWxpZCl7XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdCAgICAgICB9XFxuXFx0XFx0XFx0ICAgIH07XFxuXFxuXFx0XFx0XFx0XFx0b1JlcS5vcGVuKFxcXCJHRVRcXFwiLCBcXFwiaHR0cDovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvP25hbWU9Ym9qb2x1aXMmcGFzc3dvcmQ9MTIzNFxcXCIpO1xcblxcdFxcdFxcdFxcdG9SZXEuc2VuZCgpO1xcblxcdFxcdFxcdFxcdGNvbnNvbGUubG9nKG9SZXEpO1xcblxcblxcdFxcdFxcdFxcdFxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=1!./src/App.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n@charset \\\"UTF-8\\\";\\n/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n:root {\\n --md-theme-default-primary: $value\\n ;\\n --md-theme-default-accent: $value\\n ;\\n --md-theme-default-theme: $value\\n ;\\n}\\n.md-theme-default :not(input):not(textarea)::-moz-selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default :not(input):not(textarea)::selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default a:not(.md-button) {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-theme-default a:not(.md-button):hover {\\n color: rgba(188, 170, 164, 0.8);\\n color: var(--md-theme-default-primary-on-background, rgba(188, 170, 164, 0.8));\\n}\\n.md-theme-default a:not(.md-button).md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-theme-default a:not(.md-button).md-accent:hover {\\n color: rgba(158, 158, 158, 0.8);\\n color: var(--md-theme-default-accent-on-background, rgba(158, 158, 158, 0.8));\\n}\\nhtml.md-theme-default {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-theme-default .md-caption, .md-theme-default\\n.md-display-1, .md-theme-default\\n.md-display-2, .md-theme-default\\n.md-display-3, .md-theme-default\\n.md-display-4 {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background-variant, rgba(0, 0, 0, 0.54));\\n}\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-corner, .md-scrollbar.md-theme-default::-webkit-scrollbar-track {\\n background: #e1e1e1;\\n background: var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1);\\n}\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb {\\n background: #757575;\\n background: var(--md-theme-default-scrollbar-on-background-variant, #757575);\\n}\\n.md-app:not(.md-overlap).md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-list.md-theme-default .md-autocomplete-loading {\\n background-color: rgba(255, 255, 255, 0.54);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.54));\\n}\\n.md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: rgba(255, 255, 255, 0.12);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.12));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n -webkit-text-fill-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.38);\\n -webkit-text-fill-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-autocomplete-box-content.md-theme-default:after {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-avatar.md-theme-default.md-avatar-icon {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-icon-disabled, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n}\\n.md-avatar.md-theme-default.md-avatar-icon .md-icon {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n}\\n.md-avatar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-avatar.md-theme-default.md-primary.md-avatar-icon {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-avatar.md-theme-default.md-accent.md-avatar-icon {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #a68f87;\\n background-color: var(--md-theme-default-primary-on-primary, #a68f87);\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #858585;\\n background-color: var(--md-theme-default-accent-on-accent, #858585);\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-primary .md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-primary .md-icon-image {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-accent .md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-accent .md-icon-image {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-raised[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]) {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-button.md-theme-default[disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-button.md-theme-default[disabled] .md-icon-font {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-button.md-theme-default[disabled] .md-icon-image {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-card.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default .md-card-expand .md-card-actions {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-card.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-primary .md-card-expand .md-card-actions {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default.md-primary > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-primary, rgba(0, 0, 0, 0.12));\\n}\\n.md-card.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-accent .md-card-expand .md-card-actions {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-card.md-theme-default.md-accent > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-accent, rgba(0, 0, 0, 0.12));\\n}\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container:after {\\n border-color: #fff;\\n border-color: var(--md-theme-default-background, #fff);\\n}\\n.md-checkbox.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-checkbox.md-theme-default .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.54);\\n}\\n.md-checkbox.md-theme-default.md-disabled .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n background-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-chip.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default .md-icon.md-icon-image svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon {\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default.md-primary .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n}\\n.md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n}\\n.md-chip.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-chip.md-theme-default.md-accent .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26));\\n}\\n.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n}\\n.md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n}\\n.md-chip.md-theme-default.md-disabled {\\n background-color: rgba(0, 0, 0, 0.1);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.1));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent, rgba(0, 0, 0, 0.54));\\n}\\n.md-chips.md-theme-default .md-clear {\\n background-color: rgba(0, 0, 0, 0.2);\\n}\\n.md-content.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-content.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-content.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-app .md-content.md-theme-default {\\n border-left-color: rgba(0, 0, 0, 0.12);\\n border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-datepicker-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-header {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after, .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-body-footer {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-week {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-disabled {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-today {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-datepicker-dialog.md-theme-default .md-datepicker-year-selector {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-divider.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12));\\n}\\n.md-drawer.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-drawer.md-theme-default.md-persistent-mini {\\n border-right-color: rgba(0, 0, 0, 0.12);\\n border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-empty-state.md-theme-default.md-rounded {\\n background-color: rgba(0, 0, 0, 0.06);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.06));\\n}\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-field.md-theme-default:after {\\n background-color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default:before {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-field.md-theme-default .md-helper-text,\\n.md-field.md-theme-default .md-count,\\n.md-field.md-theme-default label {\\n color: rgba(0, 0, 0, 0.54);\\n}\\n.md-field.md-theme-default .md-input::-webkit-input-placeholder,\\n.md-field.md-theme-default .md-textarea::-webkit-input-placeholder {\\n color: rgba(0, 0, 0, 0.54);\\n}\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-has-value .md-input,\\n.md-field.md-theme-default.md-has-value .md-textarea {\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n}\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after {\\n border-color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-disabled:after {\\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.38)), color-stop(33%, rgba(0, 0, 0, 0.38)), color-stop(0%, transparent));\\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 33%, transparent 0%);\\n}\\n.md-field.md-theme-default.md-disabled label,\\n.md-field.md-theme-default.md-disabled .md-input,\\n.md-field.md-theme-default.md-disabled .md-textarea {\\n color: rgba(0, 0, 0, 0.42);\\n}\\n.md-field.md-theme-default > .md-icon:after {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n}\\n.md-field.md-theme-default.md-invalid:after {\\n background-color: #ff1744;\\n background-color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before {\\n border-color: #ff1744;\\n border-color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid label {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid .md-error {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-invalid .md-date-icon,\\n.md-field.md-theme-default.md-invalid .md-date-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-fieldvariant, #ff1744);\\n}\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-highlight .md-input,\\n.md-field.md-theme-default.md-highlight .md-textarea {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-focused > .md-icon, .md-field.md-theme-default.md-highlight > .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-focused label {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-field.md-theme-default.md-disabled .md-icon svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-icon.md-theme-default.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-icon.md-theme-default.md-icon-image svg.md-primary {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-icon.md-theme-default.md-icon-image svg.md-accent {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-icon.md-theme-default.md-icon-font {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-icon.md-theme-default.md-icon-font.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-icon.md-theme-default.md-icon-font.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-list.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-list.md-theme-default .md-highlight .md-list-item-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-list.md-theme-default .md-list-item-container {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-list.md-theme-default [disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26));\\n}\\n.md-list.md-theme-default .md-selected .md-list-item-content,\\n .md-list.md-theme-default .router-link-exact-active .md-list-item-content {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-list.md-theme-default .md-list-item-expand.md-active {\\n border-color: rgba(0, 0, 0, 0.12);\\n border-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-menu-item.md-theme-default.md-primary .md-list-item-link,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-router,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-button {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-menu-item.md-theme-default.md-accent .md-list-item-link,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-router,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-button {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate, .md-progress-bar.md-theme-default.md-query {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate.md-accent, .md-progress-bar.md-theme-default.md-query.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-determinate {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-determinate.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {\\n border-color: rgba(188, 170, 164, 0.38);\\n border-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {\\n border-color: rgba(158, 158, 158, 0.38);\\n border-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-progress-spinner.md-theme-default .md-progress-spinner-circle {\\n stroke: #bcaaa4;\\n stroke: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {\\n stroke: #9e9e9e;\\n stroke: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-radio-container {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-radio-container:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-radio.md-theme-default .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.54);\\n}\\n.md-radio.md-theme-default.md-disabled .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after {\\n background-color: rgba(0, 0, 0, 0.26);\\n}\\n.md-snackbar.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n background-color: #323232;\\n}\\n.md-steppers.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-icon:after, .md-steppers.md-theme-default .md-stepper-icon:before,\\n .md-steppers.md-theme-default .md-stepper-number:after,\\n .md-steppers.md-theme-default .md-stepper-number:before,\\n .md-steppers.md-theme-default .md-stepper:after,\\n .md-steppers.md-theme-default .md-stepper:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-steppers.md-theme-default .md-stepper-number {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n}\\n.md-steppers.md-theme-default .md-stepper-number svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n}\\n.md-steppers.md-theme-default .md-stepper-header .md-button-content {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-steppers.md-theme-default .md-stepper-header .md-button-content:after, .md-steppers.md-theme-default .md-stepper-header .md-button-content:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content, .md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n}\\n.md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-steppervariant, #ff1744);\\n}\\n.md-subheader.md-theme-default {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-subheader.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-switch.md-theme-default.md-checked .md-switch-container {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38));\\n}\\n.md-switch.md-theme-default.md-checked .md-switch-thumb {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-switch.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38));\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-switch.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-switch.md-theme-default .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.38);\\n}\\n.md-switch.md-theme-default .md-switch-thumb {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-switchvariant, #f5f5f5);\\n}\\n.md-switch.md-theme-default.md-disabled .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n}\\n.md-switch.md-theme-default.md-disabled .md-switch-thumb {\\n background-color: #bdbdbd;\\n background-color: var(--md-theme-default-switchvariant, #bdbdbd);\\n}\\n.md-table.md-theme-default .md-table-content,\\n.md-table.md-theme-default .md-table-alternate-header {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n}\\n.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n background-color: rgba(158, 158, 158, 0.2);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.2));\\n}\\n.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell {\\n background-color: rgba(0, 0, 0, 0.08);\\n background-color: var(--md-theme-default-highlight-on-background, rgba(0, 0, 0, 0.08));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected, .md-table.md-theme-default .md-table-row.md-selected-single {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-rowvariant, #f5f5f5);\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple {\\n color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4);\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple {\\n color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n}\\n.md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e);\\n}\\n.md-table.md-theme-default .md-table-row td {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-table.md-theme-default .md-table-head {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54));\\n}\\n.md-table.md-theme-default .md-table-fixed-header-active {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-table.md-theme-default .md-sortable:hover, .md-table.md-theme-default .md-sortable.md-sorted {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-sortable:hover svg, .md-table.md-theme-default .md-sortable.md-sorted svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-table.md-theme-default .md-table-pagination {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-toolbarvariant, #f5f5f5);\\n}\\n.md-toolbar.md-theme-default .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default .md-title,\\n .md-toolbar.md-theme-default .md-display-1,\\n .md-toolbar.md-theme-default .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-primary .md-title,\\n .md-toolbar.md-theme-default.md-primary .md-display-1,\\n .md-toolbar.md-theme-default.md-primary .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-accent .md-title,\\n .md-toolbar.md-theme-default.md-accent .md-display-1,\\n .md-toolbar.md-theme-default.md-accent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent {\\n background-color: transparent;\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-toolbar.md-theme-default.md-transparent .md-title,\\n .md-toolbar.md-theme-default.md-transparent .md-display-1,\\n .md-toolbar.md-theme-default.md-transparent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n}\\n.md-tooltip.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-tooltip, #fff);\\n background-color: rgba(97, 97, 97, 0.9);\\n background-color: var(--md-theme-default-tooltip-on-background, rgba(97, 97, 97, 0.9));\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/App.vue\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/palette.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/functions.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/variables.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/color-contrast.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/theme/mixins.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/base/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdAutocomplete/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdAvatar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdBottomBar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdButton/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdCard/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdCheckbox/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdChips/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdContent/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdDatepicker/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdDrawer/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdEmptyState/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdField/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdIcon/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdList/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdMenu/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdProgress/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdRadio/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSnackbar/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSteppers/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSubheader/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdSwitch/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdTable/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdTabs/theme.scss\",\"/home/bojo/Desktop/eAuction/node_modules/vue-material/dist/components/MdToolbar/theme.scss\"],\"names\":[],\"mappings\":\";AAAA,iBAAiB;ACAjB;;;;;;GAMG;ACNH;;;;;;;;;;;;;;;;;GAiBG;AAOH;;;;;;;;;GASG;AAOH;;;;;;;;;;;;;;;;GAgBG;AAmBH;;;;;;;;;;;;GAYG;AASH;;;;;;;;;;;;;GAaG;AC7GH;;;;;;;;;;;;GAYG;AASH;;;;;;GAMG;AAIH;;;;;;GAMG;AAIH;;;;;;GAMG;AAKH;;;;;;GAMG;AC1DH;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AAqQH;;;;;;GAMG;AAWH;;;;;;;GAOG;AAUH;;;;;;;GAOG;AClUH;;;;;;;;;;;;;;GAcG;AAOH;;;;;;;;;;;;;;;;GAgBG;AAoBH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAcH;;;;;;;;;;GAUG;AAcH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkBH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAkBH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AA9LD;EAEI;KAAyC;EAAzC;KAAyC;EAAzC;KAAyC;CAE5C;AA+DC;EAoDF,0BJyHc;EIxHd,wEAA0F;EAD1F,2BFtGyB;EEuGzB,2EAA0F;CAnDvF;AAFD;EAoDF,0BJyHc;EIxHd,wEAA0F;EAD1F,2BFtGyB;EEuGzB,2EAA0F;CAnDvF;AAFD;EAoDF,eJ+Ge;EI9Gf,8DAA0F;CAnDvF;AAFD;IAoDF,gCJ+Ge;II9Gf,+EAA0F;CCzJrF;ADoGH;IAoDF,eJyHc;IIxHd,6DAA0F;CCjJrF;AD4FH;MAoDF,gCJyHc;MIxHd,8EAA0F;CClJnF;ADqEL;EA4EF,0BFvG6B;EEwG7B,sEAA0F;EAD1F,2BFtGyB;EEuGzB,uFAA0F;CA3EvF;AAsBD;;;;;EAoDF,2BFrGwB;EEsGxB,sFAA0F;CAnDvF;ACzEH;ED2HA,oBF5FwC;EE6FxC,wFAA0F;CCvHrF;AALL;ED2HA,oBF7FoB;EE8FpB,6EAA0F;CCnHrF;ADsCH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;CA3EvF;AE5FL;EFsKE,eJ+Ge;EI9Gf,8DAA0F;CElKrF;AALP;EFsKE,4CFxGkB;EEyGlB,gFAA0F;CE7JvF;AAIL;EFwJE,uBFxGkB;EEyGlB,2DAA0F;CEnHvF;AAtCL;IFwJE,2BFpGsB;IEqGtB,4EAA0F;CEjJnF;AAGH;IF6IJ,4CFxGkB;IEyGlB,gFAA0F;CEpHrF;AA1BD;;MF6IJ,2BFtGyB;MEuGzB,4EAA0F;MAD1F,6CFtGyB;MEuGzB,8FAA0F;CEvInF;AAPH;MF6IJ,0BFtGyB;MEuGzB,2EAA0F;CEnInF;AAXH;MF6IJ,uBFxGkB;MEyGlB,2DAA0F;CErHnF;AAzBH;;QF6IJ,2BFpGsB;QEqGtB,4EAA0F;QAD1F,6CFpGsB;QEqGtB,8FAA0F;CE1HjF;AApBL;QF6IJ,0BFpGsB;QEqGtB,2EAA0F;CEtHjF;AAOX;EF8GE,uBFxGkB;EEyGlB,2DAA0F;EAD1F,yCF9FoB;EE+FpB,0EAA0F;CE1GvF;AC5DH;EHqKA,sCF/F0B;EEgG1B,6EAA0F;EAD1F,YFtFoB;EEuFpB,mEAA0F;CG9JzF;AAJC;IHiKF,YFtFoB;IEuFpB,mEAA0F;IAD1F,WFtFoB;IEuFpB,kEAA0F;CG/JvF;AAIL;EH0JE,0BJ+Ge;EI9Gf,2DAA0F;CGpJvF;AAlBH;IHqKA,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CG9JzF;AAJC;MHiKF,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BFtGyB;MEuGzB,2EAA0F;CG/JvF;AAIL;EH0JE,0BJyHc;EIxHd,0DAA0F;CG/IvF;AAvBH;IHqKA,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CG9JzF;AAJC;MHiKF,2BFtGyB;MEuGzB,2EAA0F;MAD1F,0BFtGyB;MEuGzB,0EAA0F;CG/JvF;ACPH;EJqKA,uBFxGkB;EEyGlB,2DAA0F;CIxJzF;AAXC;IJkKF,eJ+Ge;II9Gf,8DAA0F;CIzJvF;AAPC;MJ+JJ,eJ+Ge;MI9Gf,8DAA0F;CI1JrF;AAHC;QJ4JN,cJ+Ge;QI9Gf,6DAA0F;CI3JnF;AAKP;EJqJA,0BJ+Ge;EI9Gf,2DAA0F;EAD1F,0BFtGyB;EEuGzB,2EAA0F;CIvHzF;AA1BG;IJ0LJ,0BAHiC;IAIjC,sEAA0F;CIzLrF;AAGH;IJ2IF,2BFhGiB;IEiGjB,oEAA0F;CItIvF;AAHC;MJwIJ,0BFhGiB;MEiGjB,mEAA0F;CIvIrF;AAGH;IJmIF,2BFtGyB;IEuGzB,4EAA0F;CIxHvF;AARG;MJ+HN,2BFtGyB;MEuGzB,4EAA0F;CI1HnF;AAHC;QJ4HR,0BFtGyB;QEuGzB,2EAA0F;CI3HjF;AA3CT;EJqKA,uBFxGkB;EEyGlB,2DAA0F;CIxJzF;AAXC;IJkKF,eJyHc;IIxHd,6DAA0F;CIzJvF;AAPC;MJ+JJ,eJyHc;MIxHd,6DAA0F;CI1JrF;AAHC;QJ4JN,cJyHc;QIxHd,4DAA0F;CI3JnF;AAKP;EJqJA,0BJyHc;EIxHd,0DAA0F;EAD1F,0BFtGyB;EEuGzB,0EAA0F;CIvHzF;AA1BG;IJ0LJ,0BAHiC;IAIjC,oEAA0F;CIzLrF;AAGH;IJ2IF,2BFhGiB;IEiGjB,mEAA0F;CItIvF;AAHC;MJwIJ,0BFhGiB;MEiGjB,kEAA0F;CIvIrF;AAGH;IJmIF,2BFtGyB;IEuGzB,2EAA0F;CIxHvF;AARG;MJ+HN,2BFtGyB;MEuGzB,2EAA0F;CI1HnF;AAHC;QJ4HR,0BFtGyB;QEuGzB,0EAA0F;CI3HjF;AJ8CP;EA4EF,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AKlFL;IL4JE,eJ+Ge;II9Gf,8DAA0F;CKtJvF;AAhBH;MLqKA,eJ+Ge;MI9Gf,8DAA0F;CKpKzF;AAED;MLiKA,cJ+Ge;MI9Gf,6DAA0F;CKhKzF;AAGH;IL4JE,eJyHc;IIxHd,6DAA0F;CKjJvF;AArBH;MLqKA,eJyHc;MIxHd,6DAA0F;CKpKzF;AAED;MLiKA,cJyHc;MIxHd,4DAA0F;CKhKzF;AAGH;IL4JE,sCFlGgC;IEmGhC,iGAA0F;IAD1F,2BFnGqB;IEoGrB,6DAA0F;CK3IrF;AAlBP;IL4JE,uBFxGkB;IEyGlB,2DAA0F;IAD1F,2BFtGyB;IEuGzB,+EAA0F;CK1HrF;AAnCP;ML4JE,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BJ+Ge;MI9Gf,2DAA0F;CKjInF;AArCP;QLqKA,2BFtGyB;QEuGzB,4EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,2EAA0F;CKhKzF;AAGH;ML4JE,2BFtGyB;MEuGzB,2EAA0F;MAD1F,0BJyHc;MIxHd,0DAA0F;CK3HnF;AA3CP;QLqKA,2BFtGyB;QEuGzB,2EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,0EAA0F;CKhKzF;AAGH;IL4JE,sCFlGgC;IEmGhC,iGAA0F;CKpHrF;AAzCP;IL4JE,0BJyHc;IIxHd,0DAA0F;CK1GrF;AA5DL;MLqKA,2BFtGyB;MEuGzB,2EAA0F;CKpKzF;AAED;MLiKA,0BFtGyB;MEuGzB,0EAA0F;CKhKzF;AAGH;ML4JE,0BJ+Ge;MI9Gf,2DAA0F;CK3GnF;AA3DP;QLqKA,2BFtGyB;QEuGzB,4EAA0F;CKpKzF;AAED;QLiKA,0BFtGyB;QEuGzB,2EAA0F;CKhKzF;AAGH;IL4JE,2BFnGqB;IEoGrB,2EAA0F;CKpGvF;AAlEH;MLqKA,2BF/F0B;MEgG1B,gFAA0F;CKpKzF;AAED;MLiKA,0BF/F0B;MEgG1B,+EAA0F;CKhKzF;ALmFC;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AMxFH;INkKA,uBFxGkB;IEyGlB,2DAA0F;CMjKzF;AAIC;;IN4JF,2BFtGyB;IEuGzB,+EAA0F;CMpJvF;AALG;;MNwJN,2BFtGyB;MEuGzB,+EAA0F;MAD1F,0BFtGyB;MEuGzB,8EAA0F;CMtJnF;AAML;IN+IF,sCF9FoB;IE+FpB,qFAA0F;CM9IvF;AAIL;INyIE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CMpIvF;AA/BH;MNkKA,0BJ+Ge;MI9Gf,2DAA0F;CMjKzF;AAIC;;MN4JF,2BFtGyB;MEuGzB,4EAA0F;CMpJvF;AALG;;QNwJN,2BFtGyB;QEuGzB,4EAA0F;QAD1F,0BFtGyB;QEuGzB,2EAA0F;CMtJnF;AAML;MN+IF,sCF9FoB;ME+FpB,kFAA0F;CM9IvF;AAIL;INyIE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CMhIvF;AAnCH;MNkKA,0BJyHc;MIxHd,0DAA0F;CMjKzF;AAIC;;MN4JF,2BFtGyB;MEuGzB,2EAA0F;CMpJvF;AALG;;QNwJN,2BFtGyB;QEuGzB,2EAA0F;QAD1F,0BFtGyB;QEuGzB,0EAA0F;CMtJnF;AAML;MN+IF,sCF9FoB;ME+FpB,iFAA0F;CM9IvF;ACzBL;EPsKE,0BJyHc;EIxHd,0DAA0F;EAD1F,sBJyHc;EIxHd,sDAA0F;CO7JrF;AAVP;IPsKE,mBFxGkB;IEyGlB,uDAA0F;CO9JnF;AATT;EPsKE,eJyHc;EIxHd,+CAA0F;COzJrF;AAdP;EPsKE,0BJ+Ge;EI9Gf,2DAA0F;EAD1F,sBJ+Ge;EI9Gf,uDAA0F;COlJrF;AArBP;EPsKE,eJ+Ge;EI9Gf,gDAA0F;CO9IrF;AAzBP;EA8BQ,kCAAuB;CACxB;AA/BP;EAmCU,kCAAuB;CACxB;AApCT;EAwCY,kCAAuB;EACvB,sCAA2B;CAC5B;APgDP;EA4EF,sCFjGsB;EEkGtB,yEAA0F;EAD1F,2BFtGyB;EEuGzB,iEAA0F;CA3EvF;AQ5FL;IRsKE,YFtFoB;IEuFpB,kEAA0F;IAD1F,WFtFoB;IEuFpB,iEAA0F;CQ1JvF;AAbL;IRsKE,sCFhGiB;IEiGjB,oEAA0F;IAD1F,YFtFoB;IEuFpB,0DAA0F;CQrIrF;AAlCP;MRsKE,WFtFoB;MEuFpB,yDAA0F;CQhJnF;AAvBT;MRsKE,4CFxGkB;MEyGlB,gFAA0F;MAD1F,2BFhGiB;MEiGjB,uEAA0F;CQtInF;AAjCT;QRsKE,0BFhGiB;QEiGjB,sEAA0F;QAD1F,2BFhGiB;QEiGjB,uEAA0F;CQvIjF;AAhCX;IRsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CQzGvF;AA9DL;MRsKE,YFhFY;MEiFZ,sDAA0F;MAD1F,sCFnGqB;MEoGrB,wEAA0F;CQtHrF;AAjDP;MRsKE,YFtFoB;MEuFpB,0DAA0F;MAD1F,sCFhGiB;MEiGjB,oEAA0F;CQ3GnF;AA5DT;QRsKE,4CFxGkB;QEyGlB,gFAA0F;CQ5GjF;AA3DX;IRsKE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CQ9EvF;AAzFL;MRsKE,YFhFY;MEiFZ,sDAA0F;MAD1F,sCFnGqB;MEoGrB,wEAA0F;CQ3FrF;AA5EP;MRsKE,sCFhGiB;MEiGjB,oEAA0F;MAD1F,YFtFoB;MEuFpB,0DAA0F;CQhFnF;AAvFT;QRsKE,4CFxGkB;QEyGlB,gFAA0F;CQjFjF;AAtFX;IRsKE,qCFjGsB;IEkGtB,wEAA0F;IAD1F,2BFrGwB;IEsGxB,gEAA0F;CQzEvF;AAIL;EAIQ,qCAA2B;CAC5B;ARbH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AS5FL;ITsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CS/JvF;AARL;ITsKE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CS1JvF;AAED;ITuJF,uCF9FoB;IE+FpB,sFAA0F;CStJvF;ATyED;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AU5FL;IVsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CU1JvF;AAbL;IVsKE,uBFxGkB;IEyGlB,2DAA0F;CUpJrF;AAnBP;IVsKE,uBFxGkB;IEyGlB,2DAA0F;IAD1F,2BFtGyB;IEuGzB,+EAA0F;CU9IvF;AAzBL;IVsKE,2BFrGwB;IEsGxB,8EAA0F;CU1IvF;AA7BL;IVsKE,2BFnGqB;IEoGrB,2EAA0F;CUtIvF;AAjCL;IVsKE,eJ+Ge;II9Gf,8DAA0F;CUlIvF;AArCL;;;IVsKE,sCF9FoB;IE+FpB,uEAA0F;CU3HrF;AA5CP;IVsKE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CUpHrF;AAnDP;;IVsKE,eJ+Ge;II9Gf,8DAA0F;CU7GrF;AA1DP;IVsKE,yCF9FoB;IE+FpB,wFAA0F;CUxGvF;AV2BD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AAFD;EA4EF,sCF9FoB;EE+FpB,uEAA0F;CA3EvF;AAFD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AW5FL;IXsKE,wCF9FoB;IE+FpB,uFAA0F;CWhKvF;ACJC;EZmKJ,0BFnGqB;EEoGrB,0EAA0F;CYlKrF;AAGH;EZ8JF,2BFnGqB;EEoGrB,2EAA0F;CY7JvF;AAIL;EZwJE,sCFnGqB;EEoGrB,wEAA0F;CYnJvF;AAjBC;EZmKJ,cJ+Ge;EI9Gf,6DAA0F;CYlKrF;AAGH;EZ8JF,eJ+Ge;EI9Gf,8DAA0F;CY7JvF;AAPC;EZmKJ,cJyHc;EIxHd,4DAA0F;CYlKrF;AAGH;EZ8JF,eJyHc;EIxHd,6DAA0F;CY7JvF;ACVL;EAIQ,sCAA2B;CAC5B;AALP;EbsKE,0BJ+Ge;EI9Gf,2DAA0F;Ca9JrF;AATP;;;EAcQ,2BAAgB;CACjB;AAfP;;EAoBU,2BAAgB;CACjB;AArBT;;;EA4BU,6CAAkC;CACnC;AA7BT;EAkCU,kCAAuB;CACxB;AAnCT;EbsKE,sBJ+Ge;EI9Gf,uDAA0F;CahInF;AAvCT;EA4CU,8JAAoG;EAApG,6GAAoG;CACrG;AA7CT;;;EAkDU,2BAAgB;CACjB;AAnDT;EbsKE,0BFvG6B;EEwG7B,sEAA0F;Ca1DrF;AA7GP;EbuPE,0BJjOe;EIkOf,gEAAuF;CarIlF;AAnHP;EbuPE,sBJjOe;EIkOf,4DAAuF;CahIhF;AAxHT;EbuPE,eJjOe;EIkOf,qDAAuF;Ca3HlF;AA7HP;EbuPE,eJjOe;EIkOf,qDAAuF;CavHlF;AAjIP;;EbuPE,eJjOe;EIkOf,qDAAuF;EADvF,cJjOe;EIkOf,oDAAuF;CajHlF;AAvIP;;;EbsKE,eJ+Ge;EI9Gf,8DAA0F;CaxBrF;AA/IP;EbsKE,eJ+Ge;EI9Gf,8DAA0F;EAD1F,cJ+Ge;EI9Gf,6DAA0F;CanBrF;AApJP;EbsKE,eJ+Ge;EI9Gf,8DAA0F;CabrF;AA1JP;EbsKE,0BFnGqB;EEoGrB,0EAA0F;CaPrF;AChKP;EdsKE,0BFhGiB;EEiGjB,sEAA0F;Cc1JrF;AAbP;IdsKE,cJ+Ge;II9Gf,6DAA0F;Cc/JnF;AART;IdsKE,cJyHc;IIxHd,4DAA0F;Cc3JnF;AAZT;EdsKE,2BFhGiB;EEiGjB,uEAA0F;Cc7IvF;AA1BL;IdsKE,eJ+Ge;II9Gf,8DAA0F;CclJrF;AArBP;IdsKE,eJyHc;IIxHd,6DAA0F;Cc9IrF;AdiEH;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;Ae5FL;IfsKE,2BFrGwB;IEsGxB,8EAA0F;CehKvF;AAPL;IfsKE,2BFrGwB;IEsGxB,8EAA0F;Ce5JvF;AAXL;IfsKE,sCF9FoB;IE+FpB,qFAA0F;CexJvF;AAfL;IfsKE,2BFtGyB;IEuGzB,+EAA0F;Ce/IvF;AAxBL;MfsKE,sCF9FoB;ME+FpB,qFAA0F;MAD1F,2BFtGyB;MEuGzB,+EAA0F;CehJrF;AAvBP;IfsKE,2BFnGqB;IEoGrB,2EAA0F;Ce3IvF;AA5BL;;IfsKE,eJ+Ge;II9Gf,8DAA0F;CerIrF;AAlCP;IfsKE,kCF9FoB;IE+FpB,iFAA0F;CehIvF;ACtCH;;;EhBqKA,eJ+Ge;EI9Gf,8DAA0F;CgBlKzF;AAJD;;;EhBqKA,eJyHc;EIxHd,6DAA0F;CgBlKzF;ACkCH;EjB+HE,4CJ+Ge;EI9Gf,iFAA0F;CiBvHvF;AA3CD;;;IjBiKF,0BJ+Ge;II9Gf,2DAA0F;CiBhKvF;AAgCL;IjB+HE,4CJyHc;IIxHd,gFAA0F;CiBxHrF;AA1CH;;;MjBiKF,0BJyHc;MIxHd,0DAA0F;CiBhKvF;AAgCL;EjB+HE,4CJ+Ge;EI9Gf,iFAA0F;CiB/GvF;AA1CH;IjBwJA,0BJ+Ge;II9Gf,2DAA0F;CiBvJzF;AAuBH;IjB+HE,4CJyHc;IIxHd,gFAA0F;CiBhHrF;AAzCL;MjBwJA,0BJyHc;MIxHd,0DAA0F;CiBvJzF;AAID;EjBkJA,0BJ+Ge;EI9Gf,2DAA0F;CiBjJzF;AAED;EjB8IA,4CJ+Ge;EI9Gf,iFAA0F;CiB7IzF;AAED;EjB0IA,wCJ+Ge;EI9Gf,6EAA0F;CiBzIzF;AAVD;EjBkJA,0BJyHc;EIxHd,0DAA0F;CiBjJzF;AAED;EjB8IA,4CJyHc;EIxHd,gFAA0F;CiB7IzF;AAED;EjB0IA,wCJyHc;EIxHd,4EAA0F;CiBzIzF;AAID;EjBoIA,gBJ+Ge;EI9Gf,iDAA0F;CiBnIzF;AAFD;EjBoIA,gBJyHc;EIxHd,gDAA0F;CiBnIzF;ACpCH;ElBsKE,sBJyHc;EIxHd,sDAA0F;CkB9JrF;AATP;IlBsKE,0BJyHc;IIxHd,0DAA0F;CkB/JnF;AART;ElBsKE,eJyHc;EIxHd,+CAA0F;CkB1JrF;AAbP;ElBsKE,sBJ+Ge;EI9Gf,uDAA0F;CkBhJrF;AAvBP;IlBsKE,0BJ+Ge;II9Gf,2DAA0F;CkBjJnF;AAtBT;ElBsKE,eJ+Ge;EI9Gf,gDAA0F;CkB5IrF;AA3BP;EAgCQ,kCAAuB;CACxB;AAjCP;EAqCU,kCAAuB;CACxB;AAtCT;EA0CY,kCAAuB;CAKxB;AA/CX;IA6Cc,sCAA2B;CAC5B;AlB4CT;EA4EF,YFtFoB;EEuFpB,kEAA0F;EmBlKtF,0BAAyB;CnBuF1B;AAFD;EA4EF,uBFxGkB;EEyGlB,2DAA0F;EAD1F,2BFtGyB;EEuGzB,+EAA0F;CA3EvF;AoB5FL;;;;;IpBsKE,sCF9FoB;IE+FpB,qFAA0F;CoB3JrF;AAZP;IpBsKE,sCFpGsB;IEqGtB,uFAA0F;IAD1F,YFtFoB;IEuFpB,+DAA0F;CoBhJvF;AAvBL;MpBsKE,YFtFoB;MEuFpB,+DAA0F;MAD1F,WFtFoB;MEuFpB,8DAA0F;CoBjJrF;AAtBP;IpBsKE,2BFpGsB;IEqGtB,4EAA0F;CoBtIrF;AAjCP;MpBsKE,sCF9FoB;ME+FpB,qFAA0F;CoBvInF;AAhCT;IpBsKE,2BFtGyB;IEuGzB,+EAA0F;CoBhInF;AAvCT;IpBsKE,0BJ+Ge;II9Gf,yEAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CoBtHnF;AAjDT;MpBsKE,2BFtGyB;MEuGzB,4EAA0F;MAD1F,0BFtGyB;MEuGzB,2EAA0F;CoBvHjF;AAhDX;IpBuPE,eJjOe;IIkOf,uDAAuF;CoBjMhF;AAvDT;IpBuPE,eJjOe;IIkOf,uDAAuF;IADvF,cJjOe;IIkOf,sDAAuF;CoB5LhF;ApB8BL;EA4EF,2BFrGwB;EEsGxB,8EAA0F;CA3EvF;AqB5FL;IrBsKE,eJ+Ge;II9Gf,8DAA0F;CqBjKvF;ACNL;EtBsKE,4CJyHc;EIxHd,gFAA0F;CsBlKrF;AALP;EtBsKE,0BJyHc;EIxHd,0DAA0F;CsB9JrF;AATP;EtBsKE,eJyHc;EIxHd,+CAA0F;CsB1JrF;AAbP;EtBsKE,4CJ+Ge;EI9Gf,iFAA0F;CsBpJrF;AAnBP;EtBsKE,0BJ+Ge;EI9Gf,2DAA0F;CsBhJrF;AAvBP;EtBsKE,eJ+Ge;EI9Gf,gDAA0F;CsB5IrF;AA3BP;EAgCQ,sCAA2B;CAC5B;AAjCP;EtBuPE,0BJoCc;EInCd,iEAAuF;CsBnNlF;AArCP;EAyCU,sCAA2B;CAC5B;AA1CT;EtBuPE,0BJuCc;EItCd,iEAAuF;CsB1MhF;AC9CT;;EvBsKE,uBFxGkB;EEyGlB,2DAA0F;CuBlKvF;AALL;EvBsKE,2BFtGyB;EEuGzB,+EAA0F;EAD1F,2CJyHc;EIxHd,+EAA0F;CuB7JvF;AAVL;EvBsKE,sCFjGsB;EEkGtB,uFAA0F;CuBxJrF;AAfP;EvBuPE,0BJoCc;EInCd,8DAAuF;CuB5LlF;AA5DP;IvBsKE,0BJ+Ge;II9Gf,yEAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CuB9HnF;AAzCT;MA8BY,YAAW;CACZ;AA/BX;MAkCY,uBAAsB;MACtB,mBAAkB;CAKnB;AAxCX;QvBsKE,sBJ+Ge;QI9Gf,uDAA0F;CuBhI/E;AAvCb;IvBsKE,0BJyHc;IIxHd,wEAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CuB5GnF;AA3DT;MAgDY,YAAW;CACZ;AAjDX;MAoDY,uBAAsB;MACtB,mBAAkB;CAKnB;AA1DX;QvBsKE,sBJyHc;QIxHd,sDAA0F;CuB9G/E;AAzDb;EvBsKE,sCF9FoB;EE+FpB,qFAA0F;CuBvGrF;AAhEP;EvBsKE,2BFrGwB;EEsGxB,8EAA0F;CuBlGvF;AArEL;EvBsKE,yCF9FoB;EE+FpB,wFAA0F;CuB9FvF;AAzEL;EvBsKE,2BFtGyB;EEuGzB,+EAA0F;CuBnFrF;AApFP;IvBsKE,2BFtGyB;IEuGzB,+EAA0F;IAD1F,0BFtGyB;IEuGzB,8EAA0F;CuBpFnF;AAnFT;EvBsKE,sCF9FoB;EE+FpB,qFAA0F;CuB9EvF;ACxFH;ExBqKA,uBFxGkB;EEyGlB,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,8EAA0F;CwBzHvF;AAxBG;MxBgJN,2BFtGyB;MEuGzB,+EAA0F;CwB/InF;AAED;MxB4IN,0BFtGyB;MEuGzB,8EAA0F;CwBvInF;AAHC;QxByIR,yBFtGyB;QEuGzB,6EAA0F;CwBxIjF;AAIL;MxBmIJ,eJ+Ge;MI9Gf,8DAA0F;CwB1HrF;AAPC;QxBgIN,eJ+Ge;QI9Gf,8DAA0F;CwB3HnF;AAHC;UxB6HR,cJ+Ge;UI9Gf,6DAA0F;CwB5HjF;AAMT;ExBqHA,0BJ+Ge;EI9Gf,yEAA0F;CwBpHzF;AAlDD;ExBqKA,0BJ+Ge;EI9Gf,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,2EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,4EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,2EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,0EAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,4EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,4EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,2EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,uFAA0F;CwBpHzF;AAlDD;ExBqKA,0BJyHc;EIxHd,wEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,0EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,2EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,0EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,yEAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,2EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,2EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,0EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,sFAA0F;CwBpHzF;AAlDD;ExBqKA,uBFxGkB;EEyGlB,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,8EAA0F;CwBzHvF;AAxBG;MxBgJN,2BFtGyB;MEuGzB,+EAA0F;CwB/InF;AAED;MxB4IN,0BFtGyB;MEuGzB,8EAA0F;CwBvInF;AAHC;QxByIR,yBFtGyB;QEuGzB,6EAA0F;CwBxIjF;AAIL;MxBmIJ,eJ+Ge;MI9Gf,8DAA0F;CwB1HrF;AAPC;QxBgIN,eJ+Ge;QI9Gf,8DAA0F;CwB3HnF;AAHC;UxB6HR,cJ+Ge;UI9Gf,6DAA0F;CwB5HjF;AAMT;ExBqHA,0BJ+Ge;EI9Gf,yEAA0F;CwBpHzF;AAlDD;ExBqKA,0BJ+Ge;EI9Gf,yEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,2EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,4EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,2EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,0EAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,4EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,4EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,2EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,uFAA0F;CwBpHzF;AAlDD;ExBqKA,0BJyHc;EIxHd,wEAA0F;CwBxHzF;AA3CC;IxBkKF,0BFtGyB;IEuGzB,0EAA0F;CwBzHvF;AAtCG;MxB8JN,2BFtGyB;MEuGzB,2EAA0F;CwB7JnF;AAED;MxB0JN,0BFtGyB;MEuGzB,0EAA0F;CwBrJnF;AAHC;QxBuJR,yBFtGyB;QEuGzB,yEAA0F;CwBtJjF;AAkBL;MxBmIJ,2BFtGyB;MEuGzB,2EAA0F;CwB1HrF;AAPC;QxBgIN,2BFtGyB;QEuGzB,2EAA0F;CwB3HnF;AAHC;UxB6HR,0BFtGyB;UEuGzB,0EAA0F;CwB5HjF;AAMT;ExBqHA,sCFtGyB;EEuGzB,sFAA0F;CwBpHzF;AxBuCC;EA4EF,2BFtGyB;EEuGzB,uFAA0F;EAgF1F,0BJoCc;EInCd,kEAAuF;CA5JpF;AyB3FH;IzBqKA,2BFtGyB;IEuGzB,uFAA0F;CyBhKzF;AAHC;MzBkKF,0BFtGyB;MEuGzB,sFAA0F;CyBjKvF;AAaH;;;IzBmJA,2BFtGyB;IEuGzB,uFAA0F;CyBhJzF;AAGH;IzB4IE,0BJ+Ge;II9Gf,2DAA0F;IAD1F,2BFtGyB;IEuGzB,4EAA0F;CyB1HvF;AA5CH;MzBqKA,2BFtGyB;MEuGzB,4EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,2EAA0F;CyBjKvF;AAMD;MzB0JF,2BFtGyB;MEuGzB,4EAA0F;CyBzJvF;AAKH;;;MzBmJA,2BFtGyB;MEuGzB,4EAA0F;CyBhJzF;AAGH;IzB4IE,0BJyHc;IIxHd,0DAA0F;IAD1F,2BFtGyB;IEuGzB,2EAA0F;CyBlHvF;AApDH;MzBqKA,2BFtGyB;MEuGzB,2EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,0EAA0F;CyBjKvF;AAMD;MzB0JF,2BFtGyB;MEuGzB,2EAA0F;CyBzJvF;AAKH;;;MzBmJA,2BFtGyB;MEuGzB,2EAA0F;CyBhJzF;AAGH;IA8BM,8BAA6B;IzB8GjC,2BFtGyB;IEuGzB,+EAA0F;CyB3GvF;AA3DH;MzBqKA,2BFtGyB;MEuGzB,+EAA0F;CyBhKzF;AAHC;QzBkKF,0BFtGyB;QEuGzB,8EAA0F;CyBjKvF;AAaH;;;MzBmJA,2BFtGyB;MEuGzB,+EAA0F;CyBhJzF;AzBmEC;EA4EF,YFtFoB;EEuFpB,6DAA0F;EAD1F,wCF3FkB;EE4FlB,uFAA0F;CA3EvF\",\"file\":\"App.vue\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";\\n/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n:root {\\n --md-theme-default-primary: $value\\n ;\\n --md-theme-default-accent: $value\\n ;\\n --md-theme-default-theme: $value\\n ; }\\n\\n.md-theme-default :not(input):not(textarea)::selection {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-theme-default a:not(.md-button) {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-theme-default a:not(.md-button):hover {\\n color: rgba(188, 170, 164, 0.8);\\n color: var(--md-theme-default-primary-on-background, rgba(188, 170, 164, 0.8)); }\\n .md-theme-default a:not(.md-button).md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-theme-default a:not(.md-button).md-accent:hover {\\n color: rgba(158, 158, 158, 0.8);\\n color: var(--md-theme-default-accent-on-background, rgba(158, 158, 158, 0.8)); }\\n\\nhtml.md-theme-default {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n\\n.md-theme-default .md-caption, .md-theme-default\\n.md-display-1, .md-theme-default\\n.md-display-2, .md-theme-default\\n.md-display-3, .md-theme-default\\n.md-display-4 {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background-variant, rgba(0, 0, 0, 0.54)); }\\n\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-corner, .md-scrollbar.md-theme-default::-webkit-scrollbar-track {\\n background: #e1e1e1;\\n background: var(--md-theme-default-scrollbar-background-on-background-variant, #e1e1e1); }\\n\\n.md-scrollbar.md-theme-default::-webkit-scrollbar-thumb {\\n background: #757575;\\n background: var(--md-theme-default-scrollbar-on-background-variant, #757575); }\\n\\n.md-app:not(.md-overlap).md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n\\n.md-list.md-theme-default .md-autocomplete-items .md-highlight-text-match {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-list.md-theme-default .md-autocomplete-loading {\\n background-color: rgba(255, 255, 255, 0.54);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.54)); }\\n\\n.md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box {\\n background-color: rgba(255, 255, 255, 0.12);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.12)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box input {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87);\\n -webkit-text-fill-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused label,\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused input {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.38);\\n -webkit-text-fill-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-toolbar .md-autocomplete.md-theme-default.md-autocomplete-box.md-focused svg {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n\\n.md-autocomplete-box-content.md-theme-default:after {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n\\n.md-avatar.md-theme-default.md-avatar-icon {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-icon-disabled, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff); }\\n .md-avatar.md-theme-default.md-avatar-icon .md-icon {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon-disabled, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon-disabled, #fff); }\\n\\n.md-avatar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-avatar.md-theme-default.md-primary.md-avatar-icon {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-avatar.md-theme-default.md-primary.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-avatar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-avatar.md-theme-default.md-accent.md-avatar-icon {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-avatar.md-theme-default.md-accent.md-avatar-icon .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-bottom-bar.md-theme-default.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-bottom-bar.md-theme-default.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-bottom-bar.md-theme-default.md-type-shift {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-bottom-bar.md-theme-default.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #a68f87;\\n background-color: var(--md-theme-default-primary-on-primary, #a68f87); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-bottom-bar.md-theme-default.md-accent.md-type-fixed {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-fixed .md-bottom-bar-item.md-active .md-icon svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-bottom-bar.md-theme-default.md-accent.md-type-shift {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift > .md-ripple .md-ripple-wave {\\n background-color: #858585;\\n background-color: var(--md-theme-default-accent-on-accent, #858585); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-bottom-bar.md-theme-default.md-accent.md-type-shift .md-bottom-bar-item .md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-button.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-primary .md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-primary .md-icon-image {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-button.md-theme-default.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-accent .md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-accent .md-icon-image {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-button.md-theme-default.md-raised[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-button.md-theme-default.md-raised:not([disabled]) {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87));\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-raised:not([disabled]).md-accent .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab[disabled] {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-disabled-background-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-button.md-theme-default.md-fab:not([disabled]) {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-button.md-theme-default.md-fab:not([disabled]) .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]) .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-font {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default.md-fab:not([disabled]).md-primary .md-icon-image {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-button.md-theme-default[disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-button.md-theme-default[disabled] .md-icon-font {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-button.md-theme-default[disabled] .md-icon-image {\\n fill: rgba(0, 0, 0, 0.38);\\n fill: var(--md-theme-default-icon-disabled-on-background, rgba(0, 0, 0, 0.38)); }\\n\\n.md-card.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default .md-card-expand .md-card-actions {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-card.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-primary .md-card-expand .md-card-actions {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-primary .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-primary .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default.md-primary > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-primary, rgba(0, 0, 0, 0.12)); }\\n .md-card.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-accent .md-card-expand .md-card-actions {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent),\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-card.md-theme-default.md-accent .md-card-header .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon,\\n .md-card.md-theme-default.md-accent .md-card-actions .md-button:not(.md-primary):not(.md-accent).md-icon-button .md-icon {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54));\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.54)); }\\n .md-card.md-theme-default.md-accent > .md-card-area:after {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-accent, rgba(0, 0, 0, 0.12)); }\\n\\n.md-checkbox.md-theme-default.md-checked .md-checkbox-container {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-checkbox.md-theme-default.md-checked .md-checkbox-container:after {\\n border-color: #fff;\\n border-color: var(--md-theme-default-background, #fff); }\\n\\n.md-checkbox.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-checkbox-container {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-checkbox.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-checkbox.md-theme-default .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.54); }\\n\\n.md-checkbox.md-theme-default.md-disabled .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-checkbox.md-theme-default.md-disabled.md-checked .md-checkbox-container {\\n border-color: rgba(0, 0, 0, 0.26);\\n background-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-chip.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default .md-icon.md-icon-image svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-primary, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-icon, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-icon {\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-deletable:not(.md-disabled):hover .md-input-action .md-icon svg, .md-chip.md-theme-default.md-clickable:not(.md-disabled):hover .md-input-action .md-icon svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default.md-primary .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff);\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54)); }\\n .md-chip.md-theme-default.md-primary.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-primary.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87)); }\\n .md-chip.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-chip.md-theme-default.md-accent .md-input-action {\\n color: #fff;\\n color: var(--md-theme-default-icon-on-disabled, #fff);\\n background-color: rgba(0, 0, 0, 0.26);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.26)); }\\n .md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover {\\n background-color: rgba(0, 0, 0, 0.54);\\n background-color: var(--md-theme-default-icon, rgba(0, 0, 0, 0.54));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-icon, #fff); }\\n .md-chip.md-theme-default.md-accent.md-deletable:not(.md-disabled):hover .md-input-action, .md-chip.md-theme-default.md-accent.md-clickable:not(.md-disabled):hover .md-input-action {\\n background-color: rgba(255, 255, 255, 0.87);\\n background-color: var(--md-theme-default-background, rgba(255, 255, 255, 0.87)); }\\n .md-chip.md-theme-default.md-disabled {\\n background-color: rgba(0, 0, 0, 0.1);\\n background-color: var(--md-theme-default-highlight, rgba(0, 0, 0, 0.1));\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent, rgba(0, 0, 0, 0.54)); }\\n\\n.md-chips.md-theme-default .md-clear {\\n background-color: rgba(0, 0, 0, 0.2); }\\n\\n.md-content.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-content.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-content.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-app .md-content.md-theme-default {\\n border-left-color: rgba(0, 0, 0, 0.12);\\n border-left-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-datepicker-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-header {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:after, .md-datepicker-dialog.md-theme-default .md-datepicker-body-header:before {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-body-footer {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-week {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-disabled {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-today {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-day-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button:hover,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button:hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-day-button.md-datepicker-selected {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-month-button.md-datepicker-selected,\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-button.md-datepicker-selected {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-datepicker-dialog.md-theme-default .md-datepicker-year-selector {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-dialog.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-divider.md-theme-default {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider, rgba(0, 0, 0, 0.12)); }\\n\\n.md-drawer.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-drawer.md-theme-default.md-persistent-mini {\\n border-right-color: rgba(0, 0, 0, 0.12);\\n border-right-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-empty-state.md-theme-default .md-empty-state-icon.md-icon-font {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-empty-state.md-theme-default.md-rounded {\\n background-color: rgba(0, 0, 0, 0.06);\\n background-color: var(--md-theme-default-disabled, rgba(0, 0, 0, 0.06)); }\\n\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-image svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-empty-state.md-theme-default.md-primary .md-empty-state-icon.md-icon-font {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-image svg {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-empty-state.md-theme-default.md-accent .md-empty-state-icon.md-icon-font {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-field.md-theme-default:after {\\n background-color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default:before {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-field.md-theme-default .md-helper-text,\\n.md-field.md-theme-default .md-count,\\n.md-field.md-theme-default label {\\n color: rgba(0, 0, 0, 0.54); }\\n\\n.md-field.md-theme-default .md-input::-webkit-input-placeholder,\\n.md-field.md-theme-default .md-textarea::-webkit-input-placeholder {\\n color: rgba(0, 0, 0, 0.54); }\\n\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-has-value .md-input,\\n.md-field.md-theme-default.md-has-value .md-textarea {\\n -webkit-text-fill-color: rgba(0, 0, 0, 0.87); }\\n\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):after {\\n border-color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default.md-has-textarea:not(.md-autogrow):before {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-disabled:after {\\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.38) 0%, rgba(0, 0, 0, 0.38) 33%, transparent 0%); }\\n\\n.md-field.md-theme-default.md-disabled label,\\n.md-field.md-theme-default.md-disabled .md-input,\\n.md-field.md-theme-default.md-disabled .md-textarea {\\n color: rgba(0, 0, 0, 0.42); }\\n\\n.md-field.md-theme-default > .md-icon:after {\\n background-color: #fafafa;\\n background-color: var(--md-theme-default-background-variant, #fafafa); }\\n\\n.md-field.md-theme-default.md-invalid:after {\\n background-color: #ff1744;\\n background-color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid.md-has-textarea:not(.md-autogrow):before {\\n border-color: #ff1744;\\n border-color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid label {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid .md-error {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-invalid .md-date-icon,\\n.md-field.md-theme-default.md-invalid .md-date-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-fieldvariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-fieldvariant, #ff1744); }\\n\\n.md-field.md-theme-default.md-focused .md-input,\\n.md-field.md-theme-default.md-focused .md-textarea, .md-field.md-theme-default.md-highlight .md-input,\\n.md-field.md-theme-default.md-highlight .md-textarea {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-focused > .md-icon, .md-field.md-theme-default.md-highlight > .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-focused label {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-field.md-theme-default.md-disabled .md-icon svg {\\n fill: rgba(0, 0, 0, 0.26);\\n fill: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n\\n.md-icon.md-theme-default.md-icon-image svg {\\n fill: rgba(0, 0, 0, 0.54);\\n fill: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-icon.md-theme-default.md-icon-image svg.md-primary {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-icon.md-theme-default.md-icon-image svg.md-accent {\\n fill: #9e9e9e;\\n fill: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-icon.md-theme-default.md-icon-font {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-icon-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-icon.md-theme-default.md-icon-font.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-icon.md-theme-default.md-icon-font.md-accent {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-list.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default.md-double-line .md-list-item-text :nth-child(2) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-list.md-theme-default.md-triple-line .md-list-item-text :nth-child(3) {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-list.md-theme-default .md-highlight .md-list-item-container {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-list.md-theme-default .md-list-item-container {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default .md-list-item-container:not(.md-list-item-default):not([disabled]):hover {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12));\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-list.md-theme-default [disabled] {\\n color: rgba(0, 0, 0, 0.26);\\n color: var(--md-theme-default-disabled-on-background, rgba(0, 0, 0, 0.26)); }\\n .md-list.md-theme-default .md-selected .md-list-item-content,\\n .md-list.md-theme-default .router-link-exact-active .md-list-item-content {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-list.md-theme-default .md-list-item-expand.md-active {\\n border-color: rgba(0, 0, 0, 0.12);\\n border-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-menu-item.md-theme-default.md-primary .md-list-item-link,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-router,\\n.md-menu-item.md-theme-default.md-primary .md-list-item-button {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-menu-item.md-theme-default.md-accent .md-list-item-link,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-router,\\n.md-menu-item.md-theme-default.md-accent .md-list-item-button {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-indeterminate, .md-progress-bar.md-theme-default.md-query {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query .md-progress-bar-fill:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent, .md-progress-bar.md-theme-default.md-query.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-indeterminate.md-accent .md-progress-bar-fill:after, .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-track:after,\\n .md-progress-bar.md-theme-default.md-query.md-accent .md-progress-bar-fill:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-determinate {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n .md-progress-bar.md-theme-default.md-determinate .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-progress-bar.md-theme-default.md-determinate.md-accent {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n .md-progress-bar.md-theme-default.md-determinate.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-fill {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-track {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer .md-progress-bar-buffer {\\n border-color: rgba(188, 170, 164, 0.38);\\n border-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-fill {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-track {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-progress-bar.md-theme-default.md-buffer.md-accent .md-progress-bar-buffer {\\n border-color: rgba(158, 158, 158, 0.38);\\n border-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-progress-spinner.md-theme-default .md-progress-spinner-circle {\\n stroke: #bcaaa4;\\n stroke: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-progress-spinner.md-theme-default.md-accent .md-progress-spinner-circle {\\n stroke: #9e9e9e;\\n stroke: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked .md-radio-container {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n .md-radio.md-theme-default.md-checked .md-radio-container:after {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-radio.md-theme-default.md-checked.md-primary .md-radio-container {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-radio.md-theme-default.md-checked.md-primary .md-radio-container:after {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-radio.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-radio.md-theme-default .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.54); }\\n\\n.md-radio.md-theme-default.md-disabled .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-radio.md-theme-default.md-disabled.md-checked .md-radio-container {\\n border-color: rgba(0, 0, 0, 0.26); }\\n .md-radio.md-theme-default.md-disabled.md-checked .md-radio-container:after {\\n background-color: rgba(0, 0, 0, 0.26); }\\n\\n.md-snackbar.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-primary, #fff);\\n background-color: #323232; }\\n\\n.md-steppers.md-theme-default {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-icon:after, .md-steppers.md-theme-default .md-stepper-icon:before,\\n .md-steppers.md-theme-default .md-stepper-number:after,\\n .md-steppers.md-theme-default .md-stepper-number:before,\\n .md-steppers.md-theme-default .md-stepper:after,\\n .md-steppers.md-theme-default .md-stepper:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-steppers.md-theme-default .md-stepper-number {\\n background-color: rgba(0, 0, 0, 0.38);\\n background-color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38));\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff); }\\n .md-steppers.md-theme-default .md-stepper-number svg {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-text-hint, #fff);\\n fill: #fff;\\n fill: var(--md-theme-default-text-primary-on-text-hint, #fff); }\\n .md-steppers.md-theme-default .md-stepper-header .md-button-content {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-hint-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-steppers.md-theme-default .md-stepper-header .md-button-content:after, .md-steppers.md-theme-default .md-stepper-header .md-button-content:before {\\n background-color: rgba(0, 0, 0, 0.12);\\n background-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-button-content, .md-steppers.md-theme-default .md-stepper-header.md-done .md-button-content {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-active .md-stepper-number svg, .md-steppers.md-theme-default .md-stepper-header.md-done .md-stepper-number svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-steppers.md-theme-default .md-stepper-header.md-error .md-button-content {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744); }\\n .md-steppers.md-theme-default .md-stepper-header.md-error .md-icon svg {\\n color: #ff1744;\\n color: var(--md-theme-default-steppervariant, #ff1744);\\n fill: #ff1744;\\n fill: var(--md-theme-default-steppervariant, #ff1744); }\\n\\n.md-subheader.md-theme-default {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n .md-subheader.md-theme-default.md-primary {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-switch.md-theme-default.md-checked .md-switch-container {\\n background-color: rgba(158, 158, 158, 0.38);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.38)); }\\n\\n.md-switch.md-theme-default.md-checked .md-switch-thumb {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-switch.md-theme-default.md-checked .md-ripple {\\n color: #9e9e9e;\\n color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-container {\\n background-color: rgba(188, 170, 164, 0.38);\\n background-color: var(--md-theme-default-primary-on-, rgba(188, 170, 164, 0.38)); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-switch-thumb {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-switch.md-theme-default.md-checked.md-primary .md-ripple {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary, #bcaaa4); }\\n\\n.md-switch.md-theme-default .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.38); }\\n\\n.md-switch.md-theme-default .md-switch-thumb {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-switchvariant, #f5f5f5); }\\n\\n.md-switch.md-theme-default.md-disabled .md-switch-container {\\n background-color: rgba(0, 0, 0, 0.12); }\\n\\n.md-switch.md-theme-default.md-disabled .md-switch-thumb {\\n background-color: #bdbdbd;\\n background-color: var(--md-theme-default-switchvariant, #bdbdbd); }\\n\\n.md-table.md-theme-default .md-table-content,\\n.md-table.md-theme-default .md-table-alternate-header {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background, #fff); }\\n\\n.md-table.md-theme-default .md-table-alternate-header .md-table-toolbar {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n background-color: rgba(158, 158, 158, 0.2);\\n background-color: var(--md-theme-default-accent-on-, rgba(158, 158, 158, 0.2)); }\\n\\n.md-table.md-theme-default .md-table-row:hover:not(.md-header-row) .md-table-cell {\\n background-color: rgba(0, 0, 0, 0.08);\\n background-color: var(--md-theme-default-highlight-on-background, rgba(0, 0, 0, 0.08)); }\\n\\n.md-table.md-theme-default .md-table-row.md-selected, .md-table.md-theme-default .md-table-row.md-selected-single {\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-rowvariant, #f5f5f5); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-ripple {\\n color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-primary .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-primary .md-checkbox-container:after {\\n border-color: #bcaaa4;\\n border-color: var(--md-theme-default-primary, #bcaaa4); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-ripple, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-ripple {\\n color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff; }\\n .md-table.md-theme-default .md-table-row.md-selected.md-accent .md-checkbox-container:after, .md-table.md-theme-default .md-table-row.md-selected-single.md-accent .md-checkbox-container:after {\\n border-color: #9e9e9e;\\n border-color: var(--md-theme-default-accent, #9e9e9e); }\\n\\n.md-table.md-theme-default .md-table-row td {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-table.md-theme-default .md-table-head {\\n color: rgba(0, 0, 0, 0.54);\\n color: var(--md-theme-default-text-accent-on-background, rgba(0, 0, 0, 0.54)); }\\n\\n.md-table.md-theme-default .md-table-fixed-header-active {\\n border-bottom-color: rgba(0, 0, 0, 0.12);\\n border-bottom-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-table.md-theme-default .md-sortable:hover, .md-table.md-theme-default .md-sortable.md-sorted {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-table.md-theme-default .md-sortable:hover svg, .md-table.md-theme-default .md-sortable.md-sorted svg {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87));\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-table.md-theme-default .md-table-pagination {\\n border-top-color: rgba(0, 0, 0, 0.12);\\n border-top-color: var(--md-theme-default-divider-on-background, rgba(0, 0, 0, 0.12)); }\\n\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default .md-tabs-navigation {\\n background-color: #fff;\\n background-color: var(--md-theme-default-background-on-background, #fff); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon {\\n color: #bcaaa4;\\n color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: #bcaaa4;\\n fill: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default .md-tabs-indicator {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-navigation {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary-on-background, #bcaaa4); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-primary .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-primary .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-navigation {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent-on-background, #9e9e9e); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button[disabled] {\\n color: rgba(0, 0, 0, 0.38);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.38)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon {\\n color: rgba(0, 0, 0, 0.7);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button .md-icon svg {\\n fill: rgba(0, 0, 0, 0.7);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.7)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-tabs.md-theme-default.md-accent .md-tabs-navigation .md-button.md-active .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tabs.md-theme-default.md-accent .md-tabs-indicator {\\n background-color: rgba(0, 0, 0, 0.87);\\n background-color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n\\n.md-toolbar.md-theme-default {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87));\\n background-color: #f5f5f5;\\n background-color: var(--md-theme-default-toolbarvariant, #f5f5f5); }\\n .md-toolbar.md-theme-default .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default .md-title,\\n .md-toolbar.md-theme-default .md-display-1,\\n .md-toolbar.md-theme-default .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background-variant, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary {\\n background-color: #bcaaa4;\\n background-color: var(--md-theme-default-primary, #bcaaa4);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-primary .md-title,\\n .md-toolbar.md-theme-default.md-primary .md-display-1,\\n .md-toolbar.md-theme-default.md-primary .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-primary, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent {\\n background-color: #9e9e9e;\\n background-color: var(--md-theme-default-accent, #9e9e9e);\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-button:not([disabled]):not(.md-raised) {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-accent .md-title,\\n .md-toolbar.md-theme-default.md-accent .md-display-1,\\n .md-toolbar.md-theme-default.md-accent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-accent, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent {\\n background-color: transparent;\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-icon {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-icon svg {\\n fill: rgba(0, 0, 0, 0.87);\\n fill: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n .md-toolbar.md-theme-default.md-transparent .md-title,\\n .md-toolbar.md-theme-default.md-transparent .md-display-1,\\n .md-toolbar.md-theme-default.md-transparent .md-display-2 {\\n color: rgba(0, 0, 0, 0.87);\\n color: var(--md-theme-default-text-primary-on-background, rgba(0, 0, 0, 0.87)); }\\n\\n.md-tooltip.md-theme-default {\\n color: #fff;\\n color: var(--md-theme-default-text-primary-on-tooltip, #fff);\\n background-color: rgba(97, 97, 97, 0.9);\\n background-color: var(--md-theme-default-tooltip-on-background, rgba(97, 97, 97, 0.9)); }\\n\",\"/**\\n * The complete material palette\\n * ---\\n * @access public\\n * @type map\\n * @group themes\\n */\\n\\n$md-palette: (\\n red: (\\n 50: #ffebee,\\n 100: #ffcdd2,\\n 200: #ef9a9a,\\n 300: #e57373,\\n 400: #ef5350,\\n 500: #f44336,\\n 600: #e53935,\\n 700: #d32f2f,\\n 800: #c62828,\\n 900: #b71c1c,\\n A100: #ff8a80,\\n A200: #ff5252,\\n A400: #ff1744,\\n A700: #d50000\\n ),\\n pink: (\\n 50: #fce4ec,\\n 100: #f8bbd0,\\n 200: #f48fb1,\\n 300: #f06292,\\n 400: #ec407a,\\n 500: #e91e63,\\n 600: #d81b60,\\n 700: #c2185b,\\n 800: #ad1457,\\n 900: #880e4f,\\n A100: #ff80ab,\\n A200: #ff4081,\\n A400: #f50057,\\n A700: #c51162\\n ),\\n purple: (\\n 50: #f3e5f5,\\n 100: #e1bee7,\\n 200: #ce93d8,\\n 300: #ba68c8,\\n 400: #ab47bc,\\n 500: #9c27b0,\\n 600: #8e24aa,\\n 700: #7b1fa2,\\n 800: #6a1b9a,\\n 900: #4a148c,\\n A100: #ea80fc,\\n A200: #e040fb,\\n A400: #d500f9,\\n A700: #aa00ff\\n ),\\n deeppurple: (\\n 50: #ede7f6,\\n 100: #d1c4e9,\\n 200: #b39ddb,\\n 300: #9575cd,\\n 400: #7e57c2,\\n 500: #673ab7,\\n 600: #5e35b1,\\n 700: #512da8,\\n 800: #4527a0,\\n 900: #311b92,\\n A100: #b388ff,\\n A200: #7c4dff,\\n A400: #651fff,\\n A700: #6200ea\\n ),\\n indigo: (\\n 50: #e8eaf6,\\n 100: #c5cae9,\\n 200: #9fa8da,\\n 300: #7986cb,\\n 400: #5c6bc0,\\n 500: #3f51b5,\\n 600: #3949ab,\\n 700: #303f9f,\\n 800: #283593,\\n 900: #1a237e,\\n A100: #8c9eff,\\n A200: #536dfe,\\n A400: #3d5afe,\\n A700: #304ffe\\n ),\\n blue: (\\n 50: #e3f2fd,\\n 100: #bbdefb,\\n 200: #90caf9,\\n 300: #64b5f6,\\n 400: #42a5f5,\\n 500: #2196f3,\\n 600: #1e88e5,\\n 700: #1976d2,\\n 800: #1565c0,\\n 900: #0d47a1,\\n A100: #82b1ff,\\n A200: #448aff,\\n A400: #2979ff,\\n A700: #2962ff\\n ),\\n lightblue: (\\n 50: #e1f5fe,\\n 100: #b3e5fc,\\n 200: #81d4fa,\\n 300: #4fc3f7,\\n 400: #29b6f6,\\n 500: #03a9f4,\\n 600: #039be5,\\n 700: #0288d1,\\n 800: #0277bd,\\n 900: #01579b,\\n A100: #80d8ff,\\n A200: #40c4ff,\\n A400: #00b0ff,\\n A700: #0091ea\\n ),\\n cyan: (\\n 50: #e0f7fa,\\n 100: #b2ebf2,\\n 200: #80deea,\\n 300: #4dd0e1,\\n 400: #26c6da,\\n 500: #00bcd4,\\n 600: #00acc1,\\n 700: #0097a7,\\n 800: #00838f,\\n 900: #006064,\\n A100: #84ffff,\\n A200: #18ffff,\\n A400: #00e5ff,\\n A700: #00b8d4\\n ),\\n teal: (\\n 50: #e0f2f1,\\n 100: #b2dfdb,\\n 200: #80cbc4,\\n 300: #4db6ac,\\n 400: #26a69a,\\n 500: #009688,\\n 600: #00897b,\\n 700: #00796b,\\n 800: #00695c,\\n 900: #004d40,\\n A100: #a7ffeb,\\n A200: #64ffda,\\n A400: #1de9b6,\\n A700: #00bfa5\\n ),\\n green: (\\n 50: #e8f5e9,\\n 100: #c8e6c9,\\n 200: #a5d6a7,\\n 300: #81c784,\\n 400: #66bb6a,\\n 500: #4caf50,\\n 600: #43a047,\\n 700: #388e3c,\\n 800: #2e7d32,\\n 900: #1b5e20,\\n A100: #b9f6ca,\\n A200: #69f0ae,\\n A400: #00e676,\\n A700: #00c853\\n ),\\n lightgreen: (\\n 50: #f1f8e9,\\n 100: #dcedc8,\\n 200: #c5e1a5,\\n 300: #aed581,\\n 400: #9ccc65,\\n 500: #8bc34a,\\n 600: #7cb342,\\n 700: #689f38,\\n 800: #558b2f,\\n 900: #33691e,\\n A100: #ccff90,\\n A200: #b2ff59,\\n A400: #76ff03,\\n A700: #64dd17\\n ),\\n lime: (\\n 50: #f9fbe7,\\n 100: #f0f4c3,\\n 200: #e6ee9c,\\n 300: #dce775,\\n 400: #d4e157,\\n 500: #cddc39,\\n 600: #c0ca33,\\n 700: #afb42b,\\n 800: #9e9d24,\\n 900: #827717,\\n A100: #f4ff81,\\n A200: #eeff41,\\n A400: #c6ff00,\\n A700: #aeea00\\n ),\\n yellow: (\\n 50: #fffde7,\\n 100: #fff9c4,\\n 200: #fff59d,\\n 300: #fff176,\\n 400: #ffee58,\\n 500: #ffeb3b,\\n 600: #fdd835,\\n 700: #fbc02d,\\n 800: #f9a825,\\n 900: #f57f17,\\n A100: #ffff8d,\\n A200: #ffff00,\\n A400: #ffea00,\\n A700: #ffd600\\n ),\\n amber: (\\n 50: #fff8e1,\\n 100: #ffecb3,\\n 200: #ffe082,\\n 300: #ffd54f,\\n 400: #ffca28,\\n 500: #ffc107,\\n 600: #ffb300,\\n 700: #ffa000,\\n 800: #ff8f00,\\n 900: #ff6f00,\\n A100: #ffe57f,\\n A200: #ffd740,\\n A400: #ffc400,\\n A700: #ffab00\\n ),\\n orange: (\\n 50: #fff3e0,\\n 100: #ffe0b2,\\n 200: #ffcc80,\\n 300: #ffb74d,\\n 400: #ffa726,\\n 500: #ff9800,\\n 600: #fb8c00,\\n 700: #f57c00,\\n 800: #ef6c00,\\n 900: #e65100,\\n A100: #ffd180,\\n A200: #ffab40,\\n A400: #ff9100,\\n A700: #ff6d00\\n ),\\n deeporange: (\\n 50: #fbe9e7,\\n 100: #ffccbc,\\n 200: #ffab91,\\n 300: #ff8a65,\\n 400: #ff7043,\\n 500: #ff5722,\\n 600: #f4511e,\\n 700: #e64a19,\\n 800: #d84315,\\n 900: #bf360c,\\n A100: #ff9e80,\\n A200: #ff6e40,\\n A400: #ff3d00,\\n A700: #dd2c00\\n ),\\n brown: (\\n 50: #efebe9,\\n 100: #d7ccc8,\\n 200: #bcaaa4,\\n 300: #a1887f,\\n 400: #8d6e63,\\n 500: #795548,\\n 600: #6d4c41,\\n 700: #5d4037,\\n 800: #4e342e,\\n 900: #3e2723,\\n A100: #d7ccc8,\\n A200: #bcaaa4,\\n A400: #8d6e63,\\n A700: #5d4037\\n ),\\n grey: (\\n 50: #fafafa,\\n 100: #f5f5f5,\\n 200: #eeeeee,\\n 300: #e0e0e0,\\n 400: #bdbdbd,\\n 500: #9e9e9e,\\n 600: #757575,\\n 700: #616161,\\n 800: #424242,\\n 900: #212121,\\n A100: #fff,\\n A200: #000000,\\n A400: #303030,\\n A700: #616161\\n ),\\n bluegrey: (\\n 50: #eceff1,\\n 100: #cfd8dc,\\n 200: #b0bec5,\\n 300: #90a4ae,\\n 400: #78909c,\\n 500: #607d8b,\\n 600: #546e7a,\\n 700: #455a64,\\n 800: #37474f,\\n 900: #263238,\\n A100: #cfd8dc,\\n A200: #b0bec5,\\n A400: #78909c,\\n A700: #455a64\\n ),\\n white: (\\n 50: #fff,\\n 100: #fff,\\n 200: #fff,\\n 300: #fff,\\n 400: #fff,\\n 500: #fff,\\n 600: #fff,\\n 700: #fff,\\n 800: #fff,\\n 900: #fff,\\n A100: #fff,\\n A200: #fff,\\n A400: #fff,\\n A700: #fff\\n ),\\n black: (\\n 50: #000,\\n 100: #000,\\n 200: #000,\\n 300: #000,\\n 400: #000,\\n 500: #000,\\n 600: #000,\\n 700: #000,\\n 800: #000,\\n 900: #000,\\n A100: #000,\\n A200: #000,\\n A400: #000,\\n A700: #000\\n )\\n);\\n\",\"/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * $foo-palette: (\\n * primary: md-get-palette-color(indigo, 500),\\n * accent: md-get-palette-color(pink, 500),\\n * theme: \\\"light\\\"\\n * );\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {color} $type —  The desired color based on material palette\\n * @param {string} $type —  A valid hue\\n */\\n\\n@function md-get-palette-color($color, $hue) {\\n @return map-get(map-get($md-palette, $color), $hue);\\n}\\n\\n\\n/**\\n * Get the current theme mode from the current theme\\n * ---\\n * Usage example:\\n *\\n * $theme-mode: md-get-theme-mode()\\n *\\n * ---\\n * @access private\\n */\\n\\n@function md-get-theme-mode() {\\n @return map-get($md-theme-palette, theme);\\n}\\n\\n\\n/**\\n * Theme any css property based on the current palette, accepting a themable\\n * value that will give an contrasted\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * min-width: 88px;\\n * height: 40px;\\n * background: md-theme(primary);\\n * }\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The themable value\\n */\\n\\n@function md-theme($type, $background: \\\"\\\") {\\n $color-theme: null;\\n\\n @if $type == \\\"primary\\\" or $type == \\\"accent\\\" {\\n @return md-get-color-by-type($type, null);\\n } @else {\\n $color-theme: map-get($md-theme-palette, theme);\\n\\n @if $background != \\\"\\\" {\\n $color-theme: md-pick-contrast(md-get-color-by-type($background, $color-theme));\\n }\\n\\n @return md-get-color-by-theme($color-theme, $type);\\n }\\n}\\n\\n\\n/**\\n * Get a color based on type by theme\\n * ---\\n * Usage example:\\n *\\n * $color: md-get-color-by-theme(dark, primary)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $color-theme —  The theme color | Accepts dark or light\\n * @param {string} $type —  The color type\\n */\\n\\n@function md-get-color-by-theme($color-theme, $type) {\\n $theme: map-get($md-color-levels, $color-theme);\\n\\n @return map-get($theme, $type);\\n}\\n\\n\\n/**\\n * Get a color based on type only\\n * ---\\n * Usage example:\\n *\\n * $color1: md-get-color-by-type(background, dark)\\n * $color1: md-get-color-by-type(accent)\\n *\\n * ---\\n * @access public\\n * ---\\n * @param {string} $type —  The color type\\n * @param {string} $theme —  The fallback theme\\n */\\n\\n@function md-get-color-by-type($type, $theme) {\\n $newColor: map-get($md-theme-palette, $type);\\n\\n @if $newColor == null {\\n $newColor: md-get-color-by-theme($theme, $type);\\n }\\n\\n @return $newColor\\n}\\n\",\"/**\\n * The default theme palette\\n * primary: indigo 500 #3f51b5\\n * accent: pink 500 #e91e63\\n * theme: light\\n *\\n * It can be used just before importing the Vue Material stylesheet\\n *\\n * ---\\n * @access public\\n * @type colormap\\n * @group themes\\n */\\n\\n$md-default-palette: (\\n primary: md-get-palette-color(blue, A200),\\n accent: md-get-palette-color(red, A200),\\n theme: \\\"light\\\"\\n) !default;\\n\\n\\n/**\\n * Temporary variable to store all themable values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n$md-theme-palette: ();\\n\\n\\n/**\\n * Map variable to store all themes to be processed by each component\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n$md-themes: ();\\n\\n\\n/**\\n * Store the current theme name\\n * ---\\n * @access private\\n * @type string\\n * @group themes\\n */\\n\\n$md-current-theme: null;\\n\\n\\n/**\\n * The color contrast values\\n * ---\\n * @access private\\n * @type map\\n * @group themes\\n */\\n\\n$md-color-levels: (\\n light: (\\n background: #fff,\\n background-variant: #fafafa,\\n text-primary: rgba(#000, .87),\\n text-accent: rgba(#000, .54),\\n text-hint: rgba(#000, .38),\\n disabled: rgba(#000, .26),\\n disabled-background: rgba(#000, .12),\\n highlight: rgba(#000, .12),\\n icon: rgba(#000, .54),\\n icon-disabled: rgba(#000, .38),\\n divider: rgba(#000, .12),\\n scrollbar: #757575,\\n scrollbar-background: darken(#eee, 5%),\\n tooltip: #616161\\n ),\\n dark: (\\n background: #424242,\\n background-variant: #303030,\\n text-primary: #fff,\\n text-accent: rgba(#fff, .7),\\n text-hint: rgba(#fff, .5),\\n disabled: rgba(#fff, .3),\\n disabled-background: rgba(#fff, .12),\\n highlight: rgba(#fff, .12),\\n icon: #fff,\\n icon-disabled: rgba(#fff, .5),\\n divider: rgba(#fff, .12),\\n scrollbar: #9E9E9E,\\n scrollbar-background: #212121,\\n tooltip: #fff\\n )\\n);\\n\",\"/**\\n * Hightly based on: \\\"Using Sass to automatically pick text colors\\\"\\n * https://medium.com/dev-channel/using-sass-to-automatically-pick-text-colors-4ba7645d2796\\n */\\n\\n/**\\n * Precomputed linear color channel values, for use in contrast calculations.\\n * See https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\\n * ---\\n *\\n * Algorithm, for c in 0 to 255:\\n * f(c) {\\n * c = c / 255;\\n * return c < 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\\n * }\\n *\\n * This lookup table is needed since there is no `pow` in SASS.\\n *\\n * ---\\n * @access private\\n * @type Map\\n * @group themes\\n */\\n\\n$md-linear-channel-values:\\n 0\\n .0003035269835488375\\n .000607053967097675\\n .0009105809506465125\\n .00121410793419535\\n .0015176349177441874\\n .001821161901293025\\n .0021246888848418626\\n .0024282158683907\\n .0027317428519395373\\n .003035269835488375\\n .003346535763899161\\n .003676507324047436\\n .004024717018496307\\n .004391442037410293\\n .004776953480693729\\n .005181516702338386\\n .005605391624202723\\n .006048833022857054\\n .006512090792594475\\n .006995410187265387\\n .007499032043226175\\n .008023192985384994\\n .008568125618069307\\n .009134058702220787\\n .00972121732023785\\n .010329823029626936\\n .010960094006488246\\n .011612245179743885\\n .012286488356915872\\n .012983032342173012\\n .013702083047289686\\n .014443843596092545\\n .01520851442291271\\n .01599629336550963\\n .016807375752887384\\n .017641954488384078\\n .018500220128379697\\n .019382360956935723\\n .0202885630566524\\n .021219010376003555\\n .022173884793387385\\n .02315336617811041\\n .024157632448504756\\n .02518685962736163\\n .026241221894849898\\n .027320891639074894\\n .028426039504420793\\n .0295568344378088\\n .030713443732993635\\n .03189603307301153\\n .033104766570885055\\n .03433980680868217\\n .03560131487502034\\n .03688945040110004\\n .0382043715953465\\n .03954623527673284\\n .04091519690685319\\n .042311410620809675\\n .043735029256973465\\n .04518620438567554\\n .046665086336880095\\n .04817182422688942\\n .04970656598412723\\n .05126945837404324\\n .052860647023180246\\n .05448027644244237\\n .05612849004960009\\n .05780543019106723\\n .0595112381629812\\n .06124605423161761\\n .06301001765316767\\n .06480326669290577\\n .06662593864377289\\n .06847816984440017\\n .07036009569659588\\n .07227185068231748\\n .07421356838014963\\n .07618538148130785\\n .07818742180518633\\n .08021982031446832\\n .0822827071298148\\n .08437621154414882\\n .08650046203654976\\n .08865558628577294\\n .09084171118340768\\n .09305896284668745\\n .0953074666309647\\n .09758734714186246\\n .09989872824711389\\n .10224173308810132\\n .10461648409110419\\n .10702310297826761\\n .10946171077829933\\n .1119324278369056\\n .11443537382697373\\n .11697066775851084\\n .11953842798834562\\n .12213877222960187\\n .12477181756095049\\n .12743768043564743\\n .1301364766903643\\n .13286832155381798\\n .13563332965520566\\n .13843161503245183\\n .14126329114027164\\n .14412847085805777\\n .14702726649759498\\n .14995978981060856\\n .15292615199615017\\n .1559264637078274\\n .1589608350608804\\n .162029375639111\\n .1651321945016676\\n .16826940018969075\\n .1714411007328226\\n .17464740365558504\\n .17788841598362912\\n .18116424424986022\\n .184474994500441\\n .18782077230067787\\n .19120168274079138\\n .1946178304415758\\n .19806931955994886\\n .20155625379439707\\n .20507873639031693\\n .20863687014525575\\n .21223075741405523\\n .21586050011389926\\n .2195261997292692\\n .2232279573168085\\n .22696587351009836\\n .23074004852434915\\n .23455058216100522\\n .238397573812271\\n .24228112246555486\\n .24620132670783548\\n .25015828472995344\\n .25415209433082675\\n .2581828529215958\\n .26225065752969623\\n .26635560480286247\\n .2704977910130658\\n .27467731206038465\\n .2788942634768104\\n .2831487404299921\\n .2874408377269175\\n .29177064981753587\\n .2961382707983211\\n .3005437944157765\\n .3049873140698863\\n .30946892281750854\\n .31398871337571754\\n .31854677812509186\\n .32314320911295075\\n .3277780980565422\\n .33245153634617935\\n .33716361504833037\\n .3419144249086609\\n .3467040563550296\\n .35153259950043936\\n .3564001441459435\\n .3613067797835095\\n .3662525955988395\\n .3712376804741491\\n .3762621229909065\\n .38132601143253014\\n .386429433787049\\n .39157247774972326\\n .39675523072562685\\n .4019777798321958\\n .4072402119017367\\n .41254261348390375\\n .4178850708481375\\n .4232676699860717\\n .4286904966139066\\n .43415363617474895\\n .4396571738409188\\n .44520119451622786\\n .45078578283822346\\n .45641102318040466\\n .4620769996544071\\n .467783796112159\\n .47353149614800955\\n .4793201831008268\\n .4851499400560704\\n .4910208498478356\\n .4969329950608704\\n .5028864580325687\\n .5088813208549338\\n .5149176653765214\\n .5209955732043543\\n .5271151257058131\\n .5332764040105052\\n .5394794890121072\\n .5457244613701866\\n .5520114015120001\\n .5583403896342679\\n .5647115057049292\\n .5711248294648731\\n .5775804404296506\\n .5840784178911641\\n .5906188409193369\\n .5972017883637634\\n .6038273388553378\\n .6104955708078648\\n .6172065624196511\\n .6239603916750761\\n .6307571363461468\\n .6375968739940326\\n .6444796819705821\\n .6514056374198242\\n .6583748172794485\\n .665387298282272\\n .6724431569576875\\n .6795424696330938\\n .6866853124353135\\n .6938717612919899\\n .7011018919329731\\n .7083757798916868\\n .7156935005064807\\n .7230551289219693\\n .7304607400903537\\n .7379104087727308\\n .7454042095403874\\n .7529422167760779\\n .7605245046752924\\n .768151147247507\\n .7758222183174236\\n .7835377915261935\\n .7912979403326302\\n .799102738014409\\n .8069522576692516\\n .8148465722161012\\n .8227857543962835\\n .8307698767746546\\n .83879901174074\\n .846873231509858\\n .8549926081242338\\n .8631572134541023\\n .8713671191987972\\n .8796223968878317\\n .8879231178819663\\n .8962693533742664\\n .9046611743911496\\n .9130986517934192\\n .9215818562772946\\n .9301108583754237\\n .938685728457888\\n .9473065367331999\\n .9559733532492861\\n .9646862478944651\\n .9734452903984125\\n .9822505503331171\\n .9911020971138298\\n 1;\\n\\n\\n/**\\n * Calculate the luminance for a color.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The color to be analysed\\n */\\n\\n@function md-check-luminance($color) {\\n $red: nth($md-linear-channel-values, red($color) + 1);\\n $green: nth($md-linear-channel-values, green($color) + 1);\\n $blue: nth($md-linear-channel-values, blue($color) + 1);\\n\\n @return .2126 * $red + .7152 * $green + .0722 * $blue;\\n}\\n\\n\\n/**\\n * Calculate the contrast ratio between two colors.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $bg —  The bg color\\n * @param {string} $fg —  The fg color to be compared\\n */\\n\\n@function md-calculate-contrast($bg, $fg) {\\n $bgLum: md-check-luminance($bg) + .2;\\n $fgLum: md-check-luminance($fg) + .2;\\n\\n @return max($bgLum, $fgLum) / min($bgLum, $fgLum);\\n}\\n\\n\\n/**\\n * Determine whether to use dark or light text on top of given color.\\n * Returns dark or light depending on the contrast ratio.\\n * ---\\n * @access private\\n * ---\\n * @param {string} $color —  The desired color to be compared\\n */\\n\\n@function md-pick-contrast($color) {\\n $lightColor: map-get(map-get($md-color-levels, dark), text-primary);\\n $lightContrast: md-calculate-contrast($color, $lightColor);\\n $darkColor: map-get(map-get($md-color-levels, light), text-primary);\\n $darkContrast: md-calculate-contrast($color, $darkColor);\\n\\n @if ($lightContrast > $darkContrast) {\\n @return \\\"dark\\\";\\n }\\n\\n @return \\\"light\\\";\\n}\\n\",\"@import '../base/theme.scss';\\n\\n/**\\n * Override extending the default palette giving new values. It will extend\\n * the default values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-override-palette ((\\n * accent: blue,\\n * theme: \\\"dark\\\"\\n * ))\\n *\\n * ---\\n * @access public\\n * @param {map} $palette —  The new palette\\n */\\n\\n@mixin md-override-palette ($palette) {\\n $md-default-palette: map-merge($md-default-palette, $palette) !global;\\n}\\n\\n\\n/**\\n * Create a new theme based on a given palette. It will extend the default\\n * values of the palette if has a property missing.\\n * ---\\n * Usage example:\\n *\\n * @include md-register-theme(\\\"alternative\\\", (\\n * primary: #212121,\\n * accent: #CDDC39,\\n * theme: dark\\n * ));\\n *\\n * ---\\n * @access public\\n * @param {string} $name —  The theme name to be used with the Vue Material\\n * @param {map} $palette [$md-default-palette] —  The theme palette\\n */\\n\\n@mixin md-register-theme ($name, $palette: $md-default-palette) {\\n $palette: map-merge($md-default-palette, $palette);\\n $theme: map-merge($md-themes, (\\n #{$name}: $palette\\n ));\\n\\n :root {\\n @each $type, $value in $palette {\\n --md-theme-#{$name}-#{$type}: $value\\n }\\n }\\n\\n $md-themes: $theme !global;\\n\\n @include md-base-theme;\\n}\\n\\n\\n/**\\n * Theme pieces of a given scss code for all pre registered themes.\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * background: md-theme(primary);\\n * color: md-theme(text-primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * background: md-theme(accent);\\n * color: md-theme(text-accent);\\n * };\\n * }\\n * }\\n */\\n\\n@mixin md-theme-component () {\\n @each $theme, $palette in $md-themes {\\n $md-theme-palette: map-merge($md-theme-palette, $palette) !global;\\n $md-current-theme: $theme !global;\\n\\n &.md-theme-#{$theme} {\\n @content;\\n }\\n }\\n}\\n\\n\\n/**\\n * Theme pieces of a given scss code for all pre registered themes based on parent.\\n * ---\\n * Usage example:\\n *\\n * .md-foo {\\n * @include md-theme-component-relative() {\\n * @include md-theme-property(background, primary);\\n * }\\n * }\\n */\\n\\n@mixin md-theme-component-relative () {\\n @each $theme, $palette in $md-themes {\\n $md-theme-palette: map-merge($md-theme-palette, $palette) !global;\\n $md-current-theme: $theme !global;\\n\\n .md-theme-#{$theme} & {\\n @content;\\n }\\n }\\n}\\n\\n\\n/**\\n * Theme a single css property\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property(background, primary);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n *\\n * &.md-accent {\\n * @include md-theme-component() {\\n * @include md-theme-property(background, accent);\\n * @include md-theme-property(color, text-primary, accent);\\n * }\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {number} $opacity —  The opacity amount\\n */\\n\\n@mixin md-theme-property ($property, $type, $background: \\\"\\\", $opacity: \\\"\\\") {\\n $value: md-theme($type, $background);\\n $variant: null;\\n\\n @if $background != \\\"\\\" {\\n $variant: -on-#{$background};\\n }\\n\\n @if $opacity != \\\"\\\" {\\n $value: rgba($value, $opacity);\\n }\\n\\n #{$property}: $value;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{$variant}, $value);\\n}\\n\\n/**\\n * Theme a single css property darkening the color by a certain amount\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-darken(background, primary, background, 10%);\\n * @include md-theme-property(color, text-primary, primary);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $type —  A palette type\\n * @param {string} $background —  The background color to analyse contrast\\n * @param {string} $darken —  The darken amount to apply to the color\\n */\\n\\n@mixin md-theme-property-darken ($property, $type, $background: \\\"\\\", $darken: \\\"\\\") {\\n $value: md-theme($type, $background);\\n $variant: null;\\n\\n @if $background != \\\"\\\" {\\n $variant: -on-#{$background};\\n }\\n\\n @if $darken != \\\"\\\" {\\n $value: darken($value, $darken);\\n }\\n\\n #{$property}: $value;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{$variant}, $value);\\n}\\n\\n/**\\n * Theme a single css property by\\n * ---\\n * Usage example:\\n *\\n * .md-button {\\n * min-width: 88px;\\n * height: 40px;\\n * display: inline-block;\\n * border-radius: 2px;\\n * transition: .3s ease;\\n *\\n * @include md-theme-component() {\\n * @include md-theme-property-by-hue(background, grey, 100, toolbar, background);\\n * @include md-theme-property(color, text-primary, background);\\n * }\\n * }\\n *\\n * ---\\n * @access public\\n * @param {string} $property —  The css property\\n * @param {string} $color —  A valid material palette color name\\n * @param {string} $hue —  The hue amount to get the hex color\\n * @param {string} $type —  The type of variable\\n * @param {string} $variant —  The type of constrasted variable\\n */\\n\\n@mixin md-theme-property-by-hue ($property, $color, $hue, $type, $secondary) {\\n $hex: md-get-palette-color($color, $hue);\\n $variant: null;\\n\\n @if $secondary != \\\"\\\" {\\n $variant: -#{$secondary};\\n }\\n\\n #{$property}: $hex;\\n #{$property}: var(--md-theme-#{$md-current-theme}-#{$type}#{variant}, $hex);\\n}\\n\",\"@mixin md-base-theme () {\\n :not(input):not(textarea)::selection {\\n @include md-theme-component-relative() {\\n @include md-theme-property(background-color, accent, background);\\n @include md-theme-property(color, text-primary, accent);\\n }\\n }\\n\\n a:not(.md-button) {\\n @include md-theme-component-relative() {\\n @include md-theme-property(color, primary, background);\\n\\n &:hover {\\n @include md-theme-property(color, primary, background, .8);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n\\n &:hover {\\n @include md-theme-property(color, accent, background, .8);\\n }\\n }\\n }\\n }\\n\\n html {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background-variant);\\n @include md-theme-property(color, text-primary, background-variant);\\n }\\n }\\n\\n .md-caption,\\n .md-display-1,\\n .md-display-2,\\n .md-display-3,\\n .md-display-4 {\\n @include md-theme-component-relative() {\\n @include md-theme-property(color, text-accent, background-variant);\\n }\\n }\\n\\n .md-scrollbar {\\n @include md-theme-component() {\\n &::-webkit-scrollbar-corner,\\n &::-webkit-scrollbar-track {\\n @include md-theme-property(background, scrollbar-background, background-variant);\\n }\\n\\n &::-webkit-scrollbar-thumb {\\n @include md-theme-property(background, scrollbar, background-variant);\\n }\\n }\\n }\\n}\\n\",\".md-list {\\n @include md-theme-component() {\\n .md-autocomplete-items {\\n .md-highlight-text-match {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-autocomplete-loading {\\n @include md-theme-property(background-color, background, \\\"\\\", .54);\\n }\\n }\\n}\\n\\n.md-autocomplete {\\n @include md-theme-component() {\\n &.md-autocomplete-box {\\n @include md-theme-property(background-color, background);\\n\\n &.md-focused {\\n label {\\n @include md-theme-property(color, text-hint, background);\\n }\\n }\\n\\n .md-toolbar & {\\n @include md-theme-property(background-color, background, \\\"\\\", .12);\\n\\n label,\\n input {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(-webkit-text-fill-color, text-primary, primary);\\n }\\n\\n svg {\\n @include md-theme-property(fill, text-primary, primary);\\n }\\n\\n &.md-focused {\\n @include md-theme-property(background-color, background);\\n\\n label,\\n input {\\n @include md-theme-property(color, text-hint, background);\\n @include md-theme-property(-webkit-text-fill-color, text-hint, background);\\n }\\n\\n svg {\\n @include md-theme-property(fill, text-hint, background);\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n.md-autocomplete-box-content {\\n @include md-theme-component() {\\n &:after {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(border-bottom-color, divider);\\n }\\n }\\n}\\n\",\"@mixin md-avatar-icon-spec ($color) {\\n &.md-avatar-icon {\\n @include md-theme-property(background-color, $color);\\n @include md-theme-property(color, text-primary, $color);\\n\\n .md-icon {\\n @include md-theme-property(color, text-primary, $color);\\n @include md-theme-property(fill, text-primary, $color);\\n }\\n }\\n}\\n\\n.md-avatar {\\n @include md-theme-component() {\\n @include md-avatar-icon-spec(icon-disabled);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-avatar-icon-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-avatar-icon-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-bottom-bar-spec ($primary) {\\n &.md-type-fixed {\\n @include md-theme-property(background-color, background);\\n\\n .md-bottom-bar-item.md-active {\\n @include md-theme-property(color, $primary, background);\\n\\n .md-icon {\\n @include md-theme-property(color, $primary, background);\\n\\n svg {\\n @include md-theme-property(fill, $primary, background);\\n }\\n }\\n }\\n }\\n\\n &.md-type-shift {\\n @include md-theme-property(background-color, $primary);\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n > .md-ripple {\\n .md-ripple-wave {\\n @include md-theme-property-darken(background-color, $primary, $primary, 10%);\\n }\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, icon, $primary);\\n\\n svg {\\n @include md-theme-property(fill, icon, $primary);\\n }\\n }\\n\\n .md-bottom-bar-item {\\n @include md-theme-property(color, text-primary, $primary);\\n\\n .md-active {\\n .md-icon {\\n @include md-theme-property(color, text-primary, $primary);\\n\\n svg {\\n @include md-theme-property(fill, text-primary, $primary);\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n.md-bottom-bar {\\n @include md-theme-component() {\\n @include md-bottom-bar-spec(primary);\\n\\n &.md-accent {\\n @include md-bottom-bar-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-icon-on-buttons ($state, $type) {\\n .md-icon-font {\\n @include md-theme-property(color, $state, $type);\\n }\\n\\n .md-icon-image {\\n @include md-theme-property(fill, $state, $type);\\n }\\n}\\n\\n.md-button {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n @include md-icon-on-buttons(primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n @include md-icon-on-buttons(accent, background);\\n }\\n\\n &.md-raised {\\n &[disabled] {\\n @include md-theme-property(background-color, disabled-background, background);\\n @include md-theme-property(color, disabled);\\n }\\n\\n &:not([disabled]) {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(background-color, primary);\\n @include md-icon-on-buttons(text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, text-primary, accent);\\n @include md-theme-property(background-color, accent);\\n @include md-icon-on-buttons(text-primary, accent);\\n }\\n }\\n }\\n\\n &.md-fab {\\n &[disabled] {\\n @include md-theme-property(background-color, disabled-background, background);\\n }\\n\\n &:not([disabled]) {\\n @include md-theme-property(background-color, accent);\\n @include md-icon-on-buttons(text-primary, accent);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-icon-on-buttons(text-primary, primary);\\n }\\n }\\n }\\n\\n &[disabled] {\\n @include md-theme-property(color, disabled, background);\\n @include md-icon-on-buttons(icon-disabled, background);\\n }\\n }\\n}\\n\",\"@mixin md-card($base) {\\n @include md-theme-property(background-color, $base);\\n @include md-theme-property(color, text-primary, $base);\\n\\n .md-card-expand .md-card-actions {\\n @include md-theme-property(background-color, $base);\\n }\\n\\n .md-card-header,\\n .md-card-actions {\\n .md-button:not(.md-primary):not(.md-accent) {\\n @include md-theme-property(color, text-primary, $base);\\n\\n &.md-icon-button {\\n .md-icon {\\n @include md-theme-property(color, text-primary, $base, .54);\\n @include md-theme-property(fill, text-primary, $base, .54);\\n }\\n }\\n }\\n }\\n\\n > .md-card-area {\\n &:after {\\n @include md-theme-property(background-color, divider, $base);\\n }\\n }\\n}\\n\\n.md-card {\\n @include md-theme-component() {\\n @include md-card(background);\\n\\n &.md-primary {\\n @include md-card(primary);\\n }\\n\\n &.md-accent {\\n @include md-card(accent);\\n }\\n }\\n}\\n\",\".md-checkbox {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-checkbox-container {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(border-color, accent);\\n\\n &:after {\\n @include md-theme-property(border-color, background);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-checkbox-container {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(border-color, primary);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-checkbox-container {\\n border-color: rgba(#000, .54);\\n }\\n\\n &.md-disabled {\\n .md-checkbox-container {\\n border-color: rgba(#000, .26);\\n }\\n\\n &.md-checked {\\n .md-checkbox-container {\\n border-color: rgba(#000, .26);\\n background-color: rgba(#000, .26);\\n }\\n }\\n }\\n } @else {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .7);\\n }\\n\\n &.md-disabled {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .3);\\n }\\n\\n &.md-checked {\\n .md-checkbox-container {\\n border-color: rgba(#fff, .3);\\n background-color: rgba(#fff, .3);\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\".md-chip {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, highlight);\\n @include md-theme-property(color, text-primary);\\n\\n .md-icon.md-icon-image svg {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(color, text-primary, text-primary);\\n @include md-theme-property(fill, text-primary, text-primary);\\n } @else {\\n @include md-theme-property(color, text-primary);\\n @include md-theme-property(fill, text-primary);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(background-color, icon);\\n @include md-theme-property(color, text-primary, icon);\\n\\n .md-icon {\\n @include md-theme-property(fill, text-primary, icon);\\n }\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n @include md-theme-property(color, icon, background);\\n\\n .md-icon svg {\\n @include md-theme-property(fill, icon, background);\\n @include md-theme-property(color, icon, background);\\n }\\n }\\n }\\n }\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n\\n .md-input-action {\\n @include md-theme-property(color, icon, disabled);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, disabled);\\n } @else {\\n @include md-theme-property(background-color, disabled, disabled);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(color, text-primary, icon);\\n @include md-theme-property(background-color, icon);\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n }\\n }\\n }\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n\\n .md-input-action {\\n @include md-theme-property(color, icon, disabled);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, disabled);\\n } @else {\\n @include md-theme-property(background-color, disabled, disabled);\\n }\\n }\\n\\n &.md-deletable,\\n &.md-clickable {\\n &:not(.md-disabled):hover {\\n @include md-theme-property(background-color, icon);\\n @include md-theme-property(color, text-primary, icon);\\n\\n .md-input-action {\\n @include md-theme-property(background-color, background, '', .87);\\n }\\n }\\n }\\n }\\n\\n &.md-disabled {\\n @include md-theme-property(background-color, highlight, '', .1);\\n @include md-theme-property(color, text-accent);\\n }\\n }\\n}\\n\\n.md-chips {\\n @include md-theme-component() {\\n @if md-get-theme-mode() == light {\\n .md-clear {\\n background-color: rgba(#000, .2);\\n }\\n } @else {\\n .md-clear {\\n background-color: rgba(#fff, .2);\\n }\\n }\\n }\\n}\\n\",\".md-content {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n }\\n\\n .md-app & {\\n @include md-theme-property(border-left-color, divider, background);\\n }\\n }\\n}\\n\",\".md-datepicker-dialog {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n .md-datepicker-header {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n } @else {\\n @include md-theme-property(background-color, text-primary, '', .06);\\n @include md-theme-property(color, text-primary, background);\\n }\\n }\\n\\n .md-datepicker-body-header {\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, background);\\n }\\n }\\n\\n .md-datepicker-body-footer {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n }\\n\\n .md-datepicker-week {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-datepicker-disabled {\\n @include md-theme-property(color, disabled, background);\\n }\\n\\n .md-datepicker-today {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n .md-datepicker-day-button,\\n .md-datepicker-month-button,\\n .md-datepicker-year-button {\\n &:hover {\\n @include md-theme-property(background-color, divider);\\n }\\n }\\n\\n .md-datepicker-day-button {\\n &.md-datepicker-selected {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n }\\n }\\n\\n .md-datepicker-month-button,\\n .md-datepicker-year-button {\\n &.md-datepicker-selected {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-datepicker-year-selector {\\n @include md-theme-property(border-bottom-color, divider, background);\\n }\\n }\\n}\\n\",\".md-drawer {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-persistent-mini {\\n @include md-theme-property(border-right-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-empty-state-spec ($color) {\\n .md-empty-state-icon {\\n &.md-icon-image {\\n svg {\\n @include md-theme-property(fill, $color, background);\\n }\\n }\\n\\n &.md-icon-font {\\n @include md-theme-property(color, $color, background);\\n }\\n }\\n}\\n\\n.md-empty-state {\\n @include md-theme-component() {\\n @include md-empty-state-spec(disabled);\\n\\n &.md-rounded {\\n @include md-theme-property(background-color, disabled, \\\"\\\", .06);\\n }\\n\\n &.md-primary {\\n @include md-empty-state-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-empty-state-spec(accent);\\n }\\n }\\n}\\n\",\".md-field {\\n @include md-theme-component() {\\n @if md-get-theme-mode() == light {\\n &:after {\\n background-color: rgba(#000, .42);\\n }\\n\\n &:before {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-helper-text,\\n .md-count,\\n label {\\n color: rgba(#000, .54);\\n }\\n\\n .md-input,\\n .md-textarea {\\n &::-webkit-input-placeholder {\\n color: rgba(#000, .54);\\n }\\n }\\n\\n &.md-focused,\\n &.md-has-value {\\n .md-input,\\n .md-textarea {\\n -webkit-text-fill-color: rgba(#000, .87);\\n }\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:after {\\n border-color: rgba(#000, .42);\\n }\\n\\n &:before {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n\\n &.md-disabled {\\n &:after {\\n background-image: linear-gradient(to right, rgba(#000, .38) 0%, rgba(#000, .38) 33%, transparent 0%);\\n }\\n\\n label,\\n .md-input,\\n .md-textarea {\\n color: rgba(#000, .42);\\n }\\n }\\n } @else {\\n &:after {\\n background-color: rgba(#fff, .7);\\n }\\n\\n &:before {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-helper-text,\\n .md-count,\\n label {\\n color: rgba(#fff, .7);\\n }\\n\\n .md-input,\\n .md-textarea {\\n &::-webkit-input-placeholder {\\n color: rgba(#fff, .7);\\n }\\n }\\n\\n &.md-focused,\\n &.md-has-value {\\n .md-input,\\n .md-textarea {\\n -webkit-text-fill-color: #fff;\\n }\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:after {\\n border-color: #fff;\\n }\\n\\n &:before {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n\\n &.md-disabled {\\n &:after {\\n background-image: linear-gradient(to right, rgba(#fff, .7) 0%, rgba(#fff, .7) 33%, transparent 0%);\\n }\\n\\n label,\\n .md-input,\\n .md-textarea {\\n color: rgba(#fff, .5);\\n }\\n }\\n }\\n\\n > .md-icon {\\n &:after {\\n @include md-theme-property(background-color, background-variant);\\n }\\n }\\n\\n &.md-invalid {\\n &:after {\\n @include md-theme-property-by-hue(background-color, red, A400, field, error);\\n }\\n\\n &.md-has-textarea:not(.md-autogrow) {\\n &:before {\\n @include md-theme-property-by-hue(border-color, red, A400, field, error);\\n }\\n }\\n\\n label {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n }\\n\\n .md-error {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n }\\n\\n .md-date-icon,\\n .md-date-icon svg {\\n @include md-theme-property-by-hue(color, red, A400, field, error);\\n @include md-theme-property-by-hue(fill, red, A400, field, error);\\n }\\n }\\n\\n &.md-focused,\\n &.md-highlight {\\n .md-input,\\n .md-textarea {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n > .md-icon {\\n @include md-theme-property(color, primary, background);\\n @include md-theme-property(fill, primary, background);\\n }\\n }\\n\\n &.md-focused {\\n label {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n &.md-disabled {\\n .md-icon svg {\\n @include md-theme-property(fill, disabled, background);\\n }\\n }\\n }\\n}\\n\",\".md-icon {\\n @include md-theme-component() {\\n &.md-icon-image {\\n svg {\\n @include md-theme-property(fill, icon, background);\\n\\n &.md-primary {\\n @include md-theme-property(fill, primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(fill, accent, background);\\n }\\n }\\n }\\n\\n &.md-icon-font {\\n @include md-theme-property(color, icon, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(color, accent, background);\\n }\\n }\\n }\\n}\\n\",\".md-list {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n &.md-double-line .md-list-item-text :nth-child(2) {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n &.md-triple-line .md-list-item-text :nth-child(3) {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-highlight .md-list-item-container {\\n @include md-theme-property(background-color, divider, background);\\n }\\n\\n .md-list-item-container {\\n @include md-theme-property(color, text-primary, background);\\n\\n &:not(.md-list-item-default):not([disabled]):hover {\\n @include md-theme-property(background-color, divider, background);\\n @include md-theme-property(color, text-primary, background);\\n }\\n }\\n\\n [disabled] {\\n @include md-theme-property(color, disabled, background);\\n }\\n\\n .md-selected,\\n .router-link-exact-active {\\n .md-list-item-content {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n\\n .md-list-item-expand.md-active {\\n @include md-theme-property(border-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-menu-item-spec ($color) {\\n .md-list-item-link,\\n .md-list-item-router,\\n .md-list-item-button {\\n @include md-theme-property(color, $color, background);\\n }\\n}\\n\\n.md-menu-item {\\n @include md-theme-component() {\\n &.md-primary {\\n @include md-menu-item-spec(primary);\\n }\\n\\n &.md-accent {\\n @include md-menu-item-spec(accent);\\n }\\n }\\n}\\n\",\"@mixin md-progress-bar-indeterminate ($hue) {\\n @include md-theme-property(background-color, $hue, null, .38);\\n\\n .md-progress-bar-track,\\n .md-progress-bar-fill {\\n &:after {\\n @include md-theme-property(background-color, $hue);\\n }\\n }\\n}\\n\\n@mixin md-progress-bar-determinate ($hue) {\\n @include md-theme-property(background-color, $hue, null, .38);\\n\\n .md-progress-bar-fill {\\n @include md-theme-property(background-color, $hue);\\n }\\n}\\n\\n@mixin md-progress-bar-buffer ($hue) {\\n .md-progress-bar-fill {\\n @include md-theme-property(background-color, $hue);\\n }\\n\\n .md-progress-bar-track {\\n @include md-theme-property(background-color, $hue, null, .38);\\n }\\n\\n .md-progress-bar-buffer {\\n @include md-theme-property(border-color, $hue, null, .38);\\n }\\n}\\n\\n@mixin md-progress-spinner-spec ($hue) {\\n .md-progress-spinner-circle {\\n @include md-theme-property(stroke, $hue);\\n }\\n}\\n\\n.md-progress-bar {\\n @include md-theme-component() {\\n &.md-indeterminate,\\n &.md-query {\\n @include md-progress-bar-indeterminate(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-indeterminate(accent)\\n }\\n }\\n\\n &.md-determinate {\\n @include md-progress-bar-determinate(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-determinate(accent)\\n }\\n }\\n\\n &.md-buffer {\\n @include md-progress-bar-buffer(primary);\\n\\n &.md-accent {\\n @include md-progress-bar-buffer(accent)\\n }\\n }\\n }\\n}\\n\\n.md-progress-spinner {\\n @include md-theme-component() {\\n @include md-progress-spinner-spec(primary);\\n\\n &.md-accent {\\n @include md-progress-spinner-spec(accent)\\n }\\n }\\n}\\n\",\".md-radio {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-radio-container {\\n @include md-theme-property(border-color, accent);\\n\\n &:after {\\n @include md-theme-property(background-color, accent);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-radio-container {\\n @include md-theme-property(border-color, primary);\\n\\n &:after {\\n @include md-theme-property(background-color, primary);\\n }\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-radio-container {\\n border-color: rgba(#000, .54);\\n }\\n\\n &.md-disabled {\\n .md-radio-container {\\n border-color: rgba(#000, .26);\\n }\\n\\n &.md-checked {\\n .md-radio-container {\\n border-color: rgba(#000, .26);\\n\\n &:after {\\n background-color: rgba(#000, .26);\\n }\\n }\\n }\\n }\\n } @else {\\n .md-radio-container {\\n border-color: rgba(#fff, .7);\\n }\\n\\n &.md-disabled {\\n .md-radio-container {\\n border-color: rgba(#fff, .3);\\n }\\n\\n &.md-checked {\\n .md-radio-container {\\n border-color: rgba(#fff, .3);\\n\\n &:after {\\n background-color: rgba(#fff, .3);\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\".md-snackbar {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, text-primary);\\n\\n @if md-get-theme-mode() == light {\\n background-color: #323232;\\n } @else {\\n background-color: #fff;\\n }\\n }\\n}\\n\",\".md-steppers {\\n @include md-theme-component() {\\n @include md-theme-property(background-color, background);\\n @include md-theme-property(color, text-primary, background);\\n\\n\\n .md-stepper-icon,\\n .md-stepper-number,\\n .md-stepper {\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, divider, background);\\n }\\n }\\n\\n .md-stepper-number {\\n @include md-theme-property(background-color, text-hint, background);\\n @include md-theme-property(color, text-primary, text-hint);\\n\\n svg {\\n @include md-theme-property(color, text-primary, text-hint);\\n @include md-theme-property(fill, text-primary, text-hint);\\n }\\n }\\n\\n .md-stepper-header {\\n .md-button-content {\\n @include md-theme-property(color, text-hint, background);\\n\\n &:after,\\n &:before {\\n @include md-theme-property(background-color, divider, background);\\n }\\n }\\n\\n &.md-active,\\n &.md-done {\\n .md-button-content {\\n @include md-theme-property(color, text-primary, background);\\n }\\n\\n .md-stepper-number {\\n @include md-theme-property(background-color, primary, background);\\n @include md-theme-property(color, text-primary, primary);\\n\\n svg {\\n @include md-theme-property(color, text-primary, primary);\\n @include md-theme-property(fill, text-primary, primary);\\n }\\n }\\n }\\n\\n &.md-error {\\n .md-button-content {\\n @include md-theme-property-by-hue(color, red, A400, stepper, error);\\n }\\n\\n .md-icon svg {\\n @include md-theme-property-by-hue(color, red, A400, stepper, error);\\n @include md-theme-property-by-hue(fill, red, A400, stepper, error);\\n }\\n }\\n }\\n }\\n}\\n\",\".md-subheader {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-accent, background);\\n\\n &.md-primary {\\n @include md-theme-property(color, primary, background);\\n }\\n }\\n}\\n\",\".md-switch {\\n @include md-theme-component() {\\n &.md-checked {\\n .md-switch-container {\\n @include md-theme-property(background-color, accent, null, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property(background-color, accent);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, accent);\\n }\\n }\\n\\n &.md-checked.md-primary {\\n .md-switch-container {\\n @include md-theme-property(background-color, primary, null, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property(background-color, primary);\\n }\\n\\n .md-ripple {\\n @include md-theme-property(color, primary);\\n }\\n }\\n\\n @if md-get-theme-mode() == light {\\n .md-switch-container {\\n background-color: rgba(#000, .38);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 100, switch, thumb);\\n }\\n\\n &.md-disabled {\\n .md-switch-container {\\n background-color: rgba(#000, .12);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 400, switch, thumb);\\n }\\n }\\n } @else {\\n .md-switch-container {\\n background-color: rgba(#fff, .3);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 400, switch, thumb);\\n }\\n\\n &.md-disabled {\\n .md-switch-container {\\n background-color: rgba(#fff, .1);\\n }\\n\\n .md-switch-thumb {\\n @include md-theme-property-by-hue(background-color, grey, 800, switch, thumb);\\n }\\n }\\n }\\n }\\n}\\n\",\".md-table {\\n @include md-theme-component() {\\n .md-table-content,\\n .md-table-alternate-header {\\n @include md-theme-property(background-color, background);\\n }\\n\\n .md-table-alternate-header .md-table-toolbar {\\n @include md-theme-property(color, text-primary, background);\\n @include md-theme-property(background-color, accent, null, .2);\\n }\\n\\n .md-table-row {\\n &:hover:not(.md-header-row) .md-table-cell {\\n @include md-theme-property(background-color, highlight, background, .08);\\n }\\n\\n &.md-selected,\\n &.md-selected-single {\\n @if md-get-theme-mode() == light {\\n @include md-theme-property-by-hue(background-color, grey, 100, row, background);\\n } @else {\\n @include md-theme-property-by-hue(background-color, grey, 700, row, background);\\n }\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary, background);\\n @include md-theme-property(color, text-primary, primary);\\n\\n .md-ripple {\\n color: #fff;\\n }\\n\\n .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n\\n &:after {\\n @include md-theme-property(border-color, primary);\\n }\\n }\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent, background);\\n @include md-theme-property(color, text-primary, accent);\\n\\n .md-ripple {\\n color: #fff;\\n }\\n\\n .md-checkbox-container {\\n background-color: #fff;\\n border-color: #fff;\\n\\n &:after {\\n @include md-theme-property(border-color, accent);\\n }\\n }\\n }\\n }\\n\\n td {\\n @include md-theme-property(border-top-color, divider, background);\\n }\\n }\\n\\n .md-table-head {\\n @include md-theme-property(color, text-accent, background);\\n }\\n\\n .md-table-fixed-header-active {\\n @include md-theme-property(border-bottom-color, divider, background);\\n }\\n\\n .md-sortable {\\n &:hover,\\n &.md-sorted {\\n @include md-theme-property(color, text-primary, background);\\n\\n svg {\\n @include md-theme-property(color, text-primary, background);\\n @include md-theme-property(fill, text-primary, background);\\n }\\n }\\n }\\n\\n .md-table-pagination {\\n @include md-theme-property(border-top-color, divider, background);\\n }\\n }\\n}\\n\",\"@mixin md-tabs-spec ($primary, $indicator, $text) {\\n .md-tabs-navigation {\\n @include md-theme-property(background-color, $primary, background);\\n\\n .md-button {\\n @if $text == text-primary {\\n @include md-theme-property(color, $text, $primary, .7);\\n\\n &[disabled] {\\n @include md-theme-property(color, $text, $primary, .38);\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, $text, $primary, .7);\\n\\n svg {\\n @include md-theme-property(fill, $text, $primary, .7);\\n }\\n }\\n } @else {\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n &[disabled] {\\n @include md-theme-property(color, text-primary, $primary, .38);\\n }\\n\\n .md-icon {\\n @include md-theme-property(color, text-primary, $primary, .7);\\n\\n svg {\\n @include md-theme-property(fill, text-primary, $primary, .7);\\n }\\n }\\n }\\n\\n &.md-active {\\n @include md-theme-property(color, $text, $primary);\\n\\n .md-icon {\\n @include md-theme-property(color, $text, $primary);\\n\\n svg {\\n @include md-theme-property(fill, $text, $primary);\\n }\\n }\\n }\\n }\\n }\\n\\n .md-tabs-indicator {\\n @include md-theme-property(background-color, $indicator, $primary);\\n }\\n}\\n\\n.md-tabs {\\n @include md-theme-component() {\\n @include md-tabs-spec(background, primary, primary);\\n\\n &.md-primary {\\n @include md-tabs-spec(primary, text-primary, text-primary);\\n }\\n\\n &.md-accent {\\n @include md-tabs-spec(accent, text-primary, text-primary);\\n }\\n }\\n}\\n\",\"@mixin md-toolbar-icon($primary, $secondary) {\\n .md-icon {\\n @include md-theme-property(color, $primary, $secondary);\\n\\n svg {\\n @include md-theme-property(fill, $primary, $secondary);\\n }\\n }\\n}\\n\\n@mixin md-toolbar-button($primary, $secondary) {\\n .md-button:not([disabled]) {\\n &:not(.md-raised) {\\n @include md-theme-property(color, $primary, $secondary);\\n }\\n }\\n}\\n\\n@mixin md-toolbar-title($primary, $secondary) {\\n .md-title,\\n .md-display-1,\\n .md-display-2 {\\n @include md-theme-property(color, $primary, $secondary);\\n }\\n}\\n\\n.md-toolbar {\\n @include md-theme-component() {\\n @include md-theme-property(color, text-primary, background-variant);\\n\\n @if md-get-theme-mode() == light {\\n @include md-theme-property-by-hue(background-color, grey, 100, toolbar, background);\\n } @else {\\n @include md-theme-property-by-hue(background-color, grey, 900, toolbar, background);\\n }\\n\\n @include md-toolbar-icon(text-primary, background-variant);\\n @include md-toolbar-title(text-primary, background-variant);\\n\\n &.md-primary {\\n @include md-theme-property(background-color, primary);\\n @include md-theme-property(color, text-primary, primary);\\n @include md-toolbar-icon(text-primary, primary);\\n @include md-toolbar-button(text-primary, primary);\\n @include md-toolbar-title(text-primary, primary);\\n }\\n\\n &.md-accent {\\n @include md-theme-property(background-color, accent);\\n @include md-theme-property(color, text-primary, accent);\\n @include md-toolbar-icon(text-primary, accent);\\n @include md-toolbar-button(text-primary, accent);\\n @include md-toolbar-title(text-primary, accent);\\n }\\n\\n &.md-transparent {\\n background-color: transparent;\\n @include md-theme-property(color, text-primary, background);\\n @include md-toolbar-icon(text-primary, background);\\n @include md-toolbar-title(text-primary, background);\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0xIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT81MjM0Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikodHJ1ZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCJcXG5AY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi8qKlxcbiAqIFRoZSBjb21wbGV0ZSBtYXRlcmlhbCBwYWxldHRlXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCB0aGUgY3VycmVudCB0aGVtZSBtb2RlIGZyb20gdGhlIGN1cnJlbnQgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJHRoZW1lLW1vZGU6IG1kLWdldC10aGVtZS1tb2RlKClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgYnkgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGNvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoZGFyaywgcHJpbWFyeSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvci10aGVtZSDigJTigIogVGhlIHRoZW1lIGNvbG9yIHwgQWNjZXB0cyBkYXJrIG9yIGxpZ2h0XFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgb25seVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3IxOiBtZC1nZXQtY29sb3ItYnktdHlwZShiYWNrZ3JvdW5kLCBkYXJrKVxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGFjY2VudClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdGhlbWUg4oCU4oCKIFRoZSBmYWxsYmFjayB0aGVtZVxcbiAqL1xcbi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogTWFwIHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtZXMgdG8gYmUgcHJvY2Vzc2VkIGJ5IGVhY2ggY29tcG9uZW50XFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIFN0b3JlIHRoZSBjdXJyZW50IHRoZW1lIG5hbWVcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBzdHJpbmdcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlIGNvbG9yIGNvbnRyYXN0IHZhbHVlc1xcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4vKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIGZvciBhIGNvbG9yLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBjb2xvciB0byBiZSBhbmFseXNlZFxcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmcg4oCU4oCKIFRoZSBiZyBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZmcg4oCU4oCKIFRoZSBmZyBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcbi8qKlxcbiAqIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBkYXJrIG9yIGxpZ2h0IHRleHQgb24gdG9wIG9mIGdpdmVuIGNvbG9yLlxcbiAqIFJldHVybnMgZGFyayBvciBsaWdodCBkZXBlbmRpbmcgb24gdGhlIGNvbnRyYXN0IHJhdGlvLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBkZXNpcmVkIGNvbG9yIHRvIGJlIGNvbXBhcmVkXFxuICovXFxuLyoqXFxuICogT3ZlcnJpZGUgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IHBhbGV0dGUgZ2l2aW5nIG5ldyB2YWx1ZXMuIEl0IHdpbGwgZXh0ZW5kXFxuICogdGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLW92ZXJyaWRlLXBhbGV0dGUgKChcXG4gKiAgIGFjY2VudDogYmx1ZSxcXG4gKiAgIHRoZW1lOiBcXFwiZGFya1xcXCJcXG4gKiApKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUg4oCU4oCKIFRoZSBuZXcgcGFsZXR0ZVxcbiAqL1xcbi8qKlxcbiAqIENyZWF0ZSBhIG5ldyB0aGVtZSBiYXNlZCBvbiBhIGdpdmVuIHBhbGV0dGUuIEl0IHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0XFxuICogdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLXJlZ2lzdGVyLXRoZW1lKFxcXCJhbHRlcm5hdGl2ZVxcXCIsIChcXG4gKiAgIHByaW1hcnk6ICMyMTIxMjEsXFxuICogICBhY2NlbnQ6ICNDRERDMzksXFxuICogICB0aGVtZTogZGFya1xcbiAqICkpO1xcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge3N0cmluZ30gJG5hbWUg4oCU4oCKIFRoZSB0aGVtZSBuYW1lIHRvIGJlIHVzZWQgd2l0aCB0aGUgVnVlIE1hdGVyaWFsXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIFskbWQtZGVmYXVsdC1wYWxldHRlXSDigJTigIogVGhlIHRoZW1lIHBhbGV0dGVcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LXByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBiYWNrZ3JvdW5kOiBtZC10aGVtZShhY2NlbnQpO1xcbiAqICAgICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LWFjY2VudCk7XFxuICogICAgIH07XFxuICogICB9XFxuICogfVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcyBiYXNlZCBvbiBwYXJlbnQuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgIH1cXG4gKiB9XFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBhY2NlbnQpO1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICogICAgIH1cXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICRiYWNrZ3JvdW5kIOKAlOKAiiBUaGUgYmFja2dyb3VuZCBjb2xvciB0byBhbmFseXNlIGNvbnRyYXN0XFxuICogQHBhcmFtIHtudW1iZXJ9ICRvcGFjaXR5IOKAlOKAiiBUaGUgb3BhY2l0eSBhbW91bnRcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5IGJ5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIEEgdmFsaWQgbWF0ZXJpYWwgcGFsZXR0ZSBjb2xvciBuYW1lXFxuICogQHBhcmFtIHtzdHJpbmd9ICRodWUg4oCU4oCKIFRoZSBodWUgYW1vdW50IHRvIGdldCB0aGUgaGV4IGNvbG9yXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgdHlwZSBvZiB2YXJpYWJsZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFyaWFudCDigJTigIogVGhlIHR5cGUgb2YgY29uc3RyYXN0ZWQgdmFyaWFibGVcXG4gKi9cXG46cm9vdCB7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTogJHZhbHVlXFxuICAgIDtcXG4gIC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6ICR2YWx1ZVxcbiAgICA7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6ICR2YWx1ZVxcbiAgICA7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6Oi1tb3otc2VsZWN0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IDpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSk6OnNlbGVjdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pOmhvdmVyIHtcXG4gICAgY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC44KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuOCkpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKS5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtdGhlbWUtZGVmYXVsdCBhOm5vdCgubWQtYnV0dG9uKS5tZC1hY2NlbnQ6aG92ZXIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC44KSk7XFxufVxcbmh0bWwubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLXZhcmlhbnQsICNmYWZhZmEpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktMSwgLm1kLXRoZW1lLWRlZmF1bHRcXG4ubWQtZGlzcGxheS0yLCAubWQtdGhlbWUtZGVmYXVsdFxcbi5tZC1kaXNwbGF5LTMsIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktNCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1zY3JvbGxiYXIubWQtdGhlbWUtZGVmYXVsdDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyLCAubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XFxuICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXNjcm9sbGJhci1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQtdmFyaWFudCwgI2UxZTFlMSk7XFxufVxcbi5tZC1zY3JvbGxiYXIubWQtdGhlbWUtZGVmYXVsdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xcbiAgYmFja2dyb3VuZDogIzc1NzU3NTtcXG4gIGJhY2tncm91bmQ6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc2Nyb2xsYmFyLW9uLWJhY2tncm91bmQtdmFyaWFudCwgIzc1NzU3NSk7XFxufVxcbi5tZC1hcHA6bm90KC5tZC1vdmVybGFwKS5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtaXRlbXMgLm1kLWhpZ2hsaWdodC10ZXh0LW1hdGNoIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU0KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU0KSk7XFxufVxcbi5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikpO1xcbn1cXG4ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBsYWJlbCxcXG4gICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3ggaW5wdXQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsLFxcbiAgICAgIC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94Lm1kLWZvY3VzZWQgaW5wdXQge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWF2YXRhci1pY29uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbi1kaXNhYmxlZCwgI2ZmZik7XFxufVxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgIGNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbi1kaXNhYmxlZCwgI2ZmZik7XFxuICAgIGZpbGw6ICNmZmY7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtYXZhdGFyLWljb24ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1hdmF0YXItaWNvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1maXhlZCAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCA+IC5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2OGY4NztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLXByaW1hcnksICNhNjhmODcpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLWZpeGVkIC5tZC1ib3R0b20tYmFyLWl0ZW0ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICM5ZTllOWU7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgPiAubWQtcmlwcGxlIC5tZC1yaXBwbGUtd2F2ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NTg1ODU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWFjY2VudCwgIzg1ODU4NSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0gLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogI2JjYWFhNDtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uLWZvbnQge1xcbiAgICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogIzllOWU5ZTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZFtkaXNhYmxlZF0ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IC5tZC1pY29uLWZvbnQge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiW2Rpc2FibGVkXSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pIC5tZC1pY29uLWZvbnQge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWZhYjpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24tZm9udCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0W2Rpc2FibGVkXSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24sXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uLFxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLFxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxufVxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbn1cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaWNvbiwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWljb24ge1xcbiAgICAgIGZpbGw6ICNmZmY7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24taWNvbiwgI2ZmZik7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29uIHN2ZywgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tZGlzYWJsZWQsICNmZmYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG59XFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpO1xcbn1cXG4ubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWNoaXBzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNsZWFyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcXG59XFxuLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtYXBwIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YWZ0ZXIsIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2VlayB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbjpob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkLFxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLWRpdmlkZXIubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7XFxufVxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXJvdW5kZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4wNikpO1xcbn1cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICNiY2FhYTQ7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICM5ZTllOWU7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24tZm9udCB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YmVmb3JlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaGVscGVyLXRleHQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNvdW50LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IGxhYmVsIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhIHtcXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YWZ0ZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdGV4dGFyZWE6bm90KC5tZC1hdXRvZ3Jvdyk6YmVmb3JlIHtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjM4KSksIGNvbG9yLXN0b3AoMzMlLCByZ2JhKDAsIDAsIDAsIDAuMzgpKSwgY29sb3Itc3RvcCgwJSwgdHJhbnNwYXJlbnQpKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjM4KSAwJSwgcmdiYSgwLCAwLCAwLCAwLjM4KSAzMyUsIHRyYW5zcGFyZW50IDAlKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgPiAubWQtaWNvbjphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLXZhcmlhbnQsICNmYWZhZmEpO1xcbn1cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1pbnZhbGlkOmFmdGVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjE3NDQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWZpZWxkdmFyaWFudCwgI2ZmMTc0NCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZSB7XFxuICBib3JkZXItY29sb3I6ICNmZjE3NDQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCBsYWJlbCB7XFxuICBjb2xvcjogI2ZmMTc0NDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWZpZWxkdmFyaWFudCwgI2ZmMTc0NCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWVycm9yIHtcXG4gIGNvbG9yOiAjZmYxNzQ0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZGF0ZS1pY29uLFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiBzdmcge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO1xcbiAgZmlsbDogI2ZmMTc0NDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtaW5wdXQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCAubWQtdGV4dGFyZWEsIC5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtaW5wdXQsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGlnaGxpZ2h0IC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgPiAubWQtaWNvbiwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGlnaGxpZ2h0ID4gLm1kLWljb24ge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgZmlsbDogI2JjYWFhNDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCBsYWJlbCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1pY29uIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbn1cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnLm1kLXByaW1hcnkge1xcbiAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1pbWFnZSBzdmcubWQtYWNjZW50IHtcXG4gICAgZmlsbDogIzllOWU5ZTtcXG4gICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWZvbnQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMikge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQubWQtdHJpcGxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMykge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhpZ2hsaWdodCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTtcXG59XFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LFxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbn1cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1saXN0LWl0ZW0tbGluayxcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWJ1dHRvbiB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWxpc3QtaXRlbS1saW5rLFxcbi5tZC1tZW51LWl0ZW0ubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWJ1dHRvbiB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCwgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyLCAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcXVlcnkubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsOmFmdGVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTtcXG59XFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItdHJhY2sge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyIC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpO1xcbn1cXG4ubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYnVmZmVyLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogI2JjYWFhNDtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG59XFxuLm1kLXByb2dyZXNzLXNwaW5uZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogIzllOWU5ZTtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJhZGlvLWNvbnRhaW5lcjphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbn1cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG59XFxuLm1kLXNuYWNrYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YWZ0ZXIsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWljb246YmVmb3JlLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmFmdGVyLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyOmJlZm9yZSxcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyOmFmdGVyLFxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXI6YmVmb3JlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LWhpbnQsICNmZmYpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTtcXG4gICAgICBmaWxsOiAjZmZmO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZik7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmFmdGVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIgLm1kLWJ1dHRvbi1jb250ZW50OmJlZm9yZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLWJ1dHRvbi1jb250ZW50LCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciwgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWRvbmUgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtYWN0aXZlIC5tZC1zdGVwcGVyLW51bWJlciBzdmcsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1zdGVwcGVyLW51bWJlciBzdmcge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZXJyb3IgLm1kLWJ1dHRvbi1jb250ZW50IHtcXG4gICAgY29sb3I6ICNmZjE3NDQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KTtcXG59XFxuLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWVycm9yIC5tZC1pY29uIHN2ZyB7XFxuICAgIGNvbG9yOiAjZmYxNzQ0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7XFxuICAgIGZpbGw6ICNmZjE3NDQ7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3RlcHBlcnZhcmlhbnQsICNmZjE3NDQpO1xcbn1cXG4ubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG59XFxuLm1kLXN1YmhlYWRlci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogIzllOWU5ZTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG59XFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0IC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3dpdGNodmFyaWFudCwgI2Y1ZjVmNSk7XFxufVxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbn1cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRiZGJkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjYmRiZGJkKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWNvbnRlbnQsXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIC5tZC10YWJsZS10b29sYmFyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMikpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93OmhvdmVyOm5vdCgubWQtaGVhZGVyLXJvdykgLm1kLXRhYmxlLWNlbGwge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4wOCkpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1yb3d2YXJpYW50LCAjZjVmNWY1KTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1wcmltYXJ5LCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXIsIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1yaXBwbGUge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIsIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQtc2luZ2xlLm1kLWFjY2VudCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzllOWU5ZTtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbn1cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93IHRkIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1oZWFkIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1hY2NlbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1maXhlZC1oZWFkZXItYWN0aXZlIHtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxufVxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlOmhvdmVyIHN2ZywgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmcge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXBhZ2luYXRpb24ge1xcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZik7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQsICNmZmYpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10b29sYmFydmFyaWFudCwgI2Y1ZjVmNSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWljb24gc3ZnIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRpdGxlLFxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0xLFxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtZGlzcGxheS0yIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10aXRsZSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZGlzcGxheS0yIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGl0bGUsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxufVxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbn1cXG4ubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC10aXRsZSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtZGlzcGxheS0xLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG59XFxuLm1kLXRvb2x0aXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10b29sdGlwLCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTcsIDk3LCA5NywgMC45KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdG9vbHRpcC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDk3LCA5NywgOTcsIDAuOSkpO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9BcHAudnVlXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL3BhbGV0dGUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9mdW5jdGlvbnMuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS92YXJpYWJsZXMuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC90aGVtZS9jb2xvci1jb250cmFzdC5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L3RoZW1lL21peGlucy5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2Jhc2UvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQXV0b2NvbXBsZXRlL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEF2YXRhci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRCb3R0b21CYXIvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQnV0dG9uL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZENhcmQvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ2hlY2tib3gvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ2hpcHMvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kQ29udGVudC90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWREYXRlcGlja2VyL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZERyYXdlci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRFbXB0eVN0YXRlL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEZpZWxkL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZEljb24vdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kTGlzdC90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRNZW51L3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFByb2dyZXNzL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFJhZGlvL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFNuYWNrYmFyL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN0ZXBwZXJzL3RoZW1lLnNjc3NcIixcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVlLW1hdGVyaWFsL2Rpc3QvY29tcG9uZW50cy9NZFN1YmhlYWRlci90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRTd2l0Y2gvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVGFibGUvdGhlbWUuc2Nzc1wiLFwiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL25vZGVfbW9kdWxlcy92dWUtbWF0ZXJpYWwvZGlzdC9jb21wb25lbnRzL01kVGFicy90aGVtZS5zY3NzXCIsXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vbm9kZV9tb2R1bGVzL3Z1ZS1tYXRlcmlhbC9kaXN0L2NvbXBvbmVudHMvTWRUb29sYmFyL3RoZW1lLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7O0dBTUc7QUNOSDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFPSDs7Ozs7Ozs7O0dBU0c7QUFPSDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQW1CSDs7Ozs7Ozs7Ozs7O0dBWUc7QUFTSDs7Ozs7Ozs7Ozs7OztHQWFHO0FDN0dIOzs7Ozs7Ozs7Ozs7R0FZRztBQVNIOzs7Ozs7R0FNRztBQUlIOzs7Ozs7R0FNRztBQUlIOzs7Ozs7R0FNRztBQUtIOzs7Ozs7R0FNRztBQzFESDs7O0dBR0c7QUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFxUUg7Ozs7OztHQU1HO0FBV0g7Ozs7Ozs7R0FPRztBQVVIOzs7Ozs7O0dBT0c7QUNsVUg7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFPSDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQW9CSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JHO0FBY0g7Ozs7Ozs7Ozs7R0FVRztBQWNIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JHO0FBa0JIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFrQkg7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUE5TEQ7RUFFSTtLQUF5QztFQUF6QztLQUF5QztFQUF6QztLQUF5QztDQUU1QztBQStEQztFQW9ERiwwQkp5SGM7RUl4SGQsd0VBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLDJFQUEwRjtDQW5EdkY7QUFGRDtFQW9ERiwwQkp5SGM7RUl4SGQsd0VBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLDJFQUEwRjtDQW5EdkY7QUFGRDtFQW9ERixlSitHZTtFSTlHZiw4REFBMEY7Q0FuRHZGO0FBRkQ7SUFvREYsZ0NKK0dlO0lJOUdmLCtFQUEwRjtDQ3pKckY7QURvR0g7SUFvREYsZUp5SGM7SUl4SGQsNkRBQTBGO0NDakpyRjtBRDRGSDtNQW9ERixnQ0p5SGM7TUl4SGQsOEVBQTBGO0NDbEpuRjtBRHFFTDtFQTRFRiwwQkZ2RzZCO0VFd0c3QixzRUFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsdUZBQTBGO0NBM0V2RjtBQXNCRDs7Ozs7RUFvREYsMkJGckd3QjtFRXNHeEIsc0ZBQTBGO0NBbkR2RjtBQ3pFSDtFRDJIQSxvQkY1RndDO0VFNkZ4Qyx3RkFBMEY7Q0N2SHJGO0FBTEw7RUQySEEsb0JGN0ZvQjtFRThGcEIsNkVBQTBGO0NDbkhyRjtBRHNDSDtFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7Q0EzRXZGO0FFNUZMO0VGc0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtDRWxLckY7QUFMUDtFRnNLRSw0Q0Z4R2tCO0VFeUdsQixnRkFBMEY7Q0U3SnZGO0FBSUw7RUZ3SkUsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0NFbkh2RjtBQXRDTDtJRndKRSwyQkZwR3NCO0lFcUd0Qiw0RUFBMEY7Q0VqSm5GO0FBR0g7SUY2SUosNENGeEdrQjtJRXlHbEIsZ0ZBQTBGO0NFcEhyRjtBQTFCRDs7TUY2SUosMkJGdEd5QjtNRXVHekIsNEVBQTBGO01BRDFGLDZDRnRHeUI7TUV1R3pCLDhGQUEwRjtDRXZJbkY7QUFQSDtNRjZJSiwwQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0VuSW5GO0FBWEg7TUY2SUosdUJGeEdrQjtNRXlHbEIsMkRBQTBGO0NFckhuRjtBQXpCSDs7UUY2SUosMkJGcEdzQjtRRXFHdEIsNEVBQTBGO1FBRDFGLDZDRnBHc0I7UUVxR3RCLDhGQUEwRjtDRTFIakY7QUFwQkw7UUY2SUosMEJGcEdzQjtRRXFHdEIsMkVBQTBGO0NFdEhqRjtBQU9YO0VGOEdFLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRix5Q0Y5Rm9CO0VFK0ZwQiwwRUFBMEY7Q0UxR3ZGO0FDNURIO0VIcUtBLHNDRi9GMEI7RUVnRzFCLDZFQUEwRjtFQUQxRixZRnRGb0I7RUV1RnBCLG1FQUEwRjtDRzlKekY7QUFKQztJSGlLRixZRnRGb0I7SUV1RnBCLG1FQUEwRjtJQUQxRixXRnRGb0I7SUV1RnBCLGtFQUEwRjtDRy9KdkY7QUFJTDtFSDBKRSwwQkorR2U7RUk5R2YsMkRBQTBGO0NHcEp2RjtBQWxCSDtJSHFLQSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDRzlKekY7QUFKQztNSGlLRiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7TUFEMUYsMEJGdEd5QjtNRXVHekIsMkVBQTBGO0NHL0p2RjtBQUlMO0VIMEpFLDBCSnlIYztFSXhIZCwwREFBMEY7Q0cvSXZGO0FBdkJIO0lIcUtBLDBCSnlIYztJSXhIZCwwREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0NHOUp6RjtBQUpDO01IaUtGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtNQUQxRiwwQkZ0R3lCO01FdUd6QiwwRUFBMEY7Q0cvSnZGO0FDUEg7RUpxS0EsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0NJeEp6RjtBQVhDO0lKa0tGLGVKK0dlO0lJOUdmLDhEQUEwRjtDSXpKdkY7QUFQQztNSitKSixlSitHZTtNSTlHZiw4REFBMEY7Q0kxSnJGO0FBSEM7UUo0Sk4sY0orR2U7UUk5R2YsNkRBQTBGO0NJM0puRjtBQUtQO0VKcUpBLDBCSitHZTtFSTlHZiwyREFBMEY7RUFEMUYsMEJGdEd5QjtFRXVHekIsMkVBQTBGO0NJdkh6RjtBQTFCRztJSjBMSiwwQkFIaUM7SUFJakMsc0VBQTBGO0NJekxyRjtBQUdIO0lKMklGLDJCRmhHaUI7SUVpR2pCLG9FQUEwRjtDSXRJdkY7QUFIQztNSndJSiwwQkZoR2lCO01FaUdqQixtRUFBMEY7Q0l2SXJGO0FBR0g7SUptSUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NJeEh2RjtBQVJHO01KK0hOLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDSTFIbkY7QUFIQztRSjRIUiwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0kzSGpGO0FBM0NUO0VKcUtBLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtDSXhKekY7QUFYQztJSmtLRixlSnlIYztJSXhIZCw2REFBMEY7Q0l6SnZGO0FBUEM7TUorSkosZUp5SGM7TUl4SGQsNkRBQTBGO0NJMUpyRjtBQUhDO1FKNEpOLGNKeUhjO1FJeEhkLDREQUEwRjtDSTNKbkY7QUFLUDtFSnFKQSwwQkp5SGM7RUl4SGQsMERBQTBGO0VBRDFGLDBCRnRHeUI7RUV1R3pCLDBFQUEwRjtDSXZIekY7QUExQkc7SUowTEosMEJBSGlDO0lBSWpDLG9FQUEwRjtDSXpMckY7QUFHSDtJSjJJRiwyQkZoR2lCO0lFaUdqQixtRUFBMEY7Q0l0SXZGO0FBSEM7TUp3SUosMEJGaEdpQjtNRWlHakIsa0VBQTBGO0NJdklyRjtBQUdIO0lKbUlGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDSXhIdkY7QUFSRztNSitITiwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0kxSG5GO0FBSEM7UUo0SFIsMEJGdEd5QjtRRXVHekIsMEVBQTBGO0NJM0hqRjtBSjhDUDtFQTRFRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FLbEZMO0lMNEpFLGVKK0dlO0lJOUdmLDhEQUEwRjtDS3RKdkY7QUFoQkg7TUxxS0EsZUorR2U7TUk5R2YsOERBQTBGO0NLcEt6RjtBQUVEO01MaUtBLGNKK0dlO01JOUdmLDZEQUEwRjtDS2hLekY7QUFHSDtJTDRKRSxlSnlIYztJSXhIZCw2REFBMEY7Q0tqSnZGO0FBckJIO01McUtBLGVKeUhjO01JeEhkLDZEQUEwRjtDS3BLekY7QUFFRDtNTGlLQSxjSnlIYztNSXhIZCw0REFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsc0NGbEdnQztJRW1HaEMsaUdBQTBGO0lBRDFGLDJCRm5HcUI7SUVvR3JCLDZEQUEwRjtDSzNJckY7QUFsQlA7SUw0SkUsdUJGeEdrQjtJRXlHbEIsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDSzFIckY7QUFuQ1A7TUw0SkUsMkJGdEd5QjtNRXVHekIsNEVBQTBGO01BRDFGLDBCSitHZTtNSTlHZiwyREFBMEY7Q0tqSW5GO0FBckNQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDRFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0toS3pGO0FBR0g7TUw0SkUsMkJGdEd5QjtNRXVHekIsMkVBQTBGO01BRDFGLDBCSnlIYztNSXhIZCwwREFBMEY7Q0szSG5GO0FBM0NQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDJFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwwRUFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsc0NGbEdnQztJRW1HaEMsaUdBQTBGO0NLcEhyRjtBQXpDUDtJTDRKRSwwQkp5SGM7SUl4SGQsMERBQTBGO0NLMUdyRjtBQTVETDtNTHFLQSwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q0twS3pGO0FBRUQ7TUxpS0EsMEJGdEd5QjtNRXVHekIsMEVBQTBGO0NLaEt6RjtBQUdIO01MNEpFLDBCSitHZTtNSTlHZiwyREFBMEY7Q0szR25GO0FBM0RQO1FMcUtBLDJCRnRHeUI7UUV1R3pCLDRFQUEwRjtDS3BLekY7QUFFRDtRTGlLQSwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q0toS3pGO0FBR0g7SUw0SkUsMkJGbkdxQjtJRW9HckIsMkVBQTBGO0NLcEd2RjtBQWxFSDtNTHFLQSwyQkYvRjBCO01FZ0cxQixnRkFBMEY7Q0twS3pGO0FBRUQ7TUxpS0EsMEJGL0YwQjtNRWdHMUIsK0VBQTBGO0NLaEt6RjtBTG1GQztFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0NBM0V2RjtBTXhGSDtJTmtLQSx1QkZ4R2tCO0lFeUdsQiwyREFBMEY7Q01qS3pGO0FBSUM7O0lONEpGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDTXBKdkY7QUFMRzs7TU53Sk4sMkJGdEd5QjtNRXVHekIsK0VBQTBGO01BRDFGLDBCRnRHeUI7TUV1R3pCLDhFQUEwRjtDTXRKbkY7QUFNTDtJTitJRixzQ0Y5Rm9CO0lFK0ZwQixxRkFBMEY7Q005SXZGO0FBSUw7SU55SUUsMEJKK0dlO0lJOUdmLDJEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6Qiw0RUFBMEY7Q01wSXZGO0FBL0JIO01Oa0tBLDBCSitHZTtNSTlHZiwyREFBMEY7Q01qS3pGO0FBSUM7O01ONEpGLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDTXBKdkY7QUFMRzs7UU53Sk4sMkJGdEd5QjtRRXVHekIsNEVBQTBGO1FBRDFGLDBCRnRHeUI7UUV1R3pCLDJFQUEwRjtDTXRKbkY7QUFNTDtNTitJRixzQ0Y5Rm9CO01FK0ZwQixrRkFBMEY7Q005SXZGO0FBSUw7SU55SUUsMEJKeUhjO0lJeEhkLDBEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6QiwyRUFBMEY7Q01oSXZGO0FBbkNIO01Oa0tBLDBCSnlIYztNSXhIZCwwREFBMEY7Q01qS3pGO0FBSUM7O01ONEpGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDTXBKdkY7QUFMRzs7UU53Sk4sMkJGdEd5QjtRRXVHekIsMkVBQTBGO1FBRDFGLDBCRnRHeUI7UUV1R3pCLDBFQUEwRjtDTXRKbkY7QUFNTDtNTitJRixzQ0Y5Rm9CO01FK0ZwQixpRkFBMEY7Q005SXZGO0FDekJMO0VQc0tFLDBCSnlIYztFSXhIZCwwREFBMEY7RUFEMUYsc0JKeUhjO0VJeEhkLHNEQUEwRjtDTzdKckY7QUFWUDtJUHNLRSxtQkZ4R2tCO0lFeUdsQix1REFBMEY7Q085Sm5GO0FBVFQ7RVBzS0UsZUp5SGM7RUl4SGQsK0NBQTBGO0NPekpyRjtBQWRQO0VQc0tFLDBCSitHZTtFSTlHZiwyREFBMEY7RUFEMUYsc0JKK0dlO0VJOUdmLHVEQUEwRjtDT2xKckY7QUFyQlA7RVBzS0UsZUorR2U7RUk5R2YsZ0RBQTBGO0NPOUlyRjtBQXpCUDtFQThCUSxrQ0FBdUI7Q0FDeEI7QUEvQlA7RUFtQ1Usa0NBQXVCO0NBQ3hCO0FBcENUO0VBd0NZLGtDQUF1QjtFQUN2QixzQ0FBMkI7Q0FDNUI7QVBnRFA7RUE0RUYsc0NGakdzQjtFRWtHdEIseUVBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLGlFQUEwRjtDQTNFdkY7QVE1Rkw7SVJzS0UsWUZ0Rm9CO0lFdUZwQixrRUFBMEY7SUFEMUYsV0Z0Rm9CO0lFdUZwQixpRUFBMEY7Q1ExSnZGO0FBYkw7SVJzS0Usc0NGaEdpQjtJRWlHakIsb0VBQTBGO0lBRDFGLFlGdEZvQjtJRXVGcEIsMERBQTBGO0NRcklyRjtBQWxDUDtNUnNLRSxXRnRGb0I7TUV1RnBCLHlEQUEwRjtDUWhKbkY7QUF2QlQ7TVJzS0UsNENGeEdrQjtNRXlHbEIsZ0ZBQTBGO01BRDFGLDJCRmhHaUI7TUVpR2pCLHVFQUEwRjtDUXRJbkY7QUFqQ1Q7UVJzS0UsMEJGaEdpQjtRRWlHakIsc0VBQTBGO1FBRDFGLDJCRmhHaUI7UUVpR2pCLHVFQUEwRjtDUXZJakY7QUFoQ1g7SVJzS0UsMEJKK0dlO0lJOUdmLDJEQUEwRjtJQUQxRiwyQkZ0R3lCO0lFdUd6Qiw0RUFBMEY7Q1F6R3ZGO0FBOURMO01Sc0tFLFlGaEZZO01FaUZaLHNEQUEwRjtNQUQxRixzQ0ZuR3FCO01Fb0dyQix3RUFBMEY7Q1F0SHJGO0FBakRQO01Sc0tFLFlGdEZvQjtNRXVGcEIsMERBQTBGO01BRDFGLHNDRmhHaUI7TUVpR2pCLG9FQUEwRjtDUTNHbkY7QUE1RFQ7UVJzS0UsNENGeEdrQjtRRXlHbEIsZ0ZBQTBGO0NRNUdqRjtBQTNEWDtJUnNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDUTlFdkY7QUF6Rkw7TVJzS0UsWUZoRlk7TUVpRlosc0RBQTBGO01BRDFGLHNDRm5HcUI7TUVvR3JCLHdFQUEwRjtDUTNGckY7QUE1RVA7TVJzS0Usc0NGaEdpQjtNRWlHakIsb0VBQTBGO01BRDFGLFlGdEZvQjtNRXVGcEIsMERBQTBGO0NRaEZuRjtBQXZGVDtRUnNLRSw0Q0Z4R2tCO1FFeUdsQixnRkFBMEY7Q1FqRmpGO0FBdEZYO0lSc0tFLHFDRmpHc0I7SUVrR3RCLHdFQUEwRjtJQUQxRiwyQkZyR3dCO0lFc0d4QixnRUFBMEY7Q1F6RXZGO0FBSUw7RUFJUSxxQ0FBMkI7Q0FDNUI7QVJiSDtFQTRFRix1QkZ4R2tCO0VFeUdsQiwyREFBMEY7RUFEMUYsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0NBM0V2RjtBUzVGTDtJVHNLRSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDUy9KdkY7QUFSTDtJVHNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDJFQUEwRjtDUzFKdkY7QUFFRDtJVHVKRix1Q0Y5Rm9CO0lFK0ZwQixzRkFBMEY7Q1N0SnZGO0FUeUVEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FVNUZMO0lWc0tFLDBCSitHZTtJSTlHZiwyREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NVMUp2RjtBQWJMO0lWc0tFLHVCRnhHa0I7SUV5R2xCLDJEQUEwRjtDVXBKckY7QUFuQlA7SVZzS0UsdUJGeEdrQjtJRXlHbEIsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDVTlJdkY7QUF6Qkw7SVZzS0UsMkJGckd3QjtJRXNHeEIsOEVBQTBGO0NVMUl2RjtBQTdCTDtJVnNLRSwyQkZuR3FCO0lFb0dyQiwyRUFBMEY7Q1V0SXZGO0FBakNMO0lWc0tFLGVKK0dlO0lJOUdmLDhEQUEwRjtDVWxJdkY7QUFyQ0w7OztJVnNLRSxzQ0Y5Rm9CO0lFK0ZwQix1RUFBMEY7Q1UzSHJGO0FBNUNQO0lWc0tFLDBCSitHZTtJSTlHZiwyREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsNEVBQTBGO0NVcEhyRjtBQW5EUDs7SVZzS0UsZUorR2U7SUk5R2YsOERBQTBGO0NVN0dyRjtBQTFEUDtJVnNLRSx5Q0Y5Rm9CO0lFK0ZwQix3RkFBMEY7Q1V4R3ZGO0FWMkJEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FBRkQ7RUE0RUYsc0NGOUZvQjtFRStGcEIsdUVBQTBGO0NBM0V2RjtBQUZEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FXNUZMO0lYc0tFLHdDRjlGb0I7SUUrRnBCLHVGQUEwRjtDV2hLdkY7QUNKQztFWm1LSiwwQkZuR3FCO0VFb0dyQiwwRUFBMEY7Q1lsS3JGO0FBR0g7RVo4SkYsMkJGbkdxQjtFRW9HckIsMkVBQTBGO0NZN0p2RjtBQUlMO0Vad0pFLHNDRm5HcUI7RUVvR3JCLHdFQUEwRjtDWW5KdkY7QUFqQkM7RVptS0osY0orR2U7RUk5R2YsNkRBQTBGO0NZbEtyRjtBQUdIO0VaOEpGLGVKK0dlO0VJOUdmLDhEQUEwRjtDWTdKdkY7QUFQQztFWm1LSixjSnlIYztFSXhIZCw0REFBMEY7Q1lsS3JGO0FBR0g7RVo4SkYsZUp5SGM7RUl4SGQsNkRBQTBGO0NZN0p2RjtBQ1ZMO0VBSVEsc0NBQTJCO0NBQzVCO0FBTFA7RWJzS0UsMEJKK0dlO0VJOUdmLDJEQUEwRjtDYTlKckY7QUFUUDs7O0VBY1EsMkJBQWdCO0NBQ2pCO0FBZlA7O0VBb0JVLDJCQUFnQjtDQUNqQjtBQXJCVDs7O0VBNEJVLDZDQUFrQztDQUNuQztBQTdCVDtFQWtDVSxrQ0FBdUI7Q0FDeEI7QUFuQ1Q7RWJzS0Usc0JKK0dlO0VJOUdmLHVEQUEwRjtDYWhJbkY7QUF2Q1Q7RUE0Q1UsOEpBQW9HO0VBQXBHLDZHQUFvRztDQUNyRztBQTdDVDs7O0VBa0RVLDJCQUFnQjtDQUNqQjtBQW5EVDtFYnNLRSwwQkZ2RzZCO0VFd0c3QixzRUFBMEY7Q2ExRHJGO0FBN0dQO0VidVBFLDBCSmpPZTtFSWtPZixnRUFBdUY7Q2FySWxGO0FBbkhQO0VidVBFLHNCSmpPZTtFSWtPZiw0REFBdUY7Q2FoSWhGO0FBeEhUO0VidVBFLGVKak9lO0VJa09mLHFEQUF1RjtDYTNIbEY7QUE3SFA7RWJ1UEUsZUpqT2U7RUlrT2YscURBQXVGO0NhdkhsRjtBQWpJUDs7RWJ1UEUsZUpqT2U7RUlrT2YscURBQXVGO0VBRHZGLGNKak9lO0VJa09mLG9EQUF1RjtDYWpIbEY7QUF2SVA7OztFYnNLRSxlSitHZTtFSTlHZiw4REFBMEY7Q2F4QnJGO0FBL0lQO0Vic0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtFQUQxRixjSitHZTtFSTlHZiw2REFBMEY7Q2FuQnJGO0FBcEpQO0Vic0tFLGVKK0dlO0VJOUdmLDhEQUEwRjtDYWJyRjtBQTFKUDtFYnNLRSwwQkZuR3FCO0VFb0dyQiwwRUFBMEY7Q2FQckY7QUNoS1A7RWRzS0UsMEJGaEdpQjtFRWlHakIsc0VBQTBGO0NjMUpyRjtBQWJQO0lkc0tFLGNKK0dlO0lJOUdmLDZEQUEwRjtDYy9KbkY7QUFSVDtJZHNLRSxjSnlIYztJSXhIZCw0REFBMEY7Q2MzSm5GO0FBWlQ7RWRzS0UsMkJGaEdpQjtFRWlHakIsdUVBQTBGO0NjN0l2RjtBQTFCTDtJZHNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q2NsSnJGO0FBckJQO0lkc0tFLGVKeUhjO0lJeEhkLDZEQUEwRjtDYzlJckY7QWRpRUg7RUE0RUYsdUJGeEdrQjtFRXlHbEIsMkRBQTBGO0VBRDFGLDJCRnRHeUI7RUV1R3pCLCtFQUEwRjtDQTNFdkY7QWU1Rkw7SWZzS0UsMkJGckd3QjtJRXNHeEIsOEVBQTBGO0NlaEt2RjtBQVBMO0lmc0tFLDJCRnJHd0I7SUVzR3hCLDhFQUEwRjtDZTVKdkY7QUFYTDtJZnNLRSxzQ0Y5Rm9CO0lFK0ZwQixxRkFBMEY7Q2V4SnZGO0FBZkw7SWZzS0UsMkJGdEd5QjtJRXVHekIsK0VBQTBGO0NlL0l2RjtBQXhCTDtNZnNLRSxzQ0Y5Rm9CO01FK0ZwQixxRkFBMEY7TUFEMUYsMkJGdEd5QjtNRXVHekIsK0VBQTBGO0NlaEpyRjtBQXZCUDtJZnNLRSwyQkZuR3FCO0lFb0dyQiwyRUFBMEY7Q2UzSXZGO0FBNUJMOztJZnNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q2VySXJGO0FBbENQO0lmc0tFLGtDRjlGb0I7SUUrRnBCLGlGQUEwRjtDZWhJdkY7QUN0Q0g7OztFaEJxS0EsZUorR2U7RUk5R2YsOERBQTBGO0NnQmxLekY7QUFKRDs7O0VoQnFLQSxlSnlIYztFSXhIZCw2REFBMEY7Q2dCbEt6RjtBQ2tDSDtFakIrSEUsNENKK0dlO0VJOUdmLGlGQUEwRjtDaUJ2SHZGO0FBM0NEOzs7SWpCaUtGLDBCSitHZTtJSTlHZiwyREFBMEY7Q2lCaEt2RjtBQWdDTDtJakIrSEUsNENKeUhjO0lJeEhkLGdGQUEwRjtDaUJ4SHJGO0FBMUNIOzs7TWpCaUtGLDBCSnlIYztNSXhIZCwwREFBMEY7Q2lCaEt2RjtBQWdDTDtFakIrSEUsNENKK0dlO0VJOUdmLGlGQUEwRjtDaUIvR3ZGO0FBMUNIO0lqQndKQSwwQkorR2U7SUk5R2YsMkRBQTBGO0NpQnZKekY7QUF1Qkg7SWpCK0hFLDRDSnlIYztJSXhIZCxnRkFBMEY7Q2lCaEhyRjtBQXpDTDtNakJ3SkEsMEJKeUhjO01JeEhkLDBEQUEwRjtDaUJ2SnpGO0FBSUQ7RWpCa0pBLDBCSitHZTtFSTlHZiwyREFBMEY7Q2lCakp6RjtBQUVEO0VqQjhJQSw0Q0orR2U7RUk5R2YsaUZBQTBGO0NpQjdJekY7QUFFRDtFakIwSUEsd0NKK0dlO0VJOUdmLDZFQUEwRjtDaUJ6SXpGO0FBVkQ7RWpCa0pBLDBCSnlIYztFSXhIZCwwREFBMEY7Q2lCakp6RjtBQUVEO0VqQjhJQSw0Q0p5SGM7RUl4SGQsZ0ZBQTBGO0NpQjdJekY7QUFFRDtFakIwSUEsd0NKeUhjO0VJeEhkLDRFQUEwRjtDaUJ6SXpGO0FBSUQ7RWpCb0lBLGdCSitHZTtFSTlHZixpREFBMEY7Q2lCbkl6RjtBQUZEO0VqQm9JQSxnQkp5SGM7RUl4SGQsZ0RBQTBGO0NpQm5JekY7QUNwQ0g7RWxCc0tFLHNCSnlIYztFSXhIZCxzREFBMEY7Q2tCOUpyRjtBQVRQO0lsQnNLRSwwQkp5SGM7SUl4SGQsMERBQTBGO0NrQi9KbkY7QUFSVDtFbEJzS0UsZUp5SGM7RUl4SGQsK0NBQTBGO0NrQjFKckY7QUFiUDtFbEJzS0Usc0JKK0dlO0VJOUdmLHVEQUEwRjtDa0JoSnJGO0FBdkJQO0lsQnNLRSwwQkorR2U7SUk5R2YsMkRBQTBGO0NrQmpKbkY7QUF0QlQ7RWxCc0tFLGVKK0dlO0VJOUdmLGdEQUEwRjtDa0I1SXJGO0FBM0JQO0VBZ0NRLGtDQUF1QjtDQUN4QjtBQWpDUDtFQXFDVSxrQ0FBdUI7Q0FDeEI7QUF0Q1Q7RUEwQ1ksa0NBQXVCO0NBS3hCO0FBL0NYO0lBNkNjLHNDQUEyQjtDQUM1QjtBbEI0Q1Q7RUE0RUYsWUZ0Rm9CO0VFdUZwQixrRUFBMEY7RW1CbEt0RiwwQkFBeUI7Q25CdUYxQjtBQUZEO0VBNEVGLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtFQUQxRiwyQkZ0R3lCO0VFdUd6QiwrRUFBMEY7Q0EzRXZGO0FvQjVGTDs7Ozs7SXBCc0tFLHNDRjlGb0I7SUUrRnBCLHFGQUEwRjtDb0IzSnJGO0FBWlA7SXBCc0tFLHNDRnBHc0I7SUVxR3RCLHVGQUEwRjtJQUQxRixZRnRGb0I7SUV1RnBCLCtEQUEwRjtDb0JoSnZGO0FBdkJMO01wQnNLRSxZRnRGb0I7TUV1RnBCLCtEQUEwRjtNQUQxRixXRnRGb0I7TUV1RnBCLDhEQUEwRjtDb0JqSnJGO0FBdEJQO0lwQnNLRSwyQkZwR3NCO0lFcUd0Qiw0RUFBMEY7Q29CdElyRjtBQWpDUDtNcEJzS0Usc0NGOUZvQjtNRStGcEIscUZBQTBGO0NvQnZJbkY7QUFoQ1Q7SXBCc0tFLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtDb0JoSW5GO0FBdkNUO0lwQnNLRSwwQkorR2U7SUk5R2YseUVBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDb0J0SG5GO0FBakRUO01wQnNLRSwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7TUFEMUYsMEJGdEd5QjtNRXVHekIsMkVBQTBGO0NvQnZIakY7QUFoRFg7SXBCdVBFLGVKak9lO0lJa09mLHVEQUF1RjtDb0JqTWhGO0FBdkRUO0lwQnVQRSxlSmpPZTtJSWtPZix1REFBdUY7SUFEdkYsY0pqT2U7SUlrT2Ysc0RBQXVGO0NvQjVMaEY7QXBCOEJMO0VBNEVGLDJCRnJHd0I7RUVzR3hCLDhFQUEwRjtDQTNFdkY7QXFCNUZMO0lyQnNLRSxlSitHZTtJSTlHZiw4REFBMEY7Q3FCakt2RjtBQ05MO0V0QnNLRSw0Q0p5SGM7RUl4SGQsZ0ZBQTBGO0NzQmxLckY7QUFMUDtFdEJzS0UsMEJKeUhjO0VJeEhkLDBEQUEwRjtDc0I5SnJGO0FBVFA7RXRCc0tFLGVKeUhjO0VJeEhkLCtDQUEwRjtDc0IxSnJGO0FBYlA7RXRCc0tFLDRDSitHZTtFSTlHZixpRkFBMEY7Q3NCcEpyRjtBQW5CUDtFdEJzS0UsMEJKK0dlO0VJOUdmLDJEQUEwRjtDc0JoSnJGO0FBdkJQO0V0QnNLRSxlSitHZTtFSTlHZixnREFBMEY7Q3NCNUlyRjtBQTNCUDtFQWdDUSxzQ0FBMkI7Q0FDNUI7QUFqQ1A7RXRCdVBFLDBCSm9DYztFSW5DZCxpRUFBdUY7Q3NCbk5sRjtBQXJDUDtFQXlDVSxzQ0FBMkI7Q0FDNUI7QUExQ1Q7RXRCdVBFLDBCSnVDYztFSXRDZCxpRUFBdUY7Q3NCMU1oRjtBQzlDVDs7RXZCc0tFLHVCRnhHa0I7RUV5R2xCLDJEQUEwRjtDdUJsS3ZGO0FBTEw7RXZCc0tFLDJCRnRHeUI7RUV1R3pCLCtFQUEwRjtFQUQxRiwyQ0p5SGM7RUl4SGQsK0VBQTBGO0N1QjdKdkY7QUFWTDtFdkJzS0Usc0NGakdzQjtFRWtHdEIsdUZBQTBGO0N1QnhKckY7QUFmUDtFdkJ1UEUsMEJKb0NjO0VJbkNkLDhEQUF1RjtDdUI1TGxGO0FBNURQO0l2QnNLRSwwQkorR2U7SUk5R2YseUVBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDdUI5SG5GO0FBekNUO01BOEJZLFlBQVc7Q0FDWjtBQS9CWDtNQWtDWSx1QkFBc0I7TUFDdEIsbUJBQWtCO0NBS25CO0FBeENYO1F2QnNLRSxzQkorR2U7UUk5R2YsdURBQTBGO0N1QmhJL0U7QUF2Q2I7SXZCc0tFLDBCSnlIYztJSXhIZCx3RUFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0N1QjVHbkY7QUEzRFQ7TUFnRFksWUFBVztDQUNaO0FBakRYO01Bb0RZLHVCQUFzQjtNQUN0QixtQkFBa0I7Q0FLbkI7QUExRFg7UXZCc0tFLHNCSnlIYztRSXhIZCxzREFBMEY7Q3VCOUcvRTtBQXpEYjtFdkJzS0Usc0NGOUZvQjtFRStGcEIscUZBQTBGO0N1QnZHckY7QUFoRVA7RXZCc0tFLDJCRnJHd0I7RUVzR3hCLDhFQUEwRjtDdUJsR3ZGO0FBckVMO0V2QnNLRSx5Q0Y5Rm9CO0VFK0ZwQix3RkFBMEY7Q3VCOUZ2RjtBQXpFTDtFdkJzS0UsMkJGdEd5QjtFRXVHekIsK0VBQTBGO0N1Qm5GckY7QUFwRlA7SXZCc0tFLDJCRnRHeUI7SUV1R3pCLCtFQUEwRjtJQUQxRiwwQkZ0R3lCO0lFdUd6Qiw4RUFBMEY7Q3VCcEZuRjtBQW5GVDtFdkJzS0Usc0NGOUZvQjtFRStGcEIscUZBQTBGO0N1QjlFdkY7QUN4Rkg7RXhCcUtBLHVCRnhHa0I7RUV5R2xCLHlFQUEwRjtDd0J4SHpGO0FBM0NDO0l4QmtLRiwwQkZ0R3lCO0lFdUd6Qiw4RUFBMEY7Q3dCekh2RjtBQXhCRztNeEJnSk4sMkJGdEd5QjtNRXVHekIsK0VBQTBGO0N3Qi9JbkY7QUFFRDtNeEI0SU4sMEJGdEd5QjtNRXVHekIsOEVBQTBGO0N3QnZJbkY7QUFIQztReEJ5SVIseUJGdEd5QjtRRXVHekIsNkVBQTBGO0N3QnhJakY7QUFJTDtNeEJtSUosZUorR2U7TUk5R2YsOERBQTBGO0N3QjFIckY7QUFQQztReEJnSU4sZUorR2U7UUk5R2YsOERBQTBGO0N3QjNIbkY7QUFIQztVeEI2SFIsY0orR2U7VUk5R2YsNkRBQTBGO0N3QjVIakY7QUFNVDtFeEJxSEEsMEJKK0dlO0VJOUdmLHlFQUEwRjtDd0JwSHpGO0FBbEREO0V4QnFLQSwwQkorR2U7RUk5R2YseUVBQTBGO0N3QnhIekY7QUEzQ0M7SXhCa0tGLDBCRnRHeUI7SUV1R3pCLDJFQUEwRjtDd0J6SHZGO0FBdENHO014QjhKTiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3dCN0puRjtBQUVEO014QjBKTiwwQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q3dCckpuRjtBQUhDO1F4QnVKUix5QkZ0R3lCO1FFdUd6QiwwRUFBMEY7Q3dCdEpqRjtBQWtCTDtNeEJtSUosMkJGdEd5QjtNRXVHekIsNEVBQTBGO0N3QjFIckY7QUFQQztReEJnSU4sMkJGdEd5QjtRRXVHekIsNEVBQTBGO0N3QjNIbkY7QUFIQztVeEI2SFIsMEJGdEd5QjtVRXVHekIsMkVBQTBGO0N3QjVIakY7QUFNVDtFeEJxSEEsc0NGdEd5QjtFRXVHekIsdUZBQTBGO0N3QnBIekY7QUFsREQ7RXhCcUtBLDBCSnlIYztFSXhIZCx3RUFBMEY7Q3dCeEh6RjtBQTNDQztJeEJrS0YsMEJGdEd5QjtJRXVHekIsMEVBQTBGO0N3QnpIdkY7QUF0Q0c7TXhCOEpOLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0I3Sm5GO0FBRUQ7TXhCMEpOLDBCRnRHeUI7TUV1R3pCLDBFQUEwRjtDd0JySm5GO0FBSEM7UXhCdUpSLHlCRnRHeUI7UUV1R3pCLHlFQUEwRjtDd0J0SmpGO0FBa0JMO014Qm1JSiwyQkZ0R3lCO01FdUd6QiwyRUFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTiwyQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUiwwQkZ0R3lCO1VFdUd6QiwwRUFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSxzQ0Z0R3lCO0VFdUd6QixzRkFBMEY7Q3dCcEh6RjtBQWxERDtFeEJxS0EsdUJGeEdrQjtFRXlHbEIseUVBQTBGO0N3QnhIekY7QUEzQ0M7SXhCa0tGLDBCRnRHeUI7SUV1R3pCLDhFQUEwRjtDd0J6SHZGO0FBeEJHO014QmdKTiwyQkZ0R3lCO01FdUd6QiwrRUFBMEY7Q3dCL0luRjtBQUVEO014QjRJTiwwQkZ0R3lCO01FdUd6Qiw4RUFBMEY7Q3dCdkluRjtBQUhDO1F4QnlJUix5QkZ0R3lCO1FFdUd6Qiw2RUFBMEY7Q3dCeElqRjtBQUlMO014Qm1JSixlSitHZTtNSTlHZiw4REFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTixlSitHZTtRSTlHZiw4REFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUixjSitHZTtVSTlHZiw2REFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSwwQkorR2U7RUk5R2YseUVBQTBGO0N3QnBIekY7QUFsREQ7RXhCcUtBLDBCSitHZTtFSTlHZix5RUFBMEY7Q3dCeEh6RjtBQTNDQztJeEJrS0YsMEJGdEd5QjtJRXVHekIsMkVBQTBGO0N3QnpIdkY7QUF0Q0c7TXhCOEpOLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDd0I3Sm5GO0FBRUQ7TXhCMEpOLDBCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0JySm5GO0FBSEM7UXhCdUpSLHlCRnRHeUI7UUV1R3pCLDBFQUEwRjtDd0J0SmpGO0FBa0JMO014Qm1JSiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3dCMUhyRjtBQVBDO1F4QmdJTiwyQkZ0R3lCO1FFdUd6Qiw0RUFBMEY7Q3dCM0huRjtBQUhDO1V4QjZIUiwwQkZ0R3lCO1VFdUd6QiwyRUFBMEY7Q3dCNUhqRjtBQU1UO0V4QnFIQSxzQ0Z0R3lCO0VFdUd6Qix1RkFBMEY7Q3dCcEh6RjtBQWxERDtFeEJxS0EsMEJKeUhjO0VJeEhkLHdFQUEwRjtDd0J4SHpGO0FBM0NDO0l4QmtLRiwwQkZ0R3lCO0lFdUd6QiwwRUFBMEY7Q3dCekh2RjtBQXRDRztNeEI4Sk4sMkJGdEd5QjtNRXVHekIsMkVBQTBGO0N3QjdKbkY7QUFFRDtNeEIwSk4sMEJGdEd5QjtNRXVHekIsMEVBQTBGO0N3QnJKbkY7QUFIQztReEJ1SlIseUJGdEd5QjtRRXVHekIseUVBQTBGO0N3QnRKakY7QUFrQkw7TXhCbUlKLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDd0IxSHJGO0FBUEM7UXhCZ0lOLDJCRnRHeUI7UUV1R3pCLDJFQUEwRjtDd0IzSG5GO0FBSEM7VXhCNkhSLDBCRnRHeUI7VUV1R3pCLDBFQUEwRjtDd0I1SGpGO0FBTVQ7RXhCcUhBLHNDRnRHeUI7RUV1R3pCLHNGQUEwRjtDd0JwSHpGO0F4QnVDQztFQTRFRiwyQkZ0R3lCO0VFdUd6Qix1RkFBMEY7RUFnRjFGLDBCSm9DYztFSW5DZCxrRUFBdUY7Q0E1SnBGO0F5QjNGSDtJekJxS0EsMkJGdEd5QjtJRXVHekIsdUZBQTBGO0N5QmhLekY7QUFIQztNekJrS0YsMEJGdEd5QjtNRXVHekIsc0ZBQTBGO0N5QmpLdkY7QUFhSDs7O0l6Qm1KQSwyQkZ0R3lCO0lFdUd6Qix1RkFBMEY7Q3lCaEp6RjtBQUdIO0l6QjRJRSwwQkorR2U7SUk5R2YsMkRBQTBGO0lBRDFGLDJCRnRHeUI7SUV1R3pCLDRFQUEwRjtDeUIxSHZGO0FBNUNIO016QnFLQSwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3lCaEt6RjtBQUhDO1F6QmtLRiwwQkZ0R3lCO1FFdUd6QiwyRUFBMEY7Q3lCakt2RjtBQU1EO016QjBKRiwyQkZ0R3lCO01FdUd6Qiw0RUFBMEY7Q3lCekp2RjtBQUtIOzs7TXpCbUpBLDJCRnRHeUI7TUV1R3pCLDRFQUEwRjtDeUJoSnpGO0FBR0g7SXpCNElFLDBCSnlIYztJSXhIZCwwREFBMEY7SUFEMUYsMkJGdEd5QjtJRXVHekIsMkVBQTBGO0N5QmxIdkY7QUFwREg7TXpCcUtBLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDeUJoS3pGO0FBSEM7UXpCa0tGLDBCRnRHeUI7UUV1R3pCLDBFQUEwRjtDeUJqS3ZGO0FBTUQ7TXpCMEpGLDJCRnRHeUI7TUV1R3pCLDJFQUEwRjtDeUJ6SnZGO0FBS0g7OztNekJtSkEsMkJGdEd5QjtNRXVHekIsMkVBQTBGO0N5QmhKekY7QUFHSDtJQThCTSw4QkFBNkI7SXpCOEdqQywyQkZ0R3lCO0lFdUd6QiwrRUFBMEY7Q3lCM0d2RjtBQTNESDtNekJxS0EsMkJGdEd5QjtNRXVHekIsK0VBQTBGO0N5QmhLekY7QUFIQztRekJrS0YsMEJGdEd5QjtRRXVHekIsOEVBQTBGO0N5QmpLdkY7QUFhSDs7O016Qm1KQSwyQkZ0R3lCO01FdUd6QiwrRUFBMEY7Q3lCaEp6RjtBekJtRUM7RUE0RUYsWUZ0Rm9CO0VFdUZwQiw2REFBMEY7RUFEMUYsd0NGM0ZrQjtFRTRGbEIsdUZBQTBGO0NBM0V2RlwiLFwiZmlsZVwiOlwiQXBwLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi8qKlxcbiAqIFRoZSBjb21wbGV0ZSBtYXRlcmlhbCBwYWxldHRlXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCB0aGUgY3VycmVudCB0aGVtZSBtb2RlIGZyb20gdGhlIGN1cnJlbnQgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJHRoZW1lLW1vZGU6IG1kLWdldC10aGVtZS1tb2RlKClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgYnkgdGhlbWVcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGNvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoZGFyaywgcHJpbWFyeSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvci10aGVtZSDigJTigIogVGhlIHRoZW1lIGNvbG9yIHwgQWNjZXB0cyBkYXJrIG9yIGxpZ2h0XFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqL1xcbi8qKlxcbiAqIEdldCBhIGNvbG9yIGJhc2VkIG9uIHR5cGUgb25seVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3IxOiBtZC1nZXQtY29sb3ItYnktdHlwZShiYWNrZ3JvdW5kLCBkYXJrKVxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGFjY2VudClcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgY29sb3IgdHlwZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdGhlbWUg4oCU4oCKIFRoZSBmYWxsYmFjayB0aGVtZVxcbiAqL1xcbi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogTWFwIHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtZXMgdG8gYmUgcHJvY2Vzc2VkIGJ5IGVhY2ggY29tcG9uZW50XFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIFN0b3JlIHRoZSBjdXJyZW50IHRoZW1lIG5hbWVcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBzdHJpbmdcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuLyoqXFxuICogVGhlIGNvbG9yIGNvbnRyYXN0IHZhbHVlc1xcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4vKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIGZvciBhIGNvbG9yLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBjb2xvciB0byBiZSBhbmFseXNlZFxcbiAqL1xcbi8qKlxcbiAqIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkYmcg4oCU4oCKIFRoZSBiZyBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkZmcg4oCU4oCKIFRoZSBmZyBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcbi8qKlxcbiAqIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBkYXJrIG9yIGxpZ2h0IHRleHQgb24gdG9wIG9mIGdpdmVuIGNvbG9yLlxcbiAqIFJldHVybnMgZGFyayBvciBsaWdodCBkZXBlbmRpbmcgb24gdGhlIGNvbnRyYXN0IHJhdGlvLlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIC0tLVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIFRoZSBkZXNpcmVkIGNvbG9yIHRvIGJlIGNvbXBhcmVkXFxuICovXFxuLyoqXFxuICogT3ZlcnJpZGUgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IHBhbGV0dGUgZ2l2aW5nIG5ldyB2YWx1ZXMuIEl0IHdpbGwgZXh0ZW5kXFxuICogdGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLW92ZXJyaWRlLXBhbGV0dGUgKChcXG4gKiAgIGFjY2VudDogYmx1ZSxcXG4gKiAgIHRoZW1lOiBcXFwiZGFya1xcXCJcXG4gKiApKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUg4oCU4oCKIFRoZSBuZXcgcGFsZXR0ZVxcbiAqL1xcbi8qKlxcbiAqIENyZWF0ZSBhIG5ldyB0aGVtZSBiYXNlZCBvbiBhIGdpdmVuIHBhbGV0dGUuIEl0IHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0XFxuICogdmFsdWVzIG9mIHRoZSBwYWxldHRlIGlmIGhhcyBhIHByb3BlcnR5IG1pc3NpbmcuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIEBpbmNsdWRlIG1kLXJlZ2lzdGVyLXRoZW1lKFxcXCJhbHRlcm5hdGl2ZVxcXCIsIChcXG4gKiAgIHByaW1hcnk6ICMyMTIxMjEsXFxuICogICBhY2NlbnQ6ICNDRERDMzksXFxuICogICB0aGVtZTogZGFya1xcbiAqICkpO1xcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiBAcGFyYW0ge3N0cmluZ30gJG5hbWUg4oCU4oCKIFRoZSB0aGVtZSBuYW1lIHRvIGJlIHVzZWQgd2l0aCB0aGUgVnVlIE1hdGVyaWFsXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIFskbWQtZGVmYXVsdC1wYWxldHRlXSDigJTigIogVGhlIHRoZW1lIHBhbGV0dGVcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LXByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBiYWNrZ3JvdW5kOiBtZC10aGVtZShhY2NlbnQpO1xcbiAqICAgICAgIGNvbG9yOiBtZC10aGVtZSh0ZXh0LWFjY2VudCk7XFxuICogICAgIH07XFxuICogICB9XFxuICogfVxcbiAqL1xcbi8qKlxcbiAqIFRoZW1lIHBpZWNlcyBvZiBhIGdpdmVuIHNjc3MgY29kZSBmb3IgYWxsIHByZSByZWdpc3RlcmVkIHRoZW1lcyBiYXNlZCBvbiBwYXJlbnQuXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgIH1cXG4gKiB9XFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqXFxuICogICAmLm1kLWFjY2VudCB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBhY2NlbnQpO1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICogICAgIH1cXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIEEgcGFsZXR0ZSB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICRiYWNrZ3JvdW5kIOKAlOKAiiBUaGUgYmFja2dyb3VuZCBjb2xvciB0byBhbmFseXNlIGNvbnRyYXN0XFxuICogQHBhcmFtIHtudW1iZXJ9ICRvcGFjaXR5IOKAlOKAiiBUaGUgb3BhY2l0eSBhbW91bnRcXG4gKi9cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuLyoqXFxuICogVGhlbWUgYSBzaW5nbGUgY3NzIHByb3BlcnR5IGJ5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQsIGdyZXksIDEwMCwgdG9vbGJhciwgYmFja2dyb3VuZCk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkY29sb3Ig4oCU4oCKIEEgdmFsaWQgbWF0ZXJpYWwgcGFsZXR0ZSBjb2xvciBuYW1lXFxuICogQHBhcmFtIHtzdHJpbmd9ICRodWUg4oCU4oCKIFRoZSBodWUgYW1vdW50IHRvIGdldCB0aGUgaGV4IGNvbG9yXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBUaGUgdHlwZSBvZiB2YXJpYWJsZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFyaWFudCDigJTigIogVGhlIHR5cGUgb2YgY29uc3RyYXN0ZWQgdmFyaWFibGVcXG4gKi9cXG46cm9vdCB7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeTogJHZhbHVlXFxuICAgIDtcXG4gIC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQ6ICR2YWx1ZVxcbiAgICA7XFxuICAtLW1kLXRoZW1lLWRlZmF1bHQtdGhlbWU6ICR2YWx1ZVxcbiAgICA7IH1cXG5cXG4ubWQtdGhlbWUtZGVmYXVsdCA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbik6aG92ZXIge1xcbiAgICBjb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjgpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC44KSk7IH1cXG4gIC5tZC10aGVtZS1kZWZhdWx0IGE6bm90KC5tZC1idXR0b24pLm1kLWFjY2VudCB7XFxuICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLXRoZW1lLWRlZmF1bHQgYTpub3QoLm1kLWJ1dHRvbikubWQtYWNjZW50OmhvdmVyIHtcXG4gICAgICBjb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuOCkpOyB9XFxuXFxuaHRtbC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtdmFyaWFudCwgI2ZhZmFmYSk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcHRpb24sIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktMSwgLm1kLXRoZW1lLWRlZmF1bHRcXG4ubWQtZGlzcGxheS0yLCAubWQtdGhlbWUtZGVmYXVsdFxcbi5tZC1kaXNwbGF5LTMsIC5tZC10aGVtZS1kZWZhdWx0XFxuLm1kLWRpc3BsYXktNCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQtdmFyaWFudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG5cXG4ubWQtc2Nyb2xsYmFyLm1kLXRoZW1lLWRlZmF1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwgLm1kLXNjcm9sbGJhci5tZC10aGVtZS1kZWZhdWx0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XFxuICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xcbiAgYmFja2dyb3VuZDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zY3JvbGxiYXItYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsICNlMWUxZTEpOyB9XFxuXFxuLm1kLXNjcm9sbGJhci5tZC10aGVtZS1kZWZhdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XFxuICBiYWNrZ3JvdW5kOiAjNzU3NTc1O1xcbiAgYmFja2dyb3VuZDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zY3JvbGxiYXItb24tYmFja2dyb3VuZC12YXJpYW50LCAjNzU3NTc1KTsgfVxcblxcbi5tZC1hcHA6bm90KC5tZC1vdmVybGFwKS5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuXFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtYXV0b2NvbXBsZXRlLWl0ZW1zIC5tZC1oaWdobGlnaHQtdGV4dC1tYXRjaCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1hdXRvY29tcGxldGUtbG9hZGluZyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTQpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTQpKTsgfVxcblxcbi5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGxhYmVsIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtaGludC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMikpOyB9XFxuICAgIC5tZC10b29sYmFyIC5tZC1hdXRvY29tcGxldGUubWQtdGhlbWUtZGVmYXVsdC5tZC1hdXRvY29tcGxldGUtYm94IGxhYmVsLFxcbiAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBpbnB1dCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveCBzdmcge1xcbiAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAgICAgLm1kLXRvb2xiYXIgLm1kLWF1dG9jb21wbGV0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWF1dG9jb21wbGV0ZS1ib3gubWQtZm9jdXNlZCBsYWJlbCxcXG4gICAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIGlucHV0IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpO1xcbiAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgICAubWQtdG9vbGJhciAubWQtYXV0b2NvbXBsZXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYXV0b2NvbXBsZXRlLWJveC5tZC1mb2N1c2VkIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG5cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcblxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hdmF0YXItaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLWRpc2FibGVkLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYXZhdGFyLWljb24gLm1kLWljb24ge1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24tZGlzYWJsZWQsICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLWRpc2FibGVkLCAjZmZmKTsgfVxcblxcbi5tZC1hdmF0YXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1hdmF0YXItaWNvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtYXZhdGFyLWljb24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuICAubWQtYXZhdGFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWF2YXRhci1pY29uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWF2YXRhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC1hdmF0YXItaWNvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLWZpeGVkIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCA+IC5tZC1yaXBwbGUgLm1kLXJpcHBsZS13YXZlIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2OGY4NztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLXByaW1hcnksICNhNjhmODcpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXR5cGUtc2hpZnQgLm1kLWljb24gc3ZnIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10eXBlLXNoaWZ0IC5tZC1ib3R0b20tYmFyLWl0ZW0ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIC5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtZml4ZWQgLm1kLWJvdHRvbS1iYXItaXRlbS5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6ICM5ZTllOWU7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0ID4gLm1kLXJpcHBsZSAubWQtcmlwcGxlLXdhdmUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU4NTg1O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1hY2NlbnQsICM4NTg1ODUpOyB9XFxuICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAubWQtYm90dG9tLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudC5tZC10eXBlLXNoaWZ0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWJvdHRvbS1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtdHlwZS1zaGlmdCAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1ib3R0b20tYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLXR5cGUtc2hpZnQgLm1kLWJvdHRvbS1iYXItaXRlbSAubWQtYWN0aXZlIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1pY29uLWltYWdlIHtcXG4gICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGNvbG9yOiAjOWU5ZTllO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogIzllOWU5ZTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcbiAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZFtkaXNhYmxlZF0ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG4gIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1wcmltYXJ5IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAgICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtcHJpbWFyeSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWJ1dHRvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLXJhaXNlZDpub3QoW2Rpc2FibGVkXSkubWQtYWNjZW50IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1yYWlzZWQ6bm90KFtkaXNhYmxlZF0pLm1kLWFjY2VudCAubWQtaWNvbi1mb250IHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtcmFpc2VkOm5vdChbZGlzYWJsZWRdKS5tZC1hY2NlbnQgLm1kLWljb24taW1hZ2Uge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWJbZGlzYWJsZWRdIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1iYWNrZ3JvdW5kLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1mb250IHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHQubWQtZmFiOm5vdChbZGlzYWJsZWRdKSAubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24tZm9udCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdC5tZC1mYWI6bm90KFtkaXNhYmxlZF0pLm1kLXByaW1hcnkgLm1kLWljb24taW1hZ2Uge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHRbZGlzYWJsZWRdIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpc2FibGVkLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1idXR0b24ubWQtdGhlbWUtZGVmYXVsdFtkaXNhYmxlZF0gLm1kLWljb24tZm9udCB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgICAubWQtYnV0dG9uLm1kLXRoZW1lLWRlZmF1bHRbZGlzYWJsZWRdIC5tZC1pY29uLWltYWdlIHtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcblxcbi5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1leHBhbmQgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdCAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkubWQtaWNvbi1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTtcXG4gICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0ID4gLm1kLWNhcmQtYXJlYTphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtZXhwYW5kIC5tZC1jYXJkLWFjdGlvbnMge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtaGVhZGVyIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCksXFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1hY3Rpb25zIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbixcXG4gICAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSA+IC5tZC1jYXJkLWFyZWE6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1hY3Rpb25zIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgICAubWQtY2FyZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtY2FyZC1oZWFkZXIgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KSxcXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWNhcmQtYWN0aW9ucyAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWhlYWRlciAubWQtYnV0dG9uOm5vdCgubWQtcHJpbWFyeSk6bm90KC5tZC1hY2NlbnQpLm1kLWljb24tYnV0dG9uIC5tZC1pY29uLFxcbiAgICAgIC5tZC1jYXJkLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1jYXJkLWFjdGlvbnMgLm1kLWJ1dHRvbjpub3QoLm1kLXByaW1hcnkpOm5vdCgubWQtYWNjZW50KS5tZC1pY29uLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gICAgLm1kLWNhcmQubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgPiAubWQtY2FyZC1hcmVhOmFmdGVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICBib3JkZXItY29sb3I6ICM5ZTllOWU7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcbiAgICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkIC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICBib3JkZXItY29sb3I6ICNiY2FhYTQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWNoZWNrYm94Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7IH1cXG5cXG4ubWQtY2hlY2tib3gubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTsgfVxcblxcbi5tZC1jaGVja2JveC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkLm1kLWNoZWNrZWQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuXFxuLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1oaWdobGlnaHQsIHJnYmEoMCwgMCwgMCwgMC4xMikpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgY29sb3I6ICNmZmY7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpO1xcbiAgICBmaWxsOiAjZmZmO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10ZXh0LXByaW1hcnksICNmZmYpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24sIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICBjb2xvcjogI2ZmZjtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pY29uLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaWNvbiB7XFxuICAgICAgZmlsbDogI2ZmZjtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTsgfVxcbiAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg3KSk7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24gLm1kLWljb24gc3ZnLCAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpO1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1kZWxldGFibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIsIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1pY29uLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gICAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeS5tZC1jbGlja2FibGU6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpO1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODcpKTsgfVxcbiAgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1pY29uLW9uLWRpc2FibGVkLCAjZmZmKTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4yNikpOyB9XFxuICAgIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWRlbGV0YWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciwgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtY2xpY2thYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbiwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7XFxuICAgICAgY29sb3I6ICNmZmY7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWljb24sICNmZmYpOyB9XFxuICAgICAgLm1kLWNoaXAubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQubWQtZGVsZXRhYmxlOm5vdCgubWQtZGlzYWJsZWQpOmhvdmVyIC5tZC1pbnB1dC1hY3Rpb24sIC5tZC1jaGlwLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50Lm1kLWNsaWNrYWJsZTpub3QoLm1kLWRpc2FibGVkKTpob3ZlciAubWQtaW5wdXQtYWN0aW9uIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NykpOyB9XFxuICAubWQtY2hpcC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWhpZ2hsaWdodCwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcblxcbi5tZC1jaGlwcy5tZC10aGVtZS1kZWZhdWx0IC5tZC1jbGVhciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cXG5cXG4ubWQtY29udGVudC5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1jb250ZW50Lm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpO1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1hcHAgLm1kLWNvbnRlbnQubWQtdGhlbWUtZGVmYXVsdCB7XFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItaGVhZGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXI6YWZ0ZXIsIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktaGVhZGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItd2VlayB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXItZGlzYWJsZWQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci1tb250aC1idXR0b246aG92ZXIsXFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbjpob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlciwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLWRheS1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1kYXRlcGlja2VyLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkLFxcbiAgLm1kLWRhdGVwaWNrZXItZGlhbG9nLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtZGF0ZXBpY2tlci1kaWFsb2cubWQtdGhlbWUtZGVmYXVsdCAubWQtZGF0ZXBpY2tlci15ZWFyLXNlbGVjdG9yIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRpYWxvZy5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG5cXG4ubWQtZGl2aWRlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXIsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWRyYXdlci5tZC10aGVtZS1kZWZhdWx0IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpO1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1kcmF3ZXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXZpZGVyLW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4xMikpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWVtcHR5LXN0YXRlLWljb24ubWQtaWNvbi1pbWFnZSBzdmcge1xcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG5cXG4ubWQtZW1wdHktc3RhdGUubWQtdGhlbWUtZGVmYXVsdCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTsgfVxcblxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLXJvdW5kZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA2KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQsIHJnYmEoMCwgMCwgMCwgMC4wNikpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWltYWdlIHN2ZyB7XFxuICBmaWxsOiAjYmNhYWE0O1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWVtcHR5LXN0YXRlLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1lbXB0eS1zdGF0ZS1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6ICM5ZTllOWU7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1lbXB0eS1zdGF0ZS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtZW1wdHktc3RhdGUtaWNvbi5tZC1pY29uLWZvbnQge1xcbiAgY29sb3I6ICM5ZTllOWU7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdDphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDIpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQ6YmVmb3JlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWhlbHBlci10ZXh0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1jb3VudCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCBsYWJlbCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0IC5tZC1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdCAubWQtdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1mb2N1c2VkIC5tZC10ZXh0YXJlYSwgLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXZhbHVlIC5tZC1pbnB1dCxcXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oYXMtdmFsdWUgLm1kLXRleHRhcmVhIHtcXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmFmdGVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KTpiZWZvcmUge1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMzgpIDAlLCByZ2JhKDAsIDAsIDAsIDAuMzgpIDMzJSwgdHJhbnNwYXJlbnQgMCUpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgbGFiZWwsXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC10ZXh0YXJlYSB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQyKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0ID4gLm1kLWljb246YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC12YXJpYW50LCAjZmFmYWZhKTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQ6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMTc0NDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQubWQtaGFzLXRleHRhcmVhOm5vdCgubWQtYXV0b2dyb3cpOmJlZm9yZSB7XFxuICBib3JkZXItY29sb3I6ICNmZjE3NDQ7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgbGFiZWwge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZXJyb3Ige1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtaW52YWxpZCAubWQtZGF0ZS1pY29uLFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWludmFsaWQgLm1kLWRhdGUtaWNvbiBzdmcge1xcbiAgY29sb3I6ICNmZjE3NDQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1maWVsZHZhcmlhbnQsICNmZjE3NDQpO1xcbiAgZmlsbDogI2ZmMTc0NDtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZmllbGR2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWZvY3VzZWQgLm1kLXRleHRhcmVhLCAubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgLm1kLWlucHV0LFxcbi5tZC1maWVsZC5tZC10aGVtZS1kZWZhdWx0Lm1kLWhpZ2hsaWdodCAubWQtdGV4dGFyZWEge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCA+IC5tZC1pY29uLCAubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1oaWdobGlnaHQgPiAubWQtaWNvbiB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxuICBmaWxsOiAjYmNhYWE0O1xcbiAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLWZpZWxkLm1kLXRoZW1lLWRlZmF1bHQubWQtZm9jdXNlZCBsYWJlbCB7XFxuICBjb2xvcjogI2JjYWFhNDtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtZmllbGQubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZCAubWQtaWNvbiBzdmcge1xcbiAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjI2KTtcXG4gIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGlzYWJsZWQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjI2KSk7IH1cXG5cXG4ubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWljb24tb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjU0KSk7IH1cXG4gIC5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1pbWFnZSBzdmcubWQtcHJpbWFyeSB7XFxuICAgIGZpbGw6ICNiY2FhYTQ7XFxuICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWltYWdlIHN2Zy5tZC1hY2NlbnQge1xcbiAgICBmaWxsOiAjOWU5ZTllO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi1iYWNrZ3JvdW5kLCAjOWU5ZTllKTsgfVxcblxcbi5tZC1pY29uLm1kLXRoZW1lLWRlZmF1bHQubWQtaWNvbi1mb250IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaWNvbi1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNTQpKTsgfVxcbiAgLm1kLWljb24ubWQtdGhlbWUtZGVmYXVsdC5tZC1pY29uLWZvbnQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtaWNvbi5tZC10aGVtZS1kZWZhdWx0Lm1kLWljb24tZm9udC5tZC1hY2NlbnQge1xcbiAgICBjb2xvcjogIzllOWU5ZTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRvdWJsZS1saW5lIC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDIpIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyaXBsZS1saW5lIC5tZC1saXN0LWl0ZW0tdGV4dCA6bnRoLWNoaWxkKDMpIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1oaWdobGlnaHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG4gIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXIge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgLm1kLWxpc3QtaXRlbS1jb250YWluZXI6bm90KC5tZC1saXN0LWl0ZW0tZGVmYXVsdCk6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1saXN0Lm1kLXRoZW1lLWRlZmF1bHQgW2Rpc2FibGVkXSB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1kaXNhYmxlZC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMjYpKTsgfVxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAubWQtc2VsZWN0ZWQgLm1kLWxpc3QtaXRlbS1jb250ZW50LFxcbiAgLm1kLWxpc3QubWQtdGhlbWUtZGVmYXVsdCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAubWQtbGlzdC5tZC10aGVtZS1kZWZhdWx0IC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtbGlzdC1pdGVtLWxpbmssXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1yb3V0ZXIsXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWxpc3QtaXRlbS1idXR0b24ge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLWxpbmssXFxuLm1kLW1lbnUtaXRlbS5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4ubWQtbWVudS1pdGVtLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1saXN0LWl0ZW0tYnV0dG9uIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLSwgcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KSk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAubWQtcHJvZ3Jlc3MtYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtaW5kZXRlcm1pbmF0ZSAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeSAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrOmFmdGVyLFxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5IC5tZC1wcm9ncmVzcy1iYXItZmlsbDphZnRlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCwgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7IH1cXG4gICAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWluZGV0ZXJtaW5hdGUubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItdHJhY2s6YWZ0ZXIsXFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1pbmRldGVybWluYXRlLm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIsIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1xdWVyeS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci10cmFjazphZnRlcixcXG4gICAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXF1ZXJ5Lm1kLWFjY2VudCAubWQtcHJvZ3Jlc3MtYmFyLWZpbGw6YWZ0ZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcbiAgLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWRldGVybWluYXRlIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG4gIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4zOCkpOyB9XFxuICAgIC5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1kZXRlcm1pbmF0ZS5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1maWxsIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlciAubWQtcHJvZ3Jlc3MtYmFyLXRyYWNrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIgLm1kLXByb2dyZXNzLWJhci1idWZmZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tLCByZ2JhKDE4OCwgMTcwLCAxNjQsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXByb2dyZXNzLWJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWJ1ZmZlci5tZC1hY2NlbnQgLm1kLXByb2dyZXNzLWJhci10cmFjayB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1iYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1idWZmZXIubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1iYXItYnVmZmVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tLCByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMzgpKTsgfVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gIHN0cm9rZTogI2JjYWFhNDtcXG4gIHN0cm9rZTogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1wcm9ncmVzcy1zcGlubmVyLWNpcmNsZSB7XFxuICBzdHJva2U6ICM5ZTllOWU7XFxuICBzdHJva2U6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6ICM5ZTllOWU7XFxuICBib3JkZXItY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcbiAgLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmFkaW8tY29udGFpbmVyOmFmdGVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQsICM5ZTllOWUpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gIGJvcmRlci1jb2xvcjogI2JjYWFhNDtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcbiAgLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZC5tZC1wcmltYXJ5IC5tZC1yaXBwbGUge1xcbiAgY29sb3I6ICNiY2FhYTQ7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTsgfVxcblxcbi5tZC1yYWRpby5tZC10aGVtZS1kZWZhdWx0IC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTQpOyB9XFxuXFxuLm1kLXJhZGlvLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNik7IH1cXG5cXG4ubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuICAubWQtcmFkaW8ubWQtdGhlbWUtZGVmYXVsdC5tZC1kaXNhYmxlZC5tZC1jaGVja2VkIC5tZC1yYWRpby1jb250YWluZXI6YWZ0ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XFxuXFxuLm1kLXNuYWNrYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1wcmltYXJ5LCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7IH1cXG5cXG4ubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1iYWNrZ3JvdW5kLCAjZmZmKTtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1pY29uOmFmdGVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1pY29uOmJlZm9yZSxcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjphZnRlcixcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLW51bWJlcjpiZWZvcmUsXFxuICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlcjphZnRlcixcXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyOmJlZm9yZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LWhpbnQtb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7XFxuICAgIGNvbG9yOiAjZmZmO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTsgfVxcbiAgICAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogI2ZmZjtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tdGV4dC1oaW50LCAjZmZmKTtcXG4gICAgICBmaWxsOiAjZmZmO1xcbiAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXRleHQtaGludCwgI2ZmZik7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1oaW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YWZ0ZXIsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlciAubWQtYnV0dG9uLWNvbnRlbnQ6YmVmb3JlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSAubWQtYnV0dG9uLWNvbnRlbnQsIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1kb25lIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1hY3RpdmUgLm1kLXN0ZXBwZXItbnVtYmVyLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWFjdGl2ZSAubWQtc3RlcHBlci1udW1iZXIgc3ZnLCAubWQtc3RlcHBlcnMubWQtdGhlbWUtZGVmYXVsdCAubWQtc3RlcHBlci1oZWFkZXIubWQtZG9uZSAubWQtc3RlcHBlci1udW1iZXIgc3ZnIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXN0ZXBwZXJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN0ZXBwZXItaGVhZGVyLm1kLWVycm9yIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgIGNvbG9yOiAjZmYxNzQ0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zdGVwcGVydmFyaWFudCwgI2ZmMTc0NCk7IH1cXG4gIC5tZC1zdGVwcGVycy5tZC10aGVtZS1kZWZhdWx0IC5tZC1zdGVwcGVyLWhlYWRlci5tZC1lcnJvciAubWQtaWNvbiBzdmcge1xcbiAgICBjb2xvcjogI2ZmMTc0NDtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtc3RlcHBlcnZhcmlhbnQsICNmZjE3NDQpO1xcbiAgICBmaWxsOiAjZmYxNzQ0O1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN0ZXBwZXJ2YXJpYW50LCAjZmYxNzQ0KTsgfVxcblxcbi5tZC1zdWJoZWFkZXIubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuICAubWQtc3ViaGVhZGVyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSB7XFxuICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLSwgcmdiYSgxNTgsIDE1OCwgMTU4LCAwLjM4KSk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtY2hlY2tlZCAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjOWU5ZTllO1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LCAjOWU5ZTllKTsgfVxcblxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdC5tZC1jaGVja2VkLm1kLXByaW1hcnkgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODgsIDE3MCwgMTY0LCAwLjM4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi0sIHJnYmEoMTg4LCAxNzAsIDE2NCwgMC4zOCkpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWNoZWNrZWQubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gIGNvbG9yOiAjYmNhYWE0O1xcbiAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeSwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTsgfVxcblxcbi5tZC1zd2l0Y2gubWQtdGhlbWUtZGVmYXVsdCAubWQtc3dpdGNoLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXN3aXRjaHZhcmlhbnQsICNmNWY1ZjUpOyB9XFxuXFxuLm1kLXN3aXRjaC5tZC10aGVtZS1kZWZhdWx0Lm1kLWRpc2FibGVkIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cXG5cXG4ubWQtc3dpdGNoLm1kLXRoZW1lLWRlZmF1bHQubWQtZGlzYWJsZWQgLm1kLXN3aXRjaC10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmRiZGJkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1zd2l0Y2h2YXJpYW50LCAjYmRiZGJkKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1jb250ZW50LFxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1hbHRlcm5hdGUtaGVhZGVyIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQsICNmZmYpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIgLm1kLXRhYmxlLXRvb2xiYXIge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTU4LCAxNTgsIDAuMik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudC1vbi0sIHJnYmEoMTU4LCAxNTgsIDE1OCwgMC4yKSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93OmhvdmVyOm5vdCgubWQtaGVhZGVyLXJvdykgLm1kLXRhYmxlLWNlbGwge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA4KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtaGlnaGxpZ2h0LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC4wOCkpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcm93dmFyaWFudCwgI2Y1ZjVmNSk7IH1cXG4gIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLXJpcHBsZSwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtcmlwcGxlIHtcXG4gICAgICBjb2xvcjogI2ZmZjsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLXByaW1hcnkgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxcbiAgICAgIC5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1yb3cubWQtc2VsZWN0ZWQubWQtcHJpbWFyeSAubWQtY2hlY2tib3gtY29udGFpbmVyOmFmdGVyLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1wcmltYXJ5IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmNhYWE0O1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnksICNiY2FhYTQpOyB9XFxuICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLm1kLWFjY2VudCAubWQtcmlwcGxlLCAubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93Lm1kLXNlbGVjdGVkLXNpbmdsZS5tZC1hY2NlbnQgLm1kLXJpcHBsZSB7XFxuICAgICAgY29sb3I6ICNmZmY7IH1cXG4gICAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XFxuICAgICAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC5tZC1hY2NlbnQgLm1kLWNoZWNrYm94LWNvbnRhaW5lcjphZnRlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLXJvdy5tZC1zZWxlY3RlZC1zaW5nbGUubWQtYWNjZW50IC5tZC1jaGVja2JveC1jb250YWluZXI6YWZ0ZXIge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOWU5ZTllO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtcm93IHRkIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtdGFibGUubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFibGUtaGVhZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU0KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtYWNjZW50LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC41NCkpOyB9XFxuXFxuLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYmxlLWZpeGVkLWhlYWRlci1hY3RpdmUge1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtZGl2aWRlci1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMTIpKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC1zb3J0YWJsZTpob3ZlciwgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlOmhvdmVyIHN2ZywgLm1kLXRhYmxlLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXNvcnRhYmxlLm1kLXNvcnRlZCBzdmcge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpO1xcbiAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJsZS5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJsZS1wYWdpbmF0aW9uIHtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XFxuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWRpdmlkZXItb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjEyKSk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYmFja2dyb3VuZC1vbi1iYWNrZ3JvdW5kLCAjZmZmKTsgfVxcbiAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuMzgpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogI2JjYWFhNDtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiAjYmNhYWE0O1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLWluZGljYXRvciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNhYWE0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcbiAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRdIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1hY2NlbnQtb24tYmFja2dyb3VuZCwgIzllOWU5ZSk7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIGZpbGw6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWJhY2tncm91bmQtb24tYmFja2dyb3VuZCwgI2ZmZik7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIHtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b25bZGlzYWJsZWRdIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjM4KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjM4KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUge1xcbiAgICAgIGNvbG9yOiAjYmNhYWE0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24ge1xcbiAgICAgICAgY29sb3I6ICNiY2FhYTQ7XFxuICAgICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuICAgICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogI2JjYWFhNDtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LW9uLWJhY2tncm91bmQsICNiY2FhYTQpOyB9XFxuXFxuLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdCAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLCAjYmNhYWE0KTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2FhYTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXByaW1hcnktb24tYmFja2dyb3VuZCwgI2JjYWFhNCk7IH1cXG4gIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjcpKTsgfVxcbiAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uW2Rpc2FibGVkXSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24gLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSAubWQtaWNvbiB7XFxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tcHJpbWFyeSwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG5cXG4ubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRhYnMtaW5kaWNhdG9yIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllOWU5ZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtYWNjZW50LW9uLWJhY2tncm91bmQsICM5ZTllOWUpOyB9XFxuICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ge1xcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbltkaXNhYmxlZF0ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC4zOCkpOyB9XFxuICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbiAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuNykpOyB9XFxuICAgICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uIC5tZC1pY29uIHN2ZyB7XFxuICAgICAgICBmaWxsOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxuICAgICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7IH1cXG4gICAgLm1kLXRhYnMubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLXRhYnMtbmF2aWdhdGlvbiAubWQtYnV0dG9uLm1kLWFjdGl2ZSB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdGFicy5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGFicy1uYXZpZ2F0aW9uIC5tZC1idXR0b24ubWQtYWN0aXZlIC5tZC1pY29uIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAgIC5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLW5hdmlnYXRpb24gLm1kLWJ1dHRvbi5tZC1hY3RpdmUgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgICAgZmlsbDogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10YWJzLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC10YWJzLWluZGljYXRvciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcblxcbi5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRvb2xiYXJ2YXJpYW50LCAjZjVmNWY1KTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdCAubWQtaWNvbiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC1pY29uIHN2ZyB7XFxuICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBmaWxsOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1iYWNrZ3JvdW5kLXZhcmlhbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0IC5tZC10aXRsZSxcXG4gIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMSxcXG4gIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQgLm1kLWRpc3BsYXktMiB7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZC12YXJpYW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JjYWFhNDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC1wcmltYXJ5LCAjYmNhYWE0KTtcXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWljb24ge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLXByaW1hcnksIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtcHJpbWFyeSAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1kLXJhaXNlZCkge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLXRpdGxlLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXByaW1hcnkgLm1kLWRpc3BsYXktMSxcXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1wcmltYXJ5IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1wcmltYXJ5LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LWFjY2VudCwgIzllOWU5ZSk7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWFjY2VudCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC1hY2NlbnQgLm1kLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tZC1yYWlzZWQpIHtcXG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYWNjZW50LCByZ2JhKDAsIDAsIDAsIDAuODcpKTsgfVxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLWFjY2VudCAubWQtdGl0bGUsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtYWNjZW50IC5tZC1kaXNwbGF5LTIge1xcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi1hY2NlbnQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xcbiAgICBjb2xvcjogdmFyKC0tbWQtdGhlbWUtZGVmYXVsdC10ZXh0LXByaW1hcnktb24tYmFja2dyb3VuZCwgcmdiYSgwLCAwLCAwLCAwLjg3KSk7IH1cXG4gICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgICAgLm1kLXRvb2xiYXIubWQtdGhlbWUtZGVmYXVsdC5tZC10cmFuc3BhcmVudCAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcXG4gICAgICAgIGZpbGw6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLXRpdGxlLFxcbiAgICAubWQtdG9vbGJhci5tZC10aGVtZS1kZWZhdWx0Lm1kLXRyYW5zcGFyZW50IC5tZC1kaXNwbGF5LTEsXFxuICAgIC5tZC10b29sYmFyLm1kLXRoZW1lLWRlZmF1bHQubWQtdHJhbnNwYXJlbnQgLm1kLWRpc3BsYXktMiB7XFxuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XFxuICAgICAgY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdGV4dC1wcmltYXJ5LW9uLWJhY2tncm91bmQsIHJnYmEoMCwgMCwgMCwgMC44NykpOyB9XFxuXFxuLm1kLXRvb2x0aXAubWQtdGhlbWUtZGVmYXVsdCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiB2YXIoLS1tZC10aGVtZS1kZWZhdWx0LXRleHQtcHJpbWFyeS1vbi10b29sdGlwLCAjZmZmKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoOTcsIDk3LCA5NywgMC45KTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXRoZW1lLWRlZmF1bHQtdG9vbHRpcC1vbi1iYWNrZ3JvdW5kLCByZ2JhKDk3LCA5NywgOTcsIDAuOSkpOyB9XFxuXCIsXCIvKipcXG4gKiBUaGUgY29tcGxldGUgbWF0ZXJpYWwgcGFsZXR0ZVxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgbWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1wYWxldHRlOiAoXFxuICByZWQ6IChcXG4gICAgNTA6ICNmZmViZWUsXFxuICAgIDEwMDogI2ZmY2RkMixcXG4gICAgMjAwOiAjZWY5YTlhLFxcbiAgICAzMDA6ICNlNTczNzMsXFxuICAgIDQwMDogI2VmNTM1MCxcXG4gICAgNTAwOiAjZjQ0MzM2LFxcbiAgICA2MDA6ICNlNTM5MzUsXFxuICAgIDcwMDogI2QzMmYyZixcXG4gICAgODAwOiAjYzYyODI4LFxcbiAgICA5MDA6ICNiNzFjMWMsXFxuICAgIEExMDA6ICNmZjhhODAsXFxuICAgIEEyMDA6ICNmZjUyNTIsXFxuICAgIEE0MDA6ICNmZjE3NDQsXFxuICAgIEE3MDA6ICNkNTAwMDBcXG4gICksXFxuICBwaW5rOiAoXFxuICAgIDUwOiAjZmNlNGVjLFxcbiAgICAxMDA6ICNmOGJiZDAsXFxuICAgIDIwMDogI2Y0OGZiMSxcXG4gICAgMzAwOiAjZjA2MjkyLFxcbiAgICA0MDA6ICNlYzQwN2EsXFxuICAgIDUwMDogI2U5MWU2MyxcXG4gICAgNjAwOiAjZDgxYjYwLFxcbiAgICA3MDA6ICNjMjE4NWIsXFxuICAgIDgwMDogI2FkMTQ1NyxcXG4gICAgOTAwOiAjODgwZTRmLFxcbiAgICBBMTAwOiAjZmY4MGFiLFxcbiAgICBBMjAwOiAjZmY0MDgxLFxcbiAgICBBNDAwOiAjZjUwMDU3LFxcbiAgICBBNzAwOiAjYzUxMTYyXFxuICApLFxcbiAgcHVycGxlOiAoXFxuICAgIDUwOiAjZjNlNWY1LFxcbiAgICAxMDA6ICNlMWJlZTcsXFxuICAgIDIwMDogI2NlOTNkOCxcXG4gICAgMzAwOiAjYmE2OGM4LFxcbiAgICA0MDA6ICNhYjQ3YmMsXFxuICAgIDUwMDogIzljMjdiMCxcXG4gICAgNjAwOiAjOGUyNGFhLFxcbiAgICA3MDA6ICM3YjFmYTIsXFxuICAgIDgwMDogIzZhMWI5YSxcXG4gICAgOTAwOiAjNGExNDhjLFxcbiAgICBBMTAwOiAjZWE4MGZjLFxcbiAgICBBMjAwOiAjZTA0MGZiLFxcbiAgICBBNDAwOiAjZDUwMGY5LFxcbiAgICBBNzAwOiAjYWEwMGZmXFxuICApLFxcbiAgZGVlcHB1cnBsZTogKFxcbiAgICA1MDogI2VkZTdmNixcXG4gICAgMTAwOiAjZDFjNGU5LFxcbiAgICAyMDA6ICNiMzlkZGIsXFxuICAgIDMwMDogIzk1NzVjZCxcXG4gICAgNDAwOiAjN2U1N2MyLFxcbiAgICA1MDA6ICM2NzNhYjcsXFxuICAgIDYwMDogIzVlMzViMSxcXG4gICAgNzAwOiAjNTEyZGE4LFxcbiAgICA4MDA6ICM0NTI3YTAsXFxuICAgIDkwMDogIzMxMWI5MixcXG4gICAgQTEwMDogI2IzODhmZixcXG4gICAgQTIwMDogIzdjNGRmZixcXG4gICAgQTQwMDogIzY1MWZmZixcXG4gICAgQTcwMDogIzYyMDBlYVxcbiAgKSxcXG4gIGluZGlnbzogKFxcbiAgICA1MDogI2U4ZWFmNixcXG4gICAgMTAwOiAjYzVjYWU5LFxcbiAgICAyMDA6ICM5ZmE4ZGEsXFxuICAgIDMwMDogIzc5ODZjYixcXG4gICAgNDAwOiAjNWM2YmMwLFxcbiAgICA1MDA6ICMzZjUxYjUsXFxuICAgIDYwMDogIzM5NDlhYixcXG4gICAgNzAwOiAjMzAzZjlmLFxcbiAgICA4MDA6ICMyODM1OTMsXFxuICAgIDkwMDogIzFhMjM3ZSxcXG4gICAgQTEwMDogIzhjOWVmZixcXG4gICAgQTIwMDogIzUzNmRmZSxcXG4gICAgQTQwMDogIzNkNWFmZSxcXG4gICAgQTcwMDogIzMwNGZmZVxcbiAgKSxcXG4gIGJsdWU6IChcXG4gICAgNTA6ICNlM2YyZmQsXFxuICAgIDEwMDogI2JiZGVmYixcXG4gICAgMjAwOiAjOTBjYWY5LFxcbiAgICAzMDA6ICM2NGI1ZjYsXFxuICAgIDQwMDogIzQyYTVmNSxcXG4gICAgNTAwOiAjMjE5NmYzLFxcbiAgICA2MDA6ICMxZTg4ZTUsXFxuICAgIDcwMDogIzE5NzZkMixcXG4gICAgODAwOiAjMTU2NWMwLFxcbiAgICA5MDA6ICMwZDQ3YTEsXFxuICAgIEExMDA6ICM4MmIxZmYsXFxuICAgIEEyMDA6ICM0NDhhZmYsXFxuICAgIEE0MDA6ICMyOTc5ZmYsXFxuICAgIEE3MDA6ICMyOTYyZmZcXG4gICksXFxuICBsaWdodGJsdWU6IChcXG4gICAgNTA6ICNlMWY1ZmUsXFxuICAgIDEwMDogI2IzZTVmYyxcXG4gICAgMjAwOiAjODFkNGZhLFxcbiAgICAzMDA6ICM0ZmMzZjcsXFxuICAgIDQwMDogIzI5YjZmNixcXG4gICAgNTAwOiAjMDNhOWY0LFxcbiAgICA2MDA6ICMwMzliZTUsXFxuICAgIDcwMDogIzAyODhkMSxcXG4gICAgODAwOiAjMDI3N2JkLFxcbiAgICA5MDA6ICMwMTU3OWIsXFxuICAgIEExMDA6ICM4MGQ4ZmYsXFxuICAgIEEyMDA6ICM0MGM0ZmYsXFxuICAgIEE0MDA6ICMwMGIwZmYsXFxuICAgIEE3MDA6ICMwMDkxZWFcXG4gICksXFxuICBjeWFuOiAoXFxuICAgIDUwOiAjZTBmN2ZhLFxcbiAgICAxMDA6ICNiMmViZjIsXFxuICAgIDIwMDogIzgwZGVlYSxcXG4gICAgMzAwOiAjNGRkMGUxLFxcbiAgICA0MDA6ICMyNmM2ZGEsXFxuICAgIDUwMDogIzAwYmNkNCxcXG4gICAgNjAwOiAjMDBhY2MxLFxcbiAgICA3MDA6ICMwMDk3YTcsXFxuICAgIDgwMDogIzAwODM4ZixcXG4gICAgOTAwOiAjMDA2MDY0LFxcbiAgICBBMTAwOiAjODRmZmZmLFxcbiAgICBBMjAwOiAjMThmZmZmLFxcbiAgICBBNDAwOiAjMDBlNWZmLFxcbiAgICBBNzAwOiAjMDBiOGQ0XFxuICApLFxcbiAgdGVhbDogKFxcbiAgICA1MDogI2UwZjJmMSxcXG4gICAgMTAwOiAjYjJkZmRiLFxcbiAgICAyMDA6ICM4MGNiYzQsXFxuICAgIDMwMDogIzRkYjZhYyxcXG4gICAgNDAwOiAjMjZhNjlhLFxcbiAgICA1MDA6ICMwMDk2ODgsXFxuICAgIDYwMDogIzAwODk3YixcXG4gICAgNzAwOiAjMDA3OTZiLFxcbiAgICA4MDA6ICMwMDY5NWMsXFxuICAgIDkwMDogIzAwNGQ0MCxcXG4gICAgQTEwMDogI2E3ZmZlYixcXG4gICAgQTIwMDogIzY0ZmZkYSxcXG4gICAgQTQwMDogIzFkZTliNixcXG4gICAgQTcwMDogIzAwYmZhNVxcbiAgKSxcXG4gIGdyZWVuOiAoXFxuICAgIDUwOiAjZThmNWU5LFxcbiAgICAxMDA6ICNjOGU2YzksXFxuICAgIDIwMDogI2E1ZDZhNyxcXG4gICAgMzAwOiAjODFjNzg0LFxcbiAgICA0MDA6ICM2NmJiNmEsXFxuICAgIDUwMDogIzRjYWY1MCxcXG4gICAgNjAwOiAjNDNhMDQ3LFxcbiAgICA3MDA6ICMzODhlM2MsXFxuICAgIDgwMDogIzJlN2QzMixcXG4gICAgOTAwOiAjMWI1ZTIwLFxcbiAgICBBMTAwOiAjYjlmNmNhLFxcbiAgICBBMjAwOiAjNjlmMGFlLFxcbiAgICBBNDAwOiAjMDBlNjc2LFxcbiAgICBBNzAwOiAjMDBjODUzXFxuICApLFxcbiAgbGlnaHRncmVlbjogKFxcbiAgICA1MDogI2YxZjhlOSxcXG4gICAgMTAwOiAjZGNlZGM4LFxcbiAgICAyMDA6ICNjNWUxYTUsXFxuICAgIDMwMDogI2FlZDU4MSxcXG4gICAgNDAwOiAjOWNjYzY1LFxcbiAgICA1MDA6ICM4YmMzNGEsXFxuICAgIDYwMDogIzdjYjM0MixcXG4gICAgNzAwOiAjNjg5ZjM4LFxcbiAgICA4MDA6ICM1NThiMmYsXFxuICAgIDkwMDogIzMzNjkxZSxcXG4gICAgQTEwMDogI2NjZmY5MCxcXG4gICAgQTIwMDogI2IyZmY1OSxcXG4gICAgQTQwMDogIzc2ZmYwMyxcXG4gICAgQTcwMDogIzY0ZGQxN1xcbiAgKSxcXG4gIGxpbWU6IChcXG4gICAgNTA6ICNmOWZiZTcsXFxuICAgIDEwMDogI2YwZjRjMyxcXG4gICAgMjAwOiAjZTZlZTljLFxcbiAgICAzMDA6ICNkY2U3NzUsXFxuICAgIDQwMDogI2Q0ZTE1NyxcXG4gICAgNTAwOiAjY2RkYzM5LFxcbiAgICA2MDA6ICNjMGNhMzMsXFxuICAgIDcwMDogI2FmYjQyYixcXG4gICAgODAwOiAjOWU5ZDI0LFxcbiAgICA5MDA6ICM4Mjc3MTcsXFxuICAgIEExMDA6ICNmNGZmODEsXFxuICAgIEEyMDA6ICNlZWZmNDEsXFxuICAgIEE0MDA6ICNjNmZmMDAsXFxuICAgIEE3MDA6ICNhZWVhMDBcXG4gICksXFxuICB5ZWxsb3c6IChcXG4gICAgNTA6ICNmZmZkZTcsXFxuICAgIDEwMDogI2ZmZjljNCxcXG4gICAgMjAwOiAjZmZmNTlkLFxcbiAgICAzMDA6ICNmZmYxNzYsXFxuICAgIDQwMDogI2ZmZWU1OCxcXG4gICAgNTAwOiAjZmZlYjNiLFxcbiAgICA2MDA6ICNmZGQ4MzUsXFxuICAgIDcwMDogI2ZiYzAyZCxcXG4gICAgODAwOiAjZjlhODI1LFxcbiAgICA5MDA6ICNmNTdmMTcsXFxuICAgIEExMDA6ICNmZmZmOGQsXFxuICAgIEEyMDA6ICNmZmZmMDAsXFxuICAgIEE0MDA6ICNmZmVhMDAsXFxuICAgIEE3MDA6ICNmZmQ2MDBcXG4gICksXFxuICBhbWJlcjogKFxcbiAgICA1MDogI2ZmZjhlMSxcXG4gICAgMTAwOiAjZmZlY2IzLFxcbiAgICAyMDA6ICNmZmUwODIsXFxuICAgIDMwMDogI2ZmZDU0ZixcXG4gICAgNDAwOiAjZmZjYTI4LFxcbiAgICA1MDA6ICNmZmMxMDcsXFxuICAgIDYwMDogI2ZmYjMwMCxcXG4gICAgNzAwOiAjZmZhMDAwLFxcbiAgICA4MDA6ICNmZjhmMDAsXFxuICAgIDkwMDogI2ZmNmYwMCxcXG4gICAgQTEwMDogI2ZmZTU3ZixcXG4gICAgQTIwMDogI2ZmZDc0MCxcXG4gICAgQTQwMDogI2ZmYzQwMCxcXG4gICAgQTcwMDogI2ZmYWIwMFxcbiAgKSxcXG4gIG9yYW5nZTogKFxcbiAgICA1MDogI2ZmZjNlMCxcXG4gICAgMTAwOiAjZmZlMGIyLFxcbiAgICAyMDA6ICNmZmNjODAsXFxuICAgIDMwMDogI2ZmYjc0ZCxcXG4gICAgNDAwOiAjZmZhNzI2LFxcbiAgICA1MDA6ICNmZjk4MDAsXFxuICAgIDYwMDogI2ZiOGMwMCxcXG4gICAgNzAwOiAjZjU3YzAwLFxcbiAgICA4MDA6ICNlZjZjMDAsXFxuICAgIDkwMDogI2U2NTEwMCxcXG4gICAgQTEwMDogI2ZmZDE4MCxcXG4gICAgQTIwMDogI2ZmYWI0MCxcXG4gICAgQTQwMDogI2ZmOTEwMCxcXG4gICAgQTcwMDogI2ZmNmQwMFxcbiAgKSxcXG4gIGRlZXBvcmFuZ2U6IChcXG4gICAgNTA6ICNmYmU5ZTcsXFxuICAgIDEwMDogI2ZmY2NiYyxcXG4gICAgMjAwOiAjZmZhYjkxLFxcbiAgICAzMDA6ICNmZjhhNjUsXFxuICAgIDQwMDogI2ZmNzA0MyxcXG4gICAgNTAwOiAjZmY1NzIyLFxcbiAgICA2MDA6ICNmNDUxMWUsXFxuICAgIDcwMDogI2U2NGExOSxcXG4gICAgODAwOiAjZDg0MzE1LFxcbiAgICA5MDA6ICNiZjM2MGMsXFxuICAgIEExMDA6ICNmZjllODAsXFxuICAgIEEyMDA6ICNmZjZlNDAsXFxuICAgIEE0MDA6ICNmZjNkMDAsXFxuICAgIEE3MDA6ICNkZDJjMDBcXG4gICksXFxuICBicm93bjogKFxcbiAgICA1MDogI2VmZWJlOSxcXG4gICAgMTAwOiAjZDdjY2M4LFxcbiAgICAyMDA6ICNiY2FhYTQsXFxuICAgIDMwMDogI2ExODg3ZixcXG4gICAgNDAwOiAjOGQ2ZTYzLFxcbiAgICA1MDA6ICM3OTU1NDgsXFxuICAgIDYwMDogIzZkNGM0MSxcXG4gICAgNzAwOiAjNWQ0MDM3LFxcbiAgICA4MDA6ICM0ZTM0MmUsXFxuICAgIDkwMDogIzNlMjcyMyxcXG4gICAgQTEwMDogI2Q3Y2NjOCxcXG4gICAgQTIwMDogI2JjYWFhNCxcXG4gICAgQTQwMDogIzhkNmU2MyxcXG4gICAgQTcwMDogIzVkNDAzN1xcbiAgKSxcXG4gIGdyZXk6IChcXG4gICAgNTA6ICNmYWZhZmEsXFxuICAgIDEwMDogI2Y1ZjVmNSxcXG4gICAgMjAwOiAjZWVlZWVlLFxcbiAgICAzMDA6ICNlMGUwZTAsXFxuICAgIDQwMDogI2JkYmRiZCxcXG4gICAgNTAwOiAjOWU5ZTllLFxcbiAgICA2MDA6ICM3NTc1NzUsXFxuICAgIDcwMDogIzYxNjE2MSxcXG4gICAgODAwOiAjNDI0MjQyLFxcbiAgICA5MDA6ICMyMTIxMjEsXFxuICAgIEExMDA6ICNmZmYsXFxuICAgIEEyMDA6ICMwMDAwMDAsXFxuICAgIEE0MDA6ICMzMDMwMzAsXFxuICAgIEE3MDA6ICM2MTYxNjFcXG4gICksXFxuICBibHVlZ3JleTogKFxcbiAgICA1MDogI2VjZWZmMSxcXG4gICAgMTAwOiAjY2ZkOGRjLFxcbiAgICAyMDA6ICNiMGJlYzUsXFxuICAgIDMwMDogIzkwYTRhZSxcXG4gICAgNDAwOiAjNzg5MDljLFxcbiAgICA1MDA6ICM2MDdkOGIsXFxuICAgIDYwMDogIzU0NmU3YSxcXG4gICAgNzAwOiAjNDU1YTY0LFxcbiAgICA4MDA6ICMzNzQ3NGYsXFxuICAgIDkwMDogIzI2MzIzOCxcXG4gICAgQTEwMDogI2NmZDhkYyxcXG4gICAgQTIwMDogI2IwYmVjNSxcXG4gICAgQTQwMDogIzc4OTA5YyxcXG4gICAgQTcwMDogIzQ1NWE2NFxcbiAgKSxcXG4gIHdoaXRlOiAoXFxuICAgIDUwOiAjZmZmLFxcbiAgICAxMDA6ICNmZmYsXFxuICAgIDIwMDogI2ZmZixcXG4gICAgMzAwOiAjZmZmLFxcbiAgICA0MDA6ICNmZmYsXFxuICAgIDUwMDogI2ZmZixcXG4gICAgNjAwOiAjZmZmLFxcbiAgICA3MDA6ICNmZmYsXFxuICAgIDgwMDogI2ZmZixcXG4gICAgOTAwOiAjZmZmLFxcbiAgICBBMTAwOiAjZmZmLFxcbiAgICBBMjAwOiAjZmZmLFxcbiAgICBBNDAwOiAjZmZmLFxcbiAgICBBNzAwOiAjZmZmXFxuICApLFxcbiAgYmxhY2s6IChcXG4gICAgNTA6ICMwMDAsXFxuICAgIDEwMDogIzAwMCxcXG4gICAgMjAwOiAjMDAwLFxcbiAgICAzMDA6ICMwMDAsXFxuICAgIDQwMDogIzAwMCxcXG4gICAgNTAwOiAjMDAwLFxcbiAgICA2MDA6ICMwMDAsXFxuICAgIDcwMDogIzAwMCxcXG4gICAgODAwOiAjMDAwLFxcbiAgICA5MDA6ICMwMDAsXFxuICAgIEExMDA6ICMwMDAsXFxuICAgIEEyMDA6ICMwMDAsXFxuICAgIEE0MDA6ICMwMDAsXFxuICAgIEE3MDA6ICMwMDBcXG4gIClcXG4pO1xcblwiLFwiLyoqXFxuICogVGhlbWUgYW55IGNzcyBwcm9wZXJ0eSBiYXNlZCBvbiB0aGUgY3VycmVudCBwYWxldHRlLCBhY2NlcHRpbmcgYSB0aGVtYWJsZVxcbiAqIHZhbHVlIHRoYXQgd2lsbCBnaXZlIGFuIGNvbnRyYXN0ZWRcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogJGZvby1wYWxldHRlOiAoXFxuICogICBwcmltYXJ5OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcihpbmRpZ28sIDUwMCksXFxuICogICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHBpbmssIDUwMCksXFxuICogICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbiAqICk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIC0tLVxcbiAqIEBwYXJhbSB7Y29sb3J9ICR0eXBlIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciBiYXNlZCBvbiBtYXRlcmlhbCBwYWxldHRlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0eXBlIOKAlOKAiiBBIHZhbGlkIGh1ZVxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC1nZXQtcGFsZXR0ZS1jb2xvcigkY29sb3IsICRodWUpIHtcXG4gIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRtZC1wYWxldHRlLCAkY29sb3IpLCAkaHVlKTtcXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IHRoZSBjdXJyZW50IHRoZW1lIG1vZGUgZnJvbSB0aGUgY3VycmVudCB0aGVtZVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkdGhlbWUtbW9kZTogbWQtZ2V0LXRoZW1lLW1vZGUoKVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC10aGVtZS1tb2RlKCkge1xcbiAgQHJldHVybiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCB0aGVtZSk7XFxufVxcblxcblxcbi8qKlxcbiAqIFRoZW1lIGFueSBjc3MgcHJvcGVydHkgYmFzZWQgb24gdGhlIGN1cnJlbnQgcGFsZXR0ZSwgYWNjZXB0aW5nIGEgdGhlbWFibGVcXG4gKiB2YWx1ZSB0aGF0IHdpbGwgZ2l2ZSBhbiBjb250cmFzdGVkXFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1mb28ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgYmFja2dyb3VuZDogbWQtdGhlbWUocHJpbWFyeSk7XFxuICogfVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSB0aGVtYWJsZSB2YWx1ZVxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiKSB7XFxuICAkY29sb3ItdGhlbWU6IG51bGw7XFxuXFxuICBAaWYgJHR5cGUgPT0gXFxcInByaW1hcnlcXFwiIG9yICR0eXBlID09IFxcXCJhY2NlbnRcXFwiIHtcXG4gICAgQHJldHVybiBtZC1nZXQtY29sb3ItYnktdHlwZSgkdHlwZSwgbnVsbCk7XFxuICB9IEBlbHNlIHtcXG4gICAgJGNvbG9yLXRoZW1lOiBtYXAtZ2V0KCRtZC10aGVtZS1wYWxldHRlLCB0aGVtZSk7XFxuXFxuICAgIEBpZiAkYmFja2dyb3VuZCAhPSBcXFwiXFxcIiB7XFxuICAgICAgJGNvbG9yLXRoZW1lOiBtZC1waWNrLWNvbnRyYXN0KG1kLWdldC1jb2xvci1ieS10eXBlKCRiYWNrZ3JvdW5kLCAkY29sb3ItdGhlbWUpKTtcXG4gICAgfVxcblxcbiAgICBAcmV0dXJuIG1kLWdldC1jb2xvci1ieS10aGVtZSgkY29sb3ItdGhlbWUsICR0eXBlKTtcXG4gIH1cXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBieSB0aGVtZVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAkY29sb3I6IG1kLWdldC1jb2xvci1ieS10aGVtZShkYXJrLCBwcmltYXJ5KVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yLXRoZW1lIOKAlOKAiiBUaGUgdGhlbWUgY29sb3IgfCBBY2NlcHRzIGRhcmsgb3IgbGlnaHRcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSBjb2xvciB0eXBlXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC1jb2xvci1ieS10aGVtZSgkY29sb3ItdGhlbWUsICR0eXBlKSB7XFxuICAkdGhlbWU6IG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgJGNvbG9yLXRoZW1lKTtcXG5cXG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUsICR0eXBlKTtcXG59XFxuXFxuXFxuLyoqXFxuICogR2V0IGEgY29sb3IgYmFzZWQgb24gdHlwZSBvbmx5XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqICRjb2xvcjE6IG1kLWdldC1jb2xvci1ieS10eXBlKGJhY2tncm91bmQsIGRhcmspXFxuICogJGNvbG9yMTogbWQtZ2V0LWNvbG9yLWJ5LXR5cGUoYWNjZW50KVxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwdWJsaWNcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJHR5cGUg4oCU4oCKIFRoZSBjb2xvciB0eXBlXFxuICogQHBhcmFtIHtzdHJpbmd9ICR0aGVtZSDigJTigIogVGhlIGZhbGxiYWNrIHRoZW1lXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWdldC1jb2xvci1ieS10eXBlKCR0eXBlLCAkdGhlbWUpIHtcXG4gICRuZXdDb2xvcjogbWFwLWdldCgkbWQtdGhlbWUtcGFsZXR0ZSwgJHR5cGUpO1xcblxcbiAgQGlmICRuZXdDb2xvciA9PSBudWxsIHtcXG4gICAgJG5ld0NvbG9yOiBtZC1nZXQtY29sb3ItYnktdGhlbWUoJHRoZW1lLCAkdHlwZSk7XFxuICB9XFxuXFxuICBAcmV0dXJuICRuZXdDb2xvclxcbn1cXG5cIixcIi8qKlxcbiAqIFRoZSBkZWZhdWx0IHRoZW1lIHBhbGV0dGVcXG4gKiBwcmltYXJ5OiBpbmRpZ28gNTAwICMzZjUxYjVcXG4gKiBhY2NlbnQ6IHBpbmsgNTAwICNlOTFlNjNcXG4gKiB0aGVtZTogbGlnaHRcXG4gKlxcbiAqIEl0IGNhbiBiZSB1c2VkIGp1c3QgYmVmb3JlIGltcG9ydGluZyB0aGUgVnVlIE1hdGVyaWFsIHN0eWxlc2hlZXRcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHR5cGUgY29sb3JtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuXFxuJG1kLWRlZmF1bHQtcGFsZXR0ZTogKFxcbiAgcHJpbWFyeTogbWQtZ2V0LXBhbGV0dGUtY29sb3IoYmx1ZSwgQTIwMCksXFxuICBhY2NlbnQ6IG1kLWdldC1wYWxldHRlLWNvbG9yKHJlZCwgQTIwMCksXFxuICB0aGVtZTogXFxcImxpZ2h0XFxcIlxcbikgIWRlZmF1bHQ7XFxuXFxuXFxuLyoqXFxuICogVGVtcG9yYXJ5IHZhcmlhYmxlIHRvIHN0b3JlIGFsbCB0aGVtYWJsZSB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuJG1kLXRoZW1lLXBhbGV0dGU6ICgpO1xcblxcblxcbi8qKlxcbiAqIE1hcCB2YXJpYWJsZSB0byBzdG9yZSBhbGwgdGhlbWVzIHRvIGJlIHByb2Nlc3NlZCBieSBlYWNoIGNvbXBvbmVudFxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHJpdmF0ZVxcbiAqIEB0eXBlIG1hcFxcbiAqIEBncm91cCB0aGVtZXNcXG4gKi9cXG4kbWQtdGhlbWVzOiAoKTtcXG5cXG5cXG4vKipcXG4gKiBTdG9yZSB0aGUgY3VycmVudCB0aGVtZSBuYW1lXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgc3RyaW5nXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1jdXJyZW50LXRoZW1lOiBudWxsO1xcblxcblxcbi8qKlxcbiAqIFRoZSBjb2xvciBjb250cmFzdCB2YWx1ZXNcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiBAdHlwZSBtYXBcXG4gKiBAZ3JvdXAgdGhlbWVzXFxuICovXFxuXFxuJG1kLWNvbG9yLWxldmVsczogKFxcbiAgbGlnaHQ6IChcXG4gICAgYmFja2dyb3VuZDogI2ZmZixcXG4gICAgYmFja2dyb3VuZC12YXJpYW50OiAjZmFmYWZhLFxcbiAgICB0ZXh0LXByaW1hcnk6IHJnYmEoIzAwMCwgLjg3KSxcXG4gICAgdGV4dC1hY2NlbnQ6IHJnYmEoIzAwMCwgLjU0KSxcXG4gICAgdGV4dC1oaW50OiByZ2JhKCMwMDAsIC4zOCksXFxuICAgIGRpc2FibGVkOiByZ2JhKCMwMDAsIC4yNiksXFxuICAgIGRpc2FibGVkLWJhY2tncm91bmQ6IHJnYmEoIzAwMCwgLjEyKSxcXG4gICAgaGlnaGxpZ2h0OiByZ2JhKCMwMDAsIC4xMiksXFxuICAgIGljb246IHJnYmEoIzAwMCwgLjU0KSxcXG4gICAgaWNvbi1kaXNhYmxlZDogcmdiYSgjMDAwLCAuMzgpLFxcbiAgICBkaXZpZGVyOiByZ2JhKCMwMDAsIC4xMiksXFxuICAgIHNjcm9sbGJhcjogIzc1NzU3NSxcXG4gICAgc2Nyb2xsYmFyLWJhY2tncm91bmQ6IGRhcmtlbigjZWVlLCA1JSksXFxuICAgIHRvb2x0aXA6ICM2MTYxNjFcXG4gICksXFxuICBkYXJrOiAoXFxuICAgIGJhY2tncm91bmQ6ICM0MjQyNDIsXFxuICAgIGJhY2tncm91bmQtdmFyaWFudDogIzMwMzAzMCxcXG4gICAgdGV4dC1wcmltYXJ5OiAjZmZmLFxcbiAgICB0ZXh0LWFjY2VudDogcmdiYSgjZmZmLCAuNyksXFxuICAgIHRleHQtaGludDogcmdiYSgjZmZmLCAuNSksXFxuICAgIGRpc2FibGVkOiByZ2JhKCNmZmYsIC4zKSxcXG4gICAgZGlzYWJsZWQtYmFja2dyb3VuZDogcmdiYSgjZmZmLCAuMTIpLFxcbiAgICBoaWdobGlnaHQ6IHJnYmEoI2ZmZiwgLjEyKSxcXG4gICAgaWNvbjogI2ZmZixcXG4gICAgaWNvbi1kaXNhYmxlZDogcmdiYSgjZmZmLCAuNSksXFxuICAgIGRpdmlkZXI6IHJnYmEoI2ZmZiwgLjEyKSxcXG4gICAgc2Nyb2xsYmFyOiAjOUU5RTlFLFxcbiAgICBzY3JvbGxiYXItYmFja2dyb3VuZDogIzIxMjEyMSxcXG4gICAgdG9vbHRpcDogI2ZmZlxcbiAgKVxcbik7XFxuXCIsXCIvKipcXG4gKiBIaWdodGx5IGJhc2VkIG9uOiBcXFwiVXNpbmcgU2FzcyB0byBhdXRvbWF0aWNhbGx5IHBpY2sgdGV4dCBjb2xvcnNcXFwiXFxuICogaHR0cHM6Ly9tZWRpdW0uY29tL2Rldi1jaGFubmVsL3VzaW5nLXNhc3MtdG8tYXV0b21hdGljYWxseS1waWNrLXRleHQtY29sb3JzLTRiYTc2NDVkMjc5NlxcbiAqL1xcblxcbi8qKlxcbiAqIFByZWNvbXB1dGVkIGxpbmVhciBjb2xvciBjaGFubmVsIHZhbHVlcywgZm9yIHVzZSBpbiBjb250cmFzdCBjYWxjdWxhdGlvbnMuXFxuICogU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAtVEVDSFMvRzE3Lmh0bWwjRzE3LXRlc3RzXFxuICogLS0tXFxuICpcXG4gKiAgQWxnb3JpdGhtLCBmb3IgYyBpbiAwIHRvIDI1NTpcXG4gKiAgZihjKSB7XFxuICogICAgYyA9IGMgLyAyNTU7XFxuICogICAgcmV0dXJuIGMgPCAwLjAzOTI4ID8gYyAvIDEyLjkyIDogTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KTtcXG4gKiAgfVxcbiAqXFxuICogIFRoaXMgbG9va3VwIHRhYmxlIGlzIG5lZWRlZCBzaW5jZSB0aGVyZSBpcyBubyBgcG93YCBpbiBTQVNTLlxcbiAqXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogQHR5cGUgTWFwXFxuICogQGdyb3VwIHRoZW1lc1xcbiAqL1xcblxcbiRtZC1saW5lYXItY2hhbm5lbC12YWx1ZXM6XFxuICAwXFxuICAuMDAwMzAzNTI2OTgzNTQ4ODM3NVxcbiAgLjAwMDYwNzA1Mzk2NzA5NzY3NVxcbiAgLjAwMDkxMDU4MDk1MDY0NjUxMjVcXG4gIC4wMDEyMTQxMDc5MzQxOTUzNVxcbiAgLjAwMTUxNzYzNDkxNzc0NDE4NzRcXG4gIC4wMDE4MjExNjE5MDEyOTMwMjVcXG4gIC4wMDIxMjQ2ODg4ODQ4NDE4NjI2XFxuICAuMDAyNDI4MjE1ODY4MzkwN1xcbiAgLjAwMjczMTc0Mjg1MTkzOTUzNzNcXG4gIC4wMDMwMzUyNjk4MzU0ODgzNzVcXG4gIC4wMDMzNDY1MzU3NjM4OTkxNjFcXG4gIC4wMDM2NzY1MDczMjQwNDc0MzZcXG4gIC4wMDQwMjQ3MTcwMTg0OTYzMDdcXG4gIC4wMDQzOTE0NDIwMzc0MTAyOTNcXG4gIC4wMDQ3NzY5NTM0ODA2OTM3MjlcXG4gIC4wMDUxODE1MTY3MDIzMzgzODZcXG4gIC4wMDU2MDUzOTE2MjQyMDI3MjNcXG4gIC4wMDYwNDg4MzMwMjI4NTcwNTRcXG4gIC4wMDY1MTIwOTA3OTI1OTQ0NzVcXG4gIC4wMDY5OTU0MTAxODcyNjUzODdcXG4gIC4wMDc0OTkwMzIwNDMyMjYxNzVcXG4gIC4wMDgwMjMxOTI5ODUzODQ5OTRcXG4gIC4wMDg1NjgxMjU2MTgwNjkzMDdcXG4gIC4wMDkxMzQwNTg3MDIyMjA3ODdcXG4gIC4wMDk3MjEyMTczMjAyMzc4NVxcbiAgLjAxMDMyOTgyMzAyOTYyNjkzNlxcbiAgLjAxMDk2MDA5NDAwNjQ4ODI0NlxcbiAgLjAxMTYxMjI0NTE3OTc0Mzg4NVxcbiAgLjAxMjI4NjQ4ODM1NjkxNTg3MlxcbiAgLjAxMjk4MzAzMjM0MjE3MzAxMlxcbiAgLjAxMzcwMjA4MzA0NzI4OTY4NlxcbiAgLjAxNDQ0Mzg0MzU5NjA5MjU0NVxcbiAgLjAxNTIwODUxNDQyMjkxMjcxXFxuICAuMDE1OTk2MjkzMzY1NTA5NjNcXG4gIC4wMTY4MDczNzU3NTI4ODczODRcXG4gIC4wMTc2NDE5NTQ0ODgzODQwNzhcXG4gIC4wMTg1MDAyMjAxMjgzNzk2OTdcXG4gIC4wMTkzODIzNjA5NTY5MzU3MjNcXG4gIC4wMjAyODg1NjMwNTY2NTI0XFxuICAuMDIxMjE5MDEwMzc2MDAzNTU1XFxuICAuMDIyMTczODg0NzkzMzg3Mzg1XFxuICAuMDIzMTUzMzY2MTc4MTEwNDFcXG4gIC4wMjQxNTc2MzI0NDg1MDQ3NTZcXG4gIC4wMjUxODY4NTk2MjczNjE2M1xcbiAgLjAyNjI0MTIyMTg5NDg0OTg5OFxcbiAgLjAyNzMyMDg5MTYzOTA3NDg5NFxcbiAgLjAyODQyNjAzOTUwNDQyMDc5M1xcbiAgLjAyOTU1NjgzNDQzNzgwODhcXG4gIC4wMzA3MTM0NDM3MzI5OTM2MzVcXG4gIC4wMzE4OTYwMzMwNzMwMTE1M1xcbiAgLjAzMzEwNDc2NjU3MDg4NTA1NVxcbiAgLjAzNDMzOTgwNjgwODY4MjE3XFxuICAuMDM1NjAxMzE0ODc1MDIwMzRcXG4gIC4wMzY4ODk0NTA0MDExMDAwNFxcbiAgLjAzODIwNDM3MTU5NTM0NjVcXG4gIC4wMzk1NDYyMzUyNzY3MzI4NFxcbiAgLjA0MDkxNTE5NjkwNjg1MzE5XFxuICAuMDQyMzExNDEwNjIwODA5Njc1XFxuICAuMDQzNzM1MDI5MjU2OTczNDY1XFxuICAuMDQ1MTg2MjA0Mzg1Njc1NTRcXG4gIC4wNDY2NjUwODYzMzY4ODAwOTVcXG4gIC4wNDgxNzE4MjQyMjY4ODk0MlxcbiAgLjA0OTcwNjU2NTk4NDEyNzIzXFxuICAuMDUxMjY5NDU4Mzc0MDQzMjRcXG4gIC4wNTI4NjA2NDcwMjMxODAyNDZcXG4gIC4wNTQ0ODAyNzY0NDI0NDIzN1xcbiAgLjA1NjEyODQ5MDA0OTYwMDA5XFxuICAuMDU3ODA1NDMwMTkxMDY3MjNcXG4gIC4wNTk1MTEyMzgxNjI5ODEyXFxuICAuMDYxMjQ2MDU0MjMxNjE3NjFcXG4gIC4wNjMwMTAwMTc2NTMxNjc2N1xcbiAgLjA2NDgwMzI2NjY5MjkwNTc3XFxuICAuMDY2NjI1OTM4NjQzNzcyODlcXG4gIC4wNjg0NzgxNjk4NDQ0MDAxN1xcbiAgLjA3MDM2MDA5NTY5NjU5NTg4XFxuICAuMDcyMjcxODUwNjgyMzE3NDhcXG4gIC4wNzQyMTM1NjgzODAxNDk2M1xcbiAgLjA3NjE4NTM4MTQ4MTMwNzg1XFxuICAuMDc4MTg3NDIxODA1MTg2MzNcXG4gIC4wODAyMTk4MjAzMTQ0NjgzMlxcbiAgLjA4MjI4MjcwNzEyOTgxNDhcXG4gIC4wODQzNzYyMTE1NDQxNDg4MlxcbiAgLjA4NjUwMDQ2MjAzNjU0OTc2XFxuICAuMDg4NjU1NTg2Mjg1NzcyOTRcXG4gIC4wOTA4NDE3MTExODM0MDc2OFxcbiAgLjA5MzA1ODk2Mjg0NjY4NzQ1XFxuICAuMDk1MzA3NDY2NjMwOTY0N1xcbiAgLjA5NzU4NzM0NzE0MTg2MjQ2XFxuICAuMDk5ODk4NzI4MjQ3MTEzODlcXG4gIC4xMDIyNDE3MzMwODgxMDEzMlxcbiAgLjEwNDYxNjQ4NDA5MTEwNDE5XFxuICAuMTA3MDIzMTAyOTc4MjY3NjFcXG4gIC4xMDk0NjE3MTA3NzgyOTkzM1xcbiAgLjExMTkzMjQyNzgzNjkwNTZcXG4gIC4xMTQ0MzUzNzM4MjY5NzM3M1xcbiAgLjExNjk3MDY2Nzc1ODUxMDg0XFxuICAuMTE5NTM4NDI3OTg4MzQ1NjJcXG4gIC4xMjIxMzg3NzIyMjk2MDE4N1xcbiAgLjEyNDc3MTgxNzU2MDk1MDQ5XFxuICAuMTI3NDM3NjgwNDM1NjQ3NDNcXG4gIC4xMzAxMzY0NzY2OTAzNjQzXFxuICAuMTMyODY4MzIxNTUzODE3OThcXG4gIC4xMzU2MzMzMjk2NTUyMDU2NlxcbiAgLjEzODQzMTYxNTAzMjQ1MTgzXFxuICAuMTQxMjYzMjkxMTQwMjcxNjRcXG4gIC4xNDQxMjg0NzA4NTgwNTc3N1xcbiAgLjE0NzAyNzI2NjQ5NzU5NDk4XFxuICAuMTQ5OTU5Nzg5ODEwNjA4NTZcXG4gIC4xNTI5MjYxNTE5OTYxNTAxN1xcbiAgLjE1NTkyNjQ2MzcwNzgyNzRcXG4gIC4xNTg5NjA4MzUwNjA4ODA0XFxuICAuMTYyMDI5Mzc1NjM5MTExXFxuICAuMTY1MTMyMTk0NTAxNjY3NlxcbiAgLjE2ODI2OTQwMDE4OTY5MDc1XFxuICAuMTcxNDQxMTAwNzMyODIyNlxcbiAgLjE3NDY0NzQwMzY1NTU4NTA0XFxuICAuMTc3ODg4NDE1OTgzNjI5MTJcXG4gIC4xODExNjQyNDQyNDk4NjAyMlxcbiAgLjE4NDQ3NDk5NDUwMDQ0MVxcbiAgLjE4NzgyMDc3MjMwMDY3Nzg3XFxuICAuMTkxMjAxNjgyNzQwNzkxMzhcXG4gIC4xOTQ2MTc4MzA0NDE1NzU4XFxuICAuMTk4MDY5MzE5NTU5OTQ4ODZcXG4gIC4yMDE1NTYyNTM3OTQzOTcwN1xcbiAgLjIwNTA3ODczNjM5MDMxNjkzXFxuICAuMjA4NjM2ODcwMTQ1MjU1NzVcXG4gIC4yMTIyMzA3NTc0MTQwNTUyM1xcbiAgLjIxNTg2MDUwMDExMzg5OTI2XFxuICAuMjE5NTI2MTk5NzI5MjY5MlxcbiAgLjIyMzIyNzk1NzMxNjgwODVcXG4gIC4yMjY5NjU4NzM1MTAwOTgzNlxcbiAgLjIzMDc0MDA0ODUyNDM0OTE1XFxuICAuMjM0NTUwNTgyMTYxMDA1MjJcXG4gIC4yMzgzOTc1NzM4MTIyNzFcXG4gIC4yNDIyODExMjI0NjU1NTQ4NlxcbiAgLjI0NjIwMTMyNjcwNzgzNTQ4XFxuICAuMjUwMTU4Mjg0NzI5OTUzNDRcXG4gIC4yNTQxNTIwOTQzMzA4MjY3NVxcbiAgLjI1ODE4Mjg1MjkyMTU5NThcXG4gIC4yNjIyNTA2NTc1Mjk2OTYyM1xcbiAgLjI2NjM1NTYwNDgwMjg2MjQ3XFxuICAuMjcwNDk3NzkxMDEzMDY1OFxcbiAgLjI3NDY3NzMxMjA2MDM4NDY1XFxuICAuMjc4ODk0MjYzNDc2ODEwNFxcbiAgLjI4MzE0ODc0MDQyOTk5MjFcXG4gIC4yODc0NDA4Mzc3MjY5MTc1XFxuICAuMjkxNzcwNjQ5ODE3NTM1ODdcXG4gIC4yOTYxMzgyNzA3OTgzMjExXFxuICAuMzAwNTQzNzk0NDE1Nzc2NVxcbiAgLjMwNDk4NzMxNDA2OTg4NjNcXG4gIC4zMDk0Njg5MjI4MTc1MDg1NFxcbiAgLjMxMzk4ODcxMzM3NTcxNzU0XFxuICAuMzE4NTQ2Nzc4MTI1MDkxODZcXG4gIC4zMjMxNDMyMDkxMTI5NTA3NVxcbiAgLjMyNzc3ODA5ODA1NjU0MjJcXG4gIC4zMzI0NTE1MzYzNDYxNzkzNVxcbiAgLjMzNzE2MzYxNTA0ODMzMDM3XFxuICAuMzQxOTE0NDI0OTA4NjYwOVxcbiAgLjM0NjcwNDA1NjM1NTAyOTZcXG4gIC4zNTE1MzI1OTk1MDA0MzkzNlxcbiAgLjM1NjQwMDE0NDE0NTk0MzVcXG4gIC4zNjEzMDY3Nzk3ODM1MDk1XFxuICAuMzY2MjUyNTk1NTk4ODM5NVxcbiAgLjM3MTIzNzY4MDQ3NDE0OTFcXG4gIC4zNzYyNjIxMjI5OTA5MDY1XFxuICAuMzgxMzI2MDExNDMyNTMwMTRcXG4gIC4zODY0Mjk0MzM3ODcwNDlcXG4gIC4zOTE1NzI0Nzc3NDk3MjMyNlxcbiAgLjM5Njc1NTIzMDcyNTYyNjg1XFxuICAuNDAxOTc3Nzc5ODMyMTk1OFxcbiAgLjQwNzI0MDIxMTkwMTczNjdcXG4gIC40MTI1NDI2MTM0ODM5MDM3NVxcbiAgLjQxNzg4NTA3MDg0ODEzNzVcXG4gIC40MjMyNjc2Njk5ODYwNzE3XFxuICAuNDI4NjkwNDk2NjEzOTA2NlxcbiAgLjQzNDE1MzYzNjE3NDc0ODk1XFxuICAuNDM5NjU3MTczODQwOTE4OFxcbiAgLjQ0NTIwMTE5NDUxNjIyNzg2XFxuICAuNDUwNzg1NzgyODM4MjIzNDZcXG4gIC40NTY0MTEwMjMxODA0MDQ2NlxcbiAgLjQ2MjA3Njk5OTY1NDQwNzFcXG4gIC40Njc3ODM3OTYxMTIxNTlcXG4gIC40NzM1MzE0OTYxNDgwMDk1NVxcbiAgLjQ3OTMyMDE4MzEwMDgyNjhcXG4gIC40ODUxNDk5NDAwNTYwNzA0XFxuICAuNDkxMDIwODQ5ODQ3ODM1NlxcbiAgLjQ5NjkzMjk5NTA2MDg3MDRcXG4gIC41MDI4ODY0NTgwMzI1Njg3XFxuICAuNTA4ODgxMzIwODU0OTMzOFxcbiAgLjUxNDkxNzY2NTM3NjUyMTRcXG4gIC41MjA5OTU1NzMyMDQzNTQzXFxuICAuNTI3MTE1MTI1NzA1ODEzMVxcbiAgLjUzMzI3NjQwNDAxMDUwNTJcXG4gIC41Mzk0Nzk0ODkwMTIxMDcyXFxuICAuNTQ1NzI0NDYxMzcwMTg2NlxcbiAgLjU1MjAxMTQwMTUxMjAwMDFcXG4gIC41NTgzNDAzODk2MzQyNjc5XFxuICAuNTY0NzExNTA1NzA0OTI5MlxcbiAgLjU3MTEyNDgyOTQ2NDg3MzFcXG4gIC41Nzc1ODA0NDA0Mjk2NTA2XFxuICAuNTg0MDc4NDE3ODkxMTY0MVxcbiAgLjU5MDYxODg0MDkxOTMzNjlcXG4gIC41OTcyMDE3ODgzNjM3NjM0XFxuICAuNjAzODI3MzM4ODU1MzM3OFxcbiAgLjYxMDQ5NTU3MDgwNzg2NDhcXG4gIC42MTcyMDY1NjI0MTk2NTExXFxuICAuNjIzOTYwMzkxNjc1MDc2MVxcbiAgLjYzMDc1NzEzNjM0NjE0NjhcXG4gIC42Mzc1OTY4NzM5OTQwMzI2XFxuICAuNjQ0NDc5NjgxOTcwNTgyMVxcbiAgLjY1MTQwNTYzNzQxOTgyNDJcXG4gIC42NTgzNzQ4MTcyNzk0NDg1XFxuICAuNjY1Mzg3Mjk4MjgyMjcyXFxuICAuNjcyNDQzMTU2OTU3Njg3NVxcbiAgLjY3OTU0MjQ2OTYzMzA5MzhcXG4gIC42ODY2ODUzMTI0MzUzMTM1XFxuICAuNjkzODcxNzYxMjkxOTg5OVxcbiAgLjcwMTEwMTg5MTkzMjk3MzFcXG4gIC43MDgzNzU3Nzk4OTE2ODY4XFxuICAuNzE1NjkzNTAwNTA2NDgwN1xcbiAgLjcyMzA1NTEyODkyMTk2OTNcXG4gIC43MzA0NjA3NDAwOTAzNTM3XFxuICAuNzM3OTEwNDA4NzcyNzMwOFxcbiAgLjc0NTQwNDIwOTU0MDM4NzRcXG4gIC43NTI5NDIyMTY3NzYwNzc5XFxuICAuNzYwNTI0NTA0Njc1MjkyNFxcbiAgLjc2ODE1MTE0NzI0NzUwN1xcbiAgLjc3NTgyMjIxODMxNzQyMzZcXG4gIC43ODM1Mzc3OTE1MjYxOTM1XFxuICAuNzkxMjk3OTQwMzMyNjMwMlxcbiAgLjc5OTEwMjczODAxNDQwOVxcbiAgLjgwNjk1MjI1NzY2OTI1MTZcXG4gIC44MTQ4NDY1NzIyMTYxMDEyXFxuICAuODIyNzg1NzU0Mzk2MjgzNVxcbiAgLjgzMDc2OTg3Njc3NDY1NDZcXG4gIC44Mzg3OTkwMTE3NDA3NFxcbiAgLjg0Njg3MzIzMTUwOTg1OFxcbiAgLjg1NDk5MjYwODEyNDIzMzhcXG4gIC44NjMxNTcyMTM0NTQxMDIzXFxuICAuODcxMzY3MTE5MTk4Nzk3MlxcbiAgLjg3OTYyMjM5Njg4NzgzMTdcXG4gIC44ODc5MjMxMTc4ODE5NjYzXFxuICAuODk2MjY5MzUzMzc0MjY2NFxcbiAgLjkwNDY2MTE3NDM5MTE0OTZcXG4gIC45MTMwOTg2NTE3OTM0MTkyXFxuICAuOTIxNTgxODU2Mjc3Mjk0NlxcbiAgLjkzMDExMDg1ODM3NTQyMzdcXG4gIC45Mzg2ODU3Mjg0NTc4ODhcXG4gIC45NDczMDY1MzY3MzMxOTk5XFxuICAuOTU1OTczMzUzMjQ5Mjg2MVxcbiAgLjk2NDY4NjI0Nzg5NDQ2NTFcXG4gIC45NzM0NDUyOTAzOTg0MTI1XFxuICAuOTgyMjUwNTUwMzMzMTE3MVxcbiAgLjk5MTEwMjA5NzExMzgyOThcXG4gIDE7XFxuXFxuXFxuLyoqXFxuICogQ2FsY3VsYXRlIHRoZSBsdW1pbmFuY2UgZm9yIGEgY29sb3IuXFxuICogLS0tXFxuICogQGFjY2VzcyBwcml2YXRlXFxuICogLS0tXFxuICogQHBhcmFtIHtzdHJpbmd9ICRjb2xvciDigJTigIogVGhlIGNvbG9yIHRvIGJlIGFuYWx5c2VkXFxuICovXFxuXFxuQGZ1bmN0aW9uIG1kLWNoZWNrLWx1bWluYW5jZSgkY29sb3IpIHtcXG4gICRyZWQ6IG50aCgkbWQtbGluZWFyLWNoYW5uZWwtdmFsdWVzLCByZWQoJGNvbG9yKSArIDEpO1xcbiAgJGdyZWVuOiBudGgoJG1kLWxpbmVhci1jaGFubmVsLXZhbHVlcywgZ3JlZW4oJGNvbG9yKSArIDEpO1xcbiAgJGJsdWU6IG50aCgkbWQtbGluZWFyLWNoYW5uZWwtdmFsdWVzLCBibHVlKCRjb2xvcikgKyAxKTtcXG5cXG4gIEByZXR1cm4gLjIxMjYgKiAkcmVkICsgLjcxNTIgKiAkZ3JlZW4gKyAuMDcyMiAqICRibHVlO1xcbn1cXG5cXG5cXG4vKipcXG4gKiBDYWxjdWxhdGUgdGhlIGNvbnRyYXN0IHJhdGlvIGJldHdlZW4gdHdvIGNvbG9ycy5cXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJnIOKAlOKAiiBUaGUgYmcgY29sb3JcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGZnIOKAlOKAiiBUaGUgZmcgY29sb3IgdG8gYmUgY29tcGFyZWRcXG4gKi9cXG5cXG5AZnVuY3Rpb24gbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRiZywgJGZnKSB7XFxuICAkYmdMdW06IG1kLWNoZWNrLWx1bWluYW5jZSgkYmcpICsgLjI7XFxuICAkZmdMdW06IG1kLWNoZWNrLWx1bWluYW5jZSgkZmcpICsgLjI7XFxuXFxuICBAcmV0dXJuIG1heCgkYmdMdW0sICRmZ0x1bSkgLyBtaW4oJGJnTHVtLCAkZmdMdW0pO1xcbn1cXG5cXG5cXG4vKipcXG4gKiBEZXRlcm1pbmUgd2hldGhlciB0byB1c2UgZGFyayBvciBsaWdodCB0ZXh0IG9uIHRvcCBvZiBnaXZlbiBjb2xvci5cXG4gKiBSZXR1cm5zIGRhcmsgb3IgbGlnaHQgZGVwZW5kaW5nIG9uIHRoZSBjb250cmFzdCByYXRpby5cXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHByaXZhdGVcXG4gKiAtLS1cXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBUaGUgZGVzaXJlZCBjb2xvciB0byBiZSBjb21wYXJlZFxcbiAqL1xcblxcbkBmdW5jdGlvbiBtZC1waWNrLWNvbnRyYXN0KCRjb2xvcikge1xcbiAgJGxpZ2h0Q29sb3I6IG1hcC1nZXQobWFwLWdldCgkbWQtY29sb3ItbGV2ZWxzLCBkYXJrKSwgdGV4dC1wcmltYXJ5KTtcXG4gICRsaWdodENvbnRyYXN0OiBtZC1jYWxjdWxhdGUtY29udHJhc3QoJGNvbG9yLCAkbGlnaHRDb2xvcik7XFxuICAkZGFya0NvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJG1kLWNvbG9yLWxldmVscywgbGlnaHQpLCB0ZXh0LXByaW1hcnkpO1xcbiAgJGRhcmtDb250cmFzdDogbWQtY2FsY3VsYXRlLWNvbnRyYXN0KCRjb2xvciwgJGRhcmtDb2xvcik7XFxuXFxuICBAaWYgKCRsaWdodENvbnRyYXN0ID4gJGRhcmtDb250cmFzdCkge1xcbiAgICBAcmV0dXJuIFxcXCJkYXJrXFxcIjtcXG4gIH1cXG5cXG4gIEByZXR1cm4gXFxcImxpZ2h0XFxcIjtcXG59XFxuXCIsXCJAaW1wb3J0ICcuLi9iYXNlL3RoZW1lLnNjc3MnO1xcblxcbi8qKlxcbiAqIE92ZXJyaWRlIGV4dGVuZGluZyB0aGUgZGVmYXVsdCBwYWxldHRlIGdpdmluZyBuZXcgdmFsdWVzLiBJdCB3aWxsIGV4dGVuZFxcbiAqIHRoZSBkZWZhdWx0IHZhbHVlcyBvZiB0aGUgcGFsZXR0ZSBpZiBoYXMgYSBwcm9wZXJ0eSBtaXNzaW5nLlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiBAaW5jbHVkZSBtZC1vdmVycmlkZS1wYWxldHRlICgoXFxuICogICBhY2NlbnQ6IGJsdWUsXFxuICogICB0aGVtZTogXFxcImRhcmtcXFwiXFxuICogKSlcXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHttYXB9ICRwYWxldHRlIOKAlOKAiiBUaGUgbmV3IHBhbGV0dGVcXG4gKi9cXG5cXG5AbWl4aW4gbWQtb3ZlcnJpZGUtcGFsZXR0ZSAoJHBhbGV0dGUpIHtcXG4gICRtZC1kZWZhdWx0LXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtZGVmYXVsdC1wYWxldHRlLCAkcGFsZXR0ZSkgIWdsb2JhbDtcXG59XFxuXFxuXFxuLyoqXFxuICogQ3JlYXRlIGEgbmV3IHRoZW1lIGJhc2VkIG9uIGEgZ2l2ZW4gcGFsZXR0ZS4gSXQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHRcXG4gKiB2YWx1ZXMgb2YgdGhlIHBhbGV0dGUgaWYgaGFzIGEgcHJvcGVydHkgbWlzc2luZy5cXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogQGluY2x1ZGUgbWQtcmVnaXN0ZXItdGhlbWUoXFxcImFsdGVybmF0aXZlXFxcIiwgKFxcbiAqICAgcHJpbWFyeTogIzIxMjEyMSxcXG4gKiAgIGFjY2VudDogI0NEREMzOSxcXG4gKiAgIHRoZW1lOiBkYXJrXFxuICogKSk7XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkbmFtZSDigJTigIogVGhlIHRoZW1lIG5hbWUgdG8gYmUgdXNlZCB3aXRoIHRoZSBWdWUgTWF0ZXJpYWxcXG4gKiBAcGFyYW0ge21hcH0gJHBhbGV0dGUgWyRtZC1kZWZhdWx0LXBhbGV0dGVdIOKAlOKAiiBUaGUgdGhlbWUgcGFsZXR0ZVxcbiAqL1xcblxcbkBtaXhpbiBtZC1yZWdpc3Rlci10aGVtZSAoJG5hbWUsICRwYWxldHRlOiAkbWQtZGVmYXVsdC1wYWxldHRlKSB7XFxuICAkcGFsZXR0ZTogbWFwLW1lcmdlKCRtZC1kZWZhdWx0LXBhbGV0dGUsICRwYWxldHRlKTtcXG4gICR0aGVtZTogbWFwLW1lcmdlKCRtZC10aGVtZXMsIChcXG4gICAgI3skbmFtZX06ICRwYWxldHRlXFxuICApKTtcXG5cXG4gIDpyb290IHtcXG4gICAgQGVhY2ggJHR5cGUsICR2YWx1ZSBpbiAkcGFsZXR0ZSB7XFxuICAgICAgLS1tZC10aGVtZS0jeyRuYW1lfS0jeyR0eXBlfTogJHZhbHVlXFxuICAgIH1cXG4gIH1cXG5cXG4gICRtZC10aGVtZXM6ICR0aGVtZSAhZ2xvYmFsO1xcblxcbiAgQGluY2x1ZGUgbWQtYmFzZS10aGVtZTtcXG59XFxuXFxuXFxuLyoqXFxuICogVGhlbWUgcGllY2VzIG9mIGEgZ2l2ZW4gc2NzcyBjb2RlIGZvciBhbGwgcHJlIHJlZ2lzdGVyZWQgdGhlbWVzLlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtYnV0dG9uIHtcXG4gKiAgIG1pbi13aWR0aDogODhweDtcXG4gKiAgIGhlaWdodDogNDBweDtcXG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xcbiAqXFxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgIGJhY2tncm91bmQ6IG1kLXRoZW1lKHByaW1hcnkpO1xcbiAqICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1wcmltYXJ5KTtcXG4gKiAgIH1cXG4gKlxcbiAqICAgJi5tZC1hY2NlbnQge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgICAgYmFja2dyb3VuZDogbWQtdGhlbWUoYWNjZW50KTtcXG4gKiAgICAgICBjb2xvcjogbWQtdGhlbWUodGV4dC1hY2NlbnQpO1xcbiAqICAgICB9O1xcbiAqICAgfVxcbiAqIH1cXG4gKi9cXG5cXG5AbWl4aW4gbWQtdGhlbWUtY29tcG9uZW50ICgpIHtcXG4gIEBlYWNoICR0aGVtZSwgJHBhbGV0dGUgaW4gJG1kLXRoZW1lcyB7XFxuICAgICRtZC10aGVtZS1wYWxldHRlOiBtYXAtbWVyZ2UoJG1kLXRoZW1lLXBhbGV0dGUsICRwYWxldHRlKSAhZ2xvYmFsO1xcbiAgICAkbWQtY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XFxuXFxuICAgICYubWQtdGhlbWUtI3skdGhlbWV9IHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vKipcXG4gKiBUaGVtZSBwaWVjZXMgb2YgYSBnaXZlbiBzY3NzIGNvZGUgZm9yIGFsbCBwcmUgcmVnaXN0ZXJlZCB0aGVtZXMgYmFzZWQgb24gcGFyZW50LlxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtZm9vIHtcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgcHJpbWFyeSk7XFxuICogICB9XFxuICogfVxcbiAqL1xcblxcbkBtaXhpbiBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUgKCkge1xcbiAgQGVhY2ggJHRoZW1lLCAkcGFsZXR0ZSBpbiAkbWQtdGhlbWVzIHtcXG4gICAgJG1kLXRoZW1lLXBhbGV0dGU6IG1hcC1tZXJnZSgkbWQtdGhlbWUtcGFsZXR0ZSwgJHBhbGV0dGUpICFnbG9iYWw7XFxuICAgICRtZC1jdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcXG5cXG4gICAgLm1kLXRoZW1lLSN7JHRoZW1lfSAmIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHlcXG4gKiAtLS1cXG4gKiBVc2FnZSBleGFtcGxlOlxcbiAqXFxuICogLm1kLWJ1dHRvbiB7XFxuICogICBtaW4td2lkdGg6IDg4cHg7XFxuICogICBoZWlnaHQ6IDQwcHg7XFxuICogICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICogICBib3JkZXItcmFkaXVzOiAycHg7XFxuICogICB0cmFuc2l0aW9uOiAuM3MgZWFzZTtcXG4gKlxcbiAqICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLCBwcmltYXJ5KTtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICogICB9XFxuICpcXG4gKiAgICYubWQtYWNjZW50IHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAqICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIGFjY2VudCk7XFxuICogICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gKiAgICAgfVxcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge251bWJlcn0gJG9wYWNpdHkg4oCU4oCKIFRoZSBvcGFjaXR5IGFtb3VudFxcbiAqL1xcblxcbkBtaXhpbiBtZC10aGVtZS1wcm9wZXJ0eSAoJHByb3BlcnR5LCAkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiLCAkb3BhY2l0eTogXFxcIlxcXCIpIHtcXG4gICR2YWx1ZTogbWQtdGhlbWUoJHR5cGUsICRiYWNrZ3JvdW5kKTtcXG4gICR2YXJpYW50OiBudWxsO1xcblxcbiAgQGlmICRiYWNrZ3JvdW5kICE9IFxcXCJcXFwiIHtcXG4gICAgJHZhcmlhbnQ6IC1vbi0jeyRiYWNrZ3JvdW5kfTtcXG4gIH1cXG5cXG4gIEBpZiAkb3BhY2l0eSAhPSBcXFwiXFxcIiB7XFxuICAgICR2YWx1ZTogcmdiYSgkdmFsdWUsICRvcGFjaXR5KTtcXG4gIH1cXG5cXG4gICN7JHByb3BlcnR5fTogJHZhbHVlO1xcbiAgI3skcHJvcGVydHl9OiB2YXIoLS1tZC10aGVtZS0jeyRtZC1jdXJyZW50LXRoZW1lfS0jeyR0eXBlfSN7JHZhcmlhbnR9LCAkdmFsdWUpO1xcbn1cXG5cXG4vKipcXG4gKiBUaGVtZSBhIHNpbmdsZSBjc3MgcHJvcGVydHkgZGFya2VuaW5nIHRoZSBjb2xvciBieSBhIGNlcnRhaW4gYW1vdW50XFxuICogLS0tXFxuICogVXNhZ2UgZXhhbXBsZTpcXG4gKlxcbiAqIC5tZC1idXR0b24ge1xcbiAqICAgbWluLXdpZHRoOiA4OHB4O1xcbiAqICAgaGVpZ2h0OiA0MHB4O1xcbiAqICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAqICAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAqICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XFxuICpcXG4gKiAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gKiAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktZGFya2VuKGJhY2tncm91bmQsIHByaW1hcnksIGJhY2tncm91bmQsIDEwJSk7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAqICAgfVxcbiAqIH1cXG4gKlxcbiAqIC0tLVxcbiAqIEBhY2Nlc3MgcHVibGljXFxuICogQHBhcmFtIHtzdHJpbmd9ICRwcm9wZXJ0eSDigJTigIogVGhlIGNzcyBwcm9wZXJ0eVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogQSBwYWxldHRlIHR5cGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGJhY2tncm91bmQg4oCU4oCKIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFuYWx5c2UgY29udHJhc3RcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGRhcmtlbiDigJTigIogVGhlIGRhcmtlbiBhbW91bnQgdG8gYXBwbHkgdG8gdGhlIGNvbG9yXFxuICovXFxuXFxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5LWRhcmtlbiAoJHByb3BlcnR5LCAkdHlwZSwgJGJhY2tncm91bmQ6IFxcXCJcXFwiLCAkZGFya2VuOiBcXFwiXFxcIikge1xcbiAgJHZhbHVlOiBtZC10aGVtZSgkdHlwZSwgJGJhY2tncm91bmQpO1xcbiAgJHZhcmlhbnQ6IG51bGw7XFxuXFxuICBAaWYgJGJhY2tncm91bmQgIT0gXFxcIlxcXCIge1xcbiAgICAkdmFyaWFudDogLW9uLSN7JGJhY2tncm91bmR9O1xcbiAgfVxcblxcbiAgQGlmICRkYXJrZW4gIT0gXFxcIlxcXCIge1xcbiAgICAkdmFsdWU6IGRhcmtlbigkdmFsdWUsICRkYXJrZW4pO1xcbiAgfVxcblxcbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XFxuICAjeyRwcm9wZXJ0eX06IHZhcigtLW1kLXRoZW1lLSN7JG1kLWN1cnJlbnQtdGhlbWV9LSN7JHR5cGV9I3skdmFyaWFudH0sICR2YWx1ZSk7XFxufVxcblxcbi8qKlxcbiAqIFRoZW1lIGEgc2luZ2xlIGNzcyBwcm9wZXJ0eSBieVxcbiAqIC0tLVxcbiAqIFVzYWdlIGV4YW1wbGU6XFxuICpcXG4gKiAubWQtYnV0dG9uIHtcXG4gKiAgIG1pbi13aWR0aDogODhweDtcXG4gKiAgIGhlaWdodDogNDBweDtcXG4gKiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gKiAgIGJvcmRlci1yYWRpdXM6IDJweDtcXG4gKiAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xcbiAqXFxuICogICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICogICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLCBncmV5LCAxMDAsIHRvb2xiYXIsIGJhY2tncm91bmQpO1xcbiAqICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gKiAgIH1cXG4gKiB9XFxuICpcXG4gKiAtLS1cXG4gKiBAYWNjZXNzIHB1YmxpY1xcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcHJvcGVydHkg4oCU4oCKIFRoZSBjc3MgcHJvcGVydHlcXG4gKiBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIOKAlOKAiiBBIHZhbGlkIG1hdGVyaWFsIHBhbGV0dGUgY29sb3IgbmFtZVxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkaHVlIOKAlOKAiiBUaGUgaHVlIGFtb3VudCB0byBnZXQgdGhlIGhleCBjb2xvclxcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSDigJTigIogVGhlIHR5cGUgb2YgdmFyaWFibGVcXG4gKiBAcGFyYW0ge3N0cmluZ30gJHZhcmlhbnQg4oCU4oCKIFRoZSB0eXBlIG9mIGNvbnN0cmFzdGVkIHZhcmlhYmxlXFxuICovXFxuXFxuQG1peGluIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZSAoJHByb3BlcnR5LCAkY29sb3IsICRodWUsICR0eXBlLCAkc2Vjb25kYXJ5KSB7XFxuICAkaGV4OiBtZC1nZXQtcGFsZXR0ZS1jb2xvcigkY29sb3IsICRodWUpO1xcbiAgJHZhcmlhbnQ6IG51bGw7XFxuXFxuICBAaWYgJHNlY29uZGFyeSAhPSBcXFwiXFxcIiB7XFxuICAgICR2YXJpYW50OiAtI3skc2Vjb25kYXJ5fTtcXG4gIH1cXG5cXG4gICN7JHByb3BlcnR5fTogJGhleDtcXG4gICN7JHByb3BlcnR5fTogdmFyKC0tbWQtdGhlbWUtI3skbWQtY3VycmVudC10aGVtZX0tI3skdHlwZX0je3ZhcmlhbnR9LCAkaGV4KTtcXG59XFxuXCIsXCJAbWl4aW4gbWQtYmFzZS10aGVtZSAoKSB7XFxuICA6bm90KGlucHV0KTpub3QodGV4dGFyZWEpOjpzZWxlY3Rpb24ge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQtcmVsYXRpdmUoKSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxuXFxuICBhOm5vdCgubWQtYnV0dG9uKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudC1yZWxhdGl2ZSgpIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJjpob3ZlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCwgLjgpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgICAgICY6aG92ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kLCAuOCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICBodG1sIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm1kLWNhcHRpb24sXFxuICAubWQtZGlzcGxheS0xLFxcbiAgLm1kLWRpc3BsYXktMixcXG4gIC5tZC1kaXNwbGF5LTMsXFxuICAubWQtZGlzcGxheS00IHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50LXJlbGF0aXZlKCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm1kLXNjcm9sbGJhciB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIsXFxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZCwgc2Nyb2xsYmFyLWJhY2tncm91bmQsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgfVxcblxcbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQsIHNjcm9sbGJhciwgYmFja2dyb3VuZC12YXJpYW50KTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtbGlzdCB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIC5tZC1hdXRvY29tcGxldGUtaXRlbXMge1xcbiAgICAgIC5tZC1oaWdobGlnaHQtdGV4dC1tYXRjaCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1hdXRvY29tcGxldGUtbG9hZGluZyB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXFxcIlxcXCIsIC41NCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWF1dG9jb21wbGV0ZSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtYXV0b2NvbXBsZXRlLWJveCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJi5tZC1mb2N1c2VkIHtcXG4gICAgICAgIGxhYmVsIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC10b29sYmFyICYge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgXFxcIlxcXCIsIC4xMik7XFxuXFxuICAgICAgICBsYWJlbCxcXG4gICAgICAgIGlucHV0IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtZm9jdXNlZCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgICBsYWJlbCxcXG4gICAgICAgICAgaW5wdXQge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KC13ZWJraXQtdGV4dC1maWxsLWNvbG9yLCB0ZXh0LWhpbnQsIGJhY2tncm91bmQpO1xcbiAgICAgICAgICB9XFxuXFxuICAgICAgICAgIHN2ZyB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1oaW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtYXV0b2NvbXBsZXRlLWJveC1jb250ZW50IHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgJjphZnRlciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWJvdHRvbS1jb2xvciwgZGl2aWRlcik7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCJAbWl4aW4gbWQtYXZhdGFyLWljb24tc3BlYyAoJGNvbG9yKSB7XFxuICAmLm1kLWF2YXRhci1pY29uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGNvbG9yKTtcXG5cXG4gICAgLm1kLWljb24ge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRjb2xvcik7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkY29sb3IpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5tZC1hdmF0YXIge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1hdmF0YXItaWNvbi1zcGVjKGljb24tZGlzYWJsZWQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLWF2YXRhci1pY29uLXNwZWMocHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtYXZhdGFyLWljb24tc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWJvdHRvbS1iYXItc3BlYyAoJHByaW1hcnkpIHtcXG4gICYubWQtdHlwZS1maXhlZCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcblxcbiAgICAubWQtYm90dG9tLWJhci1pdGVtLm1kLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgICAubWQtaWNvbiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgJi5tZC10eXBlLXNoaWZ0IHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnkpO1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xcblxcbiAgICA+IC5tZC1yaXBwbGUge1xcbiAgICAgIC5tZC1yaXBwbGUtd2F2ZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1kYXJrZW4oYmFja2dyb3VuZC1jb2xvciwgJHByaW1hcnksICRwcmltYXJ5LCAxMCUpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtaWNvbiB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sICRwcmltYXJ5KTtcXG5cXG4gICAgICBzdmcge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgaWNvbiwgJHByaW1hcnkpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtYm90dG9tLWJhci1pdGVtIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSk7XFxuXFxuICAgICAgLm1kLWFjdGl2ZSB7XFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtYm90dG9tLWJhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhwcmltYXJ5KTtcXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLWJvdHRvbS1iYXItc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWljb24tb24tYnV0dG9ucyAoJHN0YXRlLCAkdHlwZSkge1xcbiAgLm1kLWljb24tZm9udCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkc3RhdGUsICR0eXBlKTtcXG4gIH1cXG5cXG4gIC5tZC1pY29uLWltYWdlIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgJHN0YXRlLCAkdHlwZSk7XFxuICB9XFxufVxcblxcbi5tZC1idXR0b24ge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnMoYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAmLm1kLXJhaXNlZCB7XFxuICAgICAgJltkaXNhYmxlZF0ge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQtYmFja2dyb3VuZCwgYmFja2dyb3VuZCk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtYWNjZW50IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1mYWIge1xcbiAgICAgICZbZGlzYWJsZWRdIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLWJhY2tncm91bmQsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG5cXG4gICAgICAgICYubWQtcHJpbWFyeSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC1pY29uLW9uLWJ1dHRvbnModGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJltkaXNhYmxlZF0ge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBkaXNhYmxlZCwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtaWNvbi1vbi1idXR0b25zKGljb24tZGlzYWJsZWQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLWNhcmQoJGJhc2UpIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRiYXNlKTtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRiYXNlKTtcXG5cXG4gIC5tZC1jYXJkLWV4cGFuZCAubWQtY2FyZC1hY3Rpb25zIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgJGJhc2UpO1xcbiAgfVxcblxcbiAgLm1kLWNhcmQtaGVhZGVyLFxcbiAgLm1kLWNhcmQtYWN0aW9ucyB7XFxuICAgIC5tZC1idXR0b246bm90KC5tZC1wcmltYXJ5KTpub3QoLm1kLWFjY2VudCkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRiYXNlKTtcXG5cXG4gICAgICAmLm1kLWljb24tYnV0dG9uIHtcXG4gICAgICAgIC5tZC1pY29uIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgJGJhc2UsIC41NCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICA+IC5tZC1jYXJkLWFyZWEge1xcbiAgICAmOmFmdGVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCAkYmFzZSk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWNhcmQge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1jYXJkKGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLWNhcmQocHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLWNhcmQoYWNjZW50KTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jaGVja2JveCB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBhY2NlbnQpO1xcblxcbiAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1yaXBwbGUge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtY2hlY2tlZC5tZC1wcmltYXJ5IHtcXG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtY2hlY2tib3gtY29udGFpbmVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJi5tZC1jaGVja2VkIHtcXG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jaGlwIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0KTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSk7XFxuXFxuICAgIC5tZC1pY29uLm1kLWljb24taW1hZ2Ugc3ZnIHtcXG4gICAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCB0ZXh0LXByaW1hcnkpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWRlbGV0YWJsZSxcXG4gICAgJi5tZC1jbGlja2FibGUge1xcbiAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG5cXG4gICAgICAgIC5tZC1pY29uIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kLCAnJywgLjg3KTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgICAubWQtaWNvbiBzdmcge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sIGJhY2tncm91bmQpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBpY29uLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGljb24sIGRpc2FibGVkKTtcXG5cXG4gICAgICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQpO1xcbiAgICAgICAgfSBAZWxzZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpc2FibGVkLCBkaXNhYmxlZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGVsZXRhYmxlLFxcbiAgICAgICYubWQtY2xpY2thYmxlIHtcXG4gICAgICAgICY6bm90KC5tZC1kaXNhYmxlZCk6aG92ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaWNvbik7XFxuXFxuICAgICAgICAgIC5tZC1pbnB1dC1hY3Rpb24ge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQsICcnLCAuODcpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuXFxuICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgZGlzYWJsZWQpO1xcblxcbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCk7XFxuICAgICAgICB9IEBlbHNlIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGlzYWJsZWQsIGRpc2FibGVkKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1kZWxldGFibGUsXFxuICAgICAgJi5tZC1jbGlja2FibGUge1xcbiAgICAgICAgJjpub3QoLm1kLWRpc2FibGVkKTpob3ZlciB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGljb24pO1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBpY29uKTtcXG5cXG4gICAgICAgICAgLm1kLWlucHV0LWFjdGlvbiB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCwgJycsIC44Nyk7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgaGlnaGxpZ2h0LCAnJywgLjEpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLm1kLWNoaXBzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgIC5tZC1jbGVhciAge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMik7XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAubWQtY2xlYXIgIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjIpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1jb250ZW50IHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLWFwcCAmIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItbGVmdC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtZGF0ZXBpY2tlci1kaWFsb2cge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWhlYWRlciB7XFxuICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICB9IEBlbHNlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtcHJpbWFyeSwgJycsIC4wNik7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItYm9keS1oZWFkZXIge1xcbiAgICAgICY6YWZ0ZXIsXFxuICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWJvZHktZm9vdGVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtZGF0ZXBpY2tlci13ZWVrIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLWRpc2FibGVkIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgZGlzYWJsZWQsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLXRvZGF5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbixcXG4gICAgLm1kLWRhdGVwaWNrZXItbW9udGgtYnV0dG9uLFxcbiAgICAubWQtZGF0ZXBpY2tlci15ZWFyLWJ1dHRvbiB7XFxuICAgICAgJjpob3ZlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLWRhdGVwaWNrZXItZGF5LWJ1dHRvbiB7XFxuICAgICAgJi5tZC1kYXRlcGlja2VyLXNlbGVjdGVkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLW1vbnRoLWJ1dHRvbixcXG4gICAgLm1kLWRhdGVwaWNrZXIteWVhci1idXR0b24ge1xcbiAgICAgICYubWQtZGF0ZXBpY2tlci1zZWxlY3RlZCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1kYXRlcGlja2VyLXllYXItc2VsZWN0b3Ige1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1ib3R0b20tY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLWRyYXdlciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQpO1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgJi5tZC1wZXJzaXN0ZW50LW1pbmkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1yaWdodC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCJAbWl4aW4gbWQtZW1wdHktc3RhdGUtc3BlYyAoJGNvbG9yKSB7XFxuICAubWQtZW1wdHktc3RhdGUtaWNvbiB7XFxuICAgICYubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsICRjb2xvciwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaWNvbi1mb250IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJGNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4ubWQtZW1wdHktc3RhdGUge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKGRpc2FibGVkKTtcXG5cXG4gICAgJi5tZC1yb3VuZGVkIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXNhYmxlZCwgXFxcIlxcXCIsIC4wNik7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC1lbXB0eS1zdGF0ZS1zcGVjKGFjY2VudCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtZmllbGQge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaWYgbWQtZ2V0LXRoZW1lLW1vZGUoKSA9PSBsaWdodCB7XFxuICAgICAgJjphZnRlciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgfVxcblxcbiAgICAgICY6YmVmb3JlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHByaW1hcnkpO1xcbiAgICAgIH1cXG5cXG4gICAgICAubWQtaGVscGVyLXRleHQsXFxuICAgICAgLm1kLWNvdW50LFxcbiAgICAgIGxhYmVsIHtcXG4gICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC41NCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZm9jdXNlZCxcXG4gICAgICAmLm1kLWhhcy12YWx1ZSB7XFxuICAgICAgICAubWQtaW5wdXQsXFxuICAgICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgjMDAwLCAuODcpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmOmJlZm9yZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgcHJpbWFyeSk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGlzYWJsZWQge1xcbiAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgjMDAwLCAuMzgpIDAlLCByZ2JhKCMwMDAsIC4zOCkgMzMlLCB0cmFuc3BhcmVudCAwJSk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICBsYWJlbCxcXG4gICAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCMwMDAsIC40Mik7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAmOmFmdGVyIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOmJlZm9yZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLWhlbHBlci10ZXh0LFxcbiAgICAgIC5tZC1jb3VudCxcXG4gICAgICBsYWJlbCB7XFxuICAgICAgICBjb2xvcjogcmdiYSgjZmZmLCAuNyk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICAgICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC43KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1mb2N1c2VkLFxcbiAgICAgICYubWQtaGFzLXZhbHVlIHtcXG4gICAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAgIC5tZC10ZXh0YXJlYSB7XFxuICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZmZmO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIHByaW1hcnkpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoI2ZmZiwgLjcpIDAlLCByZ2JhKCNmZmYsIC43KSAzMyUsIHRyYW5zcGFyZW50IDAlKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIGxhYmVsLFxcbiAgICAgICAgLm1kLWlucHV0LFxcbiAgICAgICAgLm1kLXRleHRhcmVhIHtcXG4gICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjUpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICA+IC5tZC1pY29uIHtcXG4gICAgICAmOmFmdGVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtdmFyaWFudCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaW52YWxpZCB7XFxuICAgICAgJjphZnRlciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgcmVkLCBBNDAwLCBmaWVsZCwgZXJyb3IpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWhhcy10ZXh0YXJlYTpub3QoLm1kLWF1dG9ncm93KSB7XFxuICAgICAgICAmOmJlZm9yZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShib3JkZXItY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgbGFiZWwge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1lcnJvciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLWRhdGUtaWNvbixcXG4gICAgICAubWQtZGF0ZS1pY29uIHN2ZyB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgZmllbGQsIGVycm9yKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShmaWxsLCByZWQsIEE0MDAsIGZpZWxkLCBlcnJvcik7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtZm9jdXNlZCxcXG4gICAgJi5tZC1oaWdobGlnaHQge1xcbiAgICAgIC5tZC1pbnB1dCxcXG4gICAgICAubWQtdGV4dGFyZWEge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG5cXG4gICAgICA+IC5tZC1pY29uIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWZvY3VzZWQge1xcbiAgICAgIGxhYmVsIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIubWQtaWNvbiB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtaWNvbi1pbWFnZSB7XFxuICAgICAgc3ZnIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGljb24sIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIGFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYubWQtaWNvbi1mb250IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgaWNvbiwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLWxpc3Qge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBiYWNrZ3JvdW5kKTtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICYubWQtZG91YmxlLWxpbmUgLm1kLWxpc3QtaXRlbS10ZXh0IDpudGgtY2hpbGQoMikge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LWFjY2VudCwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC10cmlwbGUtbGluZSAubWQtbGlzdC1pdGVtLXRleHQgOm50aC1jaGlsZCgzKSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtaGlnaGxpZ2h0IC5tZC1saXN0LWl0ZW0tY29udGFpbmVyIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtbGlzdC1pdGVtLWNvbnRhaW5lciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgJjpub3QoLm1kLWxpc3QtaXRlbS1kZWZhdWx0KTpub3QoW2Rpc2FibGVkXSk6aG92ZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgW2Rpc2FibGVkXSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIGRpc2FibGVkLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtc2VsZWN0ZWQsXFxuICAgIC5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUge1xcbiAgICAgIC5tZC1saXN0LWl0ZW0tY29udGVudCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC1saXN0LWl0ZW0tZXhwYW5kLm1kLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC1tZW51LWl0ZW0tc3BlYyAoJGNvbG9yKSB7XFxuICAubWQtbGlzdC1pdGVtLWxpbmssXFxuICAubWQtbGlzdC1pdGVtLXJvdXRlcixcXG4gIC5tZC1saXN0LWl0ZW0tYnV0dG9uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRjb2xvciwgYmFja2dyb3VuZCk7XFxuICB9XFxufVxcblxcbi5tZC1tZW51LWl0ZW0ge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLW1lbnUtaXRlbS1zcGVjKHByaW1hcnkpO1xcbiAgICB9XFxuXFxuICAgICYubWQtYWNjZW50IHtcXG4gICAgICBAaW5jbHVkZSBtZC1tZW51LWl0ZW0tc3BlYyhhY2NlbnQpO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQG1peGluIG1kLXByb2dyZXNzLWJhci1pbmRldGVybWluYXRlICgkaHVlKSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlLCBudWxsLCAuMzgpO1xcblxcbiAgLm1kLXByb2dyZXNzLWJhci10cmFjayxcXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgICY6YWZ0ZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbkBtaXhpbiBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUgKCRodWUpIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUsIG51bGwsIC4zOCk7XFxuXFxuICAubWQtcHJvZ3Jlc3MtYmFyLWZpbGwge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaHVlKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXByb2dyZXNzLWJhci1idWZmZXIgKCRodWUpIHtcXG4gIC5tZC1wcm9ncmVzcy1iYXItZmlsbCB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUpO1xcbiAgfVxcblxcbiAgLm1kLXByb2dyZXNzLWJhci10cmFjayB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRodWUsIG51bGwsIC4zOCk7XFxuICB9XFxuXFxuICAubWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci1jb2xvciwgJGh1ZSwgbnVsbCwgLjM4KTtcXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXByb2dyZXNzLXNwaW5uZXItc3BlYyAoJGh1ZSkge1xcbiAgLm1kLXByb2dyZXNzLXNwaW5uZXItY2lyY2xlIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoc3Ryb2tlLCAkaHVlKTtcXG4gIH1cXG59XFxuXFxuLm1kLXByb2dyZXNzLWJhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtaW5kZXRlcm1pbmF0ZSxcXG4gICAgJi5tZC1xdWVyeSB7XFxuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWluZGV0ZXJtaW5hdGUoYWNjZW50KVxcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWRldGVybWluYXRlIHtcXG4gICAgICBAaW5jbHVkZSBtZC1wcm9ncmVzcy1iYXItZGV0ZXJtaW5hdGUocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWRldGVybWluYXRlKGFjY2VudClcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1idWZmZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXByb2dyZXNzLWJhci1idWZmZXIocHJpbWFyeSk7XFxuXFxuICAgICAgJi5tZC1hY2NlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlcihhY2NlbnQpXFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcbi5tZC1wcm9ncmVzcy1zcGlubmVyIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKHByaW1hcnkpO1xcblxcbiAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgQGluY2x1ZGUgbWQtcHJvZ3Jlc3Mtc3Bpbm5lci1zcGVjKGFjY2VudClcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1yYWRpbyB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XFxuXFxuICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgYWNjZW50KTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5tZC1jaGVja2VkLm1kLXByaW1hcnkge1xcbiAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG5cXG4gICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtcmFkaW8tY29udGFpbmVyIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuNTQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjI2KTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtY2hlY2tlZCB7XFxuICAgICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcblxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMjYpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLm1kLWRpc2FibGVkIHtcXG4gICAgICAgIC5tZC1yYWRpby1jb250YWluZXIge1xcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJi5tZC1jaGVja2VkIHtcXG4gICAgICAgICAgLm1kLXJhZGlvLWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG5cXG4gICAgICAgICAgICAmOmFmdGVyIHtcXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjMpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zbmFja2JhciB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xcbiAgICB9IEBlbHNlIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLm1kLXN0ZXBwZXJzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcblxcbiAgICAubWQtc3RlcHBlci1pY29uLFxcbiAgICAubWQtc3RlcHBlci1udW1iZXIsXFxuICAgIC5tZC1zdGVwcGVyIHtcXG4gICAgICAmOmFmdGVyLFxcbiAgICAgICY6YmVmb3JlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtc3RlcHBlci1udW1iZXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG5cXG4gICAgICBzdmcge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgdGV4dC1oaW50KTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLm1kLXN0ZXBwZXItaGVhZGVyIHtcXG4gICAgICAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtaGludCwgYmFja2dyb3VuZCk7XFxuXFxuICAgICAgICAmOmFmdGVyLFxcbiAgICAgICAgJjpiZWZvcmUge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1hY3RpdmUsXFxuICAgICAgJi5tZC1kb25lIHtcXG4gICAgICAgIC5tZC1idXR0b24tY29udGVudCB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLXN0ZXBwZXItbnVtYmVyIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAgICAgICBzdmcge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1lcnJvciB7XFxuICAgICAgICAubWQtYnV0dG9uLWNvbnRlbnQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoY29sb3IsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLWljb24gc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGNvbG9yLCByZWQsIEE0MDAsIHN0ZXBwZXIsIGVycm9yKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGZpbGwsIHJlZCwgQTQwMCwgc3RlcHBlciwgZXJyb3IpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zdWJoZWFkZXIge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1hY2NlbnQsIGJhY2tncm91bmQpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC1zd2l0Y2gge1xcbiAgQGluY2x1ZGUgbWQtdGhlbWUtY29tcG9uZW50KCkge1xcbiAgICAmLm1kLWNoZWNrZWQge1xcbiAgICAgIC5tZC1zd2l0Y2gtY29udGFpbmVyIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgbnVsbCwgLjM4KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIH1cXG5cXG4gICAgICAubWQtcmlwcGxlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCBhY2NlbnQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLm1kLWNoZWNrZWQubWQtcHJpbWFyeSB7XFxuICAgICAgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgcHJpbWFyeSwgbnVsbCwgLjM4KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgcHJpbWFyeSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiBtZC1nZXQtdGhlbWUtbW9kZSgpID09IGxpZ2h0IHtcXG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4zOCk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tZC1zd2l0Y2gtdGh1bWIge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDEwMCwgc3dpdGNoLCB0aHVtYik7XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtZGlzYWJsZWQge1xcbiAgICAgICAgLm1kLXN3aXRjaC1jb250YWluZXIge1xcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4xMik7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtc3dpdGNoLXRodW1iIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHktYnktaHVlKGJhY2tncm91bmQtY29sb3IsIGdyZXksIDQwMCwgc3dpdGNoLCB0aHVtYik7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4zKTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgNDAwLCBzd2l0Y2gsIHRodW1iKTtcXG4gICAgICB9XFxuXFxuICAgICAgJi5tZC1kaXNhYmxlZCB7XFxuICAgICAgICAubWQtc3dpdGNoLWNvbnRhaW5lciB7XFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjEpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm1kLXN3aXRjaC10aHVtYiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA4MDAsIHN3aXRjaCwgdGh1bWIpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi5tZC10YWJsZSB7XFxuICBAaW5jbHVkZSBtZC10aGVtZS1jb21wb25lbnQoKSB7XFxuICAgIC5tZC10YWJsZS1jb250ZW50LFxcbiAgICAubWQtdGFibGUtYWx0ZXJuYXRlLWhlYWRlciB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLXRhYmxlLWFsdGVybmF0ZS1oZWFkZXIgLm1kLXRhYmxlLXRvb2xiYXIge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsIGFjY2VudCwgbnVsbCwgLjIpO1xcbiAgICB9XFxuXFxuICAgIC5tZC10YWJsZS1yb3cge1xcbiAgICAgICY6aG92ZXI6bm90KC5tZC1oZWFkZXItcm93KSAubWQtdGFibGUtY2VsbCB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBoaWdobGlnaHQsIGJhY2tncm91bmQsIC4wOCk7XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtc2VsZWN0ZWQsXFxuICAgICAgJi5tZC1zZWxlY3RlZC1zaW5nbGUge1xcbiAgICAgICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgMTAwLCByb3csIGJhY2tncm91bmQpO1xcbiAgICAgICAgfSBAZWxzZSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCA3MDAsIHJvdywgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgcHJpbWFyeSk7XFxuXFxuICAgICAgICAgIC5tZC1yaXBwbGUge1xcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgICAgICB9XFxuXFxuICAgICAgICAgIC5tZC1jaGVja2JveC1jb250YWluZXIge1xcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xcblxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYubWQtYWNjZW50IHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYWNjZW50KTtcXG5cXG4gICAgICAgICAgLm1kLXJpcHBsZSB7XFxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XFxuICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgLm1kLWNoZWNrYm94LWNvbnRhaW5lciB7XFxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XFxuXFxuICAgICAgICAgICAgJjphZnRlciB7XFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItY29sb3IsIGFjY2VudCk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIHRkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJvcmRlci10b3AtY29sb3IsIGRpdmlkZXIsIGJhY2tncm91bmQpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubWQtdGFibGUtaGVhZCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtYWNjZW50LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICAubWQtdGFibGUtZml4ZWQtaGVhZGVyLWFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYm9yZGVyLWJvdHRvbS1jb2xvciwgZGl2aWRlciwgYmFja2dyb3VuZCk7XFxuICAgIH1cXG5cXG4gICAgLm1kLXNvcnRhYmxlIHtcXG4gICAgICAmOmhvdmVyLFxcbiAgICAgICYubWQtc29ydGVkIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcblxcbiAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGZpbGwsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5tZC10YWJsZS1wYWdpbmF0aW9uIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShib3JkZXItdG9wLWNvbG9yLCBkaXZpZGVyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC10YWJzLXNwZWMgKCRwcmltYXJ5LCAkaW5kaWNhdG9yLCAkdGV4dCkge1xcbiAgLm1kLXRhYnMtbmF2aWdhdGlvbiB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGJhY2tncm91bmQtY29sb3IsICRwcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG5cXG4gICAgLm1kLWJ1dHRvbiB7XFxuICAgICAgQGlmICR0ZXh0ID09IHRleHQtcHJpbWFyeSB7XFxuICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5LCAuNyk7XFxuXFxuICAgICAgICAmW2Rpc2FibGVkXSB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC4zOCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnksIC43KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnksIC43KTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC43KTtcXG5cXG4gICAgICAgICZbZGlzYWJsZWRdIHtcXG4gICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgJHByaW1hcnksIC4zOCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubWQtaWNvbiB7XFxuICAgICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksICRwcmltYXJ5LCAuNyk7XFxuXFxuICAgICAgICAgIHN2ZyB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoZmlsbCwgdGV4dC1wcmltYXJ5LCAkcHJpbWFyeSwgLjcpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgICYubWQtYWN0aXZlIHtcXG4gICAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkdGV4dCwgJHByaW1hcnkpO1xcblxcbiAgICAgICAgLm1kLWljb24ge1xcbiAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHRleHQsICRwcmltYXJ5KTtcXG5cXG4gICAgICAgICAgc3ZnIHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkdGV4dCwgJHByaW1hcnkpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAubWQtdGFicy1pbmRpY2F0b3Ige1xcbiAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCAkaW5kaWNhdG9yLCAkcHJpbWFyeSk7XFxuICB9XFxufVxcblxcbi5tZC10YWJzIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGFicy1zcGVjKGJhY2tncm91bmQsIHByaW1hcnksIHByaW1hcnkpO1xcblxcbiAgICAmLm1kLXByaW1hcnkge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhwcmltYXJ5LCB0ZXh0LXByaW1hcnksIHRleHQtcHJpbWFyeSk7XFxuICAgIH1cXG5cXG4gICAgJi5tZC1hY2NlbnQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRhYnMtc3BlYyhhY2NlbnQsIHRleHQtcHJpbWFyeSwgdGV4dC1wcmltYXJ5KTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBtaXhpbiBtZC10b29sYmFyLWljb24oJHByaW1hcnksICRzZWNvbmRhcnkpIHtcXG4gIC5tZC1pY29uIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcXG5cXG4gICAgc3ZnIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShmaWxsLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuQG1peGluIG1kLXRvb2xiYXItYnV0dG9uKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XFxuICAubWQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKSB7XFxuICAgICY6bm90KC5tZC1yYWlzZWQpIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgJHByaW1hcnksICRzZWNvbmRhcnkpO1xcbiAgICB9XFxuICB9XFxufVxcblxcbkBtaXhpbiBtZC10b29sYmFyLXRpdGxlKCRwcmltYXJ5LCAkc2Vjb25kYXJ5KSB7XFxuICAubWQtdGl0bGUsXFxuICAubWQtZGlzcGxheS0xLFxcbiAgLm1kLWRpc3BsYXktMiB7XFxuICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCAkcHJpbWFyeSwgJHNlY29uZGFyeSk7XFxuICB9XFxufVxcblxcbi5tZC10b29sYmFyIHtcXG4gIEBpbmNsdWRlIG1kLXRoZW1lLWNvbXBvbmVudCgpIHtcXG4gICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoY29sb3IsIHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG5cXG4gICAgQGlmIG1kLWdldC10aGVtZS1tb2RlKCkgPT0gbGlnaHQge1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5LWJ5LWh1ZShiYWNrZ3JvdW5kLWNvbG9yLCBncmV5LCAxMDAsIHRvb2xiYXIsIGJhY2tncm91bmQpO1xcbiAgICB9IEBlbHNlIHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eS1ieS1odWUoYmFja2dyb3VuZC1jb2xvciwgZ3JleSwgOTAwLCB0b29sYmFyLCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcblxcbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kLXZhcmlhbnQpO1xcbiAgICBAaW5jbHVkZSBtZC10b29sYmFyLXRpdGxlKHRleHQtcHJpbWFyeSwgYmFja2dyb3VuZC12YXJpYW50KTtcXG5cXG4gICAgJi5tZC1wcmltYXJ5IHtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yLCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWljb24odGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgICBAaW5jbHVkZSBtZC10b29sYmFyLWJ1dHRvbih0ZXh0LXByaW1hcnksIHByaW1hcnkpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBwcmltYXJ5KTtcXG4gICAgfVxcblxcbiAgICAmLm1kLWFjY2VudCB7XFxuICAgICAgQGluY2x1ZGUgbWQtdGhlbWUtcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvciwgYWNjZW50KTtcXG4gICAgICBAaW5jbHVkZSBtZC10aGVtZS1wcm9wZXJ0eShjb2xvciwgdGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItaWNvbih0ZXh0LXByaW1hcnksIGFjY2VudCk7XFxuICAgICAgQGluY2x1ZGUgbWQtdG9vbGJhci1idXR0b24odGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBhY2NlbnQpO1xcbiAgICB9XFxuXFxuICAgICYubWQtdHJhbnNwYXJlbnQge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIEBpbmNsdWRlIG1kLXRoZW1lLXByb3BlcnR5KGNvbG9yLCB0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItaWNvbih0ZXh0LXByaW1hcnksIGJhY2tncm91bmQpO1xcbiAgICAgIEBpbmNsdWRlIG1kLXRvb2xiYXItdGl0bGUodGV4dC1wcmltYXJ5LCBiYWNrZ3JvdW5kKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0xIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2xpYi9sb2FkZXIuanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MSEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=1!./src/App.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAqEA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQXFFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFx0XFx0XFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW4oKXtcXG5cXHRcXHRcXHRcXHRjb25zb2xlLmxvZyhcXFwidGVzdFxcXCIpO1xcblxcdFxcdFxcdH0sXFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC50aXRsZSB7XFxuXFx0XFx0Zm9udC1zaXplOiA1ZW07XFxuXFx0fVxcblxcdC5sb2dpbmJveCB7XFxuXFx0XFx0bWFyZ2luOiA1JTtcXG5cXHRcXHRtYXJnaW4tdG9wOiA3JTtcXG5cXHRcXHRwYWRkaW5nOiA1JTtcXG5cXHR9XFxuXFx0LmRlc2Mge1xcblxcdFxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG5cXHR9XFxuPC9zdHlsZT5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -803,7 +782,7 @@ eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 featu /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -815,27 +794,6 @@ eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement /***/ }), -/***/ "./node_modules/vue-material/dist/theme/default.css": -/***/ (function(module, exports, __webpack_require__) { - -eval("// style-loader: Adds some css to the DOM by adding a - - \ No newline at end of file diff --git a/src/components/LogIn.vue b/src/components/LogIn.vue index 78e4eb60..b7775c30 100644 --- a/src/components/LogIn.vue +++ b/src/components/LogIn.vue @@ -1,47 +1,4 @@ \\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQXFFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFx0XFx0XFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW4oKXtcXG5cXHRcXHRcXHRcXHRjb25zb2xlLmxvZyhcXFwidGVzdFxcXCIpO1xcblxcdFxcdFxcdH0sXFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC50aXRsZSB7XFxuXFx0XFx0Zm9udC1zaXplOiA1ZW07XFxuXFx0fVxcblxcdC5sb2dpbmJveCB7XFxuXFx0XFx0bWFyZ2luOiA1JTtcXG5cXHRcXHRtYXJnaW4tdG9wOiA3JTtcXG5cXHRcXHRwYWRkaW5nOiA1JTtcXG5cXHR9XFxuXFx0LmRlc2Mge1xcblxcdFxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG5cXHR9XFxuPC9zdHlsZT5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.intro[data-v-51b0eb09] {\\n\\tpadding: 10em;\\n}\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 20em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAsCA;CACA,cAAA;CACA;AACA;CACA,gBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi5pbnRyb1tkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRwYWRkaW5nOiAxMGVtO1xcbn1cXG4udGl0bGVbZGF0YS12LTUxYjBlYjA5XSB7XFxuXFx0Zm9udC1zaXplOiAyMGVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBc0NBO0NBQ0EsY0FBQTtDQUNBO0FBQ0E7Q0FDQSxnQkFBQTtDQUNBXCIsXCJmaWxlXCI6XCJMb2dJbi52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWNvbnRhaW5lciBmbHVpZD5cXG5cXHRcXHQ8di1sYXlvdXQgcm93IHdyYXA+XFxuXFx0XFx0ICBcXHQ8di1mbGV4IGxnNz5cXG5cXHRcXHQgIFxcdFxcdDx2LWxheW91dCBqdXN0aWZ5LXNwYWNlLWFyb3VuZCByb3cgY2xhc3M9XFxcImJveCBpbnRyb1xcXCI+XFxuXFx0XFx0XFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcInRpdGxlXFxcIj5lQXVjdGlvbjwvc3Bhbj5cXG5cXHRcXHQgIFxcdFxcdDwvdi1sYXlvdXQ+XFxuXFx0XFx0ICBcXHQ8L3YtZmxleD5cXG5cXHRcXHQgIFxcdDx2LWZsZXggbGc1PlxcblxcdFxcdCAgXFx0IFxcdFxcblxcdFxcdCAgXFx0PC92LWZsZXg+XFxuXFx0XFx0PC92LWxheW91dD5cXG5cXHQ8L3YtY29udGFpbmVyPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW4oKXtcXG5cXHRcXHRcXHRcXHRjb25zb2xlLmxvZyhcXFwidGVzdFxcXCIpO1xcblxcdFxcdFxcdH0sXFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5pbnRybyB7XFxuXFx0XFx0cGFkZGluZzogMTBlbTtcXG5cXHR9XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDIwZW07XFxuXFx0fVxcbjwvc3R5bGU+XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nhtml {\\n height: 100%;\\n}\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 1px solid black;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.css\"],\"names\":[],\"mappings\":\";AAEA;EACE,aAAa;CACd;AAED;CACC,UAAU;CACV;AAED;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons\\\";\\n\\nhtml {\\n height: 100%;\\n}\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 1px solid black;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsNTAwLDcwMCw0MDBpdGFsaWN8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuaHRtbCB7XFxuICBoZWlnaHQ6IDEwMCU7XFxufVxcbmJvZHkge1xcblxcdG1hcmdpbjogMDtcXG59XFxuI2FwcCB7XFxuXFx0Zm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiO1xcbn1cXG4uYm94IHtcXG5cXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBRUE7RUFDRSxhQUFhO0NBQ2Q7QUFFRDtDQUNDLFVBQVU7Q0FDVjtBQUVEO0NBQ0Msc0JBQXNCO0NBQ3RCO0FBRUQ7Q0FDQyx3QkFBd0I7Q0FDeEJcIixcImZpbGVcIjpcIkFwcC52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiQGltcG9ydCBcXFwiLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsNTAwLDcwMCw0MDBpdGFsaWN8TWF0ZXJpYWwrSWNvbnNcXFwiO1xcblxcbmh0bWwge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbn1cXG5cXG5ib2R5IHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcbiNhcHAge1xcblxcdGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIjtcXG59XFxuXFxuLmJveCB7XFxuXFx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 1px solid black;\\n}\\n.columns {\\n\\tmargin: 0;\\n}\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.css\"],\"names\":[],\"mappings\":\";AAEA;CACC,UAAU;CACV;AAED;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB;AAED;CACC,UAAU;CACV;AAED;CACC,UAAU;CACV,WAAW;CACX\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons\\\";\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 1px solid black;\\n}\\n\\n.columns {\\n\\tmargin: 0;\\n}\\n\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYm9keSB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4jYXBwIHtcXG5cXHRmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCI7XFxufVxcbi5ib3gge1xcblxcdGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xcbn1cXG4uY29sdW1ucyB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4uY29udGFpbmVyIHtcXG5cXHRtYXJnaW46IDA7XFxuXFx0cGFkZGluZzogMDtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBRUE7Q0FDQyxVQUFVO0NBQ1Y7QUFFRDtDQUNDLHNCQUFzQjtDQUN0QjtBQUVEO0NBQ0Msd0JBQXdCO0NBQ3hCO0FBRUQ7Q0FDQyxVQUFVO0NBQ1Y7QUFFRDtDQUNDLFVBQVU7Q0FDVixXQUFXO0NBQ1hcIixcImZpbGVcIjpcIkFwcC52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiQGltcG9ydCBcXFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnNcXFwiO1xcblxcbmJvZHkge1xcblxcdG1hcmdpbjogMDtcXG59XFxuXFxuI2FwcCB7XFxuXFx0Zm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiO1xcbn1cXG5cXG4uYm94IHtcXG5cXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG59XFxuXFxuLmNvbHVtbnMge1xcblxcdG1hcmdpbjogMDtcXG59XFxuXFxuLmNvbnRhaW5lciB7XFxuXFx0bWFyZ2luOiAwO1xcblxcdHBhZGRpbmc6IDA7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); /***/ }), @@ -782,7 +789,7 @@ eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 featu /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg7: \"\" } },\n [\n _c(\n \"v-layout\",\n {\n staticClass: \"box intro\",\n attrs: { \"justify-space-around\": \"\", row: \"\" }\n },\n [_c(\"span\", { staticClass: \"title\" }, [_vm._v(\"eAuction\")])]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"v-flex\", { attrs: { lg5: \"\" } })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IGF0dHJzOiB7IGxnNzogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwidi1sYXlvdXRcIixcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJib3ggaW50cm9cIixcbiAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IFwianVzdGlmeS1zcGFjZS1hcm91bmRcIjogXCJcIiwgcm93OiBcIlwiIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFtfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJ0aXRsZVwiIH0sIFtfdm0uX3YoXCJlQXVjdGlvblwiKV0pXVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgICksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcInYtZmxleFwiLCB7IGF0dHJzOiB7IGxnNTogXCJcIiB9IH0pXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgIClcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -838,6 +845,20 @@ eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true } /***/ }), +/***/ "./node_modules/vuetify/dist/vuetify.js": +/***/ (function(module, exports, __webpack_require__) { + +eval("(function webpackUniversalModuleDefinition(root, factory) {\n\tif(true)\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Vuetify\"] = factory();\n\telse\n\t\troot[\"Vuetify\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 72);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'colorable',\n\n props: {\n color: String\n },\n\n data: function data() {\n return {\n defaultColor: null\n };\n },\n\n\n computed: {\n computedColor: function computedColor() {\n return this.color || this.defaultColor;\n }\n },\n\n methods: {\n addBackgroundColorClassChecks: function addBackgroundColorClassChecks() {\n var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.computedColor;\n\n var classes = Object.assign({}, obj);\n\n if (color) {\n classes[color] = true;\n }\n\n return classes;\n },\n addTextColorClassChecks: function addTextColorClassChecks() {\n var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.computedColor;\n\n var classes = Object.assign({}, obj);\n\n if (color) {\n var _color$trim$split = color.trim().split(' '),\n _color$trim$split2 = _slicedToArray(_color$trim$split, 2),\n colorName = _color$trim$split2[0],\n colorModifier = _color$trim$split2[1];\n\n classes[colorName + '--text'] = true;\n colorModifier && (classes['text--' + colorModifier] = true);\n }\n\n return classes;\n }\n }\n});\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'themeable',\n\n props: {\n dark: Boolean,\n light: Boolean\n },\n\n computed: {\n themeClasses: function themeClasses() {\n return {\n 'theme--light': this.light,\n 'theme--dark': this.dark\n };\n }\n }\n});\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"e\"] = createSimpleFunctional;\n/* harmony export (immutable) */ __webpack_exports__[\"f\"] = createSimpleTransition;\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = createJavaScriptTransition;\n/* unused harmony export directiveConfig */\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = addOnceEventListener;\n/* harmony export (immutable) */ __webpack_exports__[\"i\"] = getObjectValueByPath;\n/* harmony export (immutable) */ __webpack_exports__[\"d\"] = createRange;\n/* harmony export (immutable) */ __webpack_exports__[\"j\"] = getZIndex;\n/* harmony export (immutable) */ __webpack_exports__[\"g\"] = escapeHTML;\n/* harmony export (immutable) */ __webpack_exports__[\"h\"] = filterObjectOnKeys;\n/* unused harmony export filterChildren */\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = convertToUnit;\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction createSimpleFunctional(c) {\n var el = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'div';\n var name = arguments[2];\n\n name = name || c.replace(/__/g, '-');\n\n return {\n name: 'v-' + name,\n functional: true,\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children;\n\n data.staticClass = (c + ' ' + (data.staticClass || '')).trim();\n\n return h(el, data, children);\n }\n };\n}\n\nfunction createSimpleTransition(name) {\n var origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top center 0';\n var mode = arguments[2];\n\n return {\n name: name,\n\n functional: true,\n\n props: {\n origin: {\n type: String,\n default: origin\n }\n },\n\n render: function render(h, context) {\n context.data = context.data || {};\n context.data.props = { name: name };\n context.data.on = context.data.on || {};\n if (!Object.isExtensible(context.data.on)) {\n context.data.on = _extends({}, context.data.on);\n }\n\n if (mode) context.data.props.mode = mode;\n\n context.data.on.beforeEnter = function (el) {\n el.style.transformOrigin = context.props.origin;\n el.style.webkitTransformOrigin = context.props.origin;\n };\n\n return h('transition', context.data, context.children);\n }\n };\n}\n\nfunction createJavaScriptTransition(name, functions) {\n var css = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'in-out';\n\n return {\n name: name,\n\n functional: true,\n\n props: {\n css: {\n type: Boolean,\n default: css\n },\n mode: {\n type: String,\n default: mode\n }\n },\n\n render: function render(h, context) {\n var data = {\n props: _extends({}, context.props, {\n name: name\n }),\n on: functions\n };\n\n return h('transition', data, context.children);\n }\n };\n}\n\nfunction directiveConfig(binding) {\n var defaults = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.assign({}, defaults, binding.modifiers, { value: binding.arg }, binding.value || {});\n}\n\nfunction addOnceEventListener(el, event, cb) {\n var once = function once() {\n cb();\n el.removeEventListener(event, once, false);\n };\n\n el.addEventListener(event, once, false);\n}\n\nfunction getObjectValueByPath(obj, path) {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (!path || path.constructor !== String) return;\n path = path.replace(/\\[(\\w+)\\]/g, '.$1'); // convert indexes to properties\n path = path.replace(/^\\./, ''); // strip a leading dot\n var a = path.split('.');\n for (var i = 0, n = a.length; i < n; ++i) {\n var k = a[i];\n if (obj instanceof Object && k in obj) {\n obj = obj[k];\n } else {\n return;\n }\n }\n return obj;\n}\n\nfunction createRange(length) {\n return [].concat(_toConsumableArray(Array.from({ length: length }, function (v, k) {\n return k;\n })));\n}\n\nfunction getZIndex(el) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0;\n\n var index = window.getComputedStyle(el).getPropertyValue('z-index');\n\n if (isNaN(index)) return getZIndex(el.parentNode);\n return index;\n}\n\nvar tagsToReplace = {\n '&': '&',\n '<': '<',\n '>': '>'\n};\n\nfunction escapeHTML(str) {\n return str.replace(/[&<>]/g, function (tag) {\n return tagsToReplace[tag] || tag;\n });\n}\n\nfunction filterObjectOnKeys(obj, keys) {\n var filtered = {};\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key];\n }\n }\n\n return filtered;\n}\n\nfunction filterChildren() {\n var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var tag = arguments[1];\n\n return array.filter(function (child) {\n return child.componentOptions && child.componentOptions.Ctor.options.name === tag;\n });\n}\n\nfunction convertToUnit(str) {\n var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'px';\n\n return isNaN(str) ? str : '' + Number(str) + unit;\n}\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VIcon__ = __webpack_require__(92);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */]);\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = inject;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = provide;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\nfunction generateWarning(child, parent) {\n return function () {\n return Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"b\" /* consoleWarn */])('The ' + child + ' component must be used inside a ' + parent);\n };\n}\n\nfunction inject(namespace, child, parent) {\n var defaultImpl = child && parent ? {\n register: generateWarning(child, parent),\n unregister: generateWarning(child, parent)\n } : null;\n\n return {\n name: 'registrable-inject',\n\n inject: _defineProperty({}, namespace, {\n default: defaultImpl\n })\n };\n}\n\nfunction provide(namespace) {\n return {\n name: 'registrable-provide',\n\n methods: {\n register: null,\n unregister: null\n },\n provide: function provide() {\n return _defineProperty({}, namespace, {\n register: this.register,\n unregister: this.unregister\n });\n }\n };\n}\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = consoleWarn;\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = consoleError;\nfunction createMessage(message, componentInstance) {\n var componentInfo = componentInstance ? ' in \"' + componentInstance.$options.name + '\"' : '';\n return '[Vuetify] ' + message + componentInfo;\n}\n\nfunction consoleWarn(message) {\n var componentInstance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n console.warn(createMessage(message, componentInstance));\n}\n\nfunction consoleError(message) {\n var componentInstance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n console.error(createMessage(message, componentInstance));\n}\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = factory;\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction factory() {\n var _watch;\n\n var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'value';\n var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'input';\n\n return {\n name: 'toggleable',\n\n model: { prop: prop, event: event },\n\n props: _defineProperty({}, prop, { required: false }),\n\n data: function data() {\n return {\n isActive: !!this[prop]\n };\n },\n\n\n watch: (_watch = {}, _defineProperty(_watch, prop, function (val) {\n this.isActive = !!val;\n }), _defineProperty(_watch, 'isActive', function isActive(val) {\n !!val !== this[prop] && this.$emit(event, val);\n }), _watch)\n };\n}\n\nvar Toggleable = factory();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Toggleable);\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VBottomSheetTranstion */\n/* unused harmony export VCarouselTransition */\n/* unused harmony export VCarouselReverseTransition */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"f\", function() { return VTabTransition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"e\", function() { return VTabReverseTransition; });\n/* unused harmony export VMenuTransition */\n/* unused harmony export VFabTransition */\n/* unused harmony export VDialogTransition */\n/* unused harmony export VDialogBottomTransition */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return VFadeTransition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return VScaleTransition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return VSlideXTransition; });\n/* unused harmony export VSlideXReverseTransition */\n/* unused harmony export VSlideYTransition */\n/* unused harmony export VSlideYReverseTransition */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return VExpandTransition; });\n/* unused harmony export VRowExpandTransition */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__expand_transition__ = __webpack_require__(41);\n\n\n\n\n// Component specific transitions\nvar VBottomSheetTranstion = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('bottom-sheet-transition');\nvar VCarouselTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('carousel-transition');\nvar VCarouselReverseTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('carousel-reverse-transition');\nvar VTabTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('tab-transition');\nvar VTabReverseTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('tab-reverse-transition');\nvar VMenuTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('menu-transition');\nvar VFabTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('fab-transition', 'center center', 'out-in');\n\n// Generic transitions\nvar VDialogTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('dialog-transition');\nvar VDialogBottomTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('dialog-bottom-transition');\nvar VFadeTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('fade-transition');\nvar VScaleTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('scale-transition');\nvar VSlideXTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('slide-x-transition');\nvar VSlideXReverseTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('slide-x-reverse-transition');\nvar VSlideYTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('slide-y-transition');\nvar VSlideYReverseTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"f\" /* createSimpleTransition */])('slide-y-reverse-transition');\n\n// JavaScript transitions\nvar VExpandTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"c\" /* createJavaScriptTransition */])('expand-transition', Object(__WEBPACK_IMPORTED_MODULE_1__expand_transition__[\"a\" /* default */])());\nvar VRowExpandTransition = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"c\" /* createJavaScriptTransition */])('row-expand-transition', Object(__WEBPACK_IMPORTED_MODULE_1__expand_transition__[\"a\" /* default */])('datatable__expand-col--expanded'));\n\n/* harmony default export */ __webpack_exports__[\"g\"] = (install);\n/* istanbul ignore next */\nfunction install(Vue) {\n Vue.component('v-bottom-sheet-transition', VBottomSheetTranstion);\n Vue.component('v-carousel-transition', VCarouselTransition);\n Vue.component('v-carousel-reverse-transition', VCarouselReverseTransition);\n Vue.component('v-dialog-transition', VDialogTransition);\n Vue.component('v-dialog-bottom-transition', VDialogBottomTransition);\n Vue.component('v-fab-transition', VFabTransition);\n Vue.component('v-fade-transition', VFadeTransition);\n Vue.component('v-menu-transition', VMenuTransition);\n Vue.component('v-scale-transition', VScaleTransition);\n Vue.component('v-slide-x-transition', VSlideXTransition);\n Vue.component('v-slide-x-reverse-transition', VSlideXReverseTransition);\n Vue.component('v-slide-y-transition', VSlideYTransition);\n Vue.component('v-slide-y-reverse-transition', VSlideYReverseTransition);\n Vue.component('v-tab-reverse-transition', VTabReverseTransition);\n Vue.component('v-tab-transition', VTabTransition);\n Vue.component('v-expand-transition', VExpandTransition);\n Vue.component('v-row-expand-transition', VRowExpandTransition);\n}\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction closeConditional() {\n return false;\n}\n\nfunction directive(e, el, binding) {\n // Args may not always be supplied\n binding.args = binding.args || {};\n\n // If no closeConditional was supplied assign a default\n var isActive = binding.args.closeConditional || closeConditional;\n\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || isActive(e) === false) return;\n\n // If click was triggered programmaticaly (domEl.click()) then\n // it shouldn't be treated as click-outside\n // Chrome/Firefox support isTrusted property\n // IE/Edge support pointerType property (empty if not triggered\n // by pointing device)\n if ('isTrusted' in e && !e.isTrusted || 'pointerType' in e && !e.pointerType) return;\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n var elements = (binding.args.include || function () {\n return [];\n })();\n // Add the root element for the component this directive was defined on\n elements.push(el);\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occure before\n // the bubbling click event on any outside elements.\n !clickedInEls(e, elements) && setTimeout(function () {\n isActive(e) && binding.value();\n }, 0);\n}\n\nfunction clickedInEls(e, elements) {\n // Get position of click\n var x = e.clientX,\n y = e.clientY;\n // Loop over all included elements to see if click was in any of them\n\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = elements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n\n if (clickedInEl(el, x, y)) return true;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return false;\n}\n\nfunction clickedInEl(el, x, y) {\n // Get bounding rect for element\n // (we're in capturing event and we want to check for multiple elements,\n // so can't use target.)\n var b = el.getBoundingClientRect();\n // Check if the click was in the element's bounding rect\n\n return x >= b.left && x <= b.right && y >= b.top && y <= b.bottom;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'click-outside',\n\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n inserted: function inserted(el, binding) {\n var onClick = function onClick(e) {\n return directive(e, el, binding);\n };\n // iOS does not recognize click events on document\n // or body, this is the entire purpose of the v-app\n // component and [data-app], stop removing this\n var app = document.querySelector('[data-app]') || document.body; // This is only for unit tests\n app.addEventListener('click', onClick, true);\n el._clickOutside = onClick;\n },\n unbind: function unbind(el) {\n var app = document.querySelector('[data-app]') || document.body; // This is only for unit tests\n app && app.removeEventListener('click', el._clickOutside, true);\n delete el._clickOutside;\n }\n});\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _touchstart = function _touchstart(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchstartX = touch.clientX;\n wrapper.touchstartY = touch.clientY;\n\n wrapper.start && wrapper.start(Object.assign(event, wrapper));\n};\n\nvar _touchend = function _touchend(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchendX = touch.clientX;\n wrapper.touchendY = touch.clientY;\n\n wrapper.end && wrapper.end(Object.assign(event, wrapper));\n\n handleGesture(wrapper);\n};\n\nvar _touchmove = function _touchmove(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchmoveX = touch.clientX;\n wrapper.touchmoveY = touch.clientY;\n\n wrapper.move && wrapper.move(Object.assign(event, wrapper));\n};\n\nvar handleGesture = function handleGesture(wrapper) {\n var touchstartX = wrapper.touchstartX,\n touchendX = wrapper.touchendX,\n touchstartY = wrapper.touchstartY,\n touchendY = wrapper.touchendY;\n\n var dirRatio = 0.5;\n var minDistance = 16;\n wrapper.offsetX = touchendX - touchstartX;\n wrapper.offsetY = touchendY - touchstartY;\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && touchendX < touchstartX - minDistance && wrapper.left(wrapper);\n wrapper.right && touchendX > touchstartX + minDistance && wrapper.right(wrapper);\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper);\n wrapper.down && touchendY > touchstartY + minDistance && wrapper.down(wrapper);\n }\n};\n\nfunction inserted(el, _ref, _ref2) {\n var value = _ref.value;\n var context = _ref2.context;\n\n var wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end\n };\n\n var target = value.parent ? el.parentNode : el;\n var options = value.options || { passive: true\n\n // Needed to pass unit tests\n };if (!target) return;\n\n var handlers = {\n touchstart: function touchstart(e) {\n return _touchstart(e, wrapper);\n },\n touchend: function touchend(e) {\n return _touchend(e, wrapper);\n },\n touchmove: function touchmove(e) {\n return _touchmove(e, wrapper);\n }\n };\n target._touchHandlers = Object.assign(Object(target._touchHandlers), _defineProperty({}, context._uid, handlers));\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = Object.keys(handlers)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var eventName = _step.value;\n\n target.addEventListener(eventName, handlers[eventName], options);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\n\nfunction unbind(el, _ref3, _ref4) {\n var value = _ref3.value;\n var context = _ref4.context;\n\n var target = value.parent ? el.parentNode : el;\n\n if (!target) return;\n\n var handlers = target._touchHandlers[context._uid];\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = Object.keys(handlers)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var eventName = _step2.value;\n\n target.removeEventListener(eventName, handlers[eventName]);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n delete target._touchHandlers[context._uid];\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'touch',\n inserted: inserted,\n unbind: unbind\n});\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBtn__ = __webpack_require__(111);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBtn__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBtn__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBtn__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBtn__[\"a\" /* default */]);\n\n/***/ }),\n/* 11 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction inserted(el, binding) {\n var callback = binding.value;\n var options = binding.options || { passive: true };\n\n window.addEventListener('resize', callback, options);\n el._onResize = {\n callback: callback,\n options: options\n };\n\n if (!binding.modifiers || !binding.modifiers.quiet) {\n callback();\n }\n}\n\nfunction unbind(el, binding) {\n var _el$_onResize = el._onResize,\n callback = _el$_onResize.callback,\n options = _el$_onResize.options;\n\n\n window.removeEventListener('resize', callback, options);\n delete el._onResize;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'resize',\n inserted: inserted,\n unbind: unbind\n});\n\n/***/ }),\n/* 12 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = factory;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n\n\nfunction factory() {\n var selected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n var props = {\n absolute: Boolean,\n bottom: Boolean,\n fixed: Boolean,\n left: Boolean,\n right: Boolean,\n top: Boolean\n };\n\n return {\n name: 'positionable',\n props: selected.length ? Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"h\" /* filterObjectOnKeys */])(props, selected) : props\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (factory());\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__directives_ripple__ = __webpack_require__(17);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'routable',\n\n directives: {\n Ripple: __WEBPACK_IMPORTED_MODULE_0__directives_ripple__[\"a\" /* default */]\n },\n\n props: {\n activeClass: String,\n append: Boolean,\n disabled: Boolean,\n exact: {\n type: Boolean,\n default: undefined\n },\n exactActiveClass: String,\n href: [String, Object],\n to: [String, Object],\n nuxt: Boolean,\n replace: Boolean,\n ripple: [Boolean, Object],\n tag: String,\n target: String\n },\n\n methods: {\n click: function click() {},\n generateRouteLink: function generateRouteLink() {\n var exact = this.exact;\n var tag = void 0;\n\n var data = _defineProperty({\n attrs: { disabled: this.disabled },\n class: this.classes,\n props: {},\n directives: [{\n name: 'ripple',\n value: this.ripple && !this.disabled ? this.ripple : false\n }]\n }, this.to ? 'nativeOn' : 'on', _extends({}, this.$listeners, {\n click: this.click\n }));\n\n if (typeof this.exact === 'undefined') {\n exact = this.to === '/' || this.to === Object(this.to) && this.to.path === '/';\n }\n\n if (this.to) {\n // Add a special activeClass hook\n // for component level styles\n var activeClass = this.activeClass;\n var exactActiveClass = this.exactActiveClass || activeClass;\n\n if (this.proxyClass) {\n activeClass += ' ' + this.proxyClass;\n exactActiveClass += ' ' + this.proxyClass;\n }\n\n tag = this.nuxt ? 'nuxt-link' : 'router-link';\n Object.assign(data.props, {\n to: this.to,\n exact: exact,\n activeClass: activeClass,\n exactActiveClass: exactActiveClass,\n append: this.append,\n replace: this.replace\n });\n } else {\n tag = this.href && 'a' || this.tag || 'a';\n\n if (tag === 'a') {\n if (this.href) data.attrs.href = this.href;\n if (this.target) data.attrs.target = this.target;\n }\n }\n\n return { tag: tag, data: data };\n }\n }\n});\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__createNativeLocaleFormatter__ = __webpack_require__(178);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__monthChange__ = __webpack_require__(179);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__pad__ = __webpack_require__(22);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__createNativeLocaleFormatter__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_1__monthChange__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__pad__[\"a\"]; });\n\n\n\n\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applicationable;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__positionable__ = __webpack_require__(12);\n\n\nfunction applicationable(value) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n\n return {\n name: 'applicationable',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_0__positionable__[\"b\" /* factory */])(['absolute', 'fixed'])],\n\n props: {\n app: Boolean\n },\n\n computed: {\n applicationProperty: function applicationProperty() {\n return value;\n }\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app: function app(x, prev) {\n prev ? this.removeApplication(true) : this.callUpdate();\n }\n },\n\n activated: function activated() {\n this.callUpdate();\n },\n created: function created() {\n for (var i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate);\n }\n this.callUpdate();\n },\n mounted: function mounted() {\n this.callUpdate();\n },\n deactivated: function deactivated() {\n this.removeApplication();\n },\n destroyed: function destroyed() {\n this.removeApplication();\n },\n\n\n methods: {\n callUpdate: function callUpdate() {\n if (!this.app) return;\n\n this.$vuetify.application.bind(this._uid, this.applicationProperty, this.updateApplication());\n },\n removeApplication: function removeApplication(force) {\n if (!force && !this.app) return;\n\n this.$vuetify.application.unbind(this._uid, this.applicationProperty);\n },\n\n updateApplication: function updateApplication() {}\n }\n };\n}\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Bootable\n * @mixin\n *\n * Used to add lazy content functionality to components\n * Looks for change in \"isActive\" to automatically boot\n * Otherwise can be set manually\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'bootable',\n\n data: function data() {\n return {\n isBooted: false\n };\n },\n\n props: {\n lazy: Boolean\n },\n\n watch: {\n isActive: function isActive() {\n this.isBooted = true;\n }\n },\n\n methods: {\n showLazyContent: function showLazyContent(content) {\n return this.isBooted || !this.lazy || this.isActive ? content : null;\n }\n }\n});\n\n/***/ }),\n/* 17 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction style(el, value) {\n el.style['transform'] = value;\n el.style['webkitTransform'] = value;\n}\n\nvar ripple = {\n /**\n * @param {Event} e\n * @param {Element} el\n * @param {{ class?: string, center?: boolean }} [value={}]\n */\n show: function show(e, el) {\n var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (!el._ripple || !el._ripple.enabled) {\n return;\n }\n\n var container = document.createElement('span');\n var animation = document.createElement('span');\n\n container.appendChild(animation);\n container.className = 'ripple__container';\n\n if (value.class) {\n container.className += ' ' + value.class;\n }\n\n var size = el.clientWidth > el.clientHeight ? el.clientWidth : el.clientHeight;\n animation.className = 'ripple__animation';\n animation.style.width = size * (value.center ? 1 : 2) + 'px';\n animation.style.height = animation.style.width;\n\n el.appendChild(container);\n var computed = window.getComputedStyle(el);\n if (computed.position !== 'absolute' && computed.position !== 'fixed') el.style.position = 'relative';\n\n var offset = el.getBoundingClientRect();\n var x = value.center ? '50%' : e.clientX - offset.left + 'px';\n var y = value.center ? '50%' : e.clientY - offset.top + 'px';\n\n animation.classList.add('ripple__animation--enter');\n animation.classList.add('ripple__animation--visible');\n style(animation, 'translate(-50%, -50%) translate(' + x + ', ' + y + ') scale3d(0.01,0.01,0.01)');\n animation.dataset.activated = Date.now();\n\n setTimeout(function () {\n animation.classList.remove('ripple__animation--enter');\n style(animation, 'translate(-50%, -50%) translate(' + x + ', ' + y + ') scale3d(0.99,0.99,0.99)');\n }, 0);\n },\n\n hide: function hide(el) {\n if (!el._ripple || !el._ripple.enabled) return;\n\n var ripples = el.getElementsByClassName('ripple__animation');\n\n if (ripples.length === 0) return;\n var animation = ripples[ripples.length - 1];\n var diff = Date.now() - Number(animation.dataset.activated);\n var delay = 400 - diff;\n\n delay = delay < 0 ? 0 : delay;\n\n setTimeout(function () {\n animation.classList.remove('ripple__animation--visible');\n\n setTimeout(function () {\n // Need to figure out a new way to do this\n try {\n if (ripples.length < 1) el.style.position = null;\n animation.parentNode && el.removeChild(animation.parentNode);\n } catch (e) {}\n }, 300);\n }, delay);\n }\n};\n\nfunction isRippleEnabled(value) {\n return typeof value === 'undefined' || !!value;\n}\n\nfunction rippleShow(e) {\n var value = {};\n var element = e.currentTarget;\n value.center = element._ripple.centered;\n if (element._ripple.class) {\n value.class = element._ripple.class;\n }\n ripple.show(e, element, value);\n}\n\nfunction rippleHide(e) {\n ripple.hide(e.currentTarget);\n}\n\nfunction updateRipple(el, binding, wasEnabled) {\n var enabled = isRippleEnabled(binding.value);\n if (!enabled) {\n ripple.hide(el);\n }\n el._ripple = el._ripple || {};\n el._ripple.enabled = enabled;\n var value = binding.value || {};\n if (value.center) {\n el._ripple.centered = true;\n }\n if (value.class) {\n el._ripple.class = binding.value.class;\n }\n if (enabled && !wasEnabled) {\n if ('ontouchstart' in window) {\n el.addEventListener('touchend', rippleHide, false);\n el.addEventListener('touchcancel', rippleHide, false);\n }\n\n el.addEventListener('mousedown', rippleShow, false);\n el.addEventListener('mouseup', rippleHide, false);\n el.addEventListener('mouseleave', rippleHide, false);\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, false);\n } else if (!enabled && wasEnabled) {\n removeListeners(el);\n }\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('touchstart', rippleShow, false);\n el.removeEventListener('mousedown', rippleShow, false);\n el.removeEventListener('touchend', rippleHide, false);\n el.removeEventListener('touchcancel', rippleHide, false);\n el.removeEventListener('mouseup', rippleHide, false);\n el.removeEventListener('mouseleave', rippleHide, false);\n el.removeEventListener('dragstart', rippleHide, false);\n}\n\nfunction directive(el, binding) {\n updateRipple(el, binding, false);\n}\n\nfunction unbind(el, binding) {\n delete el._ripple;\n removeListeners(el);\n}\n\nfunction update(el, binding) {\n if (binding.value === binding.oldValue) {\n return;\n }\n\n var wasEnabled = isRippleEnabled(binding.oldValue);\n updateRipple(el, binding, wasEnabled);\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'ripple',\n bind: directive,\n unbind: unbind,\n update: update\n});\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 19 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__loadable__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__validatable__ = __webpack_require__(131);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_VIcon__ = __webpack_require__(3);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'input',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__loadable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__themeable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__validatable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isFocused: false,\n tabFocused: false,\n internalTabIndex: null,\n lazyValue: this.value\n };\n },\n\n\n props: {\n appendIcon: String,\n appendIconCb: Function,\n disabled: Boolean,\n hint: String,\n hideDetails: Boolean,\n label: String,\n persistentHint: Boolean,\n placeholder: String,\n prependIcon: String,\n prependIconCb: Function,\n readonly: Boolean,\n required: Boolean,\n tabindex: {\n default: 0\n },\n toggleKeys: {\n type: Array,\n default: function _default() {\n return [13, 32];\n }\n },\n value: {\n required: false\n }\n },\n\n computed: {\n inputGroupClasses: function inputGroupClasses() {\n return Object.assign({\n 'input-group': true,\n 'input-group--async-loading': this.loading !== false,\n 'input-group--focused': this.isFocused,\n 'input-group--dirty': this.isDirty,\n 'input-group--tab-focused': this.tabFocused,\n 'input-group--disabled': this.disabled,\n 'input-group--error': this.hasError,\n 'input-group--append-icon': this.appendIcon,\n 'input-group--prepend-icon': this.prependIcon,\n 'input-group--required': this.required,\n 'input-group--hide-details': this.hideDetails,\n 'input-group--placeholder': !!this.placeholder,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n }, this.classes);\n },\n isDirty: function isDirty() {\n return !!this.inputValue;\n }\n },\n\n methods: {\n groupFocus: function groupFocus(e) {},\n groupBlur: function groupBlur(e) {\n this.tabFocused = false;\n },\n genLabel: function genLabel() {\n return this.$createElement('label', {\n attrs: {\n for: this.$attrs.id\n }\n }, this.$slots.label || this.label);\n },\n genMessages: function genMessages() {\n var messages = null;\n\n if (this.hint && (this.isFocused || this.persistentHint) && !this.validations.length) {\n messages = [this.genHint()];\n } else if (this.validations.length) {\n messages = [this.genError(this.validations[0])];\n }\n\n return this.$createElement('transition', {\n props: {\n name: 'slide-y-transition'\n }\n }, messages);\n },\n genHint: function genHint() {\n return this.$createElement('div', {\n 'class': 'input-group__messages input-group__hint',\n domProps: { innerHTML: this.hint }\n });\n },\n genError: function genError(error) {\n return this.$createElement('div', {\n 'class': 'input-group__messages input-group__error'\n }, error);\n },\n genIcon: function genIcon(type) {\n var _class;\n\n var defaultCallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n var shouldClear = type === 'append' && this.clearable && this.isDirty;\n var icon = shouldClear ? 'clear' : this[type + 'Icon'];\n var callback = shouldClear ? this.clearableCallback : this[type + 'IconCb'] || defaultCallback;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_3__components_VIcon__[\"a\" /* default */], {\n 'class': (_class = {}, _defineProperty(_class, 'input-group__' + type + '-icon', true), _defineProperty(_class, 'input-group__icon-cb', !!callback), _defineProperty(_class, 'input-group__icon-clearable', shouldClear), _class),\n props: {\n disabled: this.disabled\n },\n on: {\n click: function click(e) {\n if (!callback) return;\n\n e.stopPropagation();\n callback();\n }\n }\n }, icon);\n },\n genInputGroup: function genInputGroup(input) {\n var _this = this;\n\n var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var defaultAppendCallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n var children = [];\n var wrapperChildren = [];\n var detailsChildren = [];\n\n data = Object.assign({}, {\n 'class': this.inputGroupClasses,\n attrs: {\n tabindex: this.disabled ? -1 : this.internalTabIndex || this.tabindex\n },\n on: {\n focus: this.groupFocus,\n blur: this.groupBlur,\n click: function click() {\n return _this.tabFocused = false;\n },\n keyup: function keyup(e) {\n if ([9, 16].includes(e.keyCode)) {\n _this.tabFocused = true;\n }\n },\n keydown: function keydown(e) {\n if (!_this.toggle) return;\n\n if (_this.toggleKeys.includes(e.keyCode)) {\n e.preventDefault();\n _this.toggle();\n }\n }\n }\n }, data);\n\n if (this.$slots.label || this.label) {\n children.push(this.genLabel());\n }\n\n wrapperChildren.push(input);\n\n if (this.prependIcon) {\n wrapperChildren.unshift(this.genIcon('prepend'));\n }\n\n if (this.appendIcon || this.clearable) {\n wrapperChildren.push(this.genIcon('append', defaultAppendCallback));\n }\n\n var progress = this.genProgress();\n progress && detailsChildren.push(progress);\n\n children.push(this.$createElement('div', {\n 'class': 'input-group__input'\n }, wrapperChildren));\n\n !this.hideDetails && detailsChildren.push(this.genMessages());\n\n if (this.counter) {\n detailsChildren.push(this.genCounter());\n }\n\n children.push(this.$createElement('div', {\n 'class': 'input-group__details'\n }, detailsChildren));\n\n return this.$createElement('div', data, children);\n }\n }\n});\n\n/***/ }),\n/* 20 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction searchChildren(children) {\n var results = [];\n for (var index = 0; index < children.length; index++) {\n var child = children[index];\n if (child.isActive && child.isDependent) {\n results.push(child);\n } else {\n results.push.apply(results, _toConsumableArray(searchChildren(child.$children)));\n }\n }\n\n return results;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'dependent',\n\n data: function data() {\n return {\n closeDependents: true,\n isDependent: true\n };\n },\n\n\n methods: {\n getOpenDependents: function getOpenDependents() {\n if (this.closeDependents) return searchChildren(this.$children);\n\n return [];\n },\n getOpenDependentElements: function getOpenDependentElements() {\n var result = [];\n var openDependents = this.getOpenDependents();\n\n for (var index = 0; index < openDependents.length; index++) {\n result.push.apply(result, _toConsumableArray(openDependents[index].getClickableDependentElements()));\n }\n\n return result;\n },\n getClickableDependentElements: function getClickableDependentElements() {\n var result = [this.$el];\n if (this.$refs.content) result.push(this.$refs.content);\n result.push.apply(result, _toConsumableArray(this.getOpenDependentElements()));\n\n return result;\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n if (val) return;\n\n var openDependents = this.getOpenDependents();\n for (var index = 0; index < openDependents.length; index++) {\n openDependents[index].isActive = false;\n }\n }\n }\n});\n\n/***/ }),\n/* 21 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__directives_ripple__ = __webpack_require__(17);\n\n\n/** @mixin */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'rippleable',\n\n directives: { Ripple: __WEBPACK_IMPORTED_MODULE_0__directives_ripple__[\"a\" /* default */] },\n\n props: {\n ripple: {\n type: [Boolean, Object],\n default: true\n }\n },\n\n methods: {\n genRipple: function genRipple() {\n var _this = this;\n\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { directives: [] };\n\n data.class = this.rippleClasses || 'input-group--selection-controls__ripple';\n data.directives.push({\n name: 'ripple',\n value: this.ripple && !this.disabled && { center: true }\n });\n data.on = Object.assign({}, this.$listeners, {\n click: function click(e) {\n _this.$emit('click', e);\n _this.toggle();\n }\n });\n\n return this.$createElement('div', data);\n }\n }\n});\n\n/***/ }),\n/* 22 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar padStart = function padStart(string, targetLength, padString) {\n targetLength = targetLength >> 0;\n string = String(string);\n padString = String(padString);\n if (string.length > targetLength) {\n return String(string);\n }\n\n targetLength = targetLength - string.length;\n if (targetLength > padString.length) {\n padString += padString.repeat(targetLength / padString.length);\n }\n return padString.slice(0, targetLength) + String(string);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (function (n) {\n var length = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n return padStart(n, length, '0');\n});\n\n/***/ }),\n/* 23 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * SSRBootable\n *\n * @mixin\n *\n * Used in layout components (drawer, toolbar, content)\n * to avoid an entry animation when using SSR\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'ssr-bootable',\n\n data: function data() {\n return {\n isBooted: false\n };\n },\n\n mounted: function mounted() {\n var _this = this;\n\n // Use setAttribute instead of dataset\n // because dataset does not work well\n // with unit tests\n window.requestAnimationFrame(function () {\n _this.$el.setAttribute('data-booted', true);\n _this.isBooted = true;\n });\n }\n});\n\n/***/ }),\n/* 24 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'transitionable',\n\n props: {\n mode: String,\n origin: String,\n transition: String\n }\n});\n\n/***/ }),\n/* 25 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_console__ = __webpack_require__(5);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n\n\n\nfunction validateAttachTarget(val) {\n var type = typeof val === 'undefined' ? 'undefined' : _typeof(val);\n\n if (type === 'boolean' || type === 'string') return true;\n\n return val.nodeType === Node.ELEMENT_NODE;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'detachable',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__bootable__[\"a\" /* default */]],\n\n props: {\n attach: {\n type: null,\n default: false,\n validator: validateAttachTarget\n },\n contentClass: {\n default: ''\n }\n },\n\n mounted: function mounted() {\n this.initDetach();\n },\n deactivated: function deactivated() {\n this.isActive = false;\n },\n beforeDestroy: function beforeDestroy() {\n if (!this.$refs.content) return;\n\n // IE11 Fix\n try {\n this.$refs.content.parentNode.removeChild(this.$refs.content);\n } catch (e) {}\n },\n\n\n methods: {\n initDetach: function initDetach() {\n if (this._isDestroyed || !this.$refs.content ||\n // Leave menu in place if attached\n // and dev has not changed target\n this.attach === '' || // If used as a boolean prop ()\n this.attach === true || // If bound to a boolean ()\n this.attach === 'attach' // If bound as boolean prop in pug (v-menu(attach))\n ) return;\n\n var target = void 0;\n if (this.attach === false) {\n // Default, detach to app\n target = document.querySelector('[data-app]');\n } else if (typeof this.attach === 'string') {\n // CSS selector\n target = document.querySelector(this.attach);\n } else {\n // DOM Element\n target = this.attach;\n }\n\n if (!target) {\n Object(__WEBPACK_IMPORTED_MODULE_1__util_console__[\"b\" /* consoleWarn */])('Unable to locate target ' + (this.attach || '[data-app]'), this);\n return;\n }\n\n target.insertBefore(this.$refs.content, target.firstChild);\n }\n }\n});\n\n/***/ }),\n/* 26 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'returnable',\n\n data: function data() {\n return {\n originalValue: null\n };\n },\n\n props: {\n returnValue: null\n },\n\n watch: {\n isActive: function isActive(val) {\n if (val) {\n this.originalValue = this.returnValue;\n } else {\n this.$emit('update:returnValue', this.originalValue);\n }\n }\n },\n\n methods: {\n save: function save(value) {\n this.originalValue = value;\n this.isActive = false;\n }\n }\n});\n\n/***/ }),\n/* 27 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VCardActions */\n/* unused harmony export VCardText */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCard__ = __webpack_require__(118);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VCardMedia__ = __webpack_require__(120);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VCardTitle__ = __webpack_require__(121);\n/* unused harmony reexport VCard */\n/* unused harmony reexport VCardMedia */\n/* unused harmony reexport VCardTitle */\n\n\n\n\n\nvar VCardActions = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('card__actions');\nvar VCardText = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('card__text');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VCardMedia__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VCardMedia__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VCardTitle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VCardTitle__[\"a\" /* default */]);\n Vue.component(VCardActions.name, VCardActions);\n Vue.component(VCardText.name, VCardText);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */]);\n\n/***/ }),\n/* 28 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VCheckbox__ = __webpack_require__(128);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VCheckbox__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VCheckbox__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VCheckbox__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VCheckbox__[\"a\" /* default */]);\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 30 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VMenu__ = __webpack_require__(146);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VMenu__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VMenu__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VMenu__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VMenu__[\"a\" /* default */]);\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 32 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = Grid;\nfunction Grid(name) {\n return {\n name: 'v-' + name,\n\n functional: true,\n\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div'\n }\n },\n\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n\n data.staticClass = (name + ' ' + (data.staticClass || '')).trim();\n\n if (data.attrs) {\n var classes = Object.keys(data.attrs).filter(function (key) {\n var value = data.attrs[key];\n return value || typeof value === 'string';\n });\n\n if (classes.length) data.staticClass += ' ' + classes.join(' ');\n delete data.attrs;\n }\n\n if (props.id) {\n data.domProps = data.domProps || {};\n data.domProps.id = props.id;\n }\n\n return h(props.tag, data, children);\n }\n };\n}\n\n/***/ }),\n/* 33 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = colorToInt;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = intToHex;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__console__ = __webpack_require__(5);\n\n\n/**\n * @param {string|number} color\n * @returns {number}\n */\nfunction colorToInt(color) {\n var rgb = void 0;\n\n if (typeof color === 'number') {\n rgb = color;\n } else if (typeof color === 'string') {\n var c = color[0] === '#' ? color.substring(1) : color;\n if (c.length === 3) {\n c = c.split('').map(function (char) {\n return char + char;\n }).join('');\n }\n if (c.length !== 6) {\n Object(__WEBPACK_IMPORTED_MODULE_0__console__[\"b\" /* consoleWarn */])('\\'' + color + '\\' is not a valid rgb color');\n }\n rgb = parseInt(c, 16);\n } else {\n throw new TypeError('Colors can only be numbers or strings, recieved ' + color.constructor.name + ' instead');\n }\n\n if (rgb < 0) {\n Object(__WEBPACK_IMPORTED_MODULE_0__console__[\"b\" /* consoleWarn */])('Colors cannot be negative: \\'' + color + '\\'');\n rgb = 0;\n } else if (rgb > 0xffffff || isNaN(rgb)) {\n Object(__WEBPACK_IMPORTED_MODULE_0__console__[\"b\" /* consoleWarn */])('\\'' + color + '\\' is not a valid rgb color');\n rgb = 0xffffff;\n }\n\n return rgb;\n}\n\n/**\n * @param {number} color\n * @returns {string}\n */\nfunction intToHex(color) {\n color = color.toString(16);\n\n if (color.length < 6) color = '0'.repeat(6 - color.length) + color;\n\n return '#' + color;\n}\n\n/***/ }),\n/* 34 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VAvatar__ = __webpack_require__(94);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */]);\n\n/***/ }),\n/* 35 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_console__ = __webpack_require__(5);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'button-group',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_0__registrable__[\"b\" /* provide */])('buttonGroup')],\n\n data: function data() {\n return {\n buttons: [],\n listeners: [],\n isDestroying: false\n };\n },\n\n\n watch: {\n buttons: 'update'\n },\n\n methods: {\n getValue: function getValue(i) {\n if (this.buttons[i].value != null) {\n return this.buttons[i].value;\n }\n\n // Fix for testing, this should always be false in the browser\n if (this.buttons[i].$el.value != null && this.buttons[i].$el.value !== '') {\n return this.buttons[i].$el.value;\n }\n\n return i;\n },\n update: function update() {\n var selected = [];\n\n for (var i = 0; i < this.buttons.length; i++) {\n var elm = this.buttons[i].$el;\n var button = this.buttons[i];\n\n elm.removeAttribute('data-only-child');\n\n if (this.isSelected(i)) {\n !button.to && (button.isActive = true);\n selected.push(i);\n } else {\n !button.to && (button.isActive = false);\n }\n }\n\n if (selected.length === 1) {\n this.buttons[selected[0]].$el.setAttribute('data-only-child', true);\n }\n\n this.ensureMandatoryInvariant(selected.length > 0);\n },\n register: function register(button) {\n var index = this.buttons.length;\n this.buttons.push(button);\n this.listeners.push(this.updateValue.bind(this, index));\n button.$on('click', this.listeners[index]);\n },\n unregister: function unregister(buttonToUnregister) {\n // Basic cleanup if we're destroying\n if (this.isDestroying) {\n var index = this.buttons.indexOf(buttonToUnregister);\n if (index !== -1) {\n buttonToUnregister.$off('click', this.listeners[index]);\n }\n return;\n }\n\n this.redoRegistrations(buttonToUnregister);\n },\n redoRegistrations: function redoRegistrations(buttonToUnregister) {\n var selectedCount = 0;\n\n var buttons = [];\n for (var index = 0; index < this.buttons.length; ++index) {\n var button = this.buttons[index];\n if (button !== buttonToUnregister) {\n buttons.push(button);\n selectedCount += Boolean(this.isSelected(index));\n }\n\n button.$off('click', this.listeners[index]);\n }\n\n this.buttons = [];\n this.listeners = [];\n\n for (var _index = 0; _index < buttons.length; ++_index) {\n this.register(buttons[_index]);\n }\n\n this.ensureMandatoryInvariant(selectedCount > 0);\n this.updateAllValues && this.updateAllValues();\n },\n ensureMandatoryInvariant: function ensureMandatoryInvariant(hasSelectedAlready) {\n // Preserve the mandatory invariant by selecting the first tracked button, if needed\n\n if (!this.mandatory || hasSelectedAlready) return;\n\n if (!this.listeners.length) {\n Object(__WEBPACK_IMPORTED_MODULE_1__util_console__[\"b\" /* consoleWarn */])('There must be at least one v-btn child if the mandatory property is true.', this);\n return;\n }\n\n this.listeners[0]();\n }\n },\n\n mounted: function mounted() {\n this.update();\n },\n beforeDestroy: function beforeDestroy() {\n this.isDestroying = true;\n }\n});\n\n/***/ }),\n/* 36 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dialogs_styl__ = __webpack_require__(105);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dialogs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_dialogs_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_detachable__ = __webpack_require__(25);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_overlayable__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_returnable__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_stackable__ = __webpack_require__(38);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__util_helpers__ = __webpack_require__(2);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n// Mixins\n\n\n\n\n\n\n\n// Directives\n\n\n// Helpers\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-dialog',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_detachable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_overlayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_returnable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_stackable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"a\" /* default */]],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_7__directives_click_outside__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n isDependent: false,\n stackClass: 'dialog__content__active',\n stackMinZIndex: 200\n };\n },\n\n\n props: {\n disabled: Boolean,\n persistent: Boolean,\n fullscreen: Boolean,\n fullWidth: Boolean,\n maxWidth: {\n type: [String, Number],\n default: 'none'\n },\n origin: {\n type: String,\n default: 'center center'\n },\n width: {\n type: [String, Number],\n default: 'auto'\n },\n scrollable: Boolean,\n transition: {\n type: [String, Boolean],\n default: 'dialog-transition'\n }\n },\n\n computed: {\n classes: function classes() {\n var _ref;\n\n return _ref = {}, _defineProperty(_ref, ('dialog ' + this.contentClass).trim(), true), _defineProperty(_ref, 'dialog--active', this.isActive), _defineProperty(_ref, 'dialog--persistent', this.persistent), _defineProperty(_ref, 'dialog--fullscreen', this.fullscreen), _defineProperty(_ref, 'dialog--scrollable', this.scrollable), _ref;\n },\n contentClasses: function contentClasses() {\n return {\n 'dialog__content': true,\n 'dialog__content__active': this.isActive\n };\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n if (val) {\n this.show();\n } else {\n this.removeOverlay();\n this.unbind();\n }\n }\n },\n\n mounted: function mounted() {\n this.isBooted = this.isActive;\n this.isActive && this.show();\n },\n beforeDestroy: function beforeDestroy() {\n if (typeof window !== 'undefined') this.unbind();\n },\n\n\n methods: {\n closeConditional: function closeConditional(e) {\n // close dialog if !persistent, clicked outside and we're the topmost dialog.\n // Since this should only be called in a capture event (bottom up), we shouldn't need to stop propagation\n return this.isActive && !this.persistent && Object(__WEBPACK_IMPORTED_MODULE_8__util_helpers__[\"j\" /* getZIndex */])(this.$refs.content) >= this.getMaxZIndex() && !this.$refs.content.contains(e.target);\n },\n show: function show() {\n !this.fullscreen && !this.hideOverlay && this.genOverlay();\n this.fullscreen && this.hideScroll();\n this.$refs.content.focus();\n this.$listeners.keydown && this.bind();\n },\n bind: function bind() {\n window.addEventListener('keydown', this.onKeydown);\n },\n unbind: function unbind() {\n window.removeEventListener('keydown', this.onKeydown);\n },\n onKeydown: function onKeydown(e) {\n this.$emit('keydown', e);\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var children = [];\n var data = {\n 'class': this.classes,\n ref: 'dialog',\n directives: [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional,\n include: this.getOpenDependentElements\n }\n }, { name: 'show', value: this.isActive }],\n on: {\n click: function click(e) {\n e.stopPropagation();\n }\n }\n };\n\n if (!this.fullscreen) {\n data.style = {\n maxWidth: this.maxWidth === 'none' ? undefined : isNaN(this.maxWidth) ? this.maxWidth : this.maxWidth + 'px',\n width: this.width === 'auto' ? undefined : isNaN(this.width) ? this.width : this.width + 'px'\n };\n }\n\n if (this.$slots.activator) {\n children.push(h('div', {\n 'class': 'dialog__activator',\n on: {\n click: function click(e) {\n e.stopPropagation();\n if (!_this.disabled) _this.isActive = !_this.isActive;\n }\n }\n }, [this.$slots.activator]));\n }\n\n var dialog = h('transition', {\n props: {\n name: this.transition || '', // If false, show nothing\n origin: this.origin\n }\n }, [h('div', data, this.showLazyContent(this.$slots.default))]);\n\n children.push(h('div', {\n 'class': this.contentClasses,\n domProps: { tabIndex: -1 },\n style: { zIndex: this.activeZIndex },\n ref: 'content'\n }, [dialog]));\n\n return h('div', {\n staticClass: 'dialog__container',\n style: {\n display: !this.$slots.activator || this.fullWidth ? 'block' : 'inline-block'\n }\n }, children);\n }\n});\n\n/***/ }),\n/* 37 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_overlay_styl__ = __webpack_require__(106);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_overlay_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_overlay_styl__);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'overlayable',\n\n data: function data() {\n return {\n overlay: null,\n overlayOffset: 0,\n overlayTimeout: null,\n overlayTransitionDuration: 500 + 150 // transition + delay\n };\n },\n\n\n props: {\n hideOverlay: Boolean\n },\n\n beforeDestroy: function beforeDestroy() {\n this.removeOverlay();\n },\n\n\n methods: {\n genOverlay: function genOverlay() {\n var _this = this;\n\n // If fn is called and timeout is active\n // or overlay already exists\n // cancel removal of overlay and re-add active\n if (!this.isActive || this.hideOverlay || this.isActive && this.overlayTimeout || this.overlay) {\n clearTimeout(this.overlayTimeout);\n\n return this.overlay && this.overlay.classList.add('overlay--active');\n }\n\n this.overlay = document.createElement('div');\n this.overlay.className = 'overlay';\n\n if (this.absolute) this.overlay.className += ' overlay--absolute';\n\n this.hideScroll();\n\n var parent = this.absolute ? this.$el.parentNode : document.querySelector('[data-app]');\n\n parent && parent.insertBefore(this.overlay, parent.firstChild);\n\n // eslint-disable-next-line no-unused-expressions\n this.overlay.clientHeight; // Force repaint\n requestAnimationFrame(function () {\n _this.overlay.className += ' overlay--active';\n\n if (_this.activeZIndex !== undefined) {\n _this.overlay.style.zIndex = _this.activeZIndex - 1;\n }\n });\n\n return true;\n },\n removeOverlay: function removeOverlay() {\n var _this2 = this;\n\n if (!this.overlay) {\n return this.showScroll();\n }\n\n this.overlay.classList.remove('overlay--active');\n\n this.overlayTimeout = setTimeout(function () {\n // IE11 Fix\n try {\n _this2.overlay.parentNode.removeChild(_this2.overlay);\n _this2.overlay = null;\n _this2.showScroll();\n } catch (e) {}\n\n clearTimeout(_this2.overlayTimeout);\n _this2.overlayTimeout = null;\n }, this.overlayTransitionDuration);\n },\n\n /**\n * @param {Event} e\n * @returns void\n */\n scrollListener: function scrollListener(e) {\n if (e.type === 'keydown') {\n if (['INPUT', 'TEXTAREA', 'SELECT'].includes(e.target.tagName)) return;\n\n var up = [38, 33];\n var down = [40, 34];\n\n if (up.includes(e.keyCode)) {\n e.deltaY = -1;\n } else if (down.includes(e.keyCode)) {\n e.deltaY = 1;\n } else {\n return;\n }\n }\n\n if (e.target === this.overlay || e.type !== 'keydown' && e.target === document.body || this.checkPath(e)) e.preventDefault();\n },\n hasScrollbar: function hasScrollbar(el) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false;\n\n var style = window.getComputedStyle(el);\n return ['auto', 'scroll'].includes(style['overflow-y']) && el.scrollHeight > el.clientHeight;\n },\n shouldScroll: function shouldScroll(el, delta) {\n if (el.scrollTop === 0 && delta < 0) return true;\n return el.scrollTop + el.clientHeight === el.scrollHeight && delta > 0;\n },\n isInside: function isInside(el, parent) {\n if (el === parent) {\n return true;\n } else if (el === null || el === document.body) {\n return false;\n } else {\n return this.isInside(el.parentNode, parent);\n }\n },\n\n /**\n * @param {Event} e\n * @returns boolean\n */\n checkPath: function checkPath(e) {\n var path = e.path || this.composedPath(e);\n var delta = e.deltaY || -e.wheelDelta;\n\n if (e.type === 'keydown' && path[0] === document.body) {\n var dialog = this.$refs.dialog;\n var selected = window.getSelection().anchorNode;\n if (this.hasScrollbar(dialog) && this.isInside(selected, dialog)) {\n return this.shouldScroll(dialog, delta);\n }\n return true;\n }\n\n for (var index = 0; index < path.length; index++) {\n var el = path[index];\n\n if (el === document) return true;\n if (el === document.documentElement) return true;\n if (el === this.$refs.content) return true;\n\n if (this.hasScrollbar(el)) return this.shouldScroll(el, delta);\n }\n\n return true;\n },\n\n /**\n * Polyfill for Event.prototype.composedPath\n * @param {Event} e\n * @returns Element[]\n */\n composedPath: function composedPath(e) {\n if (e.composedPath) return e.composedPath();\n\n var path = [];\n var el = e.target;\n\n while (el) {\n path.push(el);\n\n if (el.tagName === 'HTML') {\n path.push(document);\n path.push(window);\n\n return path;\n }\n\n el = el.parentElement;\n }\n },\n hideScroll: function hideScroll() {\n if (this.$vuetify.breakpoint.smAndDown) {\n document.documentElement.classList.add('overflow-y-hidden');\n } else {\n window.addEventListener('wheel', this.scrollListener);\n window.addEventListener('keydown', this.scrollListener);\n }\n },\n showScroll: function showScroll() {\n document.documentElement.classList.remove('overflow-y-hidden');\n window.removeEventListener('wheel', this.scrollListener);\n window.removeEventListener('keydown', this.scrollListener);\n }\n }\n});\n\n/***/ }),\n/* 38 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'stackable',\n\n data: function data() {\n return {\n stackBase: null,\n stackClass: 'unpecified',\n stackElement: null,\n stackExclude: null,\n stackMinZIndex: 0\n };\n },\n\n computed: {\n /**\n * Currently active z-index\n *\n * @return {number}\n */\n activeZIndex: function activeZIndex() {\n if (typeof window === 'undefined') return 0;\n\n var content = this.stackElement || this.$refs.content;\n // Return current zindex if not active\n\n var index = !this.isActive ? Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"j\" /* getZIndex */])(content) : this.getMaxZIndex(this.stackExclude || [content]) + 2;\n\n if (index == null) return index;\n\n // Return max current z-index (excluding self) + 2\n // (2 to leave room for an overlay below, if needed)\n return parseInt(index);\n }\n },\n methods: {\n getMaxZIndex: function getMaxZIndex() {\n var exclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n var base = this.stackBase || this.$el;\n // Start with lowest allowed z-index or z-index of\n // base component's element, whichever is greater\n var zis = [this.stackMinZIndex, Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"j\" /* getZIndex */])(base)];\n // Convert the NodeList to an array to\n // prevent an Edge bug with Symbol.iterator\n // https://github.com/vuetifyjs/vuetify/issues/2146\n var activeElements = [].concat(_toConsumableArray(document.getElementsByClassName(this.stackClass)));\n\n // Get z-index for all active dialogs\n for (var index = 0; index < activeElements.length; index++) {\n if (!exclude.includes(activeElements[index])) {\n zis.push(Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"j\" /* getZIndex */])(activeElements[index]));\n }\n }\n\n return Math.max.apply(Math, zis);\n }\n }\n});\n\n/***/ }),\n/* 39 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VProgressCircular__ = __webpack_require__(113);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VProgressCircular__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VProgressCircular__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VProgressCircular__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VProgressCircular__[\"a\" /* default */]);\n\n/***/ }),\n/* 40 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VJumbotron__ = __webpack_require__(126);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */]);\n\n/***/ }),\n/* 41 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (function () {\n var expandedParentClass = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n return {\n enter: function enter(el, done) {\n el._parent = el.parentNode;\n\n Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"a\" /* addOnceEventListener */])(el, 'transitionend', done);\n\n // Get height that is to be scrolled\n el.style.overflow = 'hidden';\n el.style.height = 0;\n el.style.display = 'block';\n expandedParentClass && el._parent.classList.add(expandedParentClass);\n\n setTimeout(function () {\n return el.style.height = el.scrollHeight + 'px';\n }, 100);\n },\n afterEnter: function afterEnter(el) {\n el.style.overflow = null;\n el.style.height = null;\n },\n leave: function leave(el, done) {\n // Remove initial transition\n Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"a\" /* addOnceEventListener */])(el, 'transitionend', done);\n\n // Set height before we transition to 0\n el.style.overflow = 'hidden';\n el.style.height = el.offsetHeight + 'px';\n\n setTimeout(function () {\n return el.style.height = 0;\n }, 100);\n },\n afterLeave: function afterLeave(el) {\n expandedParentClass && el._parent && el._parent.classList.remove(expandedParentClass);\n }\n };\n});\n\n/***/ }),\n/* 42 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__input__ = __webpack_require__(19);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'selectable',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__input__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_0__colorable__[\"a\" /* default */]],\n\n model: {\n prop: 'inputValue',\n event: 'change'\n },\n\n data: function data() {\n return {\n defaultColor: 'accent'\n };\n },\n\n props: {\n id: String,\n inputValue: null,\n falseValue: null,\n trueValue: null\n },\n\n computed: {\n isActive: function isActive() {\n if (Array.isArray(this.inputValue)) {\n return this.inputValue.indexOf(this.value) !== -1;\n }\n\n if (!this.trueValue || !this.falseValue) {\n return this.value ? this.value === this.inputValue : Boolean(this.inputValue);\n }\n\n return this.inputValue === this.trueValue;\n },\n isDirty: function isDirty() {\n return this.isActive;\n }\n },\n\n watch: {\n indeterminate: function indeterminate(val) {\n this.inputIndeterminate = val;\n }\n },\n\n methods: {\n genLabel: function genLabel() {\n return this.$createElement('label', {\n on: { click: this.toggle },\n attrs: {\n for: this.id\n }\n }, this.$slots.label || this.label);\n },\n toggle: function toggle() {\n if (this.disabled) {\n return;\n }\n\n var input = this.inputValue;\n if (Array.isArray(input)) {\n input = input.slice();\n var i = input.indexOf(this.value);\n\n if (i === -1) {\n input.push(this.value);\n } else {\n input.splice(i, 1);\n }\n } else if (this.trueValue || this.falseValue) {\n input = input === this.trueValue ? this.falseValue : this.trueValue;\n } else if (this.value) {\n input = this.value === this.inputValue ? null : this.value;\n } else {\n input = !input;\n }\n\n this.validate(true, input);\n\n this.$emit('change', input);\n }\n }\n});\n\n/***/ }),\n/* 43 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VProgressLinear__ = __webpack_require__(44);\n\n\n/**\n * Loadable\n *\n * @mixin\n *\n * Used to add linear progress bar to components\n * Can use a default bar with a specific color\n * or designate a custom progress linear bar\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'loadable',\n\n props: {\n loading: {\n type: [Boolean, String],\n default: false\n }\n },\n\n methods: {\n genProgress: function genProgress() {\n if (this.loading === false) return null;\n\n return this.$slots.progress || this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VProgressLinear__[\"a\" /* default */], {\n props: {\n color: this.loading === true || this.loading === '' ? this.color || 'primary' : this.loading,\n height: 2,\n indeterminate: true\n }\n });\n }\n }\n});\n\n/***/ }),\n/* 44 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VProgressLinear__ = __webpack_require__(129);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VProgressLinear__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VProgressLinear__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VProgressLinear__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VProgressLinear__[\"a\" /* default */]);\n\n/***/ }),\n/* 45 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VChip__ = __webpack_require__(132);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VChip__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VChip__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VChip__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VChip__[\"a\" /* default */]);\n\n/***/ }),\n/* 46 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_VSelect__ = __webpack_require__(47);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__filterable__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__loadable__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__util_console__ = __webpack_require__(5);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * DataIterable\n *\n * @mixin\n *\n * Base behavior for data table and data iterator\n * providing selection, pagination, sorting and filtering.\n *\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'data-iterable',\n\n data: function data() {\n return {\n searchLength: 0,\n defaultPagination: {\n descending: false,\n page: 1,\n rowsPerPage: 5,\n sortBy: null,\n totalItems: 0\n },\n expanded: {},\n actionsClasses: 'data-iterator__actions',\n actionsRangeControlsClasses: 'data-iterator__actions__range-controls',\n actionsSelectClasses: 'data-iterator__actions__select',\n actionsPaginationClasses: 'data-iterator__actions__pagination'\n };\n },\n\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__filterable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__loadable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__themeable__[\"a\" /* default */]],\n\n props: {\n expand: Boolean,\n hideActions: Boolean,\n disableInitialSort: Boolean,\n mustSort: Boolean,\n noResultsText: {\n type: String,\n default: 'No matching records found'\n },\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n rowsPerPageItems: {\n type: Array,\n default: function _default() {\n return [5, 10, 25, { text: 'All', value: -1 }];\n }\n },\n rowsPerPageText: {\n type: String,\n default: 'Items per page:'\n },\n selectAll: [Boolean, String],\n search: {\n required: false\n },\n filter: {\n type: Function,\n default: function _default(val, search) {\n return val != null && typeof val !== 'boolean' && val.toString().toLowerCase().indexOf(search) !== -1;\n }\n },\n customFilter: {\n type: Function,\n default: function _default(items, search, filter) {\n search = search.toString().toLowerCase();\n if (search.trim() === '') return items;\n\n return items.filter(function (i) {\n return Object.keys(i).some(function (j) {\n return filter(i[j], search);\n });\n });\n }\n },\n customSort: {\n type: Function,\n default: function _default(items, index, isDescending) {\n if (index === null) return items;\n\n return items.sort(function (a, b) {\n var sortA = Object(__WEBPACK_IMPORTED_MODULE_6__util_helpers__[\"i\" /* getObjectValueByPath */])(a, index);\n var sortB = Object(__WEBPACK_IMPORTED_MODULE_6__util_helpers__[\"i\" /* getObjectValueByPath */])(b, index);\n\n if (isDescending) {\n var _ref = [sortB, sortA];\n sortA = _ref[0];\n sortB = _ref[1];\n }\n\n // Check if both are numbers\n if (!isNaN(sortA) && !isNaN(sortB)) {\n return sortA - sortB;\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n return 0;\n }\n\n var _map = [sortA, sortB].map(function (s) {\n return (s || '').toString().toLocaleLowerCase();\n });\n\n var _map2 = _slicedToArray(_map, 2);\n\n sortA = _map2[0];\n sortB = _map2[1];\n\n\n if (sortA > sortB) return 1;\n if (sortA < sortB) return -1;\n\n return 0;\n });\n }\n },\n value: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n items: {\n type: Array,\n required: true,\n default: function _default() {\n return [];\n }\n },\n totalItems: {\n type: Number,\n default: null\n },\n itemKey: {\n type: String,\n default: 'id'\n },\n pagination: {\n type: Object,\n default: function _default() {}\n }\n },\n\n computed: {\n computedPagination: function computedPagination() {\n return this.hasPagination ? this.pagination : this.defaultPagination;\n },\n hasPagination: function hasPagination() {\n var pagination = this.pagination || {};\n\n return Object.keys(pagination).length > 0;\n },\n hasSelectAll: function hasSelectAll() {\n return this.selectAll !== undefined && this.selectAll !== false;\n },\n itemsLength: function itemsLength() {\n if (this.search) return this.searchLength;\n return this.totalItems || this.items.length;\n },\n indeterminate: function indeterminate() {\n return this.hasSelectAll && this.someItems && !this.everyItem;\n },\n everyItem: function everyItem() {\n var _this = this;\n\n return this.filteredItems.length && this.filteredItems.every(function (i) {\n return _this.isSelected(i);\n });\n },\n someItems: function someItems() {\n var _this2 = this;\n\n return this.filteredItems.some(function (i) {\n return _this2.isSelected(i);\n });\n },\n getPage: function getPage() {\n var rowsPerPage = this.computedPagination.rowsPerPage;\n\n\n return rowsPerPage === Object(rowsPerPage) ? rowsPerPage.value : rowsPerPage;\n },\n pageStart: function pageStart() {\n return this.getPage === -1 ? 0 : (this.computedPagination.page - 1) * this.getPage;\n },\n pageStop: function pageStop() {\n return this.getPage === -1 ? this.itemsLength : this.computedPagination.page * this.getPage;\n },\n filteredItems: function filteredItems() {\n return this.filteredItemsImpl();\n },\n selected: function selected() {\n var selected = {};\n for (var index = 0; index < this.value.length; index++) {\n selected[this.value[index][this.itemKey]] = true;\n }\n return selected;\n }\n },\n\n watch: {\n itemsLength: function itemsLength(totalItems) {\n this.updatePagination({ page: 1, totalItems: totalItems });\n }\n },\n\n methods: {\n initPagination: function initPagination() {\n if (!this.rowsPerPageItems.length) {\n Object(__WEBPACK_IMPORTED_MODULE_7__util_console__[\"b\" /* consoleWarn */])('The prop \\'rows-per-page-items\\' can not be empty', this);\n } else {\n this.defaultPagination.rowsPerPage = this.rowsPerPageItems[0];\n }\n\n this.defaultPagination.totalItems = this.itemsLength;\n\n this.updatePagination(Object.assign({}, this.defaultPagination, this.pagination));\n },\n updatePagination: function updatePagination(val) {\n var pagination = this.hasPagination ? this.pagination : this.defaultPagination;\n var updatedPagination = Object.assign({}, pagination, val);\n this.$emit('update:pagination', updatedPagination);\n\n if (!this.hasPagination) {\n this.defaultPagination = updatedPagination;\n }\n },\n isSelected: function isSelected(item) {\n return this.selected[item[this.itemKey]];\n },\n isExpanded: function isExpanded(item) {\n return this.expanded[item[this.itemKey]];\n },\n filteredItemsImpl: function filteredItemsImpl() {\n if (this.totalItems) return this.items;\n\n var items = this.items.slice();\n var hasSearch = typeof this.search !== 'undefined' && this.search !== null;\n\n if (hasSearch) {\n for (var _len = arguments.length, additionalFilterArgs = Array(_len), _key = 0; _key < _len; _key++) {\n additionalFilterArgs[_key] = arguments[_key];\n }\n\n items = this.customFilter.apply(this, [items, this.search, this.filter].concat(additionalFilterArgs));\n this.searchLength = items.length;\n }\n\n items = this.customSort(items, this.computedPagination.sortBy, this.computedPagination.descending);\n\n return this.hideActions && !this.hasPagination ? items : items.slice(this.pageStart, this.pageStop);\n },\n sort: function sort(index) {\n var _computedPagination = this.computedPagination,\n sortBy = _computedPagination.sortBy,\n descending = _computedPagination.descending;\n\n if (sortBy === null) {\n this.updatePagination({ sortBy: index, descending: false });\n } else if (sortBy === index && !descending) {\n this.updatePagination({ descending: true });\n } else if (sortBy !== index) {\n this.updatePagination({ sortBy: index, descending: false });\n } else if (!this.mustSort) {\n this.updatePagination({ sortBy: null, descending: null });\n } else {\n this.updatePagination({ sortBy: index, descending: false });\n }\n },\n toggle: function toggle(value) {\n var _this3 = this;\n\n var selected = Object.assign({}, this.selected);\n for (var index = 0; index < this.filteredItems.length; index++) {\n selected[this.filteredItems[index][this.itemKey]] = value;\n }\n\n this.$emit('input', this.items.filter(function (i) {\n return selected[i[_this3.itemKey]];\n }));\n },\n createProps: function createProps(item, index) {\n var _this4 = this;\n\n var props = { item: item, index: index };\n var keyProp = this.itemKey;\n var itemKey = item[keyProp];\n\n Object.defineProperty(props, 'selected', {\n get: function get() {\n return _this4.selected[item[_this4.itemKey]];\n },\n set: function set(value) {\n if (itemKey == null) {\n Object(__WEBPACK_IMPORTED_MODULE_7__util_console__[\"b\" /* consoleWarn */])('\"' + keyProp + '\" attribute must be defined for item', _this4);\n }\n\n var selected = _this4.value.slice();\n if (value) selected.push(item);else selected = selected.filter(function (i) {\n return i[keyProp] !== itemKey;\n });\n _this4.$emit('input', selected);\n }\n });\n\n Object.defineProperty(props, 'expanded', {\n get: function get() {\n return _this4.expanded[item[_this4.itemKey]];\n },\n set: function set(value) {\n if (itemKey == null) {\n Object(__WEBPACK_IMPORTED_MODULE_7__util_console__[\"b\" /* consoleWarn */])('\"' + keyProp + '\" attribute must be defined for item', _this4);\n }\n\n if (!_this4.expand) {\n for (var key in _this4.expanded) {\n _this4.expanded.hasOwnProperty(key) && _this4.$set(_this4.expanded, key, false);\n }\n }\n _this4.$set(_this4.expanded, itemKey, value);\n }\n });\n\n return props;\n },\n genItems: function genItems() {\n if (!this.itemsLength && !this.items.length) {\n var noData = this.$slots['no-data'] || this.noDataText;\n return [this.genEmptyItems(noData)];\n }\n\n if (!this.filteredItems.length) {\n var noResults = this.$slots['no-results'] || this.noResultsText;\n return [this.genEmptyItems(noResults)];\n }\n\n return this.genFilteredItems();\n },\n genPrevIcon: function genPrevIcon() {\n var _this5 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VBtn__[\"a\" /* default */], {\n props: {\n disabled: this.computedPagination.page === 1,\n icon: true,\n flat: true,\n dark: this.dark,\n light: this.light\n },\n on: {\n click: function click() {\n var page = _this5.computedPagination.page;\n _this5.updatePagination({ page: page - 1 });\n }\n },\n attrs: {\n 'aria-label': 'Previous page' // TODO: Localization\n }\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__components_VIcon__[\"a\" /* default */], this.prevIcon)]);\n },\n genNextIcon: function genNextIcon() {\n var _this6 = this;\n\n var pagination = this.computedPagination;\n var disabled = pagination.rowsPerPage < 0 || pagination.page * pagination.rowsPerPage >= this.itemsLength || this.pageStop < 0;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VBtn__[\"a\" /* default */], {\n props: {\n disabled: disabled,\n icon: true,\n flat: true,\n dark: this.dark,\n light: this.light\n },\n on: {\n click: function click() {\n var page = _this6.computedPagination.page;\n _this6.updatePagination({ page: page + 1 });\n }\n },\n attrs: {\n 'aria-label': 'Next page' // TODO: Localization\n }\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__components_VIcon__[\"a\" /* default */], this.nextIcon)]);\n },\n genSelect: function genSelect() {\n var _this7 = this;\n\n return this.$createElement('div', {\n 'class': this.actionsSelectClasses\n }, [this.rowsPerPageText, this.$createElement(__WEBPACK_IMPORTED_MODULE_2__components_VSelect__[\"a\" /* default */], {\n attrs: {\n 'aria-label': this.rowsPerPageText\n },\n props: {\n items: this.rowsPerPageItems,\n value: this.computedPagination.rowsPerPage,\n hideDetails: true,\n auto: true,\n minWidth: '75px'\n },\n on: {\n input: function input(val) {\n _this7.updatePagination({\n page: 1,\n rowsPerPage: val\n });\n }\n }\n })]);\n },\n genPagination: function genPagination() {\n var pagination = '–';\n\n if (this.itemsLength) {\n var stop = this.itemsLength < this.pageStop || this.pageStop < 0 ? this.itemsLength : this.pageStop;\n\n pagination = this.$scopedSlots.pageText ? this.$scopedSlots.pageText({\n pageStart: this.pageStart + 1,\n pageStop: stop,\n itemsLength: this.itemsLength\n }) : this.pageStart + 1 + '-' + stop + ' of ' + this.itemsLength;\n }\n\n return this.$createElement('div', {\n 'class': this.actionsPaginationClasses\n }, [pagination]);\n },\n genActions: function genActions() {\n var rangeControls = this.$createElement('div', {\n 'class': this.actionsRangeControlsClasses\n }, [this.genPagination(), this.genPrevIcon(), this.genNextIcon()]);\n\n return [this.$createElement('div', {\n 'class': this.actionsClasses\n }, [this.rowsPerPageItems.length > 1 ? this.genSelect() : null, rangeControls])];\n }\n }\n});\n\n/***/ }),\n/* 47 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSelect__ = __webpack_require__(137);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSelect__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSelect__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSelect__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSelect__[\"a\" /* default */]);\n\n/***/ }),\n/* 48 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 49 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'filterable',\n\n props: {\n noDataText: {\n type: String,\n default: 'No data available'\n }\n }\n});\n\n/***/ }),\n/* 50 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_mask__ = __webpack_require__(139);\n/**\n * Maskable\n *\n * @mixin\n *\n * Creates an input mask that is\n * generated from a masked str\n *\n * Example: mask=\"#### #### #### ####\"\n */\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'maskable',\n\n data: function data() {\n return {\n selection: 0,\n lazySelection: 0,\n preDefined: {\n 'credit-card': '#### - #### - #### - ####',\n 'date': '##/##/####',\n 'date-with-time': '##/##/#### ##:##',\n 'phone': '(###) ### - ####',\n 'social': '###-##-####',\n 'time': '##:##',\n 'time-with-seconds': '##:##:##'\n }\n };\n },\n\n props: {\n dontFillMaskBlanks: Boolean,\n mask: {\n type: [Object, String],\n default: null\n },\n returnMaskedValue: Boolean\n },\n\n computed: {\n masked: function masked() {\n var preDefined = this.preDefined[this.mask];\n var mask = preDefined || this.mask || '';\n\n return mask.split('');\n }\n },\n\n watch: {\n /**\n * Make sure the cursor is in the correct\n * location when the mask changes\n */\n mask: function mask() {\n var _this = this;\n\n if (!this.$refs.input) return;\n\n var oldValue = this.$refs.input.value;\n var newValue = this.maskText(Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"c\" /* unmaskText */])(this.lazyValue));\n var position = 0;\n var selection = this.selection;\n\n for (var index = 0; index < selection; index++) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"a\" /* isMaskDelimiter */])(oldValue[index]) || position++;\n }\n\n selection = 0;\n if (newValue) {\n for (var _index = 0; _index < newValue.length; _index++) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"a\" /* isMaskDelimiter */])(newValue[_index]) || position--;\n selection++;\n if (position <= 0) break;\n }\n }\n\n this.$nextTick(function () {\n _this.$refs.input.value = newValue;\n _this.setCaretPosition(selection);\n });\n }\n },\n\n beforeMount: function beforeMount() {\n if (!this.mask || this.value == null || !this.returnMaskedValue) return;\n\n var value = this.maskText(this.value);\n\n // See if masked value does not\n // match the user given value\n if (value === this.value) return;\n\n this.$emit('input', value);\n },\n\n\n methods: {\n setCaretPosition: function setCaretPosition(selection) {\n var _this2 = this;\n\n this.selection = selection;\n window.setTimeout(function () {\n _this2.$refs.input && _this2.$refs.input.setSelectionRange(_this2.selection, _this2.selection);\n }, 0);\n },\n updateRange: function updateRange() {\n if (!this.$refs.input) return;\n\n var newValue = this.maskText(this.lazyValue);\n var selection = 0;\n\n this.$refs.input.value = newValue;\n if (newValue) {\n for (var index = 0; index < newValue.length; index++) {\n if (this.lazySelection <= 0) break;\n Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"a\" /* isMaskDelimiter */])(newValue[index]) || this.lazySelection--;\n selection++;\n }\n }\n\n this.setCaretPosition(selection);\n // this.$emit() must occur only when all internal values are correct\n this.$emit('input', this.returnMaskedValue ? this.$refs.input.value : this.lazyValue);\n },\n maskText: function maskText(text) {\n return this.mask ? Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"b\" /* maskText */])(text, this.masked, this.dontFillMaskBlanks) : text;\n },\n unmaskText: function unmaskText(text) {\n return this.mask && !this.returnMaskedValue ? Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"c\" /* unmaskText */])(text) : text;\n },\n\n // When the input changes and is\n // re-created, ensure that the\n // caret location is correct\n setSelectionRange: function setSelectionRange() {\n this.$nextTick(this.updateRange);\n },\n resetSelections: function resetSelections(input) {\n if (!input.selectionEnd) return;\n this.selection = input.selectionEnd;\n this.lazySelection = 0;\n\n for (var index = 0; index < this.selection; index++) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_mask__[\"a\" /* isMaskDelimiter */])(input.value[index]) || this.lazySelection++;\n }\n }\n }\n});\n\n/***/ }),\n/* 51 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'soloable',\n\n props: {\n flat: Boolean,\n soloInverted: Boolean,\n solo: Boolean\n },\n\n computed: {\n isSolo: function isSolo() {\n return this.solo || this.soloInverted;\n }\n },\n\n methods: {\n genSoloClasses: function genSoloClasses() {\n return {\n 'input-group--solo': this.isSolo,\n 'input-group--solo-inverted': this.soloInverted,\n 'elevation-0': this.flat\n };\n }\n }\n});\n\n/***/ }),\n/* 52 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDivider__ = __webpack_require__(144);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VDivider__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDivider__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDivider__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDivider__[\"a\" /* default */]);\n\n/***/ }),\n/* 53 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Delayable\n *\n * @mixin\n *\n * Changes the open or close\n * delay time for elements\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'delayable',\n\n data: function data() {\n return {\n openTimeout: null,\n closeTimeout: null\n };\n },\n\n props: {\n openDelay: {\n type: [Number, String],\n default: 0\n },\n closeDelay: {\n type: [Number, String],\n default: 200\n }\n },\n\n methods: {\n /**\n * Clear any pending delay\n * timers from executing\n *\n * @return {void}\n */\n clearDelay: function clearDelay() {\n clearTimeout(this.openTimeout);\n clearTimeout(this.closeTimeout);\n },\n\n /**\n * Runs callback after\n * a specified delay\n *\n * @param {String} type\n * @param {Function} cb\n *\n * @return {void}\n */\n runDelay: function runDelay(type, cb) {\n this.clearDelay();\n\n var delay = parseInt(this[type + 'Delay'], 10);\n\n this[type + 'Timeout'] = setTimeout(cb, delay);\n }\n }\n});\n\n/***/ }),\n/* 54 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stackable__ = __webpack_require__(38);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__themeable__ = __webpack_require__(1);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n\n\n\n\n\n/* eslint-disable object-property-newline */\nvar dimensions = {\n activator: {\n top: 0, left: 0,\n bottom: 0, right: 0,\n width: 0, height: 0,\n offsetTop: 0, scrollHeight: 0\n },\n content: {\n top: 0, left: 0,\n bottom: 0, right: 0,\n width: 0, height: 0,\n offsetTop: 0, scrollHeight: 0\n },\n hasWindow: false\n /* eslint-enable object-property-newline */\n\n /**\n * Menuable\n *\n * @mixin\n *\n * Used for fixed or absolutely positioning\n * elements within the DOM\n * Can calculate X and Y axis overflows\n * As well as be manually positioned\n */\n};/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'menuable',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__positionable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__stackable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n absoluteX: 0,\n absoluteY: 0,\n dimensions: Object.assign({}, dimensions),\n isContentActive: false,\n pageYOffset: 0,\n stackClass: 'menuable__content__active',\n stackMinZIndex: 6\n };\n },\n\n props: {\n activator: {\n default: null,\n validator: function validator(val) {\n return ['string', 'object'].includes(typeof val === 'undefined' ? 'undefined' : _typeof(val));\n }\n },\n allowOverflow: Boolean,\n maxWidth: {\n type: [Number, String],\n default: 'auto'\n },\n minWidth: [Number, String],\n nudgeBottom: {\n type: Number,\n default: 0\n },\n nudgeLeft: {\n type: [Number, String],\n default: 0\n },\n nudgeRight: {\n type: [Number, String],\n default: 0\n },\n nudgeTop: {\n type: [Number, String],\n default: 0\n },\n nudgeWidth: {\n type: [Number, String],\n default: 0\n },\n offsetOverflow: Boolean,\n positionX: {\n type: Number,\n default: null\n },\n positionY: {\n type: Number,\n default: null\n },\n zIndex: {\n type: [Number, String],\n default: null\n }\n },\n\n computed: {\n computedLeft: function computedLeft() {\n var a = this.dimensions.activator;\n var c = this.dimensions.content;\n var minWidth = a.width < c.width ? c.width : a.width;\n var left = 0;\n\n left += this.left ? a.left - (minWidth - a.width) : a.left;\n\n if (this.offsetX) left += this.left ? -a.width : a.width;\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft);\n if (this.nudgeRight) left += parseInt(this.nudgeRight);\n\n return left;\n },\n computedTop: function computedTop() {\n var a = this.dimensions.activator;\n var c = this.dimensions.content;\n var top = this.top ? a.bottom - c.height : a.top;\n\n if (!this.isAttached) top += this.pageYOffset;\n if (this.offsetY) top += this.top ? -a.height : a.height;\n if (this.nudgeTop) top -= this.nudgeTop;\n if (this.nudgeBottom) top += this.nudgeBottom;\n\n return top;\n },\n hasActivator: function hasActivator() {\n return !!this.$slots.activator || this.activator;\n },\n isAttached: function isAttached() {\n return this.attach !== false;\n }\n },\n\n watch: {\n disabled: function disabled(val) {\n val && this.callDeactivate();\n },\n isActive: function isActive(val) {\n if (this.disabled) return;\n\n val ? this.callActivate() : this.callDeactivate();\n }\n },\n\n beforeMount: function beforeMount() {\n this.checkForWindow();\n },\n\n\n methods: {\n absolutePosition: function absolutePosition() {\n return {\n offsetTop: 0,\n scrollHeight: 0,\n top: this.positionY || this.absoluteY,\n bottom: this.positionY || this.absoluteY,\n left: this.positionX || this.absoluteX,\n right: this.positionX || this.absoluteX,\n height: 0,\n width: 0\n };\n },\n activate: function activate() {},\n calcLeft: function calcLeft() {\n return (this.isAttached ? this.computedLeft : this.calcXOverflow(this.computedLeft)) + 'px';\n },\n calcTop: function calcTop() {\n return (this.isAttached ? this.computedTop : this.calcYOverflow(this.computedTop)) + 'px';\n },\n calcXOverflow: function calcXOverflow(left) {\n var parsedMaxWidth = isNaN(parseInt(this.maxWidth)) ? 0 : parseInt(this.maxWidth);\n var innerWidth = this.getInnerWidth();\n var maxWidth = Math.max(this.dimensions.content.width, parsedMaxWidth);\n var totalWidth = left + maxWidth;\n var availableWidth = totalWidth - innerWidth;\n\n if ((!this.left || this.right) && availableWidth > 0) {\n left = innerWidth - maxWidth - (innerWidth > 600 ? 30 : 12) // Account for scrollbar\n ;\n }\n\n if (left < 0) left = 12;\n\n return left;\n },\n calcYOverflow: function calcYOverflow(top) {\n var documentHeight = this.getInnerHeight();\n var toTop = this.pageYOffset + documentHeight;\n var activator = this.dimensions.activator;\n var contentHeight = this.dimensions.content.height;\n var totalHeight = top + contentHeight;\n var isOverflowing = toTop < totalHeight;\n\n // If overflowing bottom and offset\n // TODO: set 'bottom' position instead of 'top'\n if (isOverflowing && this.offsetOverflow) {\n top = this.pageYOffset + (activator.top - contentHeight);\n // If overflowing bottom\n } else if (isOverflowing && !this.allowOverflow) {\n top = toTop - contentHeight - 12;\n // If overflowing top\n } else if (top < this.pageYOffset && !this.allowOverflow) {\n top = this.pageYOffset + 12;\n }\n\n return top < 12 ? 12 : top;\n },\n callActivate: function callActivate() {\n if (!this.hasWindow) return;\n\n this.activate();\n },\n callDeactivate: function callDeactivate() {\n this.isContentActive = false;\n\n this.deactivate();\n },\n checkForWindow: function checkForWindow() {\n if (!this.hasWindow) {\n this.hasWindow = typeof window !== 'undefined';\n }\n },\n checkForPageYOffset: function checkForPageYOffset() {\n if (this.hasWindow) {\n this.pageYOffset = this.getOffsetTop();\n }\n },\n deactivate: function deactivate() {},\n getActivator: function getActivator() {\n if (this.activator) {\n return typeof this.activator === 'string' ? document.querySelector(this.activator) : this.activator;\n }\n\n return this.$refs.activator.children.length > 0 ? this.$refs.activator.children[0] : this.$refs.activator;\n },\n getInnerHeight: function getInnerHeight() {\n if (!this.hasWindow) return 0;\n\n return window.innerHeight || document.documentElement.clientHeight;\n },\n getInnerWidth: function getInnerWidth() {\n if (!this.hasWindow) return 0;\n\n return window.innerWidth;\n },\n getOffsetTop: function getOffsetTop() {\n if (!this.hasWindow) return 0;\n\n return window.pageYOffset || document.documentElement.scrollTop;\n },\n getRoundedBoundedClientRect: function getRoundedBoundedClientRect(el) {\n var rect = el.getBoundingClientRect();\n return {\n top: Math.round(rect.top),\n left: Math.round(rect.left),\n bottom: Math.round(rect.bottom),\n right: Math.round(rect.right),\n width: Math.round(rect.width),\n height: Math.round(rect.height)\n };\n },\n measure: function measure(el, selector) {\n el = selector ? el.querySelector(selector) : el;\n\n if (!el || !this.hasWindow) return null;\n\n var rect = this.getRoundedBoundedClientRect(el);\n\n // Account for activator margin\n if (this.isAttached) {\n var style = window.getComputedStyle(el);\n\n rect.left = parseInt(style.marginLeft);\n rect.top = parseInt(style.marginTop);\n }\n\n return rect;\n },\n sneakPeek: function sneakPeek(cb) {\n var _this = this;\n\n requestAnimationFrame(function () {\n var el = _this.$refs.content;\n\n if (!el || _this.isShown(el)) return cb();\n\n el.style.display = 'inline-block';\n cb();\n el.style.display = 'none';\n });\n },\n startTransition: function startTransition() {\n var _this2 = this;\n\n requestAnimationFrame(function () {\n return _this2.isContentActive = true;\n });\n },\n isShown: function isShown(el) {\n return el.style.display !== 'none';\n },\n updateDimensions: function updateDimensions() {\n var _this3 = this;\n\n this.checkForWindow();\n this.checkForPageYOffset();\n\n var dimensions = {};\n\n // Activator should already be shown\n dimensions.activator = !this.hasActivator || this.absolute ? this.absolutePosition() : this.measure(this.getActivator());\n\n // Display and hide to get dimensions\n this.sneakPeek(function () {\n dimensions.content = _this3.measure(_this3.$refs.content);\n\n _this3.dimensions = dimensions;\n });\n }\n }\n});\n\n/***/ }),\n/* 55 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSubheader__ = __webpack_require__(152);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSubheader__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSubheader__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSubheader__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSubheader__[\"a\" /* default */]);\n\n/***/ }),\n/* 56 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VListTileActionText */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return VListTileContent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"e\", function() { return VListTileTitle; });\n/* unused harmony export VListTileSubTitle */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VList__ = __webpack_require__(154);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VListGroup__ = __webpack_require__(156);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VListTile__ = __webpack_require__(157);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VListTileAction__ = __webpack_require__(158);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VListTileAvatar__ = __webpack_require__(159);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_1__VList__[\"a\"]; });\n/* unused harmony reexport VListGroup */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__VListTile__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_4__VListTileAction__[\"a\"]; });\n/* unused harmony reexport VListTileAvatar */\n\n\n\n\n\n\n\n\n\nvar VListTileActionText = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('list__tile__action-text', 'span');\nvar VListTileContent = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('list__tile__content', 'div');\nvar VListTileTitle = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('list__tile__title', 'div');\nvar VListTileSubTitle = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('list__tile__sub-title', 'div');\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VList__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VList__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VList__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VListGroup__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VListGroup__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VListTile__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VListTile__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VListTileAction__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VListTileAction__[\"a\" /* default */]);\n Vue.component(VListTileActionText.name, VListTileActionText);\n Vue.component(__WEBPACK_IMPORTED_MODULE_5__VListTileAvatar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_5__VListTileAvatar__[\"a\" /* default */]);\n Vue.component(VListTileContent.name, VListTileContent);\n Vue.component(VListTileSubTitle.name, VListTileSubTitle);\n Vue.component(VListTileTitle.name, VListTileTitle);\n};\n\n/* harmony default export */ __webpack_exports__[\"f\"] = (__WEBPACK_IMPORTED_MODULE_1__VList__[\"a\" /* default */]);\n\n/***/ }),\n/* 57 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_title_styl__ = __webpack_require__(176);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_title_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_title_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_picker_button__ = __webpack_require__(58);\n\n\n// Components\n\n\n// Mixins\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker-title',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_picker_button__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isReversing: false\n };\n },\n\n props: {\n date: {\n type: String,\n default: ''\n },\n selectingYear: Boolean,\n year: {\n type: [Number, String],\n default: ''\n },\n yearIcon: {\n type: String\n },\n value: {\n type: String\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.isReversing ? 'picker-reverse-transition' : 'picker-transition';\n }\n },\n\n watch: {\n value: function value(val, prev) {\n this.isReversing = val < prev;\n }\n },\n\n methods: {\n genYearIcon: function genYearIcon() {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n props: {\n dark: true\n }\n }, this.yearIcon);\n },\n getYearBtn: function getYearBtn() {\n return this.genPickerButton('selectingYear', true, [this.year, this.yearIcon ? this.genYearIcon() : null], 'date-picker-title__year');\n },\n genTitleText: function genTitleText() {\n return this.$createElement('transition', {\n props: {\n name: this.computedTransition\n }\n }, [this.$createElement('div', {\n domProps: { innerHTML: this.date || ' ' },\n key: this.value\n })]);\n },\n genTitleDate: function genTitleDate(title) {\n return this.genPickerButton('selectingYear', false, this.genTitleText(title), 'date-picker-title__date');\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'date-picker-title'\n }, [this.getYearBtn(), this.genTitleDate()]);\n }\n});\n\n/***/ }),\n/* 58 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genPickerButton: function genPickerButton(prop, value, content) {\n var _this = this;\n\n var staticClass = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n\n var active = this[prop] === value;\n var click = function click(event) {\n event.stopPropagation();\n _this.$emit('update:' + prop, value);\n };\n\n return this.$createElement('div', {\n staticClass: ('picker__title__btn ' + staticClass).trim(),\n 'class': { active: active },\n on: active ? undefined : { click: click }\n }, Array.isArray(content) ? content : [content]);\n }\n }\n});\n\n/***/ }),\n/* 59 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_header_styl__ = __webpack_require__(177);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_header_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_header_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util__ = __webpack_require__(14);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n// Components\n\n\n\n// Mixins\n\n\n// Utils\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker-header',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isReversing: false,\n defaultColor: 'accent'\n };\n },\n\n\n props: {\n disabled: Boolean,\n format: {\n type: Function,\n default: null\n },\n locale: {\n type: String,\n default: 'en-us'\n },\n min: String,\n max: String,\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n value: {\n type: [Number, String],\n required: true\n }\n },\n\n computed: {\n formatter: function formatter() {\n if (this.format) {\n return this.format;\n } else if (String(this.value).split('-')[1]) {\n return Object(__WEBPACK_IMPORTED_MODULE_4__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { month: 'long', year: 'numeric', timeZone: 'UTC' }, { length: 7 });\n } else {\n return Object(__WEBPACK_IMPORTED_MODULE_4__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 });\n }\n }\n },\n\n watch: {\n value: function value(newVal, oldVal) {\n this.isReversing = newVal < oldVal;\n }\n },\n\n methods: {\n genBtn: function genBtn(change) {\n var _this = this;\n\n var disabled = this.disabled || change < 0 && this.min && this.calculateChange(change) < this.min || change > 0 && this.max && this.calculateChange(change) > this.max;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VBtn__[\"a\" /* default */], {\n props: {\n dark: this.dark,\n disabled: disabled,\n icon: true\n },\n nativeOn: {\n click: function click(e) {\n e.stopPropagation();\n _this.$emit('input', _this.calculateChange(change));\n }\n }\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], change < 0 ? this.prevIcon : this.nextIcon)]);\n },\n calculateChange: function calculateChange(sign) {\n var _String$split$map = String(this.value).split('-').map(function (v) {\n return 1 * v;\n }),\n _String$split$map2 = _slicedToArray(_String$split$map, 2),\n year = _String$split$map2[0],\n month = _String$split$map2[1];\n\n if (month == null) {\n return '' + (year + sign);\n } else {\n return Object(__WEBPACK_IMPORTED_MODULE_4__util__[\"b\" /* monthChange */])(String(this.value), sign);\n }\n },\n genHeader: function genHeader() {\n var _this2 = this;\n\n var header = this.$createElement('strong', {\n 'class': this.disabled ? undefined : this.addTextColorClassChecks(),\n key: String(this.value),\n on: {\n click: function click() {\n return _this2.$emit('toggle');\n }\n }\n }, [this.$slots.default || this.formatter(String(this.value))]);\n\n var transition = this.$createElement('transition', {\n props: {\n name: this.isReversing ? 'tab-reverse-transition' : 'tab-transition'\n }\n }, [header]);\n\n return this.$createElement('div', {\n staticClass: 'date-picker-header__value',\n class: {\n 'date-picker-header__value--disabled': this.disabled\n }\n }, [transition]);\n }\n },\n\n render: function render(h) {\n return this.$createElement('div', {\n staticClass: 'date-picker-header'\n }, [this.genBtn(-1), this.genHeader(), this.genBtn(+1)]);\n }\n});\n\n/***/ }),\n/* 60 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_date_picker_table__ = __webpack_require__(61);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_helpers__ = __webpack_require__(2);\n// Mixins\n\n\n\n// Utils\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker-date-table',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_date_picker_table__[\"a\" /* default */]],\n\n props: {\n events: {\n type: [Array, Object, Function],\n default: function _default() {\n return null;\n }\n },\n eventColor: {\n type: [String, Function, Object],\n default: 'warning'\n },\n firstDayOfWeek: {\n type: [String, Number],\n default: 0\n },\n weekdayFormat: {\n type: Function,\n default: null\n }\n },\n\n computed: {\n formatter: function formatter() {\n return this.format || Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { day: 'numeric', timeZone: 'UTC' }, { start: 8, length: 2 });\n },\n weekdayFormatter: function weekdayFormatter() {\n return this.weekdayFormat || Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { weekday: 'narrow', timeZone: 'UTC' });\n },\n weekDays: function weekDays() {\n var _this = this;\n\n var first = parseInt(this.firstDayOfWeek, 10);\n\n return this.weekdayFormatter ? Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(7).map(function (i) {\n return _this.weekdayFormatter('2017-01-' + (first + i + 15));\n }) // 2017-01-15 is Sunday\n : Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(7).map(function (i) {\n return ['S', 'M', 'T', 'W', 'T', 'F', 'S'][(i + first) % 7];\n });\n }\n },\n\n methods: {\n calculateTableDate: function calculateTableDate(delta) {\n return Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"b\" /* monthChange */])(this.tableDate, Math.sign(delta || 1));\n },\n genTHead: function genTHead() {\n var _this2 = this;\n\n var days = this.weekDays.map(function (day) {\n return _this2.$createElement('th', day);\n });\n return this.$createElement('thead', this.genTR(days));\n },\n genEvent: function genEvent(date) {\n var eventColor = void 0;\n if (typeof this.eventColor === 'string') {\n eventColor = this.eventColor;\n } else if (typeof this.eventColor === 'function') {\n eventColor = this.eventColor(date);\n } else {\n eventColor = this.eventColor[date];\n }\n return this.$createElement('div', {\n staticClass: 'date-picker-table__event',\n class: this.addBackgroundColorClassChecks({}, eventColor || this.color)\n });\n },\n\n // Returns number of the days from the firstDayOfWeek to the first day of the current month\n weekDaysBeforeFirstDayOfTheMonth: function weekDaysBeforeFirstDayOfTheMonth() {\n var firstDayOfTheMonth = new Date(this.displayedYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"c\" /* pad */])(this.displayedMonth + 1) + '-01T00:00:00+00:00');\n var weekDay = firstDayOfTheMonth.getUTCDay();\n return (weekDay - parseInt(this.firstDayOfWeek) + 7) % 7;\n },\n isEvent: function isEvent(date) {\n if (Array.isArray(this.events)) {\n return this.events.indexOf(date) > -1;\n } else if (this.events instanceof Function) {\n return this.events(date);\n } else {\n return false;\n }\n },\n genTBody: function genTBody() {\n var children = [];\n var daysInMonth = new Date(this.displayedYear, this.displayedMonth + 1, 0).getDate();\n var rows = [];\n var day = this.weekDaysBeforeFirstDayOfTheMonth();\n\n while (day--) {\n rows.push(this.$createElement('td'));\n }for (day = 1; day <= daysInMonth; day++) {\n var date = this.displayedYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"c\" /* pad */])(this.displayedMonth + 1) + '-' + Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"c\" /* pad */])(day);\n\n rows.push(this.$createElement('td', [this.genButton(date, true), this.isEvent(date) ? this.genEvent(date) : null]));\n\n if (rows.length % 7 === 0) {\n children.push(this.genTR(rows));\n rows = [];\n }\n }\n\n if (rows.length) {\n children.push(this.genTR(rows));\n }\n\n return this.$createElement('tbody', children);\n },\n genTR: function genTR(children) {\n return [this.$createElement('tr', children)];\n }\n },\n\n render: function render(h) {\n return this.genTable('date-picker-table date-picker-table--date', [this.genTHead(), this.genTBody()]);\n }\n});\n\n/***/ }),\n/* 61 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_table_styl__ = __webpack_require__(180);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_table_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_table_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__directives_touch__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_isDateAllowed__ = __webpack_require__(62);\n\n\n// Directives\n\n\n// Utils\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_1__directives_touch__[\"a\" /* default */] },\n\n data: function data() {\n return {\n defaultColor: 'accent',\n isReversing: false\n };\n },\n\n\n props: {\n allowedDates: Function,\n current: String,\n disabled: Boolean,\n format: {\n type: Function,\n default: null\n },\n locale: {\n type: String,\n default: 'en-us'\n },\n min: String,\n max: String,\n scrollable: Boolean,\n tableDate: {\n type: String,\n required: true\n },\n value: {\n type: String,\n required: false\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.isReversing ? 'tab-reverse-transition' : 'tab-transition';\n },\n displayedMonth: function displayedMonth() {\n return this.tableDate.split('-')[1] - 1;\n },\n displayedYear: function displayedYear() {\n return this.tableDate.split('-')[0] * 1;\n }\n },\n\n watch: {\n tableDate: function tableDate(newVal, oldVal) {\n this.isReversing = newVal < oldVal;\n }\n },\n\n methods: {\n genButtonClasses: function genButtonClasses(value, isDisabled, isFloating) {\n var isSelected = value === this.value;\n var isCurrent = value === this.current;\n\n var classes = {\n 'btn--active': isSelected,\n 'btn--flat': !isSelected,\n 'btn--icon': isSelected && !isDisabled && isFloating,\n 'btn--floating': isFloating,\n 'btn--depressed': !isFloating && isSelected,\n 'btn--disabled': isDisabled || this.disabled && isSelected,\n 'btn--outline': isCurrent && !isSelected\n };\n\n if (isSelected) return this.addBackgroundColorClassChecks(classes);\n if (isCurrent) return this.addTextColorClassChecks(classes);\n return classes;\n },\n genButton: function genButton(value, isFloating) {\n var _this = this;\n\n var isDisabled = !Object(__WEBPACK_IMPORTED_MODULE_2__util_isDateAllowed__[\"a\" /* default */])(value, this.min, this.max, this.allowedDates);\n\n return this.$createElement('button', {\n staticClass: 'btn',\n 'class': this.genButtonClasses(value, isDisabled, isFloating),\n attrs: {\n type: 'button'\n },\n domProps: {\n disabled: isDisabled,\n innerHTML: '
' + this.formatter(value) + '
'\n },\n on: isDisabled ? {} : {\n click: function click() {\n return _this.$emit('input', value);\n }\n }\n });\n },\n wheel: function wheel(e) {\n e.preventDefault();\n this.$emit('tableDate', this.calculateTableDate(e.deltaY));\n },\n touch: function touch(value) {\n this.$emit('tableDate', this.calculateTableDate(value));\n },\n genTable: function genTable(staticClass, children) {\n var _this2 = this;\n\n var transition = this.$createElement('transition', {\n props: { name: this.computedTransition }\n }, [this.$createElement('table', { key: this.tableDate }, children)]);\n\n var touchDirective = {\n name: 'touch',\n value: {\n left: function left(e) {\n return e.offsetX < -15 && _this2.touch(1);\n },\n right: function right(e) {\n return e.offsetX > 15 && _this2.touch(-1);\n }\n }\n };\n\n return this.$createElement('div', {\n staticClass: staticClass,\n on: this.scrollable ? { wheel: this.wheel } : undefined,\n directives: [touchDirective]\n }, [transition]);\n }\n }\n});\n\n/***/ }),\n/* 62 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = isDateAllowed;\nfunction isDateAllowed(date, min, max, allowedFn) {\n return (!allowedFn || allowedFn(date)) && (!min || date >= min) && (!max || date <= max);\n}\n\n/***/ }),\n/* 63 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_date_picker_table__ = __webpack_require__(61);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(14);\n// Mixins\n\n\n\n// Utils\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker-month-table',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_date_picker_table__[\"a\" /* default */]],\n\n computed: {\n formatter: function formatter() {\n return this.format || Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { month: 'short', timeZone: 'UTC' }, { start: 5, length: 2 });\n }\n },\n\n methods: {\n calculateTableDate: function calculateTableDate(delta) {\n return '' + (parseInt(this.tableDate, 10) + Math.sign(delta || 1));\n },\n genTBody: function genTBody() {\n var _this = this;\n\n var children = [];\n var cols = Array(3).fill(null);\n var rows = 12 / cols.length;\n\n var _loop = function _loop(row) {\n var tds = cols.map(function (_, col) {\n var month = row * cols.length + col;\n return _this.$createElement('td', {\n key: month\n }, [_this.genButton(_this.displayedYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"c\" /* pad */])(month + 1), false)]);\n });\n\n children.push(_this.$createElement('tr', {\n key: row\n }, tds));\n };\n\n for (var row = 0; row < rows; row++) {\n _loop(row);\n }\n\n return this.$createElement('tbody', children);\n }\n },\n\n render: function render(h) {\n return this.genTable('date-picker-table date-picker-table--month', [this.genTBody()]);\n }\n});\n\n/***/ }),\n/* 64 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_years_styl__ = __webpack_require__(181);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_years_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_date_picker_years_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(14);\n\n\n// Mixins\n\n\n// Utils\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker-years',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'primary'\n };\n },\n\n\n props: {\n format: {\n type: Function,\n default: null\n },\n locale: {\n type: String,\n default: 'en-us'\n },\n min: [Number, String],\n max: [Number, String],\n value: [Number, String]\n },\n\n computed: {\n formatter: function formatter() {\n return this.format || Object(__WEBPACK_IMPORTED_MODULE_2__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 });\n }\n },\n\n mounted: function mounted() {\n this.$el.scrollTop = this.$el.scrollHeight / 2 - this.$el.offsetHeight / 2;\n },\n\n\n methods: {\n genYearItem: function genYearItem(year) {\n var _this = this;\n\n var formatted = this.formatter('' + year);\n\n return this.$createElement('li', {\n key: year,\n 'class': parseInt(this.value, 10) === year ? this.addTextColorClassChecks({ active: true }) : {},\n on: {\n click: function click() {\n return _this.$emit('input', year);\n }\n }\n }, formatted);\n },\n genYearItems: function genYearItems() {\n var children = [];\n var selectedYear = this.value ? parseInt(this.value, 10) : new Date().getFullYear();\n var maxYear = this.max ? parseInt(this.max, 10) : selectedYear + 100;\n var minYear = Math.min(maxYear, this.min ? parseInt(this.min, 10) : selectedYear - 100);\n\n for (var year = maxYear; year >= minYear; year--) {\n children.push(this.genYearItem(year));\n }\n\n return children;\n }\n },\n\n render: function render(h) {\n return this.$createElement('ul', {\n staticClass: 'date-picker-years',\n ref: 'years'\n }, this.genYearItems());\n }\n});\n\n/***/ }),\n/* 65 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VPicker__ = __webpack_require__(66);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__themeable__ = __webpack_require__(1);\n// Components\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__themeable__[\"a\" /* default */]],\n\n props: {\n fullWidth: Boolean,\n headerColor: String,\n landscape: Boolean,\n noTitle: Boolean,\n width: {\n type: [Number, String],\n default: 290,\n validator: function validator(value) {\n return parseInt(value, 10) > 0;\n }\n }\n },\n\n methods: {\n genPickerTitle: function genPickerTitle() {},\n genPickerBody: function genPickerBody() {},\n genPickerActionsSlot: function genPickerActionsSlot() {\n return this.$scopedSlots.default ? this.$scopedSlots.default({\n save: this.save,\n cancel: this.cancel\n }) : this.$slots.default;\n },\n genPicker: function genPicker(staticClass) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VPicker__[\"a\" /* default */], {\n staticClass: staticClass,\n class: this.fullWidth ? ['picker--full-width'] : [],\n props: {\n color: this.headerColor || this.color,\n dark: this.dark,\n fullWidth: this.fullWidth,\n landscape: this.landscape,\n light: this.light,\n width: this.width\n }\n }, [this.noTitle ? null : this.genPickerTitle(), this.genPickerBody(), this.$createElement('template', { slot: 'actions' }, [this.genPickerActionsSlot()])]);\n }\n }\n});\n\n/***/ }),\n/* 66 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VPicker__ = __webpack_require__(182);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VPicker__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VPicker__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VPicker__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VPicker__[\"a\" /* default */]);\n\n/***/ }),\n/* 67 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__directives_touch__ = __webpack_require__(9);\n// Mixins\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tabs-items',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_0__mixins_registrable__[\"b\" /* provide */])('tabs')],\n\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_1__directives_touch__[\"a\" /* default */] },\n\n inject: {\n registerItems: {\n default: null\n },\n tabProxy: {\n default: null\n },\n unregisterItems: {\n default: null\n }\n },\n\n data: function data() {\n return {\n items: [],\n lazyValue: this.value,\n reverse: false\n };\n },\n\n\n props: {\n cycle: Boolean,\n touchless: Boolean,\n value: [Number, String]\n },\n\n computed: {\n activeIndex: function activeIndex() {\n var _this = this;\n\n return this.items.findIndex(function (item, index) {\n return (item.id || index.toString()) === _this.lazyValue;\n });\n },\n activeItem: function activeItem() {\n if (!this.items.length) return undefined;\n\n return this.items[this.activeIndex];\n },\n\n inputValue: {\n get: function get() {\n return this.lazyValue;\n },\n set: function set(val) {\n val = val.toString();\n\n this.lazyValue = val;\n\n if (this.tabProxy) this.tabProxy(val);else this.$emit('input', val);\n }\n }\n },\n\n watch: {\n activeIndex: function activeIndex(current, previous) {\n this.reverse = current < previous;\n this.updateItems();\n },\n value: function value(val) {\n this.lazyValue = val;\n }\n },\n\n mounted: function mounted() {\n this.registerItems && this.registerItems(this.changeModel);\n },\n beforeDestroy: function beforeDestroy() {\n this.unregisterItems && this.unregisterItems();\n },\n\n\n methods: {\n changeModel: function changeModel(val) {\n this.inputValue = val;\n },\n next: function next(cycle) {\n var nextIndex = this.activeIndex + 1;\n\n if (!this.items[nextIndex]) {\n if (!cycle) return;\n nextIndex = 0;\n }\n\n this.inputValue = this.items[nextIndex].id || nextIndex;\n },\n prev: function prev(cycle) {\n var prevIndex = this.activeIndex - 1;\n\n if (!this.items[prevIndex]) {\n if (!cycle) return;\n prevIndex = this.items.length - 1;\n }\n\n this.inputValue = this.items[prevIndex].id || prevIndex;\n },\n onSwipe: function onSwipe(action) {\n this[action](this.cycle);\n },\n register: function register(item) {\n this.items.push(item);\n },\n unregister: function unregister(item) {\n this.items = this.items.filter(function (i) {\n return i !== item;\n });\n },\n updateItems: function updateItems() {\n for (var index = this.items.length; --index >= 0;) {\n this.items[index].toggle(this.lazyValue, this.reverse, this.isBooted, index);\n }\n this.isBooted = true;\n }\n },\n\n render: function render(h) {\n var _this2 = this;\n\n var data = {\n staticClass: 'tabs__items',\n directives: []\n };\n\n !this.touchless && data.directives.push({\n name: 'touch',\n value: {\n left: function left() {\n return _this2.onSwipe('next');\n },\n right: function right() {\n return _this2.onSwipe('prev');\n }\n }\n });\n\n return h('div', data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 68 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_colorable__ = __webpack_require__(0);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tabs-slider',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_colorable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'accent'\n };\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'tabs__slider',\n class: this.addBackgroundColorClassChecks()\n });\n }\n});\n\n/***/ }),\n/* 69 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_title_styl__ = __webpack_require__(249);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_title_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_title_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_picker_button__ = __webpack_require__(58);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VDatePicker_util__ = __webpack_require__(14);\n\n\n// Mixins\n\n\n// Utils\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-time-picker-title',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_picker_button__[\"a\" /* default */]],\n\n props: {\n ampm: Boolean,\n hour: Number,\n minute: Number,\n period: {\n type: String,\n validator: function validator(period) {\n return period === 'am' || period === 'pm';\n }\n },\n selectingHour: Boolean\n },\n\n methods: {\n genTime: function genTime() {\n var hour = this.hour;\n if (this.ampm) {\n hour = hour ? (hour - 1) % 12 + 1 : 12;\n }\n\n var displayedHour = this.hour == null ? '--' : this.ampm ? hour : Object(__WEBPACK_IMPORTED_MODULE_2__VDatePicker_util__[\"c\" /* pad */])(hour);\n var displayedMinute = this.minute == null ? '--' : Object(__WEBPACK_IMPORTED_MODULE_2__VDatePicker_util__[\"c\" /* pad */])(this.minute);\n\n return this.$createElement('div', {\n 'class': 'time-picker-title__time'\n }, [this.genPickerButton('selectingHour', true, displayedHour), this.$createElement('span', ':'), this.genPickerButton('selectingHour', false, displayedMinute)]);\n },\n genAmPm: function genAmPm() {\n return this.$createElement('div', {\n staticClass: 'time-picker-title__ampm'\n }, [this.genPickerButton('period', 'am', 'am'), this.genPickerButton('period', 'pm', 'pm')]);\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'time-picker-title'\n }, [this.genTime(), this.ampm ? this.genAmPm() : null]);\n }\n});\n\n/***/ }),\n/* 70 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_clock_styl__ = __webpack_require__(250);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_clock_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_time_picker_clock_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__ = __webpack_require__(1);\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-time-picker-clock',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'accent',\n inputValue: this.value,\n isDragging: false\n };\n },\n\n\n props: {\n allowedValues: Function,\n double: Boolean,\n format: {\n type: Function,\n default: function _default(val) {\n return val;\n }\n },\n max: {\n type: Number,\n required: true\n },\n min: {\n type: Number,\n required: true\n },\n scrollable: Boolean,\n rotate: {\n type: Number,\n default: 0\n },\n size: {\n type: [Number, String],\n default: 270\n },\n step: {\n type: Number,\n default: 1\n },\n value: Number\n },\n\n computed: {\n count: function count() {\n return this.max - this.min + 1;\n },\n innerRadius: function innerRadius() {\n return this.radius - Math.max(this.radius * 0.4, 48);\n },\n outerRadius: function outerRadius() {\n return this.radius - 4;\n },\n roundCount: function roundCount() {\n return this.double ? this.count / 2 : this.count;\n },\n degreesPerUnit: function degreesPerUnit() {\n return 360 / this.roundCount;\n },\n degrees: function degrees() {\n return this.degreesPerUnit * Math.PI / 180;\n },\n radius: function radius() {\n return this.size / 2;\n },\n displayedValue: function displayedValue() {\n return this.value == null ? this.min : this.value;\n }\n },\n\n watch: {\n value: function value(_value) {\n this.inputValue = _value;\n }\n },\n\n methods: {\n wheel: function wheel(e) {\n e.preventDefault();\n var value = this.displayedValue + Math.sign(e.wheelDelta || 1);\n this.update((value - this.min + this.count) % this.count + this.min);\n },\n handScale: function handScale(value) {\n return this.double && value - this.min >= this.roundCount ? this.innerRadius / this.radius : this.outerRadius / this.radius;\n },\n isAllowed: function isAllowed(value) {\n return !this.allowedValues || this.allowedValues(value);\n },\n genValues: function genValues() {\n var children = [];\n\n for (var value = this.min; value <= this.max; value = value + this.step) {\n var classes = {\n active: value === this.displayedValue,\n disabled: !this.isAllowed(value)\n };\n\n children.push(this.$createElement('span', {\n 'class': this.addBackgroundColorClassChecks(classes, value === this.value ? this.computedColor : null),\n style: this.getTransform(value),\n domProps: { innerHTML: '' + this.format(value) + '' }\n }));\n }\n\n return children;\n },\n genHand: function genHand() {\n var scale = 'scaleY(' + this.handScale(this.displayedValue) + ')';\n var angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min);\n\n return this.$createElement('div', {\n staticClass: 'time-picker-clock__hand',\n 'class': this.value == null ? {} : this.addBackgroundColorClassChecks(),\n style: {\n transform: 'rotate(' + angle + 'deg) ' + scale\n }\n });\n },\n getTransform: function getTransform(i) {\n var _getPosition = this.getPosition(i),\n x = _getPosition.x,\n y = _getPosition.y;\n\n return { transform: 'translate(' + x + 'px, ' + y + 'px)' };\n },\n getPosition: function getPosition(value) {\n var radius = (this.radius - 24) * this.handScale(value);\n var rotateRadians = this.rotate * Math.PI / 180;\n return {\n x: Math.round(Math.sin((value - this.min) * this.degrees + rotateRadians) * radius),\n y: Math.round(-Math.cos((value - this.min) * this.degrees + rotateRadians) * radius)\n };\n },\n onMouseDown: function onMouseDown(e) {\n e.preventDefault();\n\n this.isDragging = true;\n this.onDragMove(e);\n },\n onMouseUp: function onMouseUp() {\n this.isDragging = false;\n this.isAllowed(this.inputValue) && this.$emit('change', this.inputValue);\n },\n onDragMove: function onDragMove(e) {\n e.preventDefault();\n if (!this.isDragging && e.type !== 'click') return;\n\n var _$refs$clock$getBound = this.$refs.clock.getBoundingClientRect(),\n width = _$refs$clock$getBound.width,\n top = _$refs$clock$getBound.top,\n left = _$refs$clock$getBound.left;\n\n var _ref = 'touches' in e ? e.touches[0] : e,\n clientX = _ref.clientX,\n clientY = _ref.clientY;\n\n var center = { x: width / 2, y: -width / 2 };\n var coords = { x: clientX - left, y: top - clientY };\n var handAngle = Math.round(this.angle(center, coords) - this.rotate + 360) % 360;\n var insideClick = this.double && this.euclidean(center, coords) < (this.outerRadius + this.innerRadius) / 2 - 16;\n var value = Math.round(handAngle / this.degreesPerUnit) + this.min + (insideClick ? this.roundCount : 0);\n\n // Necessary to fix edge case when selecting left part of max value\n if (handAngle >= 360 - this.degreesPerUnit / 2) {\n this.update(insideClick ? this.max : this.min);\n } else {\n this.update(value);\n }\n },\n update: function update(value) {\n if (this.inputValue !== value && this.isAllowed(value)) {\n this.inputValue = value;\n this.$emit('input', value);\n }\n },\n euclidean: function euclidean(p0, p1) {\n var dx = p1.x - p0.x;\n var dy = p1.y - p0.y;\n\n return Math.sqrt(dx * dx + dy * dy);\n },\n angle: function angle(center, p1) {\n var value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x);\n return Math.abs(value * 180 / Math.PI);\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var data = {\n staticClass: 'time-picker-clock',\n class: {\n 'time-picker-clock--indeterminate': this.value == null\n },\n on: {\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n mouseleave: function mouseleave() {\n return _this.isDragging && _this.onMouseUp();\n },\n touchstart: this.onMouseDown,\n touchend: this.onMouseUp,\n mousemove: this.onDragMove,\n touchmove: this.onDragMove\n },\n style: {\n height: this.size + 'px',\n width: this.size + 'px'\n },\n ref: 'clock'\n };\n\n this.scrollable && (data.on.wheel = this.wheel);\n\n return this.$createElement('div', data, [this.genHand(), this.genValues()]);\n }\n});\n\n/***/ }),\n/* 71 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction inserted(el, binding) {\n var callback = binding.value;\n var options = binding.options || { passive: true };\n var target = binding.arg || window;\n if (target === 'undefined') return;\n\n if (target !== window) {\n target = document.querySelector(target);\n }\n\n target.addEventListener('scroll', callback, options);\n\n el._onScroll = {\n callback: callback,\n options: options,\n target: target\n };\n}\n\nfunction unbind(el, binding) {\n if (!el._onScroll) return;\n\n var _el$_onScroll = el._onScroll,\n callback = _el$_onScroll.callback,\n options = _el$_onScroll.options,\n target = _el$_onScroll.target;\n\n\n target.removeEventListener('scroll', callback, options);\n delete el._onScroll;\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'scroll',\n inserted: inserted,\n unbind: unbind\n});\n\n/***/ }),\n/* 72 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_app_styl__ = __webpack_require__(73);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_app_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_app_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components__ = __webpack_require__(74);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__directives__ = __webpack_require__(258);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\nfunction Vuetify(Vue, args) {\n var Vuetify = __WEBPACK_IMPORTED_MODULE_1__components__[\"Vuetify\"];\n\n Vue.use(Vuetify, _extends({\n components: __WEBPACK_IMPORTED_MODULE_1__components__,\n directives: __WEBPACK_IMPORTED_MODULE_2__directives__\n }, args));\n}\n\nVuetify.version = '1.0.17';\n\nif (typeof window !== 'undefined' && window.Vue) {\n window.Vue.use(Vuetify);\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Vuetify);\n\n/***/ }),\n/* 73 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 74 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Vuetify__ = __webpack_require__(75);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Vuetify\", function() { return __WEBPACK_IMPORTED_MODULE_0__Vuetify__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VApp__ = __webpack_require__(81);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VApp\", function() { return __WEBPACK_IMPORTED_MODULE_1__VApp__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VAlert__ = __webpack_require__(89);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VAlert\", function() { return __WEBPACK_IMPORTED_MODULE_2__VAlert__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VAvatar__ = __webpack_require__(34);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VAvatar\", function() { return __WEBPACK_IMPORTED_MODULE_3__VAvatar__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VBadge__ = __webpack_require__(96);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBadge\", function() { return __WEBPACK_IMPORTED_MODULE_4__VBadge__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VBottomNav__ = __webpack_require__(99);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBottomNav\", function() { return __WEBPACK_IMPORTED_MODULE_5__VBottomNav__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__VBottomSheet__ = __webpack_require__(102);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBottomSheet\", function() { return __WEBPACK_IMPORTED_MODULE_6__VBottomSheet__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__VBreadcrumbs__ = __webpack_require__(107);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBreadcrumbs\", function() { return __WEBPACK_IMPORTED_MODULE_7__VBreadcrumbs__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__VBtn__ = __webpack_require__(10);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBtn\", function() { return __WEBPACK_IMPORTED_MODULE_8__VBtn__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__VBtnToggle__ = __webpack_require__(115);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VBtnToggle\", function() { return __WEBPACK_IMPORTED_MODULE_9__VBtnToggle__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__VCard__ = __webpack_require__(27);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VCard\", function() { return __WEBPACK_IMPORTED_MODULE_10__VCard__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__VCarousel__ = __webpack_require__(122);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VCarousel\", function() { return __WEBPACK_IMPORTED_MODULE_11__VCarousel__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__VCheckbox__ = __webpack_require__(28);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VCheckbox\", function() { return __WEBPACK_IMPORTED_MODULE_12__VCheckbox__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__VChip__ = __webpack_require__(45);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VChip\", function() { return __WEBPACK_IMPORTED_MODULE_13__VChip__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__VDataIterator__ = __webpack_require__(134);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VDataIterator\", function() { return __WEBPACK_IMPORTED_MODULE_14__VDataIterator__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__VDataTable__ = __webpack_require__(164);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VDataTable\", function() { return __WEBPACK_IMPORTED_MODULE_15__VDataTable__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__VDatePicker__ = __webpack_require__(174);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VDatePicker\", function() { return __WEBPACK_IMPORTED_MODULE_16__VDatePicker__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__VDialog__ = __webpack_require__(184);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VDialog\", function() { return __WEBPACK_IMPORTED_MODULE_17__VDialog__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__VDivider__ = __webpack_require__(52);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VDivider\", function() { return __WEBPACK_IMPORTED_MODULE_18__VDivider__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__VExpansionPanel__ = __webpack_require__(185);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VExpansionPanel\", function() { return __WEBPACK_IMPORTED_MODULE_19__VExpansionPanel__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__VFooter__ = __webpack_require__(189);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VFooter\", function() { return __WEBPACK_IMPORTED_MODULE_20__VFooter__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__VForm__ = __webpack_require__(192);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VForm\", function() { return __WEBPACK_IMPORTED_MODULE_21__VForm__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__VGrid__ = __webpack_require__(194);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VGrid\", function() { return __WEBPACK_IMPORTED_MODULE_22__VGrid__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__VIcon__ = __webpack_require__(3);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VIcon\", function() { return __WEBPACK_IMPORTED_MODULE_23__VIcon__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__VJumbotron__ = __webpack_require__(40);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VJumbotron\", function() { return __WEBPACK_IMPORTED_MODULE_24__VJumbotron__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_25__VList__ = __webpack_require__(56);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VList\", function() { return __WEBPACK_IMPORTED_MODULE_25__VList__[\"f\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_26__VMenu__ = __webpack_require__(30);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VMenu\", function() { return __WEBPACK_IMPORTED_MODULE_26__VMenu__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27__VNavigationDrawer__ = __webpack_require__(200);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VNavigationDrawer\", function() { return __WEBPACK_IMPORTED_MODULE_27__VNavigationDrawer__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__VPagination__ = __webpack_require__(203);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VPagination\", function() { return __WEBPACK_IMPORTED_MODULE_28__VPagination__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__VParallax__ = __webpack_require__(206);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VParallax\", function() { return __WEBPACK_IMPORTED_MODULE_29__VParallax__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__VPicker__ = __webpack_require__(66);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VPicker\", function() { return __WEBPACK_IMPORTED_MODULE_30__VPicker__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__VProgressCircular__ = __webpack_require__(39);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VProgressCircular\", function() { return __WEBPACK_IMPORTED_MODULE_31__VProgressCircular__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__VProgressLinear__ = __webpack_require__(44);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VProgressLinear\", function() { return __WEBPACK_IMPORTED_MODULE_32__VProgressLinear__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_33__VRadioGroup__ = __webpack_require__(210);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VRadioGroup\", function() { return __WEBPACK_IMPORTED_MODULE_33__VRadioGroup__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_34__VSelect__ = __webpack_require__(47);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSelect\", function() { return __WEBPACK_IMPORTED_MODULE_34__VSelect__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_35__VSlider__ = __webpack_require__(215);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSlider\", function() { return __WEBPACK_IMPORTED_MODULE_35__VSlider__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_36__VSnackbar__ = __webpack_require__(218);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSnackbar\", function() { return __WEBPACK_IMPORTED_MODULE_36__VSnackbar__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_37__VSpeedDial__ = __webpack_require__(221);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSpeedDial\", function() { return __WEBPACK_IMPORTED_MODULE_37__VSpeedDial__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_38__VStepper__ = __webpack_require__(224);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VStepper\", function() { return __WEBPACK_IMPORTED_MODULE_38__VStepper__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_39__VSubheader__ = __webpack_require__(55);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSubheader\", function() { return __WEBPACK_IMPORTED_MODULE_39__VSubheader__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_40__VSwitch__ = __webpack_require__(229);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSwitch\", function() { return __WEBPACK_IMPORTED_MODULE_40__VSwitch__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_41__VSystemBar__ = __webpack_require__(232);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VSystemBar\", function() { return __WEBPACK_IMPORTED_MODULE_41__VSystemBar__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_42__VTabs__ = __webpack_require__(235);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VTabs\", function() { return __WEBPACK_IMPORTED_MODULE_42__VTabs__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_43__VTextField__ = __webpack_require__(245);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VTextField\", function() { return __WEBPACK_IMPORTED_MODULE_43__VTextField__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_44__VTimePicker__ = __webpack_require__(247);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VTimePicker\", function() { return __WEBPACK_IMPORTED_MODULE_44__VTimePicker__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_45__VToolbar__ = __webpack_require__(251);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VToolbar\", function() { return __WEBPACK_IMPORTED_MODULE_45__VToolbar__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_46__VTooltip__ = __webpack_require__(255);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"VTooltip\", function() { return __WEBPACK_IMPORTED_MODULE_46__VTooltip__[\"a\"]; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_47__transitions__ = __webpack_require__(7);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Transitions\", function() { return __WEBPACK_IMPORTED_MODULE_47__transitions__[\"g\"]; });\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 75 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_application__ = __webpack_require__(76);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_theme__ = __webpack_require__(77);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_options__ = __webpack_require__(78);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util_goTo__ = __webpack_require__(79);\n\n\n\n\n\n\nvar Vuetify = {\n install: function install(Vue) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (this.installed) return;\n\n this.installed = true;\n\n checkVueVersion(Vue);\n\n Vue.prototype.$vuetify = new Vue({\n data: {\n application: __WEBPACK_IMPORTED_MODULE_0__mixins_application__[\"a\" /* default */],\n breakpoint: {},\n dark: false,\n options: Object(__WEBPACK_IMPORTED_MODULE_2__mixins_options__[\"a\" /* default */])(opts.options),\n theme: Object(__WEBPACK_IMPORTED_MODULE_1__mixins_theme__[\"a\" /* default */])(opts.theme)\n },\n methods: {\n goTo: __WEBPACK_IMPORTED_MODULE_4__util_goTo__[\"a\" /* default */]\n }\n });\n\n if (opts.transitions) {\n Object.values(opts.transitions).forEach(function (transition) {\n if (transition.name !== undefined && transition.name.startsWith('v-')) {\n Vue.component(transition.name, transition);\n }\n });\n }\n\n if (opts.directives) {\n Object.values(opts.directives).forEach(function (directive) {\n Vue.directive(directive.name, directive);\n });\n }\n\n if (opts.components) {\n Object.values(opts.components).forEach(function (component) {\n Vue.use(component);\n });\n }\n }\n};\n\n/* istanbul ignore next */\nfunction checkVueVersion(Vue) {\n var vueDep = '^2.5.0';\n\n var required = vueDep.split('.').map(function (v) {\n return v.replace(/\\D/g, '');\n });\n var actual = Vue.version.split('.');\n\n // Simple semver caret range comparison\n var passes = actual[0] === required[0] && ( // major matches\n actual[1] > required[1] || // minor is greater\n actual[1] === required[1] && actual[2] >= required[2] // or minor is eq and patch is >=\n );\n\n if (!passes) {\n Object(__WEBPACK_IMPORTED_MODULE_3__util_console__[\"b\" /* consoleWarn */])('Vuetify requires Vue version ' + vueDep);\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Vuetify);\n\n/***/ }),\n/* 76 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n bar: 0,\n bottom: 0,\n footer: 0,\n left: 0,\n right: 0,\n top: 0,\n components: {\n bar: {},\n bottom: {},\n footer: {},\n left: {},\n right: {},\n top: {}\n },\n bind: function bind(uid, target, value) {\n if (!this.components[target]) return;\n\n this.components[target] = _defineProperty({}, uid, value);\n this.update(target);\n },\n unbind: function unbind(uid, target) {\n if (this.components[target][uid] == null) return;\n\n delete this.components[target][uid];\n this.update(target);\n },\n update: function update(target) {\n this[target] = Object.values(this.components[target]).reduce(function (acc, cur) {\n return acc + cur;\n }, 0);\n }\n});\n\n/***/ }),\n/* 77 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = theme;\n/* eslint-disable no-multi-spaces */\nvar THEME_DEFAULTS = {\n primary: '#1976D2', // blue.darken2\n secondary: '#424242', // grey.darken3\n accent: '#82B1FF', // blue.accent1\n error: '#FF5252', // red.accent2\n info: '#2196F3', // blue.base\n success: '#4CAF50', // green.base\n warning: '#FFC107' // amber.base\n};\n\nfunction theme() {\n var theme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n return Object.assign({}, THEME_DEFAULTS, theme);\n}\n\n/***/ }),\n/* 78 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = options;\nvar OPTIONS_DEFAULTS = {\n themeVariations: ['primary', 'secondary', 'accent'],\n minifyTheme: null,\n themeCache: null\n};\n\nfunction options() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n return Object.assign({}, OPTIONS_DEFAULTS, options);\n}\n\n/***/ }),\n/* 79 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = goTo;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_easing_patterns__ = __webpack_require__(80);\n\n\n\nvar defaults = {\n duration: 500,\n offset: 0,\n easing: 'easeInOutCubic'\n};\n\nfunction getDocumentHeight() {\n return Math.max(document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight, document.body.clientHeight, document.documentElement.clientHeight);\n}\n\nfunction getWindowHeight() {\n return window.innerHeight || (document.documentElement || document.body).clientHeight;\n}\n\nfunction isVueComponent(obj) {\n return obj != null && obj._isVue;\n}\n\nfunction getTargetLocation(target, settings) {\n var location = void 0;\n\n if (isVueComponent(target)) {\n target = target.$el;\n }\n\n if (target instanceof Element) {\n location = target.getBoundingClientRect().top + window.scrollY;\n } else if (typeof target === 'string') {\n location = document.querySelector(target).offsetTop;\n } else if (typeof target === 'number') {\n location = target;\n } else {\n return undefined;\n }\n\n return Math.round(Math.min(Math.max(location + settings.offset, 0), getDocumentHeight() - getWindowHeight()));\n}\n\nfunction goTo(target, options) {\n if (typeof window === 'undefined') return;\n\n var settings = Object.assign({}, defaults, options);\n\n var startTime = performance.now();\n var startLocation = window.pageYOffset;\n var targetLocation = getTargetLocation(target, settings);\n var distanceToScroll = targetLocation - startLocation;\n var easingFunction = typeof settings.easing === 'function' ? settings.easing : __WEBPACK_IMPORTED_MODULE_1__util_easing_patterns__[settings.easing];\n\n if (isNaN(targetLocation)) {\n var type = target == null ? target : target.constructor.name;\n return Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"a\" /* consoleError */])('Target must be a Selector/Number/DOMElement/VueComponent, received ' + type + ' instead.');\n }\n if (!easingFunction) return Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"a\" /* consoleError */])('Easing function \\'' + settings.easing + '\\' not found.');\n\n function step(currentTime) {\n var progressPercentage = Math.min(1, (currentTime - startTime) / settings.duration);\n var targetPosition = Math.floor(startLocation + distanceToScroll * easingFunction(progressPercentage));\n\n window.scrollTo(0, targetPosition);\n\n if (Math.round(window.pageYOffset) === targetLocation || progressPercentage === 1) return;\n\n window.requestAnimationFrame(step);\n }\n\n window.requestAnimationFrame(step);\n}\n\n/***/ }),\n/* 80 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"linear\", function() { return linear; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInQuad\", function() { return easeInQuad; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeOutQuad\", function() { return easeOutQuad; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInOutQuad\", function() { return easeInOutQuad; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInCubic\", function() { return easeInCubic; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeOutCubic\", function() { return easeOutCubic; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInOutCubic\", function() { return easeInOutCubic; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInQuart\", function() { return easeInQuart; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeOutQuart\", function() { return easeOutQuart; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInOutQuart\", function() { return easeInOutQuart; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInQuint\", function() { return easeInQuint; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeOutQuint\", function() { return easeOutQuint; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"easeInOutQuint\", function() { return easeInOutQuint; });\n// linear\nvar linear = function linear(t) {\n return t;\n};\n// accelerating from zero velocity\nvar easeInQuad = function easeInQuad(t) {\n return t * t;\n};\n// decelerating to zero velocity\nvar easeOutQuad = function easeOutQuad(t) {\n return t * (2 - t);\n};\n// acceleration until halfway, then deceleration\nvar easeInOutQuad = function easeInOutQuad(t) {\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n};\n// accelerating from zero velocity\nvar easeInCubic = function easeInCubic(t) {\n return t * t * t;\n};\n// decelerating to zero velocity\nvar easeOutCubic = function easeOutCubic(t) {\n return --t * t * t + 1;\n};\n// acceleration until halfway, then deceleration\nvar easeInOutCubic = function easeInOutCubic(t) {\n return t < 0.5 ? 4 * t * t * t : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1;\n};\n// accelerating from zero velocity\nvar easeInQuart = function easeInQuart(t) {\n return t * t * t * t;\n};\n// decelerating to zero velocity\nvar easeOutQuart = function easeOutQuart(t) {\n return 1 - --t * t * t * t;\n};\n// acceleration until halfway, then deceleration\nvar easeInOutQuart = function easeInOutQuart(t) {\n return t < 0.5 ? 8 * t * t * t * t : 1 - 8 * --t * t * t * t;\n};\n// accelerating from zero velocity\nvar easeInQuint = function easeInQuint(t) {\n return t * t * t * t * t;\n};\n// decelerating to zero velocity\nvar easeOutQuint = function easeOutQuint(t) {\n return 1 + --t * t * t * t * t;\n};\n// acceleration until halfway, then deceleration\nvar easeInOutQuint = function easeInOutQuint(t) {\n return t < 0.5 ? 16 * t * t * t * t * t : 1 + 16 * --t * t * t * t * t;\n};\n\n/***/ }),\n/* 81 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VApp__ = __webpack_require__(82);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VApp__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VApp__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VApp__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VApp__[\"a\" /* default */]);\n\n/***/ }),\n/* 82 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_app_styl__ = __webpack_require__(83);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_app_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_app_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_app_theme__ = __webpack_require__(84);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_app_breakpoint__ = __webpack_require__(88);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__directives_resize__ = __webpack_require__(11);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n// Component level mixins\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-app',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_app_breakpoint__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_app_theme__[\"a\" /* default */]],\n\n directives: {\n Resize: __WEBPACK_IMPORTED_MODULE_3__directives_resize__[\"a\" /* default */]\n },\n\n props: {\n id: {\n type: String,\n default: 'app'\n },\n dark: Boolean\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({}, 'theme--' + (this.dark ? 'dark' : 'light'), true);\n }\n },\n\n mounted: function mounted() {\n this.$vuetify.dark = this.dark;\n },\n\n\n watch: {\n dark: function dark() {\n this.$vuetify.dark = this.dark;\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'application',\n 'class': this.classes,\n attrs: { 'data-app': true },\n domProps: { id: this.id },\n directives: [{\n name: 'resize',\n value: this.onResize\n }]\n };\n\n var wrapper = h('div', { staticClass: 'application--wrap' }, this.$slots.default);\n\n return h('div', data, [wrapper]);\n }\n});\n\n/***/ }),\n/* 83 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 84 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_colorUtils__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_theme__ = __webpack_require__(85);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n data: function data() {\n return {\n style: null\n };\n },\n\n computed: {\n parsedTheme: function parsedTheme() {\n return __WEBPACK_IMPORTED_MODULE_1__util_theme__[\"c\" /* parse */](this.$vuetify.theme);\n },\n\n /** @return string */\n generatedStyles: function generatedStyles() {\n var theme = this.parsedTheme;\n var css = void 0;\n\n if (this.$vuetify.options.themeCache != null) {\n css = this.$vuetify.options.themeCache.get(theme);\n if (css != null) return css;\n }\n\n var colors = Object.keys(theme);\n css = 'a { color: ' + Object(__WEBPACK_IMPORTED_MODULE_0__util_colorUtils__[\"b\" /* intToHex */])(theme.primary) + '; }';\n\n for (var i = 0; i < colors.length; ++i) {\n var name = colors[i];\n var value = theme[name];\n if (this.$vuetify.options.themeVariations.includes(name)) {\n css += __WEBPACK_IMPORTED_MODULE_1__util_theme__[\"b\" /* genVariations */](name, value).join('');\n } else {\n css += __WEBPACK_IMPORTED_MODULE_1__util_theme__[\"a\" /* genBaseColor */](name, value);\n }\n }\n\n if (this.$vuetify.options.minifyTheme != null) {\n css = this.$vuetify.options.minifyTheme(css);\n }\n\n if (this.$vuetify.options.themeCache != null) {\n this.$vuetify.options.themeCache.set(theme, css);\n }\n\n return css;\n },\n vueMeta: function vueMeta() {\n return {\n style: [{\n cssText: this.generatedStyles,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet'\n }]\n };\n }\n },\n\n // Regular vue-meta\n metaInfo: function metaInfo() {\n return this.vueMeta;\n },\n\n\n // Nuxt\n head: function head() {\n return this.vueMeta;\n },\n\n\n watch: {\n generatedStyles: function generatedStyles() {\n !this.meta && this.applyTheme();\n }\n },\n\n created: function created() {\n if (this.$meta) {\n // Vue-meta\n // Handled by metaInfo()/nuxt()\n } else if (typeof document === 'undefined' && this.$ssrContext) {\n // SSR\n this.$ssrContext.head = this.$ssrContext.head || '';\n this.$ssrContext.head += '';\n } else if (typeof document !== 'undefined') {\n // Client-side\n this.genStyle();\n this.applyTheme();\n }\n },\n\n\n methods: {\n applyTheme: function applyTheme() {\n if (this.style) this.style.innerHTML = this.generatedStyles;\n },\n genStyle: function genStyle() {\n var style = document.getElementById('vuetify-theme-stylesheet');\n\n if (!style) {\n style = document.createElement('style');\n style.type = 'text/css';\n style.id = 'vuetify-theme-stylesheet';\n document.head.appendChild(style);\n }\n\n this.style = style;\n }\n }\n});\n\n/***/ }),\n/* 85 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = parse;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = genVariations;\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return genBaseColor; });\n/* unused harmony export genVariantColor */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__colorUtils__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__ = __webpack_require__(86);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__ = __webpack_require__(87);\n\n\n\n\n/**\n * @param {object} theme\n * @returns {object}\n */\nfunction parse(theme) {\n var colors = Object.keys(theme);\n var parsedTheme = {};\n\n for (var i = 0; i < colors.length; ++i) {\n var name = colors[i];\n var value = theme[name];\n\n parsedTheme[name] = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"a\" /* colorToInt */])(value);\n }\n\n return parsedTheme;\n}\n\nfunction genVariations(name, value) {\n var values = Array(10);\n values[0] = genBaseColor(name, value);\n\n for (var i = 1, n = 5; i <= 5; ++i, --n) {\n values[i] = genVariantColor(name, lighten(value, n), 'lighten', n);\n }\n\n for (var _i = 1; _i <= 4; ++_i) {\n values[_i + 5] = genVariantColor(name, darken(value, _i), 'darken', _i);\n }\n\n return values;\n}\n\nfunction lighten(value, amount) {\n var lab = __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"b\" /* toXYZ */](value));\n lab[0] = lab[0] + amount * 10;\n return __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"b\" /* toXYZ */](lab));\n}\n\nfunction darken(value, amount) {\n var lab = __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"b\" /* toXYZ */](value));\n lab[0] = lab[0] - amount * 10;\n return __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"b\" /* toXYZ */](lab));\n}\n\n/**\n * Generate the CSS for a base color (.primary)\n *\n * @param {string} name - The color name\n * @param {string|number} value - The color value\n * @returns {string}\n */\nvar genBaseColor = function genBaseColor(name, value) {\n value = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"b\" /* intToHex */])(value);\n return '\\n.' + name + ' {\\n background-color: ' + value + ' !important;\\n border-color: ' + value + ' !important;\\n}\\n.' + name + '--text {\\n color: ' + value + ' !important;\\n}\\n.' + name + '--text input,\\n.' + name + '--text textarea {\\n caret-color: ' + value + ' !important;\\n}\\n.' + name + '--after::after {\\n background: ' + value + ' !important;\\n}';\n};\n\n/**\n * Generate the CSS for a variant color (.primary.darken-2)\n *\n * @param {string} name - The color name\n * @param {string|number} value - The color value\n * @param {string} type - The variant type (darken/lighten)\n * @param {number} n - The darken/lighten step number\n * @returns {string}\n */\nvar genVariantColor = function genVariantColor(name, value, type, n) {\n value = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"b\" /* intToHex */])(value);\n return '\\n.' + name + '.' + type + '-' + n + ' {\\n background-color: ' + value + ' !important;\\n border-color: ' + value + ' !important;\\n}\\n.' + name + '--text.text--' + type + '-' + n + ' {\\n color: ' + value + ' !important;\\n}\\n.' + name + '--text.text--' + type + '-' + n + ' input,\\n.' + name + '--text.text--' + type + '-' + n + ' textarea {\\n caret-color: ' + value + ' !important;\\n}\\n.' + name + '.' + type + '-' + n + '--after::after {\\n background: ' + value + ' !important;\\n}';\n};\n\n/***/ }),\n/* 86 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = fromXYZ;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = toXYZ;\n// For converting XYZ to sRGB\nvar srgbForwardMatrix = [[3.2406, -1.5372, -0.4986], [-0.9689, 1.8758, 0.0415], [0.0557, -0.2040, 1.0570]];\n\n// Forward gamma adjust\nvar srgbForwardTransform = function srgbForwardTransform(C) {\n return C <= 0.0031308 ? C * 12.92 : 1.055 * Math.pow(C, 1 / 2.4) - 0.055;\n};\n\n// For converting sRGB to XYZ\nvar srgbReverseMatrix = [[0.4124, 0.3576, 0.1805], [0.2126, 0.7152, 0.0722], [0.0193, 0.1192, 0.9505]];\n\n// Reverse gamma adjust\nvar srgbReverseTransform = function srgbReverseTransform(C) {\n return C <= 0.04045 ? C / 12.92 : Math.pow((C + 0.055) / 1.055, 2.4);\n};\n\nfunction clamp(value) {\n return Math.max(0, Math.min(1, value));\n}\n\nfunction fromXYZ(xyz) {\n var rgb = Array(3);\n var transform = srgbForwardTransform;\n var matrix = srgbForwardMatrix;\n\n // Matrix transform, then gamma adjustment\n for (var i = 0; i < 3; ++i) {\n rgb[i] = Math.round(clamp(transform(matrix[i][0] * xyz[0] + matrix[i][1] * xyz[1] + matrix[i][2] * xyz[2])) * 255);\n }\n\n // Rescale back to [0, 255]\n return (rgb[0] << 16) + (rgb[1] << 8) + (rgb[2] << 0);\n}\n\nfunction toXYZ(rgb) {\n var xyz = Array(3);\n var transform = srgbReverseTransform;\n var matrix = srgbReverseMatrix;\n\n // Rescale from [0, 255] to [0, 1] then adjust sRGB gamma to linear RGB\n var r = transform((rgb >> 16 & 0xff) / 255);\n var g = transform((rgb >> 8 & 0xff) / 255);\n var b = transform((rgb >> 0 & 0xff) / 255);\n\n // Matrix color space transform\n for (var i = 0; i < 3; ++i) {\n xyz[i] = matrix[i][0] * r + matrix[i][1] * g + matrix[i][2] * b;\n }\n\n return xyz;\n}\n\n/***/ }),\n/* 87 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = fromXYZ;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = toXYZ;\nvar delta = 0.20689655172413793; // 6÷29\n\nvar cielabForwardTransform = function cielabForwardTransform(t) {\n return t > Math.pow(delta, 3) ? Math.cbrt(t) : t / (3 * Math.pow(delta, 2)) + 4 / 29;\n};\n\nvar cielabReverseTransform = function cielabReverseTransform(t) {\n return t > delta ? Math.pow(t, 3) : 3 * Math.pow(delta, 2) * (t - 4 / 29);\n};\n\nfunction fromXYZ(xyz) {\n var transform = cielabForwardTransform;\n var transformedY = transform(xyz[1]);\n\n return [116 * transformedY - 16, 500 * (transform(xyz[0] / 0.95047) - transformedY), 200 * (transformedY - transform(xyz[2] / 1.08883))];\n}\n\nfunction toXYZ(lab) {\n var transform = cielabReverseTransform;\n var Ln = (lab[0] + 16) / 116;\n return [transform(Ln + lab[1] / 500) * 0.95047, transform(Ln), transform(Ln - lab[2] / 200) * 1.08883];\n}\n\n/***/ }),\n/* 88 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * A modified version of https://gist.github.com/cb109/b074a65f7595cffc21cea59ce8d15f9b\n */\n\n/**\n * A Vue mixin to get the current width/height and the associated breakpoint.\n *\n * Useful to e.g. adapt the user interface from inside a Vue component\n * as opposed to using CSS classes. The breakpoint pixel values and\n * range names are taken from Vuetify (https://github.com/vuetifyjs).\n *\n * Use within a component:\n *\n * import breakpoint from './breakpoint.js'\n *\n * export default {\n * name: 'my-component',\n * mixins: [breakpoint],\n * ...\n *\n * Then inside a template:\n *\n *
...
\n */\nvar breakpoint = {\n data: function data() {\n return {\n clientWidth: clientDimensions.getWidth(),\n clientHeight: clientDimensions.getHeight(),\n resizeTimeout: null\n };\n },\n\n\n computed: {\n breakpoint: function breakpoint() {\n var xs = this.clientWidth < 600;\n var sm = this.clientWidth < 960 && !xs;\n var md = this.clientWidth < 1280 - 16 && !(sm || xs);\n var lg = this.clientWidth < 1920 - 16 && !(md || sm || xs);\n var xl = this.clientWidth >= 1920 - 16 && !(lg || md || sm || xs);\n\n var xsOnly = xs;\n var smOnly = sm;\n var smAndDown = (xs || sm) && !(md || lg || xl);\n var smAndUp = !xs && (sm || md || lg || xl);\n var mdOnly = md;\n var mdAndDown = (xs || sm || md) && !(lg || xl);\n var mdAndUp = !(xs || sm) && (md || lg || xl);\n var lgOnly = lg;\n var lgAndDown = (xs || sm || md || lg) && !xl;\n var lgAndUp = !(xs || sm || md) && (lg || xl);\n var xlOnly = xl;\n\n var name = void 0;\n switch (true) {\n case xs:\n name = 'xs';\n break;\n case sm:\n name = 'sm';\n break;\n case md:\n name = 'md';\n break;\n case lg:\n name = 'lg';\n break;\n default:\n name = 'xl';\n break;\n }\n\n var result = {\n // Definite breakpoint.\n xs: xs,\n sm: sm,\n md: md,\n lg: lg,\n xl: xl,\n\n // Useful e.g. to construct CSS class names dynamically.\n name: name,\n\n // Breakpoint ranges.\n xsOnly: xsOnly,\n smOnly: smOnly,\n smAndDown: smAndDown,\n smAndUp: smAndUp,\n mdOnly: mdOnly,\n mdAndDown: mdAndDown,\n mdAndUp: mdAndUp,\n lgOnly: lgOnly,\n lgAndDown: lgAndDown,\n lgAndUp: lgAndUp,\n xlOnly: xlOnly,\n\n // For custom breakpoint logic.\n width: this.clientWidth,\n height: this.clientHeight\n };\n\n return result;\n }\n },\n\n watch: {\n breakpoint: function breakpoint(val) {\n this.$vuetify.breakpoint = val;\n }\n },\n\n created: function created() {\n this.$vuetify.breakpoint = this.breakpoint;\n },\n\n\n methods: {\n onResize: function onResize() {\n var _this = this;\n\n clearTimeout(this.resizeTimeout);\n\n // Added debounce to match what\n // v-resize used to do but was\n // removed due to a memory leak\n // https://github.com/vuetifyjs/vuetify/pull/2997\n this.resizeTimeout = setTimeout(function () {\n _this.clientWidth = clientDimensions.getWidth();\n _this.clientHeight = clientDimensions.getHeight();\n }, 200);\n }\n }\n\n // Cross-browser support as described in:\n // https://stackoverflow.com/questions/1248081\n};var clientDimensions = {\n getWidth: function getWidth() {\n if (typeof document === 'undefined') return 0; // SSR\n return Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n },\n getHeight: function getHeight() {\n if (typeof document === 'undefined') return 0; // SSR\n return Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (breakpoint);\n\n/***/ }),\n/* 89 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VAlert__ = __webpack_require__(90);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */]);\n\n/***/ }),\n/* 90 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__ = __webpack_require__(24);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-alert',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__[\"a\" /* default */]],\n\n props: {\n dismissible: Boolean,\n icon: String,\n outline: Boolean,\n type: {\n type: String,\n validator: function validator(val) {\n return ['info', 'error', 'success', 'warning'].includes(val);\n }\n }\n },\n\n data: function data() {\n return {\n defaultColor: 'error'\n };\n },\n\n computed: {\n classes: function classes() {\n var color = this.type && !this.color ? this.type : this.computedColor;\n var classes = {\n 'alert--dismissible': this.dismissible,\n 'alert--outline': this.outline\n };\n\n return this.outline ? this.addTextColorClassChecks(classes, color) : this.addBackgroundColorClassChecks(classes, color);\n },\n computedIcon: function computedIcon() {\n if (this.icon || !this.type) return this.icon;\n\n switch (this.type) {\n case 'info':\n return 'info';\n case 'error':\n return 'warning';\n case 'success':\n return 'check_circle';\n case 'warning':\n return 'priority_high';\n }\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var children = [h('div', this.$slots.default)];\n\n if (this.computedIcon) {\n children.unshift(h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n 'class': 'alert__icon'\n }, this.computedIcon));\n }\n\n if (this.dismissible) {\n var close = h('a', {\n 'class': 'alert__dismissible',\n on: { click: function click() {\n return _this.$emit('input', false);\n } }\n }, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n props: {\n right: true\n }\n }, 'cancel')]);\n\n children.push(close);\n }\n\n var alert = h('div', {\n staticClass: 'alert',\n 'class': this.classes,\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n on: this.$listeners\n }, children);\n\n if (!this.transition) return alert;\n\n return h('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode\n }\n }, [alert]);\n }\n});\n\n/***/ }),\n/* 91 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 92 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_helpers__ = __webpack_require__(2);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n\n\nvar SIZE_MAP = {\n small: '16px',\n default: '24px',\n medium: '28px',\n large: '36px',\n xLarge: '40px'\n};\n\nfunction isFontAwesome5(iconType) {\n return ['fas', 'far', 'fal', 'fab'].some(function (val) {\n return iconType.includes(val);\n });\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-icon',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n disabled: Boolean,\n large: Boolean,\n left: Boolean,\n medium: Boolean,\n right: Boolean,\n size: {\n type: [Number, String]\n },\n small: Boolean,\n xLarge: Boolean\n },\n\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n _ref$children = _ref.children,\n children = _ref$children === undefined ? [] : _ref$children;\n var small = props.small,\n medium = props.medium,\n large = props.large,\n xLarge = props.xLarge;\n\n var sizes = { small: small, medium: medium, large: large, xLarge: xLarge };\n var explicitSize = Object.keys(sizes).find(function (key) {\n return sizes[key] && key;\n });\n var fontSize = explicitSize && SIZE_MAP[explicitSize] || Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"b\" /* convertToUnit */])(props.size);\n\n if (fontSize) data.style = _extends({ fontSize: fontSize }, data.style);\n\n var iconName = '';\n if (children.length) iconName = children.pop().text;\n // Support usage of v-text and v-html\n else if (data.domProps) {\n iconName = data.domProps.textContent || data.domProps.innerHTML || iconName;\n\n // Remove nodes so it doesn't\n // overwrite our changes\n delete data.domProps.textContent;\n delete data.domProps.innerHTML;\n }\n\n var iconType = 'material-icons';\n // Material Icon delimiter is _\n // https://material.io/icons/\n var delimiterIndex = iconName.indexOf('-');\n var isCustomIcon = delimiterIndex > -1;\n\n if (isCustomIcon) {\n iconType = iconName.slice(0, delimiterIndex);\n\n if (isFontAwesome5(iconType)) iconType = '';\n // Assume if not a custom icon\n // is Material Icon font\n } else children.push(iconName);\n\n data.attrs = data.attrs || {};\n if (!('aria-hidden' in data.attrs)) {\n data.attrs['aria-hidden'] = true;\n }\n\n var classes = Object.assign({\n 'icon--disabled': props.disabled,\n 'icon--left': props.left,\n 'icon--right': props.right,\n 'theme--dark': props.dark,\n 'theme--light': props.light\n }, props.color ? __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */].methods.addTextColorClassChecks.call(props, {}, props.color) : {});\n\n // Order classes\n // * Component class\n // * Vuetify classes\n // * Icon Classes\n data.staticClass = ['icon', data.staticClass, Object.keys(classes).filter(function (k) {\n return classes[k];\n }).join(' '), iconType, isCustomIcon ? iconName : null].reduce(function (prev, curr) {\n return curr ? prev + ' ' + curr : prev;\n }).trim();\n\n return h('i', data, children);\n }\n});\n\n/***/ }),\n/* 93 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 94 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_helpers__ = __webpack_require__(2);\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-avatar',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n size: {\n type: [Number, String],\n default: 48\n },\n tile: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n\n data.staticClass = ('avatar ' + (data.staticClass || '')).trim();\n data.style = data.style || {};\n\n if (props.tile) data.staticClass += ' avatar--tile';\n\n var size = Object(__WEBPACK_IMPORTED_MODULE_2__util_helpers__[\"b\" /* convertToUnit */])(props.size);\n data.style.height = size;\n data.style.width = size;\n data.class = [data.class, __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */].methods.addBackgroundColorClassChecks.call(props, {}, props.color)];\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 95 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 96 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBadge__ = __webpack_require__(97);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */]);\n\n/***/ }),\n/* 97 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__ = __webpack_require__(24);\n\n\n// Mixins\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-badge',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"b\" /* factory */])(['left', 'bottom']), __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__[\"a\" /* default */]],\n\n props: {\n color: {\n type: String,\n default: 'primary'\n },\n overlap: Boolean,\n transition: {\n type: String,\n default: 'fab-transition'\n },\n value: {\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'badge--bottom': this.bottom,\n 'badge--left': this.left,\n 'badge--overlap': this.overlap\n };\n }\n },\n\n render: function render(h) {\n var badge = this.$slots.badge ? [h('span', {\n staticClass: 'badge__badge',\n 'class': this.addBackgroundColorClassChecks(),\n attrs: this.attrs,\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, this.$slots.badge)] : null;\n\n return h('span', {\n staticClass: 'badge',\n 'class': this.classes\n }, [this.$slots.default, h('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode\n }\n }, badge)]);\n }\n});\n\n/***/ }),\n/* 98 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 99 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBottomNav__ = __webpack_require__(100);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */]);\n\n/***/ }),\n/* 100 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl__ = __webpack_require__(101);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_button_group__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\n// Styles\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-bottom-nav',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('bottom', ['height', 'value']), __WEBPACK_IMPORTED_MODULE_2__mixins_button_group__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n active: [Number, String],\n height: {\n default: 56,\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n shift: Boolean,\n value: { required: false }\n },\n\n watch: {\n active: function active() {\n this.update();\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'bottom-nav--absolute': this.absolute,\n 'bottom-nav--fixed': !this.absolute && (this.app || this.fixed),\n 'bottom-nav--shift': this.shift,\n 'bottom-nav--active': this.value\n };\n },\n computedHeight: function computedHeight() {\n return parseInt(this.height);\n }\n },\n\n methods: {\n isSelected: function isSelected(i) {\n var item = this.getValue(i);\n return this.active === item;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return !this.value ? 0 : this.computedHeight;\n },\n updateValue: function updateValue(i) {\n var item = this.getValue(i);\n\n this.$emit('update:active', item);\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'bottom-nav',\n class: this.addBackgroundColorClassChecks(this.classes),\n style: {\n height: parseInt(this.computedHeight) + 'px'\n },\n ref: 'content'\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 101 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 102 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBottomSheet__ = __webpack_require__(103);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */]);\n\n/***/ }),\n/* 103 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl__ = __webpack_require__(104);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDialog_VDialog__ = __webpack_require__(36);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-bottom-sheet',\n\n props: {\n disabled: Boolean,\n fullWidth: Boolean,\n hideOverlay: Boolean,\n inset: Boolean,\n lazy: Boolean,\n maxWidth: {\n type: [String, Number],\n default: 'auto'\n },\n persistent: Boolean,\n value: null\n },\n\n render: function render(h) {\n var activator = h('template', {\n slot: 'activator'\n }, this.$slots.activator);\n\n var contentClass = ['bottom-sheet', this.inset ? 'bottom-sheet--inset' : ''].join(' ');\n\n return h(__WEBPACK_IMPORTED_MODULE_1__VDialog_VDialog__[\"a\" /* default */], {\n attrs: _extends({}, this.$props),\n on: _extends({}, this.$listeners),\n props: {\n contentClass: contentClass,\n transition: 'bottom-sheet-transition',\n value: this.value\n }\n }, [activator, this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 104 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 105 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 106 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 107 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__ = __webpack_require__(108);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__ = __webpack_require__(110);\n/* unused harmony reexport VBreadcrumbs */\n/* unused harmony reexport VBreadcrumbsItem */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */]);\n\n/***/ }),\n/* 108 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl__ = __webpack_require__(109);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl__);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-breadcrumbs',\n\n props: {\n divider: {\n type: String,\n default: '/'\n },\n large: Boolean,\n justifyCenter: Boolean,\n justifyEnd: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'breadcrumbs--large': this.large\n };\n },\n computedDivider: function computedDivider() {\n return this.$slots.divider ? this.$slots.divider : this.divider;\n },\n styles: function styles() {\n var justify = this.justifyCenter ? 'center' : this.justifyEnd ? 'flex-end' : 'flex-start';\n\n return {\n 'justify-content': justify\n };\n }\n },\n\n methods: {\n /**\n * Add dividers between\n * v-breadcrumbs-item\n *\n * @return {array}\n */\n genChildren: function genChildren() {\n if (!this.$slots.default) return null;\n\n var h = this.$createElement;\n var children = [];\n var dividerData = { staticClass: 'breadcrumbs__divider' };\n\n var createDividers = false;\n for (var i = 0; i < this.$slots.default.length; i++) {\n var elm = this.$slots.default[i];\n\n if (!elm.componentOptions || elm.componentOptions.Ctor.options.name !== 'v-breadcrumbs-item') {\n children.push(elm);\n } else {\n if (createDividers) {\n children.push(h('li', dividerData, this.computedDivider));\n }\n children.push(elm);\n createDividers = true;\n }\n }\n\n return children;\n }\n },\n\n render: function render(h) {\n return h('ul', {\n staticClass: 'breadcrumbs',\n 'class': this.classes,\n style: this.styles\n }, this.genChildren());\n }\n});\n\n/***/ }),\n/* 109 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 110 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_routable__ = __webpack_require__(13);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-breadcrumbs-item',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_routable__[\"a\" /* default */]],\n\n props: {\n // In a breadcrumb, the currently\n // active item should be dimmed\n activeClass: {\n type: String,\n default: 'breadcrumbs__item--disabled'\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'breadcrumbs__item': true\n }, this.activeClass, this.disabled);\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n return h('li', [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 111 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl__ = __webpack_require__(112);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VProgressCircular__ = __webpack_require__(39);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_registrable__ = __webpack_require__(4);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Styles\n\n\n// Components\n\n\n// Mixins\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-btn',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"b\" /* factory */])('inputValue'), Object(__WEBPACK_IMPORTED_MODULE_7__mixins_registrable__[\"a\" /* inject */])('buttonGroup')],\n\n props: {\n activeClass: {\n type: String,\n default: 'btn--active'\n },\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n flat: Boolean,\n icon: Boolean,\n large: Boolean,\n loading: Boolean,\n outline: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: true\n },\n round: Boolean,\n small: Boolean,\n tag: {\n type: String,\n default: 'button'\n },\n type: {\n type: String,\n default: 'button'\n },\n value: null\n },\n\n computed: {\n classes: function classes() {\n var _extends2;\n\n var classes = _extends((_extends2 = {\n 'btn': true\n }, _defineProperty(_extends2, this.activeClass, this.isActive), _defineProperty(_extends2, 'btn--absolute', this.absolute), _defineProperty(_extends2, 'btn--block', this.block), _defineProperty(_extends2, 'btn--bottom', this.bottom), _defineProperty(_extends2, 'btn--disabled', this.disabled), _defineProperty(_extends2, 'btn--flat', this.flat), _defineProperty(_extends2, 'btn--floating', this.fab), _defineProperty(_extends2, 'btn--fixed', this.fixed), _defineProperty(_extends2, 'btn--hover', this.hover), _defineProperty(_extends2, 'btn--icon', this.icon), _defineProperty(_extends2, 'btn--large', this.large), _defineProperty(_extends2, 'btn--left', this.left), _defineProperty(_extends2, 'btn--loader', this.loading), _defineProperty(_extends2, 'btn--outline', this.outline), _defineProperty(_extends2, 'btn--depressed', this.depressed && !this.flat || this.outline), _defineProperty(_extends2, 'btn--right', this.right), _defineProperty(_extends2, 'btn--round', this.round), _defineProperty(_extends2, 'btn--router', this.to), _defineProperty(_extends2, 'btn--small', this.small), _defineProperty(_extends2, 'btn--top', this.top), _extends2), this.themeClasses);\n\n return !this.outline && !this.flat ? this.addBackgroundColorClassChecks(classes) : this.addTextColorClassChecks(classes);\n }\n },\n\n methods: {\n // Prevent focus to match md spec\n click: function click(e) {\n !this.fab && e.detail && this.$el.blur();\n\n this.$emit('click', e);\n },\n genContent: function genContent() {\n return this.$createElement('div', { 'class': 'btn__content' }, [this.$slots.default]);\n },\n genLoader: function genLoader() {\n var children = [];\n\n if (!this.$slots.loader) {\n children.push(this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VProgressCircular__[\"a\" /* default */], {\n props: {\n indeterminate: true,\n size: 23,\n width: 2\n }\n }));\n } else {\n children.push(this.$slots.loader);\n }\n\n return this.$createElement('span', { 'class': 'btn__loading' }, children);\n }\n },\n\n mounted: function mounted() {\n if (this.buttonGroup) {\n this.buttonGroup.register(this);\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.buttonGroup) {\n this.buttonGroup.unregister(this);\n }\n },\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n var children = [this.genContent()];\n\n tag === 'button' && (data.attrs.type = this.type);\n this.loading && children.push(this.genLoader());\n\n data.attrs.value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);\n\n return h(tag, data, children);\n }\n});\n\n/***/ }),\n/* 112 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 113 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl__ = __webpack_require__(114);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-progress-circular',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n button: Boolean,\n\n indeterminate: Boolean,\n\n rotate: {\n type: Number,\n default: 0\n },\n\n size: {\n type: [Number, String],\n default: 32\n },\n\n width: {\n type: Number,\n default: 4\n },\n\n value: {\n type: Number,\n default: 0\n }\n },\n\n computed: {\n calculatedSize: function calculatedSize() {\n return Number(this.size) + (this.button ? 8 : 0);\n },\n circumference: function circumference() {\n return 2 * Math.PI * this.radius;\n },\n classes: function classes() {\n return this.addTextColorClassChecks({\n 'progress-circular': true,\n 'progress-circular--indeterminate': this.indeterminate,\n 'progress-circular--button': this.button\n });\n },\n normalizedValue: function normalizedValue() {\n if (this.value < 0) {\n return 0;\n }\n\n if (this.value > 100) {\n return 100;\n }\n\n return this.value;\n },\n radius: function radius() {\n return 20;\n },\n strokeDashArray: function strokeDashArray() {\n return Math.round(this.circumference * 1000) / 1000;\n },\n strokeDashOffset: function strokeDashOffset() {\n return (100 - this.normalizedValue) / 100 * this.circumference + 'px';\n },\n strokeWidth: function strokeWidth() {\n return this.width / this.size * this.viewBoxSize * 2;\n },\n styles: function styles() {\n return {\n height: this.calculatedSize + 'px',\n width: this.calculatedSize + 'px'\n };\n },\n svgStyles: function svgStyles() {\n return {\n transform: 'rotate(' + this.rotate + 'deg)'\n };\n },\n viewBoxSize: function viewBoxSize() {\n return this.radius / (1 - this.width / this.size);\n }\n },\n\n methods: {\n genCircle: function genCircle(h, name, offset) {\n return h('circle', {\n class: 'progress-circular__' + name,\n attrs: {\n fill: 'transparent',\n cx: 2 * this.viewBoxSize,\n cy: 2 * this.viewBoxSize,\n r: this.radius,\n 'stroke-width': this.strokeWidth,\n 'stroke-dasharray': this.strokeDashArray,\n 'stroke-dashoffset': offset\n }\n });\n },\n genSvg: function genSvg(h) {\n var children = [this.indeterminate || this.genCircle(h, 'underlay', 0), this.genCircle(h, 'overlay', this.strokeDashOffset)];\n\n return h('svg', {\n style: this.svgStyles,\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: this.viewBoxSize + ' ' + this.viewBoxSize + ' ' + 2 * this.viewBoxSize + ' ' + 2 * this.viewBoxSize\n }\n }, children);\n }\n },\n\n render: function render(h) {\n var info = h('div', { class: 'progress-circular__info' }, [this.$slots.default]);\n var svg = this.genSvg(h);\n\n return h('div', {\n class: this.classes,\n style: this.styles,\n on: this.$listeners\n }, [svg, info]);\n }\n});\n\n/***/ }),\n/* 114 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 115 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBtnToggle__ = __webpack_require__(116);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */]);\n\n/***/ }),\n/* 116 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl__ = __webpack_require__(117);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_button_group__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_console__ = __webpack_require__(5);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-btn-toggle',\n\n model: {\n prop: 'inputValue',\n event: 'change'\n },\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_button_group__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inputValue: {\n required: false\n },\n mandatory: Boolean,\n multiple: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'btn-toggle': true,\n 'btn-toggle--selected': this.hasValue,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n };\n },\n hasValue: function hasValue() {\n return this.multiple && this.inputValue.length || !this.multiple && this.inputValue !== null && typeof this.inputValue !== 'undefined';\n }\n },\n\n watch: {\n inputValue: {\n handler: function handler() {\n this.update();\n },\n\n deep: true\n }\n },\n\n methods: {\n isSelected: function isSelected(i) {\n var item = this.getValue(i);\n if (!this.multiple) {\n return this.inputValue === item;\n }\n\n return this.inputValue.includes(item);\n },\n updateValue: function updateValue(i) {\n var item = this.getValue(i);\n if (!this.multiple) {\n if (this.mandatory && this.inputValue === item) return;\n return this.$emit('change', this.inputValue === item ? null : item);\n }\n\n var items = this.inputValue.slice();\n\n var index = items.indexOf(item);\n if (index > -1) {\n if (this.mandatory && items.length === 1) return;\n items.length >= 1 && items.splice(index, 1);\n } else {\n items.push(item);\n }\n\n this.$emit('change', items);\n },\n updateAllValues: function updateAllValues() {\n if (!this.multiple) return;\n\n var items = [];\n\n for (var i = 0; i < this.buttons.length; ++i) {\n var item = this.getValue(i);\n var index = this.inputValue.indexOf(item);\n if (index !== -1) {\n items.push(item);\n }\n }\n\n this.$emit('change', items);\n }\n },\n\n created: function created() {\n if (this.multiple && !Array.isArray(this.inputValue)) {\n Object(__WEBPACK_IMPORTED_MODULE_3__util_console__[\"b\" /* consoleWarn */])('Model must be bound to an array if the multiple property is true.', this);\n }\n },\n render: function render(h) {\n return h('div', { class: this.classes }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 117 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 118 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl__ = __webpack_require__(119);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n flat: Boolean,\n height: {\n type: String,\n default: 'auto'\n },\n hover: Boolean,\n img: String,\n raised: Boolean,\n tag: {\n type: String,\n default: 'div'\n },\n tile: Boolean,\n width: [String, Number]\n },\n\n computed: {\n classes: function classes() {\n return this.addBackgroundColorClassChecks({\n 'card': true,\n 'card--flat': this.flat,\n 'card--horizontal': this.horizontal,\n 'card--hover': this.hover,\n 'card--raised': this.raised,\n 'card--tile': this.tile,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n });\n },\n styles: function styles() {\n var style = {\n height: isNaN(this.height) ? this.height : this.height + 'px'\n };\n\n if (this.img) {\n style.background = 'url(\"' + this.img + '\") center center / cover no-repeat';\n }\n\n if (this.width) {\n style.width = isNaN(this.width) ? this.width : this.width + 'px';\n }\n\n return style;\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n data.style = this.styles;\n\n return h(tag, data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 119 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 120 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card-media',\n\n props: {\n contain: Boolean,\n height: {\n type: [Number, String],\n default: 'auto'\n },\n src: {\n type: String\n }\n },\n\n render: function render(h) {\n var data = {\n 'class': 'card__media',\n style: {\n height: !isNaN(this.height) ? this.height + 'px' : this.height\n },\n on: this.$listeners\n };\n\n var children = [];\n\n if (this.src) {\n children.push(h('div', {\n 'class': 'card__media__background',\n style: {\n background: 'url(\"' + this.src + '\") center center / ' + (this.contain ? 'contain' : 'cover') + ' no-repeat'\n }\n }));\n }\n\n children.push(h('div', {\n 'class': 'card__media__content'\n }, this.$slots.default));\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 121 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card-title',\n\n functional: true,\n\n props: {\n primaryTitle: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n\n data.staticClass = ('card__title ' + (data.staticClass || '')).trim();\n\n if (props.primaryTitle) data.staticClass += ' card__title--primary';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 122 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VCarousel__ = __webpack_require__(123);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCarouselItem__ = __webpack_require__(125);\n/* unused harmony reexport VCarousel */\n/* unused harmony reexport VCarouselItem */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VCarouselItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VCarouselItem__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */]);\n\n/***/ }),\n/* 123 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl__ = __webpack_require__(124);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_touch__ = __webpack_require__(9);\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-carousel',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_5__mixins_registrable__[\"b\" /* provide */])('carousel')],\n\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_6__directives_touch__[\"a\" /* default */] },\n\n data: function data() {\n return {\n inputValue: null,\n items: [],\n slideTimeout: null,\n reverse: false\n };\n },\n\n\n props: {\n cycle: {\n type: Boolean,\n default: true\n },\n delimiterIcon: {\n type: String,\n default: 'fiber_manual_record'\n },\n hideControls: Boolean,\n hideDelimiters: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: function validator(value) {\n return value > 0;\n }\n },\n nextIcon: {\n type: [Boolean, String],\n default: 'chevron_right'\n },\n prevIcon: {\n type: [Boolean, String],\n default: 'chevron_left'\n },\n value: Number\n },\n\n watch: {\n items: function items() {\n if (this.inputValue >= this.items.length) {\n this.inputValue = this.items.length - 1;\n }\n },\n inputValue: function inputValue() {\n // Evaluates items when inputValue changes to\n // account for dynamic changing of children\n\n var uid = (this.items[this.inputValue] || {}).uid;\n for (var index = this.items.length; --index >= 0;) {\n this.items[index].open(uid, this.reverse);\n }\n\n this.$emit('input', this.inputValue);\n this.restartTimeout();\n },\n value: function value(val) {\n this.inputValue = val;\n },\n interval: function interval() {\n this.restartTimeout();\n },\n cycle: function cycle(val) {\n if (val) {\n this.restartTimeout();\n } else {\n clearTimeout(this.slideTimeout);\n this.slideTimeout = null;\n }\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n genDelimiters: function genDelimiters() {\n return this.$createElement('div', {\n staticClass: 'carousel__controls'\n }, this.genItems());\n },\n genIcon: function genIcon(direction, icon, fn) {\n if (!icon) return null;\n\n return this.$createElement('div', {\n staticClass: 'carousel__' + direction\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VBtn__[\"a\" /* default */], {\n props: {\n icon: true,\n dark: this.dark || !this.light,\n light: this.light\n },\n on: { click: fn }\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: { 'size': '46px' }\n }, icon)])]);\n },\n genItems: function genItems() {\n var _this = this;\n\n return this.items.map(function (item, index) {\n return _this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VBtn__[\"a\" /* default */], {\n class: {\n 'carousel__controls__item': true,\n 'carousel__controls__item--active': index === _this.inputValue\n },\n props: {\n icon: true,\n small: true,\n dark: _this.dark || !_this.light,\n light: _this.light\n },\n key: index,\n on: { click: _this.select.bind(_this, index) }\n }, [_this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: { size: '18px' }\n }, _this.delimiterIcon)]);\n });\n },\n restartTimeout: function restartTimeout() {\n this.slideTimeout && clearTimeout(this.slideTimeout);\n this.slideTimeout = null;\n\n var raf = requestAnimationFrame || setTimeout;\n raf(this.startTimeout);\n },\n init: function init() {\n this.inputValue = this.value || 0;\n },\n next: function next() {\n this.reverse = false;\n this.inputValue = (this.inputValue + 1) % this.items.length;\n },\n prev: function prev() {\n this.reverse = true;\n this.inputValue = (this.inputValue + this.items.length - 1) % this.items.length;\n },\n select: function select(index) {\n this.reverse = index < this.inputValue;\n this.inputValue = index;\n },\n startTimeout: function startTimeout() {\n var _this2 = this;\n\n if (!this.cycle) return;\n\n this.slideTimeout = setTimeout(function () {\n return _this2.next();\n }, this.interval > 0 ? this.interval : 6000);\n },\n register: function register(uid, open) {\n this.items.push({ uid: uid, open: open });\n },\n unregister: function unregister(uid) {\n this.items = this.items.filter(function (i) {\n return i.uid !== uid;\n });\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'carousel',\n directives: [{\n name: 'touch',\n value: {\n left: this.next,\n right: this.prev\n }\n }]\n }, [this.hideControls ? null : this.genIcon('left', this.prevIcon, this.prev), this.hideControls ? null : this.genIcon('right', this.nextIcon, this.next), this.hideDelimiters ? null : this.genDelimiters(), this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 124 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 125 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VJumbotron__ = __webpack_require__(40);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_registrable__ = __webpack_require__(4);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Components\n\n\n// Mixins\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-carousel-item',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_registrable__[\"a\" /* inject */])('carousel', 'v-carousel-item', 'v-carousel')],\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n active: false,\n reverse: false\n };\n },\n\n\n props: {\n transition: {\n type: String,\n default: 'tab-transition'\n },\n reverseTransition: {\n type: String,\n default: 'tab-reverse-transition'\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.reverse ? this.reverseTransition : this.transition;\n }\n },\n\n methods: {\n open: function open(id, reverse) {\n this.active = this._uid === id;\n this.reverse = reverse;\n }\n },\n\n mounted: function mounted() {\n this.carousel.register(this._uid, this.open);\n },\n beforeDestroy: function beforeDestroy() {\n this.carousel.unregister(this._uid, this.open);\n },\n render: function render(h) {\n var item = h(__WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */], {\n props: _extends({}, this.$attrs, {\n height: '100%'\n }),\n on: this.$listeners,\n directives: [{\n name: 'show',\n value: this.active\n }]\n }, this.$slots.default);\n\n return h('transition', { props: { name: this.computedTransition } }, [item]);\n }\n});\n\n/***/ }),\n/* 126 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl__ = __webpack_require__(127);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-jumbotron',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n gradient: String,\n height: {\n type: [Number, String],\n default: '400px'\n },\n src: String,\n tag: {\n type: String,\n default: 'div'\n }\n },\n\n computed: {\n backgroundStyles: function backgroundStyles() {\n var styles = {};\n\n if (this.gradient) {\n styles.background = 'linear-gradient(' + this.gradient + ')';\n }\n\n return styles;\n },\n classes: function classes() {\n return {\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n styles: function styles() {\n return {\n height: this.height\n };\n }\n },\n\n methods: {\n genBackground: function genBackground() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__background',\n 'class': this.addBackgroundColorClassChecks(),\n style: this.backgroundStyles\n });\n },\n genContent: function genContent() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__content'\n }, this.$slots.default);\n },\n genImage: function genImage() {\n if (!this.src) return null;\n if (this.$slots.img) return this.$slots.img({ src: this.src });\n\n return this.$createElement('img', {\n staticClass: 'jumbotron__image',\n attrs: { src: this.src }\n });\n },\n genWrapper: function genWrapper() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__wrapper'\n }, [this.genImage(), this.genBackground(), this.genContent()]);\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n data.staticClass = 'jumbotron';\n data.style = this.styles;\n\n return h(tag, data, [this.genWrapper()]);\n }\n});\n\n/***/ }),\n/* 127 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 128 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_selectable__ = __webpack_require__(42);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-checkbox',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_4__mixins_rippleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_selectable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n inputIndeterminate: this.indeterminate\n };\n },\n\n\n props: {\n indeterminate: Boolean\n },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'checkbox': true,\n 'input-group--selection-controls': true,\n 'input-group--active': this.isActive\n };\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n icon: function icon() {\n if (this.inputIndeterminate) {\n return 'indeterminate_check_box';\n } else if (this.isActive) {\n return 'check_box';\n } else {\n return 'check_box_outline_blank';\n }\n }\n },\n\n methods: {\n groupFocus: function groupFocus(e) {\n this.isFocused = true;\n this.$emit('focus', e);\n },\n groupBlur: function groupBlur(e) {\n this.isFocused = false;\n this.tabFocused = false;\n this.$emit('blur', this.inputValue);\n }\n },\n\n render: function render(h) {\n var transition = h(__WEBPACK_IMPORTED_MODULE_3__transitions__[\"b\" /* VFadeTransition */], [h(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n staticClass: 'icon--selection-control',\n 'class': {\n 'icon--checkbox': this.icon === 'check_box'\n },\n key: this.icon,\n on: Object.assign({\n click: this.toggle\n }, this.$listeners)\n }, this.icon)]);\n\n var data = {\n attrs: {\n tabindex: this.disabled ? -1 : this.internalTabIndex || this.tabindex,\n role: 'checkbox',\n 'aria-checked': this.inputIndeterminate ? 'mixed' : this.isActive ? 'true' : 'false',\n 'aria-label': this.label\n }\n };\n\n var ripple = this.ripple ? this.genRipple() : null;\n\n return this.genInputGroup([transition, ripple], data);\n }\n});\n\n/***/ }),\n/* 129 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl__ = __webpack_require__(130);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__transitions__ = __webpack_require__(7);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-progress-linear',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n active: {\n type: Boolean,\n default: true\n },\n backgroundColor: {\n type: String,\n default: null\n },\n backgroundOpacity: {\n type: [Number, String],\n default: null\n },\n bufferValue: {\n type: [Number, String],\n default: 100\n },\n color: {\n type: String,\n default: 'primary'\n },\n height: {\n type: [Number, String],\n default: 7\n },\n indeterminate: Boolean,\n query: Boolean,\n value: {\n type: [Number, String],\n default: 0\n }\n },\n\n computed: {\n styles: function styles() {\n var styles = {};\n\n if (!this.active) {\n styles.height = 0;\n }\n\n if (!this.indeterminate && parseInt(this.bufferValue, 10) !== 100) {\n styles.width = this.bufferValue + '%';\n }\n\n return styles;\n },\n effectiveWidth: function effectiveWidth() {\n if (!this.bufferValue) {\n return 0;\n }\n\n return this.value * 100 / this.bufferValue;\n },\n backgroundStyle: function backgroundStyle() {\n var backgroundOpacity = this.backgroundOpacity == null ? this.backgroundColor ? 1 : 0.3 : parseFloat(this.backgroundOpacity);\n\n return {\n height: this.active ? this.height + 'px' : 0,\n opacity: backgroundOpacity,\n width: this.bufferValue + '%'\n };\n }\n },\n\n methods: {\n genDeterminate: function genDeterminate(h) {\n return h('div', {\n ref: 'front',\n staticClass: 'progress-linear__bar__determinate',\n class: this.addBackgroundColorClassChecks(),\n style: {\n width: this.effectiveWidth + '%'\n }\n });\n },\n genBar: function genBar(h, name) {\n return h('div', {\n staticClass: 'progress-linear__bar__indeterminate',\n class: this.addBackgroundColorClassChecks(_defineProperty({}, name, true))\n });\n },\n genIndeterminate: function genIndeterminate(h) {\n return h('div', {\n ref: 'front',\n staticClass: 'progress-linear__bar__indeterminate',\n class: {\n 'progress-linear__bar__indeterminate--active': this.active\n }\n }, [this.genBar(h, 'long'), this.genBar(h, 'short')]);\n }\n },\n\n render: function render(h) {\n var fade = h(__WEBPACK_IMPORTED_MODULE_2__transitions__[\"b\" /* VFadeTransition */], [this.indeterminate && this.genIndeterminate(h)]);\n var slide = h(__WEBPACK_IMPORTED_MODULE_2__transitions__[\"d\" /* VSlideXTransition */], [!this.indeterminate && this.genDeterminate(h)]);\n\n var bar = h('div', {\n staticClass: 'progress-linear__bar',\n style: this.styles\n }, [fade, slide]);\n var background = h('div', {\n staticClass: 'progress-linear__background',\n class: [this.backgroundColor || this.color],\n style: this.backgroundStyle\n });\n\n return h('div', {\n staticClass: 'progress-linear',\n class: {\n 'progress-linear--query': this.query\n },\n style: {\n height: this.height + 'px'\n },\n on: this.$listeners\n }, [background, bar]);\n }\n});\n\n/***/ }),\n/* 130 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 131 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'validatable',\n\n data: function data() {\n return {\n errorBucket: [],\n hasFocused: false,\n hasInput: false,\n shouldValidate: false,\n valid: false\n };\n },\n\n\n props: {\n error: {\n type: Boolean\n },\n errorMessages: {\n type: [String, Array],\n default: function _default() {\n return [];\n }\n },\n rules: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n validateOnBlur: Boolean\n },\n\n computed: {\n validations: function validations() {\n if (!Array.isArray(this.errorMessages)) {\n return [this.errorMessages];\n } else if (this.errorMessages.length > 0) {\n return this.errorMessages;\n } else if (this.shouldValidate) {\n return this.errorBucket;\n } else {\n return [];\n }\n },\n hasError: function hasError() {\n return this.validations.length > 0 || this.errorMessages.length > 0 || this.error;\n }\n },\n\n watch: {\n rules: {\n handler: function handler(newVal, oldVal) {\n // TODO: This handler seems to trigger when input changes, even though\n // rules array stays the same? Solved it like this for now\n if (newVal.length === oldVal.length) return;\n\n this.validate();\n },\n\n deep: true\n },\n inputValue: function inputValue(val) {\n // If it's the first time we're setting input,\n // mark it with hasInput\n if (!!val && !this.hasInput) this.hasInput = true;\n\n if (this.hasInput && !this.validateOnBlur) this.shouldValidate = true;\n },\n isFocused: function isFocused(val) {\n // If we're not focused, and it's the first time\n // we're defocusing, set shouldValidate to true\n if (!val && !this.hasFocused) {\n this.hasFocused = true;\n this.shouldValidate = true;\n\n this.$emit('update:error', this.errorBucket.length > 0);\n }\n },\n hasError: function hasError(val) {\n if (this.shouldValidate) {\n this.$emit('update:error', val);\n }\n },\n error: function error(val) {\n this.shouldValidate = !!val;\n }\n },\n\n mounted: function mounted() {\n this.shouldValidate = !!this.error;\n this.validate();\n },\n\n\n methods: {\n reset: function reset() {\n var _this = this;\n\n // TODO: Do this another way!\n // This is so that we can reset all types of inputs\n this.$emit('input', this.isMultiple ? [] : null);\n this.$emit('change', null);\n\n this.$nextTick(function () {\n _this.shouldValidate = false;\n _this.hasFocused = false;\n _this.validate();\n });\n },\n validate: function validate() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.inputValue;\n\n if (force) this.shouldValidate = true;\n\n this.errorBucket = [];\n\n for (var index = 0; index < this.rules.length; index++) {\n var rule = this.rules[index];\n var valid = typeof rule === 'function' ? rule(value) : rule;\n\n if (valid === false || typeof valid === 'string') {\n this.errorBucket.push(valid);\n } else if (valid !== true) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"a\" /* consoleError */])('Rules should return a string or boolean, received \\'' + (typeof valid === 'undefined' ? 'undefined' : _typeof(valid)) + '\\' instead', this);\n }\n }\n\n this.valid = this.errorBucket.length === 0;\n\n return this.valid;\n }\n }\n});\n\n/***/ }),\n/* 132 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl__ = __webpack_require__(133);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_toggleable__ = __webpack_require__(6);\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-chip',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_toggleable__[\"a\" /* default */]],\n\n props: {\n close: Boolean,\n disabled: Boolean,\n label: Boolean,\n outline: Boolean,\n // Used for selects/tagging\n selected: Boolean,\n small: Boolean,\n textColor: String,\n value: {\n type: Boolean,\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n var classes = this.addBackgroundColorClassChecks({\n 'chip--disabled': this.disabled,\n 'chip--selected': this.selected,\n 'chip--label': this.label,\n 'chip--outline': this.outline,\n 'chip--small': this.small,\n 'chip--removable': this.close,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n });\n\n return this.textColor || this.outline ? this.addTextColorClassChecks(classes, this.textColor || this.color) : classes;\n }\n },\n\n methods: {\n genClose: function genClose(h) {\n var _this = this;\n\n var data = {\n staticClass: 'chip__close',\n on: {\n click: function click(e) {\n e.stopPropagation();\n\n _this.$emit('input', false);\n }\n }\n };\n\n return h('div', data, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], 'cancel')]);\n },\n genContent: function genContent(h) {\n var children = [this.$slots.default];\n\n this.close && children.push(this.genClose(h));\n\n return h('span', {\n staticClass: 'chip__content'\n }, children);\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'chip',\n 'class': this.classes,\n attrs: { tabindex: this.disabled ? -1 : 0 },\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n on: this.$listeners\n };\n\n return h('span', data, [this.genContent(h)]);\n }\n});\n\n/***/ }),\n/* 133 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 134 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDataIterator__ = __webpack_require__(135);\n\n\n__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */]);\n\n/***/ }),\n/* 135 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl__ = __webpack_require__(136);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_data_iterable__ = __webpack_require__(46);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-data-iterator',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_data_iterable__[\"a\" /* default */]],\n\n inheritAttrs: false,\n\n props: {\n contentTag: {\n type: String,\n default: 'div'\n },\n contentProps: {\n type: Object,\n required: false\n },\n contentClass: {\n type: String,\n required: false\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'data-iterator': true,\n 'data-iterator--select-all': this.selectAll !== false,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n methods: {\n genContent: function genContent() {\n var children = this.genItems();\n\n var data = {\n 'class': this.contentClass,\n attrs: this.$attrs,\n on: this.$listeners,\n props: this.contentProps\n };\n\n return this.$createElement(this.contentTag, data, children);\n },\n genEmptyItems: function genEmptyItems(content) {\n return [this.$createElement('div', {\n 'class': 'text-xs-center',\n style: 'width: 100%'\n }, content)];\n },\n genFilteredItems: function genFilteredItems() {\n if (!this.$scopedSlots.item) {\n return null;\n }\n\n var items = [];\n for (var index = 0, len = this.filteredItems.length; index < len; ++index) {\n var item = this.filteredItems[index];\n var props = this.createProps(item, index);\n items.push(this.$scopedSlots.item(props));\n }\n\n return items;\n },\n genFooter: function genFooter() {\n var children = [];\n\n if (this.$slots.footer) {\n children.push(this.$slots.footer);\n }\n\n if (!this.hideActions) {\n children.push(this.genActions());\n }\n\n if (!children.length) return null;\n return this.$createElement('div', children);\n }\n },\n\n created: function created() {\n this.initPagination();\n },\n render: function render(h) {\n return h('div', {\n 'class': this.classes\n }, [this.genContent(), this.genFooter()]);\n }\n});\n\n/***/ }),\n/* 136 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 137 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl__ = __webpack_require__(138);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_filterable__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_maskable__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_soloable__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_select_autocomplete__ = __webpack_require__(140);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__mixins_select_computed__ = __webpack_require__(141);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__mixins_select_events__ = __webpack_require__(142);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__mixins_select_generators__ = __webpack_require__(143);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__mixins_select_helpers__ = __webpack_require__(160);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__mixins_select_menu__ = __webpack_require__(161);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__mixins_select_props__ = __webpack_require__(162);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__mixins_select_watchers__ = __webpack_require__(163);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__directives_click_outside__ = __webpack_require__(8);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Styles\n\n\n\n\n// Mixins\n\n\n\n\n\n\n\n// Component level mixins\n\n\n\n\n\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-select',\n\n inheritAttrs: false,\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_17__directives_click_outside__[\"a\" /* default */]\n },\n\n mixins: [__WEBPACK_IMPORTED_MODULE_9__mixins_select_autocomplete__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_11__mixins_select_events__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_filterable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_12__mixins_select_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_13__mixins_select_helpers__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_input__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_7__mixins_maskable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_14__mixins_select_menu__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_15__mixins_select_props__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_soloable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_16__mixins_select_watchers__[\"a\" /* default */],\n // Input and Computed both\n // contain isDirty props\n // last gets merged in\n __WEBPACK_IMPORTED_MODULE_10__mixins_select_computed__[\"a\" /* default */]],\n\n data: function data() {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n content: {},\n defaultColor: 'primary',\n inputValue: (this.multiple || this.tags) && !this.value ? [] : this.value,\n isBooted: false,\n lastItem: 20,\n lazySearch: null,\n isActive: false,\n menuIsActive: false,\n selectedIndex: -1,\n selectedItems: [],\n shouldBreak: false\n };\n },\n mounted: function mounted() {\n // If instance is being destroyed\n // do not run mounted functions\n if (this._isDestroyed) return;\n\n // Evaluate the selected items immediately\n // to avoid a unnecessary label transition\n this.genSelectedItems();\n\n this.content = this.$refs.menu.$refs.content;\n },\n beforeDestroy: function beforeDestroy() {\n if (this.isBooted) {\n if (this.content) {\n this.content.removeEventListener('scroll', this.onScroll, false);\n }\n }\n },\n\n\n methods: {\n needsTile: function needsTile(tile) {\n // TODO: use the component name instead of tag\n return tile.componentOptions == null || tile.componentOptions.tag !== 'v-list-tile';\n },\n changeSelectedIndex: function changeSelectedIndex(keyCode) {\n // backspace, left, right, delete\n if (![8, 37, 39, 46].includes(keyCode)) return;\n\n var indexes = this.selectedItems.length - 1;\n\n if (keyCode === 37) {\n // Left arrow\n this.selectedIndex = this.selectedIndex === -1 ? indexes : this.selectedIndex - 1;\n } else if (keyCode === 39) {\n // Right arrow\n this.selectedIndex = this.selectedIndex >= indexes ? -1 : this.selectedIndex + 1;\n } else if (this.selectedIndex === -1) {\n this.selectedIndex = indexes;\n return;\n }\n\n // backspace/delete\n if ([8, 46].includes(keyCode)) {\n var newIndex = this.selectedIndex === indexes ? this.selectedIndex - 1 : this.selectedItems[this.selectedIndex + 1] ? this.selectedIndex : -1;\n\n this.combobox ? this.inputValue = null : this.selectItem(this.selectedItems[this.selectedIndex]);\n this.selectedIndex = newIndex;\n }\n },\n closeConditional: function closeConditional(e) {\n return this.isActive && !!this.content && !this.content.contains(e.target) && !!this.$el && !this.$el.contains(e.target);\n },\n filterDuplicates: function filterDuplicates(arr) {\n var uniqueValues = new Map();\n for (var index = 0; index < arr.length; ++index) {\n var item = arr[index];\n var val = this.getValue(item);\n\n !uniqueValues.has(val) && uniqueValues.set(val, item);\n }\n return Array.from(uniqueValues.values());\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n return [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional\n }\n }];\n },\n genSelectedItems: function genSelectedItems() {\n var _this2 = this;\n\n var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.inputValue;\n\n // If we are using tags, don't filter results\n if (this.tags) return this.selectedItems = val;\n\n // Combobox is the single version\n // of a taggable select element\n if (this.combobox) return this.selectedItems = val != null ? [val] : [];\n\n var selectedItems = this.computedItems.filter(function (i) {\n if (!_this2.isMultiple) {\n return _this2.getValue(i) === _this2.getValue(val);\n } else {\n // Always return Boolean\n return _this2.findExistingIndex(i) > -1;\n }\n });\n\n if (!selectedItems.length && val != null && this.tags) {\n selectedItems = Array.isArray(val) ? val : [val];\n }\n\n this.selectedItems = selectedItems;\n },\n clearableCallback: function clearableCallback() {\n var _this3 = this;\n\n var inputValue = this.isMultiple ? [] : null;\n\n this.inputValue = inputValue;\n this.$emit('change', inputValue);\n this.genSelectedItems();\n\n // When input is cleared\n // reset search value and\n // re-focus the input\n setTimeout(function () {\n _this3.searchValue = null;\n _this3.focusInput();\n }, 0);\n\n if (this.openOnClear) {\n setTimeout(this.showMenu, 50);\n }\n },\n onScroll: function onScroll() {\n var _this4 = this;\n\n if (!this.isActive) {\n requestAnimationFrame(function () {\n return _this4.content.scrollTop = 0;\n });\n } else {\n if (this.lastItem >= this.computedItems.length) return;\n\n var showMoreItems = this.content.scrollHeight - (this.content.scrollTop + this.content.clientHeight) < 200;\n\n if (showMoreItems) {\n this.lastItem += 20;\n }\n }\n },\n findExistingItem: function findExistingItem(val) {\n var _this5 = this;\n\n var itemValue = this.getValue(val);\n return this.items.find(function (i) {\n return _this5.valueComparator(_this5.getValue(i), itemValue);\n });\n },\n findExistingIndex: function findExistingIndex(item) {\n var _this6 = this;\n\n var itemValue = this.getValue(item);\n return this.inputValue.findIndex(function (i) {\n return _this6.valueComparator(_this6.getValue(i), itemValue);\n });\n },\n selectItem: function selectItem(item) {\n var _this7 = this;\n\n if (!this.isMultiple) {\n this.inputValue = this.returnObject ? item : this.getValue(item);\n this.selectedItems = [item];\n } else {\n var selectedItems = [];\n var inputValue = this.inputValue.slice();\n var i = this.findExistingIndex(item);\n\n i !== -1 ? inputValue.splice(i, 1) : inputValue.push(item);\n this.inputValue = inputValue.map(function (i) {\n selectedItems.push(i);\n return _this7.returnObject ? i : _this7.getValue(i);\n });\n\n this.selectedItems = selectedItems;\n this.selectedIndex = -1;\n }\n\n this.searchValue = !this.isMultiple && !this.chips && !this.$scopedSlots.selection ? this.getText(this.selectedItem) : null;\n\n this.$emit('change', this.inputValue);\n\n // List tile will re-render, reset index to\n // maintain highlighting\n var savedIndex = this.getMenuIndex();\n this.resetMenuIndex();\n\n // After selecting an item\n // refocus the input and\n // reset the caret pos\n this.$nextTick(function () {\n _this7.focusInput();\n _this7.setCaretPosition(_this7.currentRange);\n\n requestAnimationFrame(function () {\n if (savedIndex > -1) {\n _this7.setMenuIndex(savedIndex);\n }\n });\n });\n }\n },\n\n render: function render(h) {\n var _this8 = this;\n\n var data = {\n attrs: _extends({\n tabindex: this.isAutocomplete || this.disabled ? -1 : this.tabindex,\n 'data-uid': this._uid\n }, this.isAutocomplete ? null : this.$attrs, {\n role: this.isAutocomplete ? null : 'combobox'\n })\n };\n\n if (!this.isAutocomplete) {\n data.on = this.genListeners();\n data.directives = this.genDirectives();\n } else {\n data.on = {\n click: function click() {\n if (_this8.disabled || _this8.readonly || _this8.isFocused) return;\n\n // If the input is dirty,\n // the input is not targetable\n // so we must manually focus\n if (_this8.isDirty) {\n _this8.focus();\n _this8.$nextTick(_this8.focusInput);\n }\n }\n };\n }\n\n return this.genInputGroup([this.genSelectionsAndSearch(), this.genMenu()], data, this.toggleMenu);\n }\n});\n\n/***/ }),\n/* 138 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 139 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export defaultDelimiters */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return isMaskDelimiter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return maskText; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return unmaskText; });\n/**\n * Default delimiter RegExp\n *\n * @type {RegExp}\n */\nvar defaultDelimiters = /[-!$%^&*()_+|~=`{}[\\]:\";'<>?,./\\\\ ]/;\n\n/**\n *\n * @param {String} char\n *\n * @return {Boolean}\n */\nvar isMaskDelimiter = function isMaskDelimiter(char) {\n return char && defaultDelimiters.test(char);\n};\n\n/**\n * Mask keys\n *\n * @type {Object}\n */\nvar allowedMasks = {\n '#': {\n test: function test(char) {\n return char.match(/[0-9]/);\n }\n },\n 'A': {\n test: function test(char) {\n return char.match(/[A-Z]/i);\n },\n convert: function convert(char) {\n return char.toUpperCase();\n }\n },\n 'a': {\n test: function test(char) {\n return char.match(/[a-z]/i);\n },\n convert: function convert(char) {\n return char.toLowerCase();\n }\n },\n 'N': {\n test: function test(char) {\n return char.match(/[0-9A-Z]/i);\n },\n convert: function convert(char) {\n return char.toUpperCase();\n }\n },\n 'n': {\n test: function test(char) {\n return char.match(/[0-9a-z]/i);\n },\n convert: function convert(char) {\n return char.toLowerCase();\n }\n },\n 'X': {\n test: isMaskDelimiter\n }\n\n /**\n * Is Character mask\n *\n * @param {String} char\n *\n * @return {Boolean}\n */\n};var isMask = function isMask(char) {\n return allowedMasks.hasOwnProperty(char);\n};\n\n/**\n * Automatically convert char case\n *\n * @param {String} mask\n * @param {String} char\n *\n * @return {String}\n */\nvar convert = function convert(mask, char) {\n return allowedMasks[mask].convert ? allowedMasks[mask].convert(char) : char;\n};\n\n/**\n * Mask Validation\n *\n * @param {String} mask\n * @param {String} char\n *\n * @return {Boolean}\n */\nvar maskValidates = function maskValidates(mask, char) {\n if (char == null || !isMask(mask)) return false;\n return allowedMasks[mask].test(char);\n};\n\n/**\n * Mask Text\n *\n * Takes a string or an array of characters\n * and returns a masked string\n *\n * @param {*} text\n * @param {Array|String} masked\n * @param {Boolean} [dontFillMaskBlanks]\n *\n * @return {String}\n */\nvar maskText = function maskText(text, masked, dontFillMaskBlanks) {\n if (text == null) return '';\n text = String(text);\n if (!masked.length || !text.length) return text;\n if (!Array.isArray(masked)) masked = masked.split('');\n\n var textIndex = 0;\n var maskIndex = 0;\n var newText = '';\n\n while (maskIndex < masked.length) {\n var mask = masked[maskIndex];\n\n // Assign the next character\n var char = text[textIndex];\n\n // Check if mask is delimiter\n // and current char matches\n if (!isMask(mask) && char === mask) {\n newText += mask;\n textIndex++;\n // Check if not mask\n } else if (!isMask(mask) && !dontFillMaskBlanks) {\n newText += mask;\n // Check if is mask and validates\n } else if (maskValidates(mask, char)) {\n newText += convert(mask, char);\n textIndex++;\n } else {\n return newText;\n }\n\n maskIndex++;\n }\n\n return newText;\n};\n\n/**\n * Unmask Text\n *\n * @param {String} text\n *\n * @return {String}\n */\nvar unmaskText = function unmaskText(text) {\n return text ? String(text).replace(new RegExp(defaultDelimiters, 'g'), '') : text;\n};\n\n/***/ }),\n/* 140 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n\n\n/**\n * Select autocomplete\n *\n * @mixin\n *\n * Handles logic when using the \"autocomplete\" prop\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n filter: {\n type: Function,\n default: function _default(item, queryText, itemText) {\n var hasValue = function hasValue(val) {\n return val != null ? val : '';\n };\n\n var text = hasValue(itemText);\n var query = hasValue(queryText);\n\n return text.toString().toLowerCase().indexOf(query.toString().toLowerCase()) > -1;\n }\n }\n },\n\n methods: {\n filterSearch: function filterSearch() {\n var _this = this;\n\n if (!this.isAutocomplete) return this.computedItems;\n\n return this.computedItems.filter(function (i) {\n return _this.filter(i, _this.searchValue, _this.getText(i));\n });\n },\n genFiltered: function genFiltered(text) {\n text = (text || '').toString();\n\n if (!this.isAutocomplete || !this.searchValue || this.filteredItems.length < 1) return Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text);\n\n var _getMaskedCharacters = this.getMaskedCharacters(text),\n start = _getMaskedCharacters.start,\n middle = _getMaskedCharacters.middle,\n end = _getMaskedCharacters.end;\n\n return '' + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(start) + this.genHighlight(middle) + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(end);\n },\n genHighlight: function genHighlight(text) {\n if (this.isNotFiltering) return Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text);\n\n return '' + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text) + '';\n },\n getMaskedCharacters: function getMaskedCharacters(text) {\n var searchValue = (this.searchValue || '').toString().toLowerCase();\n var index = text.toLowerCase().indexOf(searchValue);\n\n if (index < 0) return { start: '', middle: text, end: '' };\n\n var start = text.slice(0, index);\n var middle = text.slice(index, index + searchValue.length);\n var end = text.slice(index + searchValue.length);\n return { start: start, middle: middle, end: end };\n },\n getCurrentTag: function getCurrentTag() {\n return this.isMenuItemSelected() ? this.filteredItems[this.getMenuIndex()] : this.isAnyValueAllowed ? this.searchValue : null;\n },\n tabOut: function tabOut() {\n this.blur();\n },\n onTabDown: function onTabDown(e) {\n var _this2 = this;\n\n // If tabbing through inputs and\n // and there is no need for an\n // update, blur the v-select\n if (!this.isAutocomplete || !this.getCurrentTag() || this.combobox) return this.tabOut();\n\n var menuIndex = this.getMenuIndex();\n\n // When adding tags, if searching and\n // there is not a filtered options,\n // add the value to the tags list\n if (this.tags && this.searchValue && menuIndex === -1) {\n e.preventDefault();\n\n return this.updateTags(this.searchValue);\n }\n\n // An item that is selected by\n // menu-index should toggled\n if (this.menuIsActive) {\n // Reset the list index if searching\n this.searchValue && this.$nextTick(function () {\n return setTimeout(_this2.resetMenuIndex, 0);\n });\n\n e.preventDefault();\n this.selectListTile(menuIndex);\n }\n },\n onEnterDown: function onEnterDown() {\n this.updateTags(this.getCurrentTag());\n },\n onEscDown: function onEscDown(e) {\n e.preventDefault();\n this.menuIsActive = false;\n },\n onKeyDown: function onKeyDown(e) {\n var _this3 = this;\n\n // If enter, space, up, or down is pressed, open menu\n if (!this.menuIsActive && [13, 32, 38, 40].includes(e.keyCode)) {\n e.preventDefault();\n return this.showMenu();\n }\n\n // If escape deactivate the menu\n if (e.keyCode === 27) return this.onEscDown(e);\n\n // If tab - select item or close menu\n if (e.keyCode === 9) return this.onTabDown(e);\n\n if (!this.isAutocomplete || ![32].includes(e.keyCode) // space\n ) this.$refs.menu.changeListIndex(e);\n\n // Up or down\n if ([38, 40].includes(e.keyCode)) this.selectedIndex = -1;\n\n if (this.isAutocomplete && !this.hideSelections && !this.searchValue) this.changeSelectedIndex(e.keyCode);\n\n if (!this.isAnyValueAllowed || !this.searchValue) return;\n\n // Enter\n if (e.keyCode === 13) return this.onEnterDown();\n\n // Left arrow\n if (e.keyCode === 37 && this.$refs.input.selectionStart === 0 && this.selectedItems.length) {\n this.updateTags(this.searchValue);\n this.$nextTick(function () {\n _this3.selectedIndex = Math.max(_this3.selectedItems.length - 2, 0);\n });\n }\n\n // Right arrow\n if (e.keyCode === 39 && this.$refs.input.selectionEnd === this.searchValue.length) {\n this.resetMenuIndex();\n }\n },\n selectListTile: function selectListTile(index) {\n if (!this.$refs.menu.tiles[index]) return;\n\n this.$refs.menu.tiles[index].click();\n },\n updateTags: function updateTags(content) {\n var _this4 = this;\n\n // Avoid direct mutation\n // for vuex strict mode\n var selectedItems = this.selectedItems.slice();\n\n // If a duplicate item\n // exists, remove it\n if (selectedItems.includes(content)) {\n this.$delete(selectedItems, selectedItems.indexOf(content));\n }\n\n // When updating tags ensure\n // that that the search text\n // is populated if needed\n var searchValue = null;\n if (this.combobox) {\n selectedItems = [content];\n searchValue = this.chips ? null : content;\n } else {\n selectedItems.push(content);\n }\n\n this.selectedItems = selectedItems;\n\n this.$nextTick(function () {\n _this4.searchValue = searchValue;\n _this4.$emit('input', _this4.combobox ? content : _this4.selectedItems);\n });\n }\n }\n});\n\n/***/ }),\n/* 141 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/**\n * Select computed properties\n *\n * @mixin\n *\n * Computed properties for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n computed: {\n classes: function classes() {\n var classes = _extends({}, this.genSoloClasses(), {\n 'input-group--text-field input-group--select': true,\n 'input-group--auto': this.auto,\n 'input-group--overflow': this.overflow,\n 'input-group--segmented': this.segmented,\n 'input-group--editable': this.editable,\n 'input-group--autocomplete': this.isAutocomplete,\n 'input-group--single-line': this.singleLine || this.isDropdown,\n 'input-group--multi-line': this.multiLine,\n 'input-group--chips': this.chips,\n 'input-group--multiple': this.multiple,\n 'input-group--open': this.menuIsVisible,\n 'input-group--select--selecting-index': this.selectedIndex > -1\n });\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n computedContentClass: function computedContentClass() {\n var children = ['menu__content--select', this.auto ? 'menu__content--auto' : '', this.isDropdown ? 'menu__content--dropdown' : '', this.isAutocomplete ? 'menu__content--autocomplete' : '', this.contentClass || ''];\n\n return children.join(' ');\n },\n computedItems: function computedItems() {\n return this.filterDuplicates(this.cachedItems.concat(this.items));\n },\n\n /**\n * The range of the current input text\n *\n * @return {Number}\n */\n currentRange: function currentRange() {\n if (this.selectedItem == null) return 0;\n\n return this.getText(this.selectedItem).toString().length;\n },\n filteredItems: function filteredItems() {\n // If we are not actively filtering\n // Show all available items\n var items = this.isNotFiltering ? this.computedItems : this.filterSearch();\n\n return !this.auto ? items.slice(0, this.lastItem) : items;\n },\n hideSelections: function hideSelections() {\n return this.isAutocomplete && !this.isMultiple && this.isFocused && !this.chips && !this.$scopedSlots.selection;\n },\n isNotFiltering: function isNotFiltering() {\n return this.isAutocomplete && this.isDirty && this.searchValue === this.getText(this.selectedItem);\n },\n isHidingSelected: function isHidingSelected() {\n return this.hideSelected && this.isAutocomplete && this.isMultiple;\n },\n isAutocomplete: function isAutocomplete() {\n return this.autocomplete || this.editable || this.tags || this.combobox;\n },\n isDirty: function isDirty() {\n return this.selectedItems.length > 0 || this.isAutocomplete && this.searchValue;\n },\n isDropdown: function isDropdown() {\n return this.segmented || this.overflow || this.editable || this.isSolo;\n },\n isMultiple: function isMultiple() {\n return this.multiple || this.tags;\n },\n isAnyValueAllowed: function isAnyValueAllowed() {\n return this.tags || this.combobox;\n },\n menuIsVisible: function menuIsVisible() {\n return this.menuIsActive && this.computedItems.length > 0 && (!this.isAnyValueAllowed || this.filteredItems.length > 0);\n },\n menuItems: function menuItems() {\n var _this = this;\n\n return this.isHidingSelected ? this.filteredItems.filter(function (o) {\n return (_this.selectedItems || []).indexOf(o) === -1;\n }) : this.filteredItems;\n },\n nudgeTop: function nudgeTop() {\n var nudgeTop = -18;\n\n if (this.isSolo) nudgeTop = 0;else if (this.shouldOffset) {\n nudgeTop += 44;\n\n nudgeTop += this.hideDetails ? -24 : 0;\n nudgeTop += this.isAutocomplete && !this.isDropdown ? -2 : 0;\n }\n\n return nudgeTop;\n },\n\n searchValue: {\n get: function get() {\n return this.lazySearch;\n },\n set: function set(val) {\n if (!this.isAutocomplete || !this.multiple && this.selectedIndex > -1) return;\n\n this.lazySearch = val;\n\n this.$emit('update:searchInput', val);\n }\n },\n selectedItem: function selectedItem() {\n var _this2 = this;\n\n if (this.isMultiple) return null;\n\n return this.selectedItems.find(function (i) {\n return _this2.getValue(i) === _this2.getValue(_this2.inputValue);\n });\n },\n shouldOffset: function shouldOffset() {\n return this.isAutocomplete || this.isDropdown;\n }\n }\n});\n\n/***/ }),\n/* 142 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/**\n * Select events\n *\n * @mixin\n *\n * Event based methods for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n blur: function blur() {\n this.deactivateInput();\n this.menuIsActive = false;\n this.$emit('blur');\n },\n focus: function focus() {\n this.showMenu();\n\n this.$emit('focus');\n },\n focusInput: function focusInput() {\n var _this = this;\n\n if (this.$refs.input && this.isAutocomplete) {\n this.$refs.input.focus();\n\n this.$nextTick(function () {\n _this.$refs.input.select();\n _this.shouldBreak && (_this.$refs.input.scrollLeft = _this.$refs.input.scrollWidth);\n });\n } else {\n !this.isFocused && this.$el.focus();\n }\n },\n genListeners: function genListeners() {\n var _this2 = this;\n\n var listeners = Object.assign({}, this.$listeners);\n delete listeners.input;\n\n return _extends({}, listeners, {\n click: function click() {\n if (_this2.disabled || _this2.readonly) return;\n\n if (_this2.isFocused && !_this2.menuIsVisible) {\n return _this2.showMenuItems();\n }\n\n _this2.selectedIndex > -1 ? _this2.selectedIndex = -1 : _this2.focus();\n },\n focus: function focus(e) {\n if (_this2.disabled || _this2.readonly || _this2.isFocused) {\n return;\n }\n\n _this2.activateInput();\n _this2.$nextTick(_this2.focusInput);\n },\n keydown: this.onKeyDown // Located in mixins/select-autocomplete.js\n });\n }\n }\n});\n\n/***/ }),\n/* 143 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VCard__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VCheckbox__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VChip__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__VDivider__ = __webpack_require__(52);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__VMenu__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__VSubheader__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__VList__ = __webpack_require__(56);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n// Components\n\n\n\n\n\n\n\n\n\n/**\n * Select generators\n *\n * @mixin\n *\n * Used for creating the DOM elements for VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genMenu: function genMenu() {\n var _this = this;\n\n var data = {\n ref: 'menu',\n props: {\n activator: this.$el,\n auto: this.auto,\n attach: this.attach && '[data-uid=\"' + this._uid + '\"]',\n closeOnClick: false,\n closeOnContentClick: !this.isMultiple,\n contentClass: this.computedContentClass,\n dark: this.dark,\n disabled: this.disabled,\n light: this.light,\n maxHeight: this.maxHeight,\n nudgeTop: this.nudgeTop,\n offsetY: this.shouldOffset,\n offsetOverflow: this.isAutocomplete,\n openOnClick: false,\n value: this.menuIsVisible,\n zIndex: this.menuZIndex\n },\n on: {\n input: function input(val) {\n if (!val) {\n _this.menuIsActive = false;\n }\n }\n }\n };\n\n if (this.isAutocomplete) data.props.transition = false;\n\n this.minWidth && (data.props.minWidth = this.minWidth);\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_7__VMenu__[\"a\" /* default */], data, [this.genList()]);\n },\n getMenuIndex: function getMenuIndex() {\n return this.$refs.menu ? this.$refs.menu.listIndex : -1;\n },\n setMenuIndex: function setMenuIndex(index) {\n this.$refs.menu && (this.$refs.menu.listIndex = index);\n },\n resetMenuIndex: function resetMenuIndex() {\n this.setMenuIndex(-1);\n },\n isMenuItemSelected: function isMenuItemSelected() {\n return this.menuIsActive && this.menuItems.length && this.getMenuIndex() > -1;\n },\n genSelectionsAndSearch: function genSelectionsAndSearch() {\n return this.$createElement('div', {\n 'class': 'input-group__selections',\n style: { 'overflow': 'hidden' },\n ref: 'activator'\n }, [].concat(_toConsumableArray(this.genSelections()), [this.genSearch()]));\n },\n genSelections: function genSelections() {\n if (this.hideSelections) return [];\n\n var length = this.selectedItems.length;\n var children = new Array(length);\n\n var genSelection = void 0;\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection;\n } else if (this.chips) {\n genSelection = this.genChipSelection;\n } else if (this.segmented) {\n genSelection = this.genSegmentedBtn;\n } else {\n genSelection = this.genCommaSelection;\n }\n\n while (length--) {\n children[length] = genSelection(this.selectedItems[length], length, length === children.length - 1);\n }\n\n return children;\n },\n genSearch: function genSearch() {\n var _this2 = this;\n\n var data = {\n staticClass: 'input-group--select__autocomplete',\n 'class': {\n 'input-group--select__autocomplete--index': this.selectedIndex > -1\n },\n style: {\n flex: this.shouldBreak ? '1 0 100%' : null\n },\n attrs: _extends({}, this.$attrs, {\n disabled: this.disabled || !this.isAutocomplete,\n readonly: this.readonly,\n tabindex: this.disabled || !this.isAutocomplete ? -1 : this.tabindex\n }),\n domProps: {\n value: this.maskText(this.lazySearch || '')\n },\n directives: [{\n name: 'show',\n value: this.isAutocomplete || this.placeholder && !this.selectedItems.length\n }],\n ref: 'input',\n key: 'input'\n };\n\n if (this.isAutocomplete) {\n data.attrs.role = 'combobox';\n data.domProps.autocomplete = this.browserAutocomplete;\n\n data.on = _extends({}, this.genListeners(), {\n input: function input(e) {\n if (_this2.selectedIndex > -1) return;\n\n _this2.searchValue = _this2.unmaskText(e.target.value);\n }\n });\n\n data.directives = data.directives.concat(this.genDirectives());\n }\n\n if (this.placeholder) data.domProps.placeholder = this.placeholder;\n\n return this.$createElement('input', data);\n },\n genSegmentedBtn: function genSegmentedBtn(item) {\n if (!item.text || !item.callback) {\n Object(__WEBPACK_IMPORTED_MODULE_1__util_console__[\"b\" /* consoleWarn */])('When using \\'segmented\\' prop without a selection slot, items must contain both a text and callback property', this);\n return null;\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VBtn__[\"a\" /* default */], {\n props: {\n flat: true\n },\n on: {\n click: function click(e) {\n e.stopPropagation();\n item.callback(e);\n }\n }\n }, [item.text]);\n },\n genSlotSelection: function genSlotSelection(item, index) {\n return this.$scopedSlots.selection({\n parent: this,\n item: item,\n index: index,\n selected: index === this.selectedIndex,\n disabled: this.disabled || this.readonly\n });\n },\n genChipSelection: function genChipSelection(item, index) {\n var _this3 = this;\n\n var isDisabled = this.disabled || this.readonly;\n var click = function click(e) {\n if (isDisabled) return;\n\n e.stopPropagation();\n _this3.focusInput();\n _this3.selectedIndex = index;\n };\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_5__VChip__[\"a\" /* default */], {\n staticClass: 'chip--select-multi',\n attrs: { tabindex: '-1' },\n props: {\n close: this.deletableChips && !isDisabled,\n dark: this.dark,\n disabled: isDisabled,\n selected: index === this.selectedIndex\n },\n on: {\n click: click,\n focus: click,\n input: function input() {\n if (_this3.isMultiple) _this3.selectItem(item);else _this3.inputValue = null;\n }\n },\n key: this.getValue(item)\n }, this.getText(item));\n },\n genCommaSelection: function genCommaSelection(item, index, last) {\n return this.$createElement('div', {\n staticClass: 'input-group__selections__comma',\n 'class': {\n 'input-group__selections__comma--active': index === this.selectedIndex\n },\n key: JSON.stringify(this.getValue(item)) // Item may be an object\n }, '' + this.getText(item) + (last ? '' : ', '));\n },\n genList: function genList() {\n var _this4 = this;\n\n var children = this.menuItems.map(function (o) {\n if (o.header) return _this4.genHeader(o);\n if (o.divider) return _this4.genDivider(o);else return _this4.genTile(o);\n });\n\n if (!children.length) {\n var noData = this.$slots['no-data'];\n if (noData) {\n children.push(noData);\n } else {\n children.push(this.genTile(this.noDataText, true));\n }\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_3__VCard__[\"a\" /* default */], [this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"a\" /* VList */], {\n props: {\n dense: this.dense\n },\n ref: 'list'\n }, children)]);\n },\n genHeader: function genHeader(item) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_8__VSubheader__[\"a\" /* default */], {\n props: item\n }, item.header);\n },\n genDivider: function genDivider(item) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_6__VDivider__[\"a\" /* default */], {\n props: item\n });\n },\n genLabel: function genLabel() {\n var singleLine = this.singleLine || this.isDropdown;\n\n if (singleLine && (this.isDirty || this.isFocused && this.searchValue)) return null;\n\n var data = {};\n\n if (this.id) data.attrs = { for: this.id };\n\n return this.$createElement('label', data, this.$slots.label || this.label);\n },\n genTile: function genTile(item, disabled) {\n var _this5 = this;\n\n var active = this.selectedItems.indexOf(item) !== -1;\n\n if (typeof disabled === 'undefined') {\n disabled = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"i\" /* getObjectValueByPath */])(item, this.itemDisabled);\n }\n\n var data = {\n on: {\n click: function click(e) {\n if (disabled) return;\n\n _this5.selectItem(item);\n }\n },\n props: {\n avatar: item === Object(item) && this.itemAvatar in item,\n ripple: true,\n value: active\n }\n };\n\n if (disabled) {\n data.props.disabled = disabled;\n }\n\n data.props.activeClass = Object.keys(this.addTextColorClassChecks()).join(' ');\n\n if (this.$scopedSlots.item) {\n var tile = this.$scopedSlots.item({ parent: this, item: item, tile: data });\n return this.needsTile(tile) ? this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"b\" /* VListTile */], data, [tile]) : tile;\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"b\" /* VListTile */], data, [this.genAction(item, active), this.genContent(item)]);\n },\n genAction: function genAction(item, active) {\n var _this6 = this;\n\n if (!this.isMultiple || this.isHidingSelected) return null;\n\n var data = {\n staticClass: 'list__tile__action--select-multi',\n on: {\n click: function click(e) {\n e.stopPropagation();\n _this6.selectItem(item);\n }\n }\n };\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"c\" /* VListTileAction */], data, [this.$createElement(__WEBPACK_IMPORTED_MODULE_4__VCheckbox__[\"a\" /* default */], {\n props: {\n color: this.computedColor,\n inputValue: active\n }\n })]);\n },\n genContent: function genContent(item) {\n var text = this.getText(item);\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"d\" /* VListTileContent */], [this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"e\" /* VListTileTitle */], {\n domProps: {\n innerHTML: this.genFiltered(text)\n }\n })]);\n }\n }\n});\n\n/***/ }),\n/* 144 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl__ = __webpack_require__(145);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-divider',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inset: Boolean\n },\n\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n\n data.staticClass = ('divider ' + (data.staticClass || '')).trim();\n\n if (props.inset) data.staticClass += ' divider--inset';\n if (props.light) data.staticClass += ' theme--light';\n if (props.dark) data.staticClass += ' theme--dark';\n\n return h('hr', data);\n }\n});\n\n/***/ }),\n/* 145 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 146 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl__ = __webpack_require__(147);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_delayable__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_detachable__ = __webpack_require__(25);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_menuable_js__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_returnable__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_menu_activator__ = __webpack_require__(148);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_menu_generators__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_menu_keyable__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__mixins_menu_position__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__directives_resize__ = __webpack_require__(11);\n\n\n// Mixins\n\n\n\n\n\n\n\n// Component level mixins\n\n\n\n\n\n// Directives\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-menu',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_7__mixins_menu_activator__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_delayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_detachable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_menu_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_9__mixins_menu_keyable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_menuable_js__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_10__mixins_menu_position__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_returnable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"a\" /* default */]],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_11__directives_click_outside__[\"a\" /* default */],\n Resize: __WEBPACK_IMPORTED_MODULE_12__directives_resize__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n defaultOffset: 8,\n maxHeightAutoDefault: '200px',\n startIndex: 3,\n stopIndex: 0,\n hasJustFocused: false,\n resizeTimeout: null\n };\n },\n\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true\n },\n closeOnContentClick: {\n type: Boolean,\n default: true\n },\n disabled: Boolean,\n fullWidth: Boolean,\n maxHeight: { default: 'auto' },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnClick: {\n type: Boolean,\n default: true\n },\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left'\n },\n transition: {\n type: [Boolean, String],\n default: 'menu-transition'\n }\n },\n\n computed: {\n calculatedLeft: function calculatedLeft() {\n if (!this.auto) return this.calcLeft();\n\n return this.calcXOverflow(this.calcLeftAuto()) + 'px';\n },\n calculatedMaxHeight: function calculatedMaxHeight() {\n return this.auto ? '200px' : isNaN(this.maxHeight) ? this.maxHeight : this.maxHeight + 'px';\n },\n calculatedMaxWidth: function calculatedMaxWidth() {\n return isNaN(this.maxWidth) ? this.maxWidth : this.maxWidth + 'px';\n },\n calculatedMinWidth: function calculatedMinWidth() {\n if (this.minWidth) {\n return isNaN(this.minWidth) ? this.minWidth : this.minWidth + 'px';\n }\n\n var minWidth = this.dimensions.activator.width + this.nudgeWidth + (this.auto ? 16 : 0);\n\n var calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth)) ? minWidth : parseInt(this.calculatedMaxWidth);\n\n return Math.min(calculatedMaxWidth, minWidth) + 'px';\n },\n calculatedTop: function calculatedTop() {\n if (!this.auto || this.isAttached) return this.calcTop();\n\n return this.calcYOverflow(this.calcTopAuto()) + 'px';\n },\n styles: function styles() {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex\n };\n }\n },\n\n watch: {\n activator: function activator(newActivator, oldActivator) {\n this.removeActivatorEvents(oldActivator);\n this.addActivatorEvents(newActivator);\n },\n isContentActive: function isContentActive(val) {\n this.hasJustFocused = val;\n }\n },\n\n methods: {\n activate: function activate() {\n // This exists primarily for v-select\n // helps determine which tiles to activate\n this.getTiles();\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions();\n // Start the transition\n requestAnimationFrame(this.startTransition);\n // Once transitioning, calculate scroll position\n setTimeout(this.calculateScroll, 50);\n },\n closeConditional: function closeConditional() {\n return this.isActive && this.closeOnClick;\n },\n onResize: function onResize() {\n if (!this.isActive) return;\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth;\n this.updateDimensions();\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = setTimeout(this.updateDimensions, 100);\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'menu',\n class: {\n 'menu--disabled': this.disabled\n },\n style: {\n display: this.fullWidth ? 'block' : 'inline-block'\n },\n directives: [{\n arg: 500,\n name: 'resize',\n value: this.onResize\n }],\n on: {\n keydown: this.changeListIndex\n }\n };\n\n return h('div', data, [this.genActivator(), this.genTransition()]);\n }\n});\n\n/***/ }),\n/* 147 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 148 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu activator\n *\n * @mixin\n *\n * Handles the click and hover activation\n * Supports slotted and detached activators\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n activatorClickHandler: function activatorClickHandler(e) {\n if (this.disabled) return;\n if (this.openOnClick && !this.isActive) {\n this.getActivator().focus();\n this.isActive = true;\n this.absoluteX = e.clientX;\n this.absoluteY = e.clientY;\n } else if (this.closeOnClick && this.isActive) {\n this.getActivator().blur();\n this.isActive = false;\n }\n },\n mouseEnterHandler: function mouseEnterHandler(e) {\n var _this = this;\n\n this.runDelay('open', function () {\n if (_this.hasJustFocused) return;\n\n _this.hasJustFocused = true;\n _this.isActive = true;\n });\n },\n mouseLeaveHandler: function mouseLeaveHandler(e) {\n var _this2 = this;\n\n // Prevent accidental re-activation\n this.runDelay('close', function () {\n if (_this2.$refs.content.contains(e.relatedTarget)) return;\n\n requestAnimationFrame(function () {\n _this2.isActive = false;\n _this2.callDeactivate();\n });\n });\n },\n addActivatorEvents: function addActivatorEvents() {\n var activator = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n if (!activator) return;\n activator.addEventListener('click', this.activatorClickHandler);\n },\n removeActivatorEvents: function removeActivatorEvents() {\n var activator = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n if (!activator) return;\n activator.removeEventListener('click', this.activatorClickHandler);\n }\n }\n});\n\n/***/ }),\n/* 149 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n/**\n * Menu generators\n *\n * @mixin\n *\n * Used for creating the DOM elements for VMenu\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genActivator: function genActivator() {\n if (!this.$slots.activator) return null;\n\n var options = {\n staticClass: 'menu__activator',\n 'class': {\n 'menu__activator--active': this.hasJustFocused || this.isActive\n },\n ref: 'activator',\n on: {}\n };\n\n if (this.openOnHover) {\n options.on['mouseenter'] = this.mouseEnterHandler;\n options.on['mouseleave'] = this.mouseLeaveHandler;\n } else if (this.openOnClick) {\n options.on['click'] = this.activatorClickHandler;\n }\n\n return this.$createElement('div', options, this.$slots.activator);\n },\n genTransition: function genTransition() {\n if (!this.transition) return this.genContent();\n\n return this.$createElement('transition', {\n props: {\n name: this.transition\n }\n }, [this.genContent()]);\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n // Do not add click outside for hover menu\n var directives = !this.openOnHover ? [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional,\n include: function include() {\n return [_this.$el].concat(_toConsumableArray(_this.getOpenDependentElements()));\n }\n }\n }] : [];\n\n directives.push({\n name: 'show',\n value: this.isContentActive\n });\n\n return directives;\n },\n genContent: function genContent() {\n var _class,\n _this2 = this;\n\n var options = {\n staticClass: 'menu__content',\n 'class': (_class = {}, _defineProperty(_class, this.contentClass.trim(), true), _defineProperty(_class, 'menuable__content__active', this.isActive), _defineProperty(_class, 'theme--dark', this.dark), _defineProperty(_class, 'theme--light', this.light), _class),\n style: this.styles,\n directives: this.genDirectives(),\n ref: 'content',\n on: {\n click: function click(e) {\n e.stopPropagation();\n if (e.target.getAttribute('disabled')) return;\n if (_this2.closeOnContentClick) _this2.isActive = false;\n }\n }\n };\n\n !this.disabled && this.openOnHover && (options.on.mouseenter = this.mouseEnterHandler);\n this.openOnHover && (options.on.mouseleave = this.mouseLeaveHandler);\n\n return this.$createElement('div', options, this.showLazyContent(this.$slots.default));\n }\n }\n});\n\n/***/ }),\n/* 150 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu keyable\n *\n * @mixin\n *\n * Primarily used to support VSelect\n * Handles opening and closing of VMenu from keystrokes\n * Will conditionally highlight VListTiles for VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n data: function data() {\n return {\n listIndex: -1,\n tiles: []\n };\n },\n\n watch: {\n isActive: function isActive(val) {\n if (!val) this.listIndex = -1;\n },\n listIndex: function listIndex(next, prev) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles();\n\n if (next in this.tiles) {\n var tile = this.tiles[next];\n tile.classList.add('list__tile--highlighted');\n this.$refs.content.scrollTop = tile.offsetTop - tile.clientHeight;\n }\n\n prev in this.tiles && this.tiles[prev].classList.remove('list__tile--highlighted');\n }\n },\n\n methods: {\n changeListIndex: function changeListIndex(e) {\n // Up, Down, Enter, Space\n if ([40, 38, 13].includes(e.keyCode) || e.keyCode === 32 && !this.isActive) {\n e.preventDefault();\n }\n\n // Esc, Tab\n if ([27, 9].includes(e.keyCode)) return this.isActive = false;else if (!this.isActive &&\n // Enter, Space\n [13, 32].includes(e.keyCode) && this.openOnClick) {\n return this.isActive = true;\n }\n\n // Down\n if (e.keyCode === 40 && this.listIndex < this.tiles.length - 1) {\n this.listIndex++;\n // Up\n } else if (e.keyCode === 38 && this.listIndex > 0) {\n this.listIndex--;\n // Enter\n } else if (e.keyCode === 13 && this.listIndex !== -1) {\n this.tiles[this.listIndex].click();\n }\n },\n getTiles: function getTiles() {\n this.tiles = this.$refs.content.querySelectorAll('.list__tile');\n }\n }\n});\n\n/***/ }),\n/* 151 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu position\n *\n * @mixin\n *\n * Used for calculating an automatic position (used for VSelect)\n * Will position the VMenu content properly over the VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n // Revisit this\n calculateScroll: function calculateScroll() {\n if (this.selectedIndex === null) return;\n\n var scrollTop = 0;\n\n if (this.selectedIndex >= this.stopIndex) {\n scrollTop = this.$refs.content.scrollHeight;\n } else if (this.selectedIndex > this.startIndex) {\n scrollTop = this.selectedIndex * (this.defaultOffset * 6) - this.defaultOffset * 7;\n }\n\n this.$refs.content.scrollTop = scrollTop;\n },\n calcLeftAuto: function calcLeftAuto() {\n if (this.isAttached) return 0;\n\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2);\n },\n calcTopAuto: function calcTopAuto() {\n var selectedIndex = Array.from(this.tiles).findIndex(function (n) {\n return n.classList.contains('list__tile--active');\n });\n\n if (selectedIndex === -1) {\n this.selectedIndex = null;\n\n return this.computedTop;\n }\n\n this.selectedIndex = selectedIndex;\n var actingIndex = selectedIndex;\n\n var offsetPadding = -(this.defaultOffset * 2);\n // #708 Stop index should vary by tile length\n this.stopIndex = this.tiles.length > 4 ? this.tiles.length - 4 : this.tiles.length;\n\n if (selectedIndex > this.startIndex && selectedIndex < this.stopIndex) {\n actingIndex = 2;\n offsetPadding = this.defaultOffset * 3;\n } else if (selectedIndex >= this.stopIndex) {\n offsetPadding = -this.defaultOffset;\n actingIndex = selectedIndex - this.stopIndex;\n }\n\n // Is always off by 1 pixel, send help (┛ಠ_ಠ)┛彡┻━┻\n offsetPadding--;\n\n return this.computedTop + offsetPadding - actingIndex * (this.defaultOffset * 6);\n }\n }\n});\n\n/***/ }),\n/* 152 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-subheader',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inset: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children,\n props = _ref.props;\n\n data.staticClass = ('subheader ' + (data.staticClass || '')).trim();\n\n if (props.inset) data.staticClass += ' subheader--inset';\n if (props.light) data.staticClass += ' theme--light';\n if (props.dark) data.staticClass += ' theme--dark';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 153 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 154 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl__ = __webpack_require__(155);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\n// Styles\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"b\" /* provide */])('list'), __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n provide: function provide() {\n return {\n 'listClick': this.listClick\n };\n },\n\n\n data: function data() {\n return {\n groups: []\n };\n },\n\n props: {\n dense: Boolean,\n expand: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'list--dense': this.dense,\n 'list--subheader': this.subheader,\n 'list--two-line': this.twoLine,\n 'list--three-line': this.threeLine,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n methods: {\n register: function register(uid, cb) {\n this.groups.push({ uid: uid, cb: cb });\n },\n unregister: function unregister(uid) {\n var index = this.groups.findIndex(function (g) {\n return g.uid === uid;\n });\n\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n },\n listClick: function listClick(uid, isBooted) {\n if (this.expand) return;\n\n for (var i = this.groups.length; i--;) {\n this.groups[i].cb(uid);\n }\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'list',\n 'class': this.classes\n };\n\n return h('div', data, [this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 155 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 156 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__transitions__ = __webpack_require__(7);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Components\n\n\n// Mixins\n\n\n\n\n// Transitions\n\n\n/**\n * List group\n *\n * @component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list-group',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_bootable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_registrable__[\"a\" /* inject */])('list', 'v-list-group', 'v-list'), __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */]],\n\n inject: ['listClick'],\n\n data: function data() {\n return {\n groups: []\n };\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'primary--text'\n },\n appendIcon: {\n type: String,\n default: 'keyboard_arrow_down'\n },\n disabled: Boolean,\n group: String,\n noAction: Boolean,\n prependIcon: String,\n subGroup: Boolean\n },\n\n computed: {\n groupClasses: function groupClasses() {\n return {\n 'list__group--active': this.isActive,\n 'list__group--disabled': this.disabled\n };\n },\n headerClasses: function headerClasses() {\n return {\n 'list__group__header--active': this.isActive,\n 'list__group__header--sub-group': this.subGroup\n };\n },\n itemsClasses: function itemsClasses() {\n return {\n 'list__group__items--no-action': this.noAction\n };\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n if (!this.subGroup && val) {\n this.listClick(this._uid);\n }\n },\n $route: function $route(to) {\n var isActive = this.matchRoute(to.path);\n\n if (this.group) {\n if (isActive && this.isActive !== isActive) {\n this.listClick(this._uid);\n }\n\n this.isActive = isActive;\n }\n }\n },\n\n mounted: function mounted() {\n this.list.register(this._uid, this.toggle);\n\n if (this.group && this.$route && this.value == null) {\n this.isActive = this.matchRoute(this.$route.path);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.list.unregister(this._uid);\n },\n\n\n methods: {\n click: function click() {\n if (this.disabled) return;\n\n this.isActive = !this.isActive;\n },\n genIcon: function genIcon(icon) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VIcon__[\"a\" /* default */], icon);\n },\n genAppendIcon: function genAppendIcon() {\n var icon = !this.subGroup ? this.appendIcon : false;\n\n if (!icon && !this.$slots.appendIcon) return null;\n\n return this.$createElement('div', {\n staticClass: 'list__group__header__append-icon'\n }, [this.$slots.appendIcon || this.genIcon(icon)]);\n },\n genGroup: function genGroup() {\n return this.$createElement('div', {\n staticClass: 'list__group__header',\n 'class': this.headerClasses,\n on: Object.assign({}, {\n click: this.click\n }, this.$listeners),\n ref: 'item'\n }, [this.genPrependIcon(), this.$slots.activator, this.genAppendIcon()]);\n },\n genItems: function genItems() {\n return this.$createElement('div', {\n staticClass: 'list__group__items',\n 'class': this.itemsClasses,\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n ref: 'group'\n }, this.showLazyContent(this.$slots.default));\n },\n genPrependIcon: function genPrependIcon() {\n var icon = this.prependIcon ? this.prependIcon : this.subGroup ? 'arrow_drop_down' : false;\n\n if (!icon && !this.$slots.prependIcon) return null;\n\n return this.$createElement('div', {\n staticClass: 'list__group__header__prepend-icon',\n 'class': _defineProperty({}, this.activeClass, this.isActive)\n }, [this.$slots.prependIcon || this.genIcon(icon)]);\n },\n toggle: function toggle(uid) {\n this.isActive = this._uid === uid;\n },\n matchRoute: function matchRoute(to) {\n if (!this.group) return false;\n return to.match(this.group) !== null;\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'list__group',\n 'class': this.groupClasses\n }, [this.genGroup(), h(__WEBPACK_IMPORTED_MODULE_4__transitions__[\"a\" /* VExpandTransition */], [this.genItems()])]);\n }\n});\n\n/***/ }),\n/* 157 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__directives_ripple__ = __webpack_require__(17);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Mixins\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list-tile',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */]],\n\n directives: {\n Ripple: __WEBPACK_IMPORTED_MODULE_3__directives_ripple__[\"a\" /* default */]\n },\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n proxyClass: 'list__tile--active'\n };\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'primary--text'\n },\n avatar: Boolean,\n inactive: Boolean,\n tag: String\n },\n\n computed: {\n listClasses: function listClasses() {\n return this.disabled ? 'text--disabled' : this.color ? this.addTextColorClassChecks() : this.defaultColor;\n },\n classes: function classes() {\n return _defineProperty({\n 'list__tile': true,\n 'list__tile--link': this.isLink && !this.inactive,\n 'list__tile--avatar': this.avatar,\n 'list__tile--disabled': this.disabled,\n 'list__tile--active': !this.to && this.isActive\n }, this.activeClass, this.isActive);\n },\n isLink: function isLink() {\n return this.href || this.to || this.$listeners && (this.$listeners.click || this.$listeners['!click']);\n }\n },\n\n render: function render(h) {\n var isRouteLink = !this.inactive && this.isLink;\n\n var _ref2 = isRouteLink ? this.generateRouteLink() : {\n tag: this.tag || 'div',\n data: {\n class: this.classes\n }\n },\n tag = _ref2.tag,\n data = _ref2.data;\n\n data.attrs = Object.assign({}, data.attrs, this.$attrs);\n\n return h('div', {\n 'class': this.listClasses,\n attrs: {\n disabled: this.disabled\n },\n on: _extends({}, this.$listeners)\n }, [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 158 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n functional: true,\n\n name: 'v-list-tile-action',\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children;\n\n data.staticClass = data.staticClass ? 'list__tile__action ' + data.staticClass : 'list__tile__action';\n if ((children || []).length > 1) data.staticClass += ' list__tile__action--stack';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 159 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VAvatar__ = __webpack_require__(34);\n// Components\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n functional: true,\n\n name: 'v-list-tile-avatar',\n\n props: {\n color: String,\n size: {\n type: [Number, String],\n default: 40\n },\n tile: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children,\n props = _ref.props;\n\n data.staticClass = ('list__tile__avatar ' + (data.staticClass || '')).trim();\n\n var avatar = h(__WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */], {\n props: {\n color: props.color,\n size: props.size,\n tile: props.tile\n }\n }, [children]);\n\n return h('div', data, [avatar]);\n }\n});\n\n/***/ }),\n/* 160 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n// Helpers\n\n\n/**\n * Select helpers\n *\n * @mixin\n *\n * Helper methods for the\n * v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n getText: function getText(item) {\n return this.getPropertyFromItem(item, this.itemText);\n },\n getValue: function getValue(item) {\n return this.getPropertyFromItem(item, this.itemValue);\n },\n getPropertyFromItem: function getPropertyFromItem(item, field) {\n if (item !== Object(item)) return item;\n\n var value = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"i\" /* getObjectValueByPath */])(item, field);\n\n return typeof value === 'undefined' ? item : value;\n }\n }\n});\n\n/***/ }),\n/* 161 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Select menu methods\n *\n * @mixin\n *\n * Menu based methods for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n activateInput: function activateInput() {\n this.isActive = true;\n this.isFocused = true;\n },\n deactivateInput: function deactivateInput() {\n this.isFocused = false;\n this.isActive = false;\n this.selectedIndex = -1;\n },\n hideMenu: function hideMenu() {\n this.menuIsActive = false;\n },\n showMenu: function showMenu() {\n this.activateInput();\n this.showMenuItems();\n this.isMultiple && this.resetMenuIndex();\n },\n showMenuItems: function showMenuItems() {\n this.menuIsActive = true;\n },\n toggleMenu: function toggleMenu() {\n if (this.disabled || this.readonly || this.menuIsVisible) return this.hideMenu();\n\n this.showMenu();\n this.focusInput();\n }\n }\n});\n\n/***/ }),\n/* 162 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n appendIcon: {\n type: String,\n default: 'arrow_drop_down'\n },\n appendIconCb: Function,\n attach: Boolean,\n auto: Boolean,\n autocomplete: Boolean,\n browserAutocomplete: {\n type: String,\n default: 'off'\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n combobox: Boolean,\n contentClass: String,\n deletableChips: Boolean,\n dense: Boolean,\n editable: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n itemAvatar: {\n type: String,\n default: 'avatar'\n },\n itemDisabled: {\n type: String,\n default: 'disabled'\n },\n itemText: {\n type: String,\n default: 'text'\n },\n itemValue: {\n type: String,\n default: 'value'\n },\n maxHeight: {\n type: [Number, String],\n default: 300\n },\n minWidth: {\n type: [Boolean, Number, String],\n default: false\n },\n multiple: Boolean,\n multiLine: Boolean,\n openOnClear: Boolean,\n overflow: Boolean,\n returnObject: Boolean,\n searchInput: {\n default: null\n },\n segmented: Boolean,\n singleLine: Boolean,\n tags: Boolean,\n valueComparator: {\n type: Function,\n default: function _default(a, b) {\n if (a !== Object(a)) return a === b;\n var aProps = Object.keys(a);\n var bProps = Object.keys(b);\n return aProps.length === bProps.length && aProps.every(function (propName) {\n return a[propName] === b[propName];\n });\n }\n }\n }\n});\n\n/***/ }),\n/* 163 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Select watchers\n *\n * @mixin\n *\n * Watchers for the\n * v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n watch: {\n filteredItems: function filteredItems() {\n this.$refs.menu && this.$refs.menu.updateDimensions();\n },\n inputValue: function inputValue(val) {\n // Search for an existing item when a\n // value was selected from the menu\n if (this.combobox && this.isNotFiltering) {\n val = this.findExistingItem(val);\n }\n\n // Populate selected items\n this.genSelectedItems(val);\n\n // Only fire an update\n // if values do not\n // match\n val !== this.value && this.$emit('input', val);\n\n // When inputValue is changed\n // and combobox is true set\n // menu property to false\n if (this.combobox) this.menuIsActive = false;\n },\n isActive: function isActive(val) {\n if (val) {\n if (!this.chips && !this.$scopedSlots.selection) {\n this.searchValue = this.getText(this.selectedItem);\n }\n return;\n }\n\n this.blur();\n\n if (this.tags && this.searchValue) {\n this.updateTags(this.searchValue);\n }\n\n if (this.combobox && this.lazySearch && !this.isNotFiltering) {\n this.inputValue = this.lazySearch;\n }\n\n // Only set search value if\n // there is a value to set\n this.searchValue && (this.searchValue = null);\n },\n isBooted: function isBooted() {\n var _this = this;\n\n this.$nextTick(function () {\n if (_this.content && _this.content.addEventListener) {\n _this.content.addEventListener('scroll', _this.onScroll, false);\n }\n });\n },\n items: function items(val) {\n var _this2 = this;\n\n if (this.cacheItems) {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val));\n }\n\n this.resetMenuIndex();\n\n // Tags and combobox should not\n // pre-select the first entry\n if (this.searchValue && !this.isAnyValueAllowed) {\n this.$nextTick(function () {\n return _this2.setMenuIndex(0);\n });\n }\n\n this.genSelectedItems();\n },\n menuIsActive: function menuIsActive(val) {\n if (!val) return;\n\n this.isBooted = true;\n },\n isMultiple: function isMultiple(val) {\n this.inputValue = val ? [] : null;\n },\n searchInput: function searchInput(val) {\n this.searchValue = val;\n },\n searchValue: function searchValue(val, prev) {\n var _this3 = this;\n\n // Wrap input to next line if overflowing\n if (this.$refs.input.scrollWidth > this.$refs.input.clientWidth) {\n this.shouldBreak = true;\n this.$nextTick(this.$refs.menu.updateDimensions);\n } else if (val === null) {\n this.shouldBreak = false;\n }\n\n // Activate menu if inactive and searching\n if (this.isActive && !this.menuIsActive && val !== this.getText(this.selectedItem)) {\n this.menuIsActive = true;\n }\n\n // Only reset list index\n // if typing in search\n !val && prev && this.resetMenuIndex();\n\n this.$nextTick(function () {\n if (val && !_this3.isAnyValueAllowed) {\n _this3.setMenuIndex(0);\n }\n if (val !== null && _this3.selectedIndex > -1) {\n _this3.selectedIndex = -1;\n }\n });\n },\n selectedItems: function selectedItems() {\n if (this.isAutocomplete) {\n this.$nextTick(this.$refs.menu.updateDimensions);\n }\n },\n value: function value(val) {\n this.inputValue = val;\n this.validate();\n }\n }\n});\n\n/***/ }),\n/* 164 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VTableOverflow */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDataTable__ = __webpack_require__(165);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VEditDialog__ = __webpack_require__(172);\n/* unused harmony reexport VDataTable */\n/* unused harmony reexport VEditDialog */\n\n\n\n\n\nvar VTableOverflow = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('table__overflow');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VEditDialog__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VEditDialog__[\"a\" /* default */]);\n Vue.component(VTableOverflow.name, VTableOverflow);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */]);\n\n/***/ }),\n/* 165 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl__ = __webpack_require__(166);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl__ = __webpack_require__(167);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_data_iterable__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_head__ = __webpack_require__(168);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_body__ = __webpack_require__(169);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_foot__ = __webpack_require__(170);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_progress__ = __webpack_require__(171);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__util_helpers__ = __webpack_require__(2);\n\n\n\n\n\n\n\n\n\n\n\n\n// Importing does not work properly\nvar VTableOverflow = Object(__WEBPACK_IMPORTED_MODULE_7__util_helpers__[\"e\" /* createSimpleFunctional */])('table__overflow');\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-data-table',\n\n data: function data() {\n return {\n actionsClasses: 'datatable__actions',\n actionsRangeControlsClasses: 'datatable__actions__range-controls',\n actionsSelectClasses: 'datatable__actions__select',\n actionsPaginationClasses: 'datatable__actions__pagination'\n };\n },\n\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_data_iterable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_head__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_body__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_foot__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_progress__[\"a\" /* default */]],\n\n props: {\n headers: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n headerText: {\n type: String,\n default: 'text'\n },\n hideHeaders: Boolean,\n rowsPerPageText: {\n type: String,\n default: 'Rows per page:'\n },\n customFilter: {\n type: Function,\n default: function _default(items, search, filter, headers) {\n search = search.toString().toLowerCase();\n if (search.trim() === '') return items;\n\n var props = headers.map(function (h) {\n return h.value;\n });\n\n return items.filter(function (item) {\n return props.some(function (prop) {\n return filter(Object(__WEBPACK_IMPORTED_MODULE_7__util_helpers__[\"i\" /* getObjectValueByPath */])(item, prop), search);\n });\n });\n }\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'datatable table': true,\n 'datatable--select-all': this.selectAll !== false,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n filteredItems: function filteredItems() {\n return this.filteredItemsImpl(this.headers);\n },\n headerColumns: function headerColumns() {\n return this.headers.length + (this.selectAll !== false);\n }\n },\n\n methods: {\n hasTag: function hasTag(elements, tag) {\n return Array.isArray(elements) && elements.find(function (e) {\n return e.tag === tag;\n });\n },\n genTR: function genTR(children) {\n var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return this.$createElement('tr', data, children);\n }\n },\n\n created: function created() {\n var firstSortable = this.headers.find(function (h) {\n return !('sortable' in h) || h.sortable;\n });\n\n this.defaultPagination.sortBy = !this.disableInitialSort && firstSortable ? firstSortable.value : null;\n\n this.initPagination();\n },\n render: function render(h) {\n var tableOverflow = h(VTableOverflow, {}, [h('table', {\n 'class': this.classes\n }, [this.genTHead(), this.genTBody(), this.genTFoot()])]);\n\n return h('div', [tableOverflow, this.genActionsFooter()]);\n }\n});\n\n/***/ }),\n/* 166 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 167 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 168 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCheckbox__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n sortIcon: {\n type: String,\n default: 'arrow_upward'\n }\n },\n\n methods: {\n genTHead: function genTHead() {\n var _this = this;\n\n if (this.hideHeaders) return; // Exit Early since no headers are needed.\n\n var children = [];\n\n if (this.$scopedSlots.headers) {\n var row = this.$scopedSlots.headers({\n headers: this.headers,\n indeterminate: this.indeterminate,\n all: this.everyItem\n });\n\n children = [this.hasTag(row, 'th') ? this.genTR(row) : row, this.genTProgress()];\n } else {\n var _row = this.headers.map(function (o) {\n return _this.genHeader(o);\n });\n var checkbox = this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VCheckbox__[\"a\" /* default */], {\n props: {\n dark: this.dark,\n light: this.light,\n color: this.selectAll === true ? '' : this.selectAll,\n hideDetails: true,\n inputValue: this.everyItem,\n indeterminate: this.indeterminate\n },\n on: { change: this.toggle }\n });\n\n this.hasSelectAll && _row.unshift(this.$createElement('th', [checkbox]));\n\n children = [this.genTR(_row), this.genTProgress()];\n }\n\n return this.$createElement('thead', [children]);\n },\n genHeader: function genHeader(header) {\n var array = [this.$scopedSlots.headerCell ? this.$scopedSlots.headerCell({ header: header }) : header[this.headerText]];\n\n return this.$createElement.apply(this, ['th'].concat(_toConsumableArray(this.genHeaderData(header, array))));\n },\n genHeaderData: function genHeaderData(header, children) {\n var classes = ['column'];\n var data = {\n key: header[this.headerText],\n attrs: {\n role: 'columnheader',\n scope: 'col',\n width: header.width || null,\n 'aria-label': header[this.headerText] || '',\n 'aria-sort': 'none'\n }\n };\n\n if (header.sortable == null || header.sortable) {\n this.genHeaderSortingData(header, children, data, classes);\n } else {\n data.attrs['aria-label'] += ': Not sorted.'; // TODO: Localization\n }\n\n classes.push('text-xs-' + (header.align || 'left'));\n if (Array.isArray(header.class)) {\n classes.push.apply(classes, _toConsumableArray(header.class));\n } else if (header.class) {\n classes.push(header.class);\n }\n data.class = classes;\n\n return [data, children];\n },\n genHeaderSortingData: function genHeaderSortingData(header, children, data, classes) {\n var _this2 = this;\n\n if (!('value' in header)) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"b\" /* consoleWarn */])('Headers must have a value property that corresponds to a value in the v-model array', this);\n }\n\n data.attrs.tabIndex = 0;\n data.on = {\n click: function click() {\n _this2.expanded = {};\n _this2.sort(header.value);\n },\n keydown: function keydown(e) {\n // check for space\n if (e.keyCode === 32) {\n e.preventDefault();\n _this2.sort(header.value);\n }\n }\n };\n\n classes.push('sortable');\n var icon = this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: {\n small: true\n }\n }, this.sortIcon);\n if (!header.align || header.align === 'left') {\n children.push(icon);\n } else {\n children.unshift(icon);\n }\n\n var pagination = this.computedPagination;\n var beingSorted = pagination.sortBy === header.value;\n if (beingSorted) {\n classes.push('active');\n if (pagination.descending) {\n classes.push('desc');\n data.attrs['aria-sort'] = 'descending';\n data.attrs['aria-label'] += ': Sorted descending. Activate to remove sorting.'; // TODO: Localization\n } else {\n classes.push('asc');\n data.attrs['aria-sort'] = 'ascending';\n data.attrs['aria-label'] += ': Sorted ascending. Activate to sort descending.'; // TODO: Localization\n }\n } else {\n data.attrs['aria-label'] += ': Not sorted. Activate to sort ascending.'; // TODO: Localization\n }\n }\n }\n});\n\n/***/ }),\n/* 169 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions_expand_transition__ = __webpack_require__(41);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTBody: function genTBody() {\n var children = this.genItems();\n\n return this.$createElement('tbody', children);\n },\n genExpandedRow: function genExpandedRow(props) {\n var children = [];\n\n if (this.isExpanded(props.item)) {\n var expand = this.$createElement('div', {\n class: 'datatable__expand-content',\n key: props.item[this.itemKey]\n }, this.$scopedSlots.expand(props));\n\n children.push(expand);\n }\n\n var transition = this.$createElement('transition-group', {\n class: 'datatable__expand-col',\n attrs: { colspan: this.headerColumns },\n props: {\n tag: 'td'\n },\n on: Object(__WEBPACK_IMPORTED_MODULE_0__transitions_expand_transition__[\"a\" /* default */])('datatable__expand-col--expanded')\n }, children);\n\n return this.genTR([transition], { class: 'datatable__expand-row' });\n },\n genFilteredItems: function genFilteredItems() {\n if (!this.$scopedSlots.items) {\n return null;\n }\n\n var rows = [];\n for (var index = 0, len = this.filteredItems.length; index < len; ++index) {\n var item = this.filteredItems[index];\n var props = this.createProps(item, index);\n var row = this.$scopedSlots.items(props);\n\n rows.push(this.hasTag(row, 'td') ? this.genTR(row, {\n key: index,\n attrs: { active: this.isSelected(item) }\n }) : row);\n\n if (this.$scopedSlots.expand) {\n var expandRow = this.genExpandedRow(props);\n rows.push(expandRow);\n }\n }\n\n return rows;\n },\n genEmptyItems: function genEmptyItems(content) {\n if (this.hasTag(content, 'tr')) {\n return content;\n } else if (this.hasTag(content, 'td')) {\n return this.genTR(content);\n } else {\n return this.genTR([this.$createElement('td', {\n class: {\n 'text-xs-center': typeof content === 'string'\n },\n attrs: { colspan: this.headerColumns }\n }, content)]);\n }\n }\n }\n});\n\n/***/ }),\n/* 170 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTFoot: function genTFoot() {\n if (!this.$slots.footer) {\n return null;\n }\n\n var footer = this.$slots.footer;\n var row = this.hasTag(footer, 'td') ? this.genTR(footer) : footer;\n\n return this.$createElement('tfoot', [row]);\n },\n genActionsFooter: function genActionsFooter() {\n if (this.hideActions) {\n return null;\n }\n\n return this.$createElement('div', {\n 'class': this.classes\n }, this.genActions());\n }\n }\n});\n\n/***/ }),\n/* 171 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTProgress: function genTProgress() {\n var col = this.$createElement('th', {\n staticClass: 'column',\n attrs: {\n colspan: this.headerColumns\n }\n }, [this.genProgress()]);\n\n return this.genTR([col], {\n staticClass: 'datatable__progress'\n });\n }\n }\n});\n\n/***/ }),\n/* 172 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl__ = __webpack_require__(173);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_returnable__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VMenu__ = __webpack_require__(30);\n\n\n// Mixins\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-edit-dialog',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_returnable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isActive: false,\n isSaving: false\n };\n },\n\n\n props: {\n cancelText: {\n default: 'Cancel'\n },\n large: Boolean,\n lazy: Boolean,\n persistent: Boolean,\n saveText: {\n default: 'Save'\n },\n transition: {\n type: String,\n default: 'slide-x-reverse-transition'\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n val && setTimeout(this.focus, 50); // Give DOM time to paint\n }\n },\n\n methods: {\n cancel: function cancel() {\n this.isActive = false;\n },\n focus: function focus() {\n var input = this.$refs.content.querySelector('input');\n input && input.focus();\n },\n genButton: function genButton(fn, text) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VBtn__[\"a\" /* default */], {\n props: {\n flat: true,\n color: 'primary',\n light: true\n },\n on: { click: fn }\n }, text);\n },\n genActions: function genActions() {\n var _this = this;\n\n return this.$createElement('div', {\n 'class': 'small-dialog__actions'\n }, [this.genButton(this.cancel, this.cancelText), this.genButton(function () {\n return _this.save(_this.returnValue);\n }, this.saveText)]);\n },\n genContent: function genContent() {\n var _this2 = this;\n\n return this.$createElement('div', {\n on: {\n keydown: function keydown(e) {\n var input = _this2.$refs.content.querySelector('input');\n e.keyCode === 27 && _this2.cancel();\n e.keyCode === 13 && input && _this2.save(input.value);\n }\n },\n ref: 'content'\n }, [this.$slots.input]);\n }\n },\n\n render: function render(h) {\n var _this3 = this;\n\n return h(__WEBPACK_IMPORTED_MODULE_3__VMenu__[\"a\" /* default */], {\n 'class': 'small-dialog',\n props: {\n contentClass: 'small-dialog__content',\n transition: this.transition,\n origin: 'top right',\n right: true,\n value: this.isActive,\n closeOnClick: !this.persistent,\n closeOnContentClick: false,\n lazy: this.lazy\n },\n on: {\n input: function input(val) {\n return _this3.isActive = val;\n }\n }\n }, [h('a', {\n slot: 'activator'\n }, this.$slots.default), this.genContent(), this.large ? this.genActions() : null]);\n }\n});\n\n/***/ }),\n/* 173 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 174 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDatePicker__ = __webpack_require__(175);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__ = __webpack_require__(59);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__ = __webpack_require__(60);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__ = __webpack_require__(63);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__ = __webpack_require__(64);\n/* unused harmony reexport VDatePicker */\n/* unused harmony reexport VDatePickerTitle */\n/* unused harmony reexport VDatePickerHeader */\n/* unused harmony reexport VDatePickerDateTable */\n/* unused harmony reexport VDatePickerMonthTable */\n/* unused harmony reexport VDatePickerYears */\n\n\n\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */]);\n\n/***/ }),\n/* 175 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDatePickerTitle__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDatePickerHeader__ = __webpack_require__(59);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VDatePickerDateTable__ = __webpack_require__(60);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VDatePickerMonthTable__ = __webpack_require__(63);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePickerYears__ = __webpack_require__(64);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_picker__ = __webpack_require__(65);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__util_isDateAllowed__ = __webpack_require__(62);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n// Components\n\n\n\n\n\n\n// Mixins\n\n\n// Utils\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_5__mixins_picker__[\"a\" /* default */]],\n\n data: function data() {\n var _this = this;\n\n var now = new Date();\n return {\n activePicker: this.type.toUpperCase(),\n defaultColor: 'accent',\n inputDay: null,\n inputMonth: null,\n inputYear: null,\n isReversing: false,\n now: now,\n // tableDate is a string in 'YYYY' / 'YYYY-M' format (leading zero for month is not required)\n tableDate: function () {\n if (_this.pickerDate) {\n return _this.pickerDate;\n }\n\n var date = _this.value || now.getFullYear() + '-' + (now.getMonth() + 1);\n var type = _this.type === 'date' ? 'month' : 'year';\n return _this.sanitizeDateString(date, type);\n }()\n };\n },\n\n\n props: {\n allowedDates: Function,\n // Function formatting the day in date picker table\n dayFormat: {\n type: Function,\n default: null\n },\n events: {\n type: [Array, Object, Function],\n default: function _default() {\n return null;\n }\n },\n eventColor: {\n type: [String, Function, Object],\n default: 'warning'\n },\n firstDayOfWeek: {\n type: [String, Number],\n default: 0\n },\n // Function formatting the tableDate in the day/month table header\n headerDateFormat: {\n type: Function,\n default: null\n },\n locale: {\n type: String,\n default: 'en-us'\n },\n max: String,\n min: String,\n // Function formatting month in the months table\n monthFormat: {\n type: Function,\n default: null\n },\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n pickerDate: String,\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n reactive: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n showCurrent: {\n type: [Boolean, String],\n default: true\n },\n // Function formatting currently selected date in the picker title\n titleDateFormat: {\n type: Function,\n default: null\n },\n type: {\n type: String,\n default: 'date',\n validator: function validator(type) {\n return ['date', 'month'].includes(type);\n } // TODO: year\n },\n value: String,\n // Function formatting the year in table header and pickup title\n yearFormat: {\n type: Function,\n default: null\n },\n yearIcon: String\n },\n\n computed: {\n current: function current() {\n if (this.showCurrent === true) {\n return this.sanitizeDateString(this.now.getFullYear() + '-' + (this.now.getMonth() + 1) + '-' + this.now.getDate(), this.type);\n }\n\n return this.showCurrent || null;\n },\n inputDate: function inputDate() {\n return this.type === 'date' ? this.inputYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputMonth + 1) + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputDay) : this.inputYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputMonth + 1);\n },\n tableMonth: function tableMonth() {\n return (this.pickerDate || this.tableDate).split('-')[1] - 1;\n },\n tableYear: function tableYear() {\n return (this.pickerDate || this.tableDate).split('-')[0] * 1;\n },\n minMonth: function minMonth() {\n return this.min ? this.sanitizeDateString(this.min, 'month') : null;\n },\n maxMonth: function maxMonth() {\n return this.max ? this.sanitizeDateString(this.max, 'month') : null;\n },\n minYear: function minYear() {\n return this.min ? this.sanitizeDateString(this.min, 'year') : null;\n },\n maxYear: function maxYear() {\n return this.max ? this.sanitizeDateString(this.max, 'year') : null;\n },\n formatters: function formatters() {\n return {\n year: this.yearFormat || Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 }),\n titleDate: this.titleDateFormat || this.defaultTitleDateFormatter\n };\n },\n defaultTitleDateFormatter: function defaultTitleDateFormatter() {\n var titleFormats = {\n year: { year: 'numeric', timeZone: 'UTC' },\n month: { month: 'long', timeZone: 'UTC' },\n date: { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }\n };\n\n var titleDateFormatter = Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, titleFormats[this.type], {\n start: 0,\n length: { date: 10, month: 7, year: 4 }[this.type]\n });\n\n var landscapeFormatter = function landscapeFormatter(date) {\n return titleDateFormatter(date).replace(/([^\\d\\s])([\\d])/g, function (match, nonDigit, digit) {\n return nonDigit + ' ' + digit;\n }).replace(', ', ',
');\n };\n\n return this.landscape ? landscapeFormatter : titleDateFormatter;\n }\n },\n\n watch: {\n tableDate: function tableDate(val, prev) {\n // Make a ISO 8601 strings from val and prev for comparision, otherwise it will incorrectly\n // compare for example '2000-9' and '2000-10'\n var sanitizeType = this.type === 'month' ? 'year' : 'month';\n this.isReversing = this.sanitizeDateString(val, sanitizeType) < this.sanitizeDateString(prev, sanitizeType);\n this.$emit('update:pickerDate', val);\n },\n pickerDate: function pickerDate(val) {\n if (val) {\n this.tableDate = val;\n } else if (this.value && this.type === 'date') {\n this.tableDate = this.sanitizeDateString(this.value, 'month');\n } else if (this.value && this.type === 'month') {\n this.tableDate = this.sanitizeDateString(this.value, 'year');\n }\n },\n value: function value() {\n this.setInputDate();\n if (this.value && !this.pickerDate) {\n this.tableDate = this.sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month');\n }\n },\n type: function type(_type) {\n this.activePicker = _type.toUpperCase();\n\n if (this.value) {\n var date = this.sanitizeDateString(this.value, _type);\n this.$emit('input', this.isDateAllowed(date) ? date : null);\n }\n }\n },\n\n methods: {\n isDateAllowed: function isDateAllowed(value) {\n return Object(__WEBPACK_IMPORTED_MODULE_7__util_isDateAllowed__[\"a\" /* default */])(value, this.min, this.max, this.allowedDates);\n },\n yearClick: function yearClick(value) {\n this.inputYear = value;\n if (this.type === 'month') {\n this.tableDate = '' + value;\n } else {\n this.tableDate = value + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1);\n }\n this.activePicker = 'MONTH';\n this.reactive && this.isDateAllowed(this.inputDate) && this.$emit('input', this.inputDate);\n },\n monthClick: function monthClick(value) {\n this.inputYear = parseInt(value.split('-')[0], 10);\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1;\n if (this.type === 'date') {\n this.tableDate = value;\n this.activePicker = 'DATE';\n this.reactive && this.isDateAllowed(this.inputDate) && this.$emit('input', this.inputDate);\n } else {\n this.$emit('input', this.inputDate);\n this.$emit('change', this.inputDate);\n }\n },\n dateClick: function dateClick(value) {\n this.inputYear = parseInt(value.split('-')[0], 10);\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1;\n this.inputDay = parseInt(value.split('-')[2], 10);\n this.$emit('input', this.inputDate);\n this.$emit('change', this.inputDate);\n },\n genPickerTitle: function genPickerTitle() {\n var _this2 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VDatePickerTitle__[\"a\" /* default */], {\n props: {\n date: this.value ? this.formatters.titleDate(this.value) : '',\n selectingYear: this.activePicker === 'YEAR',\n year: this.formatters.year('' + this.inputYear),\n yearIcon: this.yearIcon,\n value: this.value\n },\n slot: 'title',\n style: this.readonly ? {\n 'pointer-events': 'none'\n } : undefined,\n on: {\n 'update:selectingYear': function updateSelectingYear(value) {\n return _this2.activePicker = value ? 'YEAR' : _this2.type.toUpperCase();\n }\n }\n });\n },\n genTableHeader: function genTableHeader() {\n var _this3 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VDatePickerHeader__[\"a\" /* default */], {\n props: {\n nextIcon: this.nextIcon,\n color: this.color,\n disabled: this.readonly,\n format: this.headerDateFormat,\n locale: this.locale,\n min: this.activePicker === 'DATE' ? this.minMonth : this.minYear,\n max: this.activePicker === 'DATE' ? this.maxMonth : this.maxYear,\n prevIcon: this.prevIcon,\n value: this.activePicker === 'DATE' ? this.tableYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1) : '' + this.tableYear\n },\n on: {\n toggle: function toggle() {\n return _this3.activePicker = _this3.activePicker === 'DATE' ? 'MONTH' : 'YEAR';\n },\n input: function input(value) {\n return _this3.tableDate = value;\n }\n }\n });\n },\n genDateTable: function genDateTable() {\n var _this4 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VDatePickerDateTable__[\"a\" /* default */], {\n props: {\n allowedDates: this.allowedDates,\n color: this.color,\n current: this.current,\n disabled: this.readonly,\n events: this.events,\n eventColor: this.eventColor,\n firstDayOfWeek: this.firstDayOfWeek,\n format: this.dayFormat,\n locale: this.locale,\n min: this.min,\n max: this.max,\n tableDate: this.tableYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1),\n scrollable: this.scrollable,\n value: this.value\n },\n ref: 'table',\n on: {\n input: this.dateClick,\n tableDate: function tableDate(value) {\n return _this4.tableDate = value;\n }\n }\n });\n },\n genMonthTable: function genMonthTable() {\n var _this5 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_3__VDatePickerMonthTable__[\"a\" /* default */], {\n props: {\n allowedDates: this.type === 'month' ? this.allowedDates : null,\n color: this.color,\n current: this.current ? this.sanitizeDateString(this.current, 'month') : null,\n disabled: this.readonly,\n format: this.monthFormat,\n locale: this.locale,\n min: this.minMonth,\n max: this.maxMonth,\n scrollable: this.scrollable,\n value: !this.value || this.type === 'month' ? this.value : this.value.substr(0, 7),\n tableDate: '' + this.tableYear\n },\n ref: 'table',\n on: {\n input: this.monthClick,\n tableDate: function tableDate(value) {\n return _this5.tableDate = value;\n }\n }\n });\n },\n genYears: function genYears() {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_4__VDatePickerYears__[\"a\" /* default */], {\n props: {\n color: this.color,\n format: this.yearFormat,\n locale: this.locale,\n min: this.minYear,\n max: this.maxYear,\n value: '' + this.tableYear\n },\n on: {\n input: this.yearClick\n }\n });\n },\n genPickerBody: function genPickerBody() {\n var children = this.activePicker === 'YEAR' ? [this.genYears()] : [this.genTableHeader(), this.activePicker === 'DATE' ? this.genDateTable() : this.genMonthTable()];\n\n return this.$createElement('div', {\n key: this.activePicker,\n style: this.readonly ? {\n 'pointer-events': 'none'\n } : undefined\n }, children);\n },\n\n // Adds leading zero to month/day if necessary, returns 'YYYY' if type = 'year',\n // 'YYYY-MM' if 'month' and 'YYYY-MM-DD' if 'date'\n sanitizeDateString: function sanitizeDateString(dateString, type) {\n var _dateString$split = dateString.split('-'),\n _dateString$split2 = _slicedToArray(_dateString$split, 3),\n year = _dateString$split2[0],\n _dateString$split2$ = _dateString$split2[1],\n month = _dateString$split2$ === undefined ? 1 : _dateString$split2$,\n _dateString$split2$2 = _dateString$split2[2],\n date = _dateString$split2$2 === undefined ? 1 : _dateString$split2$2;\n\n return (year + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(month) + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(date)).substr(0, { date: 10, month: 7, year: 4 }[type]);\n },\n setInputDate: function setInputDate() {\n if (this.value) {\n var array = this.value.split('-');\n this.inputYear = parseInt(array[0], 10);\n this.inputMonth = parseInt(array[1], 10) - 1;\n if (this.type === 'date') {\n this.inputDay = parseInt(array[2], 10);\n }\n } else {\n this.inputYear = this.inputYear || this.now.getFullYear();\n this.inputMonth = this.inputMonth == null ? this.inputMonth : this.now.getMonth();\n this.inputDay = this.inputDay || this.now.getDate();\n }\n }\n },\n\n created: function created() {\n if (this.pickerDate !== this.tableDate) {\n this.$emit('update:pickerDate', this.tableDate);\n }\n this.setInputDate();\n },\n render: function render(h) {\n return this.genPicker('picker--date');\n }\n});\n\n/***/ }),\n/* 176 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 177 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 178 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (function (locale, options) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : { start: 0, length: 0 },\n start = _ref.start,\n length = _ref.length;\n\n var makeIsoString = function makeIsoString(dateString) {\n var _dateString$trim$spli = dateString.trim().split(' ')[0].split('-'),\n _dateString$trim$spli2 = _slicedToArray(_dateString$trim$spli, 3),\n year = _dateString$trim$spli2[0],\n month = _dateString$trim$spli2[1],\n date = _dateString$trim$spli2[2];\n\n return [year, Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(month || 1), Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(date || 1)].join('-');\n };\n\n try {\n var intlFormatter = new Intl.DateTimeFormat(locale || undefined, options);\n return function (dateString) {\n return intlFormatter.format(new Date(makeIsoString(dateString) + 'T00:00:00+00:00'));\n };\n } catch (e) {\n return start || length ? function (dateString) {\n return makeIsoString(dateString).substr(start, length);\n } : null;\n }\n});\n\n/***/ }),\n/* 179 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n/**\n * @param {String} value YYYY-MM format\n * @param {Number} sign -1 or +1\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = (function (value, sign) {\n var _value$split$map = value.split('-').map(function (v) {\n return 1 * v;\n }),\n _value$split$map2 = _slicedToArray(_value$split$map, 2),\n year = _value$split$map2[0],\n month = _value$split$map2[1];\n\n if (month + sign === 0) {\n return year - 1 + '-12';\n } else if (month + sign === 13) {\n return year + 1 + '-01';\n } else {\n return year + '-' + Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(month + sign);\n }\n});\n\n/***/ }),\n/* 180 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 181 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 182 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl__ = __webpack_require__(183);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCard__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n// Components\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'primary'\n };\n },\n\n\n props: {\n fullWidth: Boolean,\n landscape: Boolean,\n transition: {\n type: String,\n default: 'fade-transition'\n },\n width: {\n type: [Number, String],\n default: 290,\n validator: function validator(value) {\n return parseInt(value, 10) > 0;\n }\n }\n },\n\n computed: {\n computedTitleColor: function computedTitleColor() {\n var darkTheme = this.dark || !this.light && this.$vuetify.dark;\n var defaultTitleColor = darkTheme ? null : this.computedColor;\n return this.color || defaultTitleColor;\n }\n },\n\n methods: {\n genTitle: function genTitle() {\n return this.$createElement('div', {\n staticClass: 'picker__title',\n 'class': this.addBackgroundColorClassChecks({\n 'picker__title--landscape': this.landscape\n }, this.computedTitleColor)\n }, this.$slots.title);\n },\n genBodyTransition: function genBodyTransition() {\n return this.$createElement('transition', {\n props: {\n name: this.transition\n }\n }, this.$slots.default);\n },\n genBody: function genBody() {\n return this.$createElement('div', {\n staticClass: 'picker__body',\n style: this.fullWidth ? undefined : {\n width: this.width + 'px'\n }\n }, [this.genBodyTransition()]);\n },\n genActions: function genActions() {\n return this.$createElement('div', {\n staticClass: 'picker__actions card__actions'\n }, this.$slots.actions);\n }\n },\n\n render: function render(h) {\n return h(__WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */], {\n staticClass: 'picker',\n 'class': _extends({\n 'picker--landscape': this.landscape\n }, this.themeClasses)\n }, [this.$slots.title ? this.genTitle() : null, this.genBody(), this.$slots.actions ? this.genActions() : null]);\n }\n});\n\n/***/ }),\n/* 183 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 184 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDialog__ = __webpack_require__(36);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */]);\n\n/***/ }),\n/* 185 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__ = __webpack_require__(186);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__ = __webpack_require__(188);\n/* unused harmony reexport VExpansionPanel */\n/* unused harmony reexport VExpansionPanelContent */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */]);\n\n/***/ }),\n/* 186 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl__ = __webpack_require__(187);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-expansion-panel',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"b\" /* provide */])('expansionPanel')],\n\n provide: function provide() {\n return {\n panelClick: this.panelClick,\n focusable: this.focusable\n };\n },\n data: function data() {\n return {\n items: []\n };\n },\n\n\n props: {\n expand: Boolean,\n focusable: Boolean,\n inset: Boolean,\n popout: Boolean\n },\n\n methods: {\n panelClick: function panelClick(uid) {\n if (!this.expand) {\n for (var i = 0; i < this.items.length; i++) {\n this.items[i].toggle(uid);\n }\n return;\n }\n\n for (var _i = 0; _i < this.items.length; _i++) {\n if (this.items[_i].uid === uid) {\n this.items[_i].toggle(uid);\n return;\n }\n }\n },\n register: function register(uid, toggle) {\n this.items.push({ uid: uid, toggle: toggle });\n },\n unregister: function unregister(uid) {\n this.items = this.items.filter(function (i) {\n return i.uid !== uid;\n });\n }\n },\n\n render: function render(h) {\n return h('ul', {\n staticClass: 'expansion-panel',\n 'class': _extends({\n 'expansion-panel--focusable': this.focusable,\n 'expansion-panel--popout': this.popout,\n 'expansion-panel--inset': this.inset\n }, this.themeClasses)\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 187 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 188 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_click_outside__ = __webpack_require__(8);\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-expansion-panel-content',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_4__mixins_registrable__[\"a\" /* inject */])('expansionPanel', 'v-expansion-panel', 'v-expansion-panel-content')],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_6__directives_click_outside__[\"a\" /* default */]\n },\n\n inject: ['focusable', 'panelClick'],\n\n data: function data() {\n return {\n height: 'auto'\n };\n },\n\n\n props: {\n expandIcon: {\n type: String,\n default: 'keyboard_arrow_down'\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false\n }\n },\n\n methods: {\n genBody: function genBody() {\n return this.$createElement('div', {\n ref: 'body',\n class: 'expansion-panel__body',\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, this.showLazyContent(this.$slots.default));\n },\n genHeader: function genHeader() {\n var _this = this;\n\n return this.$createElement('div', {\n staticClass: 'expansion-panel__header',\n directives: [{\n name: 'ripple',\n value: this.ripple\n }],\n on: {\n click: function click() {\n return _this.panelClick(_this._uid);\n }\n }\n }, [this.$slots.header, this.genIcon()]);\n },\n genIcon: function genIcon(h) {\n if (this.hideActions) return null;\n\n var icon = this.$slots.actions || this.$createElement(__WEBPACK_IMPORTED_MODULE_5__VIcon__[\"a\" /* default */], this.expandIcon);\n\n return this.$createElement('div', {\n staticClass: 'header__icon'\n }, [icon]);\n },\n toggle: function toggle(uid) {\n var _this2 = this;\n\n var isActive = this._uid === uid && !this.isActive;\n\n if (isActive) this.isBooted = true;\n\n // We treat bootable differently\n // Needs time to calc height\n this.$nextTick(function () {\n return _this2.isActive = isActive;\n });\n }\n },\n\n mounted: function mounted() {\n this.expansionPanel.register(this._uid, this.toggle);\n },\n beforeDestroy: function beforeDestroy() {\n this.expansionPanel.unregister(this._uid);\n },\n render: function render(h) {\n var _this3 = this;\n\n var children = [];\n\n this.$slots.header && children.push(this.genHeader());\n children.push(h(__WEBPACK_IMPORTED_MODULE_0__transitions__[\"a\" /* VExpandTransition */], [this.genBody()]));\n\n return h('li', {\n staticClass: 'expansion-panel__container',\n 'class': {\n 'expansion-panel__container--active': this.isActive\n },\n attrs: {\n tabindex: 0\n },\n on: {\n keydown: function keydown(e) {\n // Ensure element is focusable and the activeElement\n if (_this3.focusable && _this3.$el === document.activeElement && e.keyCode === 13) _this3.panelClick(_this3._uid);\n }\n }\n }, children);\n }\n});\n\n/***/ }),\n/* 189 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VFooter__ = __webpack_require__(190);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */]);\n\n/***/ }),\n/* 190 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl__ = __webpack_require__(191);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n// Styles\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-footer',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('footer', ['height']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n height: {\n default: 32,\n type: [Number, String]\n },\n inset: Boolean\n },\n\n computed: {\n computedMarginBottom: function computedMarginBottom() {\n if (!this.app) return;\n\n return this.$vuetify.application.bottom;\n },\n computedPaddingLeft: function computedPaddingLeft() {\n return !this.app || !this.inset ? 0 : this.$vuetify.application.left;\n },\n computedPaddingRight: function computedPaddingRight() {\n return !this.app ? 0 : this.$vuetify.application.right;\n },\n styles: function styles() {\n var styles = {\n height: isNaN(this.height) ? this.height : this.height + 'px'\n };\n\n if (this.computedPaddingLeft) {\n styles.paddingLeft = this.computedPaddingLeft + 'px';\n }\n\n if (this.computedPaddingRight) {\n styles.paddingRight = this.computedPaddingRight + 'px';\n }\n\n if (this.computedMarginBottom) {\n styles.marginBottom = this.computedMarginBottom + 'px';\n }\n\n return styles;\n }\n },\n\n methods: {\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return isNaN(this.height) ? this.$el ? this.$el.clientHeight : 0 : this.height;\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'footer',\n 'class': this.addBackgroundColorClassChecks({\n 'footer--absolute': this.absolute,\n 'footer--fixed': !this.absolute && (this.app || this.fixed),\n 'footer--inset': this.inset,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n }),\n style: this.styles,\n ref: 'content'\n };\n\n return h('footer', data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 191 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 192 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VForm__ = __webpack_require__(193);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */]);\n\n/***/ }),\n/* 193 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-form',\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n inputs: [],\n errorBag: {}\n };\n },\n\n\n props: {\n value: Boolean,\n lazyValidation: Boolean\n },\n\n watch: {\n errorBag: {\n handler: function handler() {\n var errors = Object.values(this.errorBag).includes(true);\n\n this.$emit('input', !errors);\n\n return !errors;\n },\n\n deep: true\n }\n },\n\n methods: {\n getInputs: function getInputs() {\n var results = [];\n\n var search = function search(children) {\n var depth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n for (var index = 0; index < children.length; index++) {\n var child = children[index];\n if (child.errorBucket !== undefined) {\n results.push(child);\n } else {\n search(child.$children, depth + 1);\n }\n }\n if (depth === 0) return results;\n };\n\n return search(this.$children);\n },\n watchInputs: function watchInputs() {\n var inputs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getInputs();\n\n for (var index = 0; index < inputs.length; index++) {\n var child = inputs[index];\n if (this.inputs.includes(child)) {\n continue; // We already know about this input\n }\n\n this.inputs.push(child);\n this.watchChild(child);\n }\n },\n watchChild: function watchChild(child) {\n var _this = this;\n\n var watcher = function watcher(child) {\n child.$watch('valid', function (val) {\n _this.$set(_this.errorBag, child._uid, !val);\n }, { immediate: true });\n };\n\n if (!this.lazyValidation) return watcher(child);\n\n // Only start watching inputs if we need to\n child.$watch('shouldValidate', function (val) {\n if (!val) return;\n\n // Only watch if we're not already doing it\n if (_this.errorBag.hasOwnProperty(child._uid)) return;\n\n watcher(child);\n });\n },\n validate: function validate() {\n var errors = this.inputs.filter(function (input) {\n return !input.validate(true);\n }).length;\n return !errors;\n },\n reset: function reset() {\n for (var i = this.inputs.length; i--;) {\n this.inputs[i].reset();\n }\n if (this.lazyValidation) this.errorBag = {};\n }\n },\n\n mounted: function mounted() {\n this.watchInputs();\n },\n updated: function updated() {\n var inputs = this.getInputs();\n\n if (inputs.length < this.inputs.length) {\n // Something was removed, we don't want it in the errorBag any more\n var removed = this.inputs.filter(function (i) {\n return !inputs.includes(i);\n });\n\n for (var index = 0; index < removed.length; index++) {\n var input = removed[index];\n this.$delete(this.errorBag, input._uid);\n this.$delete(this.inputs, this.inputs.indexOf(input));\n }\n }\n\n this.watchInputs(inputs);\n },\n render: function render(h) {\n var _this2 = this;\n\n return h('form', {\n attrs: Object.assign({\n novalidate: true\n }, this.$attrs),\n on: {\n submit: function submit(e) {\n return _this2.$emit('submit', e);\n }\n }\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 194 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VSpacer */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VContent__ = __webpack_require__(195);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VContainer__ = __webpack_require__(197);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VFlex__ = __webpack_require__(198);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VLayout__ = __webpack_require__(199);\n/* unused harmony reexport VContainer */\n/* unused harmony reexport VContent */\n/* unused harmony reexport VFlex */\n/* unused harmony reexport VLayout */\n\n\n\n\n\n\nvar VSpacer = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('spacer');\n\n\n\nvar VGrid = {};\n\n/* istanbul ignore next */\nVGrid.install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VContent__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VContainer__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VContainer__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VFlex__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VFlex__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VLayout__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VLayout__[\"a\" /* default */]);\n Vue.component(VSpacer.name, VSpacer);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (VGrid);\n\n/***/ }),\n/* 195 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl__ = __webpack_require__(196);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_ssr_bootable__ = __webpack_require__(23);\n// Styles\n\n\n// Mixins\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-content',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_ssr_bootable__[\"a\" /* default */]],\n\n props: {\n tag: {\n type: String,\n default: 'main'\n }\n },\n\n computed: {\n styles: function styles() {\n var _$vuetify$application = this.$vuetify.application,\n bar = _$vuetify$application.bar,\n top = _$vuetify$application.top,\n right = _$vuetify$application.right,\n footer = _$vuetify$application.footer,\n bottom = _$vuetify$application.bottom,\n left = _$vuetify$application.left;\n\n\n return {\n paddingTop: top + bar + 'px',\n paddingRight: right + 'px',\n paddingBottom: footer + bottom + 'px',\n paddingLeft: left + 'px'\n };\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'content',\n 'class': this.classes,\n style: this.styles,\n ref: 'content'\n };\n\n return h(this.tag, data, [h('div', { staticClass: 'content--wrap' }, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 196 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 197 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('container'));\n\n/***/ }),\n/* 198 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('flex'));\n\n/***/ }),\n/* 199 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('layout'));\n\n/***/ }),\n/* 200 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__ = __webpack_require__(201);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */]);\n\n/***/ }),\n/* 201 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl__ = __webpack_require__(202);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_overlayable__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__directives_touch__ = __webpack_require__(9);\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-navigation-drawer',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])(null, ['miniVariant', 'right', 'width']), __WEBPACK_IMPORTED_MODULE_2__mixins_overlayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__[\"a\" /* default */]],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_5__directives_click_outside__[\"a\" /* default */],\n Resize: __WEBPACK_IMPORTED_MODULE_6__directives_resize__[\"a\" /* default */],\n Touch: __WEBPACK_IMPORTED_MODULE_7__directives_touch__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n isActive: false,\n touchArea: {\n left: 0,\n right: 0\n }\n };\n },\n\n props: {\n clipped: Boolean,\n disableRouteWatcher: Boolean,\n disableResizeWatcher: Boolean,\n height: {\n type: [Number, String],\n default: '100%'\n },\n floating: Boolean,\n miniVariant: Boolean,\n miniVariantWidth: {\n type: [Number, String],\n default: 80\n },\n mobileBreakPoint: {\n type: [Number, String],\n default: 1264\n },\n permanent: Boolean,\n right: Boolean,\n stateless: Boolean,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 300\n },\n value: { required: false }\n },\n\n computed: {\n /**\n * Used for setting an app\n * value from a dynamic\n * property. Called from\n * applicationable.js\n *\n * @return {string}\n */\n applicationProperty: function applicationProperty() {\n return this.right ? 'right' : 'left';\n },\n calculatedHeight: function calculatedHeight() {\n return isNaN(this.height) ? this.height : this.height + 'px';\n },\n calculatedTransform: function calculatedTransform() {\n if (this.isActive) return 0;\n\n return this.right ? this.calculatedWidth : -this.calculatedWidth;\n },\n calculatedWidth: function calculatedWidth() {\n return this.miniVariant ? this.miniVariantWidth : this.width;\n },\n classes: function classes() {\n return {\n 'navigation-drawer': true,\n 'navigation-drawer--absolute': this.absolute,\n 'navigation-drawer--clipped': this.clipped,\n 'navigation-drawer--close': !this.isActive,\n 'navigation-drawer--fixed': !this.absolute && (this.app || this.fixed),\n 'navigation-drawer--floating': this.floating,\n 'navigation-drawer--is-mobile': this.isMobile,\n 'navigation-drawer--mini-variant': this.miniVariant,\n 'navigation-drawer--open': this.isActive,\n 'navigation-drawer--right': this.right,\n 'navigation-drawer--temporary': this.temporary,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n isMobile: function isMobile() {\n return !this.stateless && !this.permanent && !this.temporary && this.$vuetify.breakpoint.width < parseInt(this.mobileBreakPoint, 10);\n },\n marginTop: function marginTop() {\n if (!this.app) return 0;\n var marginTop = this.$vuetify.application.bar;\n\n marginTop += this.clipped ? this.$vuetify.application.top : 0;\n\n return marginTop;\n },\n maxHeight: function maxHeight() {\n if (!this.app) return '100%';\n\n return this.clipped ? this.$vuetify.application.top + this.$vuetify.application.bottom : this.$vuetify.application.bottom;\n },\n reactsToClick: function reactsToClick() {\n return !this.stateless && !this.permanent && (this.isMobile || this.temporary);\n },\n reactsToMobile: function reactsToMobile() {\n return !this.disableResizeWatcher && !this.stateless && !this.permanent && !this.temporary;\n },\n reactsToRoute: function reactsToRoute() {\n return !this.disableRouteWatcher && !this.stateless && (this.temporary || this.isMobile);\n },\n resizeIsDisabled: function resizeIsDisabled() {\n return this.disableResizeWatcher || this.stateless;\n },\n showOverlay: function showOverlay() {\n return this.isActive && (this.isMobile || this.temporary);\n },\n styles: function styles() {\n var styles = {\n height: this.calculatedHeight,\n marginTop: this.marginTop + 'px',\n maxHeight: 'calc(100% - ' + this.maxHeight + 'px)',\n transform: 'translateX(' + this.calculatedTransform + 'px)',\n width: this.calculatedWidth + 'px'\n };\n\n return styles;\n }\n },\n\n watch: {\n $route: function $route() {\n if (this.reactsToRoute && this.closeConditional()) {\n this.isActive = false;\n }\n },\n isActive: function isActive(val) {\n this.$emit('input', val);\n this.callUpdate();\n },\n\n /**\n * When mobile changes, adjust\n * the active state only when\n * there has been a previous\n * value\n */\n isMobile: function isMobile(val, prev) {\n !val && this.isActive && !this.temporary && this.removeOverlay();\n\n if (prev == null || this.resizeIsDisabled || !this.reactsToMobile) return;\n\n this.isActive = !val;\n this.callUpdate();\n },\n permanent: function permanent(val) {\n // If enabling prop\n // enable the drawer\n if (val) {\n this.isActive = true;\n }\n this.callUpdate();\n },\n showOverlay: function showOverlay(val) {\n if (val) this.genOverlay();else this.removeOverlay();\n },\n temporary: function temporary() {\n this.callUpdate();\n },\n value: function value(val) {\n if (this.permanent) return;\n\n if (val == null) return this.init();\n\n if (val !== this.isActive) this.isActive = val;\n }\n },\n\n beforeMount: function beforeMount() {\n this.init();\n },\n\n\n methods: {\n calculateTouchArea: function calculateTouchArea() {\n if (!this.$el.parentNode) return;\n var parentRect = this.$el.parentNode.getBoundingClientRect();\n\n this.touchArea = {\n left: parentRect.left + 50,\n right: parentRect.right - 50\n };\n },\n closeConditional: function closeConditional() {\n return this.isActive && this.reactsToClick;\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n var directives = [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional\n }\n }];\n\n !this.touchless && directives.push({\n name: 'touch',\n value: {\n parent: true,\n left: this.swipeLeft,\n right: this.swipeRight\n }\n });\n\n return directives;\n },\n\n /**\n * Sets state before mount to avoid\n * entry transitions in SSR\n *\n * @return {void}\n */\n init: function init() {\n if (this.permanent) {\n this.isActive = true;\n } else if (this.stateless || this.value != null) {\n this.isActive = this.value;\n } else if (!this.temporary) {\n this.isActive = !this.isMobile;\n }\n },\n swipeRight: function swipeRight(e) {\n if (this.isActive && !this.right) return;\n this.calculateTouchArea();\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (!this.right && e.touchstartX <= this.touchArea.left) this.isActive = true;else if (this.right && this.isActive) this.isActive = false;\n },\n swipeLeft: function swipeLeft(e) {\n if (this.isActive && this.right) return;\n this.calculateTouchArea();\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (this.right && e.touchstartX >= this.touchArea.right) this.isActive = true;else if (!this.right && this.isActive) this.isActive = false;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return !this.isActive || this.temporary || this.isMobile ? 0 : this.calculatedWidth;\n }\n },\n\n render: function render(h) {\n var _this2 = this;\n\n var data = {\n 'class': this.classes,\n style: this.styles,\n directives: this.genDirectives(),\n on: {\n click: function click() {\n if (!_this2.miniVariant) return;\n\n _this2.$emit('update:miniVariant', false);\n },\n transitionend: function transitionend(e) {\n _this2.$emit('transitionend', e);\n window.dispatchEvent(new Event('resize'));\n }\n }\n };\n\n return h('aside', data, [this.$slots.default, h('div', { 'class': 'navigation-drawer__border' })]);\n }\n});\n\n/***/ }),\n/* 202 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 203 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VPagination__ = __webpack_require__(204);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */]);\n\n/***/ }),\n/* 204 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl__ = __webpack_require__(205);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-pagination',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */]],\n\n directives: { Resize: __WEBPACK_IMPORTED_MODULE_2__directives_resize__[\"a\" /* default */] },\n\n data: function data() {\n return {\n maxButtons: 0,\n defaultColor: 'primary'\n };\n },\n\n\n props: {\n circle: Boolean,\n disabled: Boolean,\n length: {\n type: Number,\n default: 0,\n validator: function validator(val) {\n return val % 1 === 0;\n }\n },\n totalVisible: [Number, String],\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n value: {\n type: Number,\n default: 0\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'pagination': true,\n 'pagination--circle': this.circle,\n 'pagination--disabled': this.disabled\n };\n },\n items: function items() {\n var maxLength = this.totalVisible || this.maxButtons;\n if (this.length <= maxLength) {\n return this.range(1, this.length);\n }\n\n var even = maxLength % 2 === 0 ? 1 : 0;\n var left = Math.floor(maxLength / 2);\n var right = this.length - left + 1 + even;\n\n if (this.value >= left && this.value <= right) {\n var start = this.value - left + 2;\n var end = this.value + left - 2 - even;\n\n return [1, '...'].concat(_toConsumableArray(this.range(start, end)), ['...', this.length]);\n } else {\n return [].concat(_toConsumableArray(this.range(1, left)), ['...'], _toConsumableArray(this.range(this.length - left + 1 + even, this.length)));\n }\n }\n },\n\n watch: {\n value: function value() {\n this.init();\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n init: function init() {\n var _this = this;\n\n this.selected = null;\n\n this.$nextTick(this.onResize);\n // TODO: Change this (f75dee3a, cbdf7caa)\n setTimeout(function () {\n return _this.selected = _this.value;\n }, 100);\n },\n onResize: function onResize() {\n var width = this.$el && this.$el.parentNode ? this.$el.parentNode.clientWidth : window.innerWidth;\n\n this.maxButtons = Math.floor((width - 96) / 42);\n },\n next: function next(e) {\n e.preventDefault();\n this.$emit('input', this.value + 1);\n this.$emit('next');\n },\n previous: function previous(e) {\n e.preventDefault();\n this.$emit('input', this.value - 1);\n this.$emit('previous');\n },\n range: function range(from, to) {\n var range = [];\n\n from = from > 0 ? from : 1;\n\n for (var i = from; i <= to; i++) {\n range.push(i);\n }\n\n return range;\n },\n genIcon: function genIcon(h, icon, disabled, fn) {\n return h('li', [h('button', {\n staticClass: 'pagination__navigation',\n class: {\n 'pagination__navigation--disabled': disabled\n },\n on: disabled ? {} : { click: fn }\n }, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], [icon])])]);\n },\n genItem: function genItem(h, i) {\n var _this2 = this;\n\n return h('button', {\n staticClass: 'pagination__item',\n class: i === this.value ? this.addBackgroundColorClassChecks({\n 'pagination__item--active': true\n }) : {},\n on: {\n click: function click() {\n return _this2.$emit('input', i);\n }\n }\n }, [i]);\n },\n genItems: function genItems(h) {\n var _this3 = this;\n\n return this.items.map(function (i, index) {\n return h('li', { key: index }, [isNaN(i) ? h('span', { class: 'pagination__more' }, [i]) : _this3.genItem(h, i)]);\n });\n }\n },\n\n render: function render(h) {\n var children = [this.genIcon(h, this.prevIcon, this.value <= 1, this.previous), this.genItems(h), this.genIcon(h, this.nextIcon, this.value >= this.length, this.next)];\n\n return h('ul', {\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.onResize\n }],\n class: this.classes\n }, children);\n }\n});\n\n/***/ }),\n/* 205 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 206 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VParallax__ = __webpack_require__(207);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */]);\n\n/***/ }),\n/* 207 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl__ = __webpack_require__(208);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_translatable__ = __webpack_require__(209);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-parallax',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_translatable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isBooted: false\n };\n },\n\n\n props: {\n alt: String,\n height: {\n type: [String, Number],\n default: 500\n },\n src: String\n },\n\n computed: {\n styles: function styles() {\n return {\n display: 'block',\n opacity: this.isBooted ? 1 : 0,\n transform: 'translate(-50%, ' + this.parallax + 'px)'\n };\n }\n },\n\n watch: {\n parallax: function parallax() {\n this.isBooted = true;\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n init: function init() {\n var _this = this;\n\n if (!this.$refs.img) return;\n\n if (this.$refs.img.complete) {\n this.translate();\n this.listeners();\n } else {\n this.$refs.img.addEventListener('load', function () {\n _this.translate();\n _this.listeners();\n }, false);\n }\n },\n objHeight: function objHeight() {\n return this.$refs.img.naturalHeight;\n },\n elOffsetTop: function elOffsetTop() {\n return this.$el.offsetTop;\n }\n },\n\n render: function render(h) {\n var imgData = {\n staticClass: 'parallax__image',\n style: this.styles,\n attrs: {\n src: this.src\n },\n ref: 'img'\n };\n\n if (this.alt) imgData.attrs.alt = this.alt;\n\n var container = h('div', {\n staticClass: 'parallax__image-container'\n }, [h('img', imgData)]);\n\n var content = h('div', {\n staticClass: 'parallax__content'\n }, this.$slots.default);\n\n return h('div', {\n staticClass: 'parallax',\n style: {\n height: this.normalizedHeight + 'px'\n },\n on: this.$listeners\n }, [container, content]);\n }\n});\n\n/***/ }),\n/* 208 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 209 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'translatable',\n\n data: function data() {\n return {\n parallax: null,\n parallaxDist: null,\n percentScrolled: null,\n scrollTop: null,\n windowHeight: null,\n windowBottom: null\n };\n },\n\n\n computed: {\n normalizedHeight: function normalizedHeight() {\n if (this.jumbotron) {\n return isNaN(this.height) ? this.height : this.height + 'px';\n }\n\n return Number(this.height.toString().replace(/(^[0-9]*$)/, '$1'));\n },\n imgHeight: function imgHeight() {\n return this.objHeight();\n }\n },\n\n beforeDestroy: function beforeDestroy() {\n window.removeEventListener('scroll', this.translate, false);\n window.removeEventListener('resize', this.translate, false);\n },\n\n\n methods: {\n listeners: function listeners() {\n window.addEventListener('scroll', this.translate, false);\n window.addEventListener('resize', this.translate, false);\n },\n translate: function translate() {\n this.calcDimensions();\n\n this.percentScrolled = (this.windowBottom - this.elOffsetTop) / (this.normalizedHeight + this.windowHeight);\n\n this.parallax = Math.round(this.parallaxDist * this.percentScrolled);\n\n if (this.translated) {\n this.translated();\n }\n },\n calcDimensions: function calcDimensions() {\n var offset = this.$el.getBoundingClientRect();\n\n this.scrollTop = window.pageYOffset;\n this.parallaxDist = this.imgHeight - this.normalizedHeight;\n this.elOffsetTop = offset.top + this.scrollTop;\n this.windowHeight = window.innerHeight;\n this.windowBottom = this.scrollTop + this.windowHeight;\n }\n }\n});\n\n/***/ }),\n/* 210 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VRadioGroup__ = __webpack_require__(211);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VRadio__ = __webpack_require__(213);\n/* unused harmony reexport VRadioGroup */\n/* unused harmony reexport VRadio */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VRadio__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VRadio__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */]);\n\n/***/ }),\n/* 211 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl__ = __webpack_require__(212);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_registrable__ = __webpack_require__(4);\n// Styles\n\n\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-radio-group',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_4__mixins_registrable__[\"b\" /* provide */])('radio')],\n\n model: {\n prop: 'inputValue',\n event: 'change'\n },\n\n provide: function provide() {\n var _this = this;\n\n return {\n isMandatory: function isMandatory() {\n return _this.mandatory;\n },\n name: function name() {\n return _this.name;\n }\n };\n },\n\n\n data: function data() {\n return {\n internalTabIndex: -1,\n radios: []\n };\n },\n\n props: {\n column: {\n type: Boolean,\n default: true\n },\n inputValue: null,\n mandatory: {\n type: Boolean,\n default: true\n },\n name: String,\n row: Boolean\n },\n\n watch: {\n hasError: function hasError(val) {\n for (var index = this.radios.length; --index >= 0;) {\n this.radios[index].parentError = val;\n }\n },\n inputValue: function inputValue(val) {\n for (var index = this.radios.length; --index >= 0;) {\n var radio = this.radios[index];\n radio.isActive = val === radio.value;\n }\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'radio-group': true,\n 'radio-group--column': this.column && !this.row,\n 'radio-group--row': this.row,\n 'error--text': this.hasError\n };\n }\n },\n\n methods: {\n toggleRadio: function toggleRadio(value) {\n var _this2 = this;\n\n if (this.disabled) {\n return;\n }\n\n this.shouldValidate = true;\n this.$emit('change', value);\n this.$nextTick(function () {\n return _this2.validate();\n });\n\n for (var index = this.radios.length; --index >= 0;) {\n var radio = this.radios[index];\n if (radio.value !== value) radio.isActive = false;\n }\n },\n radioBlur: function radioBlur(e) {\n if (!e.relatedTarget || !e.relatedTarget.classList.contains('radio')) {\n this.shouldValidate = true;\n this.$emit('blur', this.inputValue);\n }\n },\n register: function register(radio) {\n radio.isActive = this.inputValue === radio.value;\n radio.$el.tabIndex = radio.$el.tabIndex > 0 ? radio.$el.tabIndex : 0;\n radio.$on('change', this.toggleRadio);\n radio.$on('blur', this.radioBlur);\n radio.$on('focus', this.radioFocus);\n this.radios.push(radio);\n },\n unregister: function unregister(radio) {\n radio.$off('change', this.toggleRadio);\n radio.$off('blur', this.radioBlur);\n radio.$off('focus', this.radioFocus);\n\n var index = this.radios.findIndex(function (r) {\n return r === radio;\n });\n\n if (index > -1) this.radios.splice(index, 1);\n }\n },\n\n render: function render(h) {\n var data = {\n attrs: {\n role: 'radiogroup'\n }\n };\n return this.genInputGroup(this.$slots.default, data);\n }\n});\n\n/***/ }),\n/* 212 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 213 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_tab_focusable__ = __webpack_require__(214);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_registrable__ = __webpack_require__(4);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n// Components\n\n\n\n// Mixins\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-radio',\n\n inheritAttrs: false,\n\n inject: ['isMandatory', 'name'],\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_6__mixins_registrable__[\"a\" /* inject */])('radio', 'v-radio', 'v-radio-group'), __WEBPACK_IMPORTED_MODULE_4__mixins_tab_focusable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'accent',\n isActive: false,\n parentError: false\n };\n },\n\n props: {\n disabled: Boolean,\n value: null,\n label: String\n },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'input-group': true,\n 'input-group--active': this.isActive,\n 'input-group--disabled': this.disabled,\n 'input-group--selection-controls': true,\n 'input-group--tab-focused': this.tabFocused,\n 'radio': true,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n\n if (!this.parentError) {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n icon: function icon() {\n return this.isActive ? 'radio_button_checked' : 'radio_button_unchecked';\n }\n },\n\n methods: {\n genInput: function genInput(radio) {\n var value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);\n var input = this.$createElement('input', {\n ref: 'input',\n style: {\n display: 'none'\n },\n attrs: Object.assign({\n name: this.name && this.name(),\n id: this.id,\n type: 'radio',\n value: value\n }, this.$attrs)\n }, [value]);\n\n radio.push(input);\n\n return this.$createElement('div', {\n class: 'input-group__input'\n }, radio);\n },\n genWrapper: function genWrapper(radio) {\n var _this = this;\n\n var children = [];\n\n children.push(this.genLabel());\n children.push(this.genInput(radio));\n\n return this.$createElement('div', {\n class: this.classes,\n attrs: {\n role: 'radio',\n 'aria-checked': this.isActive ? 'true' : 'false',\n 'aria-label': this.label\n },\n on: {\n keydown: function keydown(e) {\n if ([13, 32].includes(e.keyCode)) {\n e.preventDefault();\n _this.toggle();\n }\n },\n blur: function blur(e) {\n _this.$emit('blur', e);\n _this.tabFocused = false;\n }\n }\n }, children);\n },\n genLabel: function genLabel() {\n return this.$createElement('label', {\n on: {\n click: this.toggle\n }\n }, this.$slots.label || this.label);\n },\n toggle: function toggle() {\n var mandatory = !!this.isMandatory && this.isMandatory();\n\n if (!this.disabled && (!this.isActive || !mandatory)) {\n this.$refs.input.checked = true;\n this.isActive = true;\n this.$emit('change', this.value);\n }\n }\n },\n\n mounted: function mounted() {\n this.radio.register(this);\n },\n beforeDestroy: function beforeDestroy() {\n this.radio.unregister(this);\n },\n render: function render(h) {\n var transition = h(__WEBPACK_IMPORTED_MODULE_0__transitions__[\"b\" /* VFadeTransition */], {}, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n staticClass: 'icon--selection-control',\n 'class': {\n 'icon--radio': this.isActive\n },\n key: this.icon,\n on: Object.assign({\n click: this.toggle\n }, this.$listeners)\n }, this.icon)]);\n\n var ripple = this.ripple ? this.genRipple() : null;\n\n return this.genWrapper([transition, ripple]);\n }\n});\n\n/***/ }),\n/* 214 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'tab-focusable',\n\n data: function data() {\n return {\n tabFocused: false\n };\n }\n});\n\n/***/ }),\n/* 215 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSlider__ = __webpack_require__(216);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */]);\n\n/***/ }),\n/* 216 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl__ = __webpack_require__(217);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util_console__ = __webpack_require__(5);\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-slider',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */]],\n\n directives: { ClickOutside: __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__[\"a\" /* default */] },\n\n data: function data() {\n return {\n app: {},\n defaultColor: 'primary',\n isActive: false,\n keyPressed: 0\n };\n },\n\n\n props: {\n min: {\n type: [Number, String],\n default: 0\n },\n max: {\n type: [Number, String],\n default: 100\n },\n step: {\n type: [Number, String],\n default: 1\n },\n ticks: Boolean,\n thumbColor: {\n type: String,\n default: null\n },\n thumbLabel: Boolean,\n trackColor: {\n type: String,\n default: null\n },\n value: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'input-group--slider': true,\n 'input-group--active': this.isActive,\n 'input-group--dirty': this.inputWidth > 0,\n 'input-group--disabled': this.disabled,\n 'input-group--ticks': !this.disabled && this.stepNumeric && this.ticks\n };\n },\n computedColor: function computedColor() {\n return this.disabled ? null : this.color || this.defaultColor;\n },\n computedTrackColor: function computedTrackColor() {\n return this.disabled ? null : this.trackColor || null;\n },\n computedThumbColor: function computedThumbColor() {\n return this.disabled || !this.inputWidth ? null : this.thumbColor || this.color || this.defaultColor;\n },\n stepNumeric: function stepNumeric() {\n return this.step > 0 ? parseFloat(this.step) : 0;\n },\n\n inputValue: {\n get: function get() {\n return this.value;\n },\n set: function set(val) {\n var min = this.min,\n max = this.max;\n\n val = Math.min(Math.max(val, min), max);\n\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n var value = this.roundValue(val);\n this.lazyValue = value;\n\n if (value !== this.value) {\n this.$emit('input', value);\n }\n }\n },\n interval: function interval() {\n return 100 / (this.max - this.min) * this.stepNumeric;\n },\n thumbStyles: function thumbStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n left: this.inputWidth + '%'\n };\n },\n tickContainerStyles: function tickContainerStyles() {\n return {\n transform: 'translate(0, -50%)'\n };\n },\n trackPadding: function trackPadding() {\n if (this.thumbLabel && this.isActive) return 0;\n\n return 6 + (this.isActive && !this.disabled ? 3 : 0);\n },\n trackStyles: function trackStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n left: 'calc(' + this.inputWidth + '% + ' + this.trackPadding + 'px)',\n width: 'calc(' + (100 - this.inputWidth) + '% - ' + this.trackPadding + 'px)'\n };\n },\n trackFillStyles: function trackFillStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n width: 'calc(' + this.inputWidth + '% - ' + this.trackPadding + 'px)'\n };\n },\n numTicks: function numTicks() {\n return Math.ceil((this.max - this.min) / this.stepNumeric);\n },\n inputWidth: function inputWidth() {\n return (this.roundValue(this.inputValue) - this.min) / (this.max - this.min) * 100;\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n this.isFocused = val;\n },\n min: function min(val) {\n val > this.inputValue && this.$emit('input', parseFloat(val));\n },\n max: function max(val) {\n val < this.inputValue && this.$emit('input', parseFloat(val));\n },\n value: function value(val) {\n this.inputValue = parseFloat(val);\n }\n },\n\n mounted: function mounted() {\n this.inputValue = this.value;\n\n // Without a v-app, iOS does not work with body selectors\n this.app = document.querySelector('[data-app]') || Object(__WEBPACK_IMPORTED_MODULE_6__util_console__[\"b\" /* consoleWarn */])('Missing v-app or a non-body wrapping element with the [data-app] attribute', this);\n },\n\n\n methods: {\n onMouseDown: function onMouseDown(e) {\n this.keyPressed = 2;\n var options = { passive: true };\n this.isActive = true;\n\n if ('touches' in e) {\n this.app.addEventListener('touchmove', this.onMouseMove, options);\n Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"a\" /* addOnceEventListener */])(this.app, 'touchend', this.onMouseUp);\n } else {\n this.app.addEventListener('mousemove', this.onMouseMove, options);\n Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"a\" /* addOnceEventListener */])(this.app, 'mouseup', this.onMouseUp);\n }\n },\n onMouseUp: function onMouseUp() {\n this.keyPressed = 0;\n var options = { passive: true };\n this.isActive = false;\n this.app.removeEventListener('touchmove', this.onMouseMove, options);\n this.app.removeEventListener('mousemove', this.onMouseMove, options);\n },\n onMouseMove: function onMouseMove(e) {\n var _$refs$track$getBound = this.$refs.track.getBoundingClientRect(),\n offsetLeft = _$refs$track$getBound.left,\n trackWidth = _$refs$track$getBound.width;\n\n var clientX = 'touches' in e ? e.touches[0].clientX : e.clientX;\n var left = Math.min(Math.max((clientX - offsetLeft) / trackWidth, 0), 1);\n\n if (clientX >= offsetLeft - 8 && clientX <= offsetLeft + trackWidth + 8) {\n this.inputValue = parseFloat(this.min) + left * (this.max - this.min);\n }\n },\n onKeyDown: function onKeyDown(e) {\n if (this.disabled || ![33, 34, 35, 36, 37, 39].includes(e.keyCode)) return;\n\n e.preventDefault();\n var step = this.stepNumeric || 1;\n var steps = (this.max - this.min) / step;\n if (e.keyCode === 37 || e.keyCode === 39) {\n // Left/right\n this.keyPressed += 1;\n\n var direction = e.keyCode === 37 ? -1 : 1;\n var multiplier = e.shiftKey ? 3 : e.ctrlKey ? 2 : 1;\n\n this.inputValue = this.inputValue + direction * step * multiplier;\n } else if (e.keyCode === 36) {\n // Home\n this.inputValue = parseFloat(this.min);\n } else if (e.keyCode === 35) {\n // End\n this.inputValue = parseFloat(this.max);\n } else /* if (e.keyCode === 33 || e.keyCode === 34) */{\n // Page up/down\n var _direction = e.keyCode === 34 ? -1 : 1;\n this.inputValue = this.inputValue - _direction * step * (steps > 100 ? steps / 10 : 10);\n }\n },\n onKeyUp: function onKeyUp(e) {\n this.keyPressed = 0;\n },\n sliderMove: function sliderMove(e) {\n if (!this.isActive) {\n this.onMouseMove(e);\n }\n },\n genThumbLabel: function genThumbLabel(h) {\n return h(__WEBPACK_IMPORTED_MODULE_5__transitions__[\"c\" /* VScaleTransition */], {\n props: { origin: 'bottom center' }\n }, [h('div', {\n staticClass: 'slider__thumb--label__container',\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, [h('div', {\n staticClass: 'slider__thumb--label',\n 'class': this.addBackgroundColorClassChecks({}, this.computedThumbColor)\n }, [h('span', {}, this.inputValue)])])]);\n },\n roundValue: function roundValue(value) {\n if (!this.stepNumeric) {\n return value;\n }\n\n // Format input value using the same number\n // of decimals places as in the step prop\n var trimmedStep = this.step.toString().trim();\n var decimals = trimmedStep.indexOf('.') > -1 ? trimmedStep.length - trimmedStep.indexOf('.') - 1 : 0;\n return 1 * (Math.round(value / this.stepNumeric) * this.stepNumeric).toFixed(decimals);\n },\n genThumbContainer: function genThumbContainer(h) {\n var children = [];\n children.push(h('div', {\n staticClass: 'slider__thumb',\n 'class': this.addBackgroundColorClassChecks({}, this.computedThumbColor)\n }));\n\n this.thumbLabel && children.push(this.genThumbLabel(h));\n\n return h('div', {\n staticClass: 'slider__thumb-container',\n 'class': {\n 'slider__thumb-container--label': this.thumbLabel\n },\n style: this.thumbStyles,\n on: {\n touchstart: this.onMouseDown,\n mousedown: this.onMouseDown\n },\n ref: 'thumb'\n }, children);\n },\n genSteps: function genSteps(h) {\n var _this = this;\n\n var ticks = Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"d\" /* createRange */])(this.numTicks + 1).map(function (i) {\n var span = h('span', {\n key: i,\n staticClass: 'slider__tick',\n style: {\n left: i * (100 / _this.numTicks) + '%'\n }\n });\n\n return span;\n });\n\n return h('div', {\n staticClass: 'slider__ticks-container',\n style: this.tickContainerStyles\n }, ticks);\n },\n genTrackContainer: function genTrackContainer(h) {\n var children = [h('div', {\n staticClass: 'slider__track',\n 'class': this.addBackgroundColorClassChecks({}, this.computedTrackColor),\n style: this.trackStyles\n }), h('div', {\n staticClass: 'slider__track-fill',\n 'class': this.addBackgroundColorClassChecks(),\n style: this.trackFillStyles\n })];\n\n return h('div', {\n staticClass: 'slider__track__container',\n ref: 'track'\n }, children);\n }\n },\n\n render: function render(h) {\n var _this2 = this;\n\n var children = [];\n\n children.push(this.genTrackContainer(h));\n this.step && this.ticks && children.push(this.genSteps(h));\n children.push(this.genThumbContainer(h));\n\n var slider = h('div', {\n staticClass: 'slider'\n }, children);\n\n return this.genInputGroup([slider], {\n attrs: {\n role: 'slider',\n tabindex: this.disabled ? -1 : this.tabindex\n },\n on: Object.assign({}, {\n mouseup: this.sliderMove,\n keydown: this.onKeyDown,\n keyup: this.onKeyUp\n }, this.$listeners),\n directives: [{\n name: 'click-outside',\n value: function value() {\n return _this2.isActive = false;\n }\n }]\n });\n }\n});\n\n/***/ }),\n/* 217 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 218 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSnackbar__ = __webpack_require__(219);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */]);\n\n/***/ }),\n/* 219 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl__ = __webpack_require__(220);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-snackbar',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"b\" /* factory */])(['absolute', 'top', 'bottom', 'left', 'right'])],\n\n data: function data() {\n return {\n activeTimeout: {}\n };\n },\n\n\n props: {\n autoHeight: Boolean,\n multiLine: Boolean,\n // TODO: change this to closeDelay to match other API in delayable.js\n timeout: {\n type: Number,\n default: 6000\n },\n vertical: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'snack--active': this.isActive,\n 'snack--absolute': this.absolute,\n 'snack--auto-height': this.autoHeight,\n 'snack--bottom': this.bottom || !this.top,\n 'snack--left': this.left,\n 'snack--multi-line': this.multiLine && !this.vertical,\n 'snack--right': this.right,\n 'snack--top': this.top,\n 'snack--vertical': this.vertical\n };\n }\n },\n\n watch: {\n isActive: function isActive() {\n this.setTimeout();\n }\n },\n\n methods: {\n setTimeout: function (_setTimeout) {\n function setTimeout() {\n return _setTimeout.apply(this, arguments);\n }\n\n setTimeout.toString = function () {\n return _setTimeout.toString();\n };\n\n return setTimeout;\n }(function () {\n var _this = this;\n\n clearTimeout(this.activeTimeout);\n\n if (this.isActive && this.timeout) {\n this.activeTimeout = setTimeout(function () {\n _this.isActive = false;\n }, this.timeout);\n }\n })\n },\n\n mounted: function mounted() {\n this.setTimeout();\n },\n render: function render(h) {\n var children = [];\n\n if (this.isActive) {\n children.push(h('div', {\n staticClass: 'snack',\n class: this.classes,\n on: this.$listeners\n }, [h('div', {\n staticClass: 'snack__wrapper',\n class: this.addBackgroundColorClassChecks()\n }, [h('div', {\n staticClass: 'snack__content'\n }, this.$slots.default)])]));\n }\n\n return h('transition', {\n attrs: { name: 'snack-transition' }\n }, children);\n }\n});\n\n/***/ }),\n/* 220 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 221 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSpeedDial__ = __webpack_require__(222);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */]);\n\n/***/ }),\n/* 222 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl__ = __webpack_require__(223);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_transitionable__ = __webpack_require__(24);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__ = __webpack_require__(8);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-speed-dial',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_positionable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_transitionable__[\"a\" /* default */]],\n\n directives: { ClickOutside: __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__[\"a\" /* default */] },\n\n props: {\n direction: {\n type: String,\n default: 'top',\n validator: function validator(val) {\n return ['top', 'right', 'bottom', 'left'].includes(val);\n }\n },\n openOnHover: Boolean,\n transition: {\n type: String,\n default: 'scale-transition'\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'speed-dial': true,\n 'speed-dial--top': this.top,\n 'speed-dial--right': this.right,\n 'speed-dial--bottom': this.bottom,\n 'speed-dial--left': this.left,\n 'speed-dial--absolute': this.absolute,\n 'speed-dial--fixed': this.fixed\n }, 'speed-dial--direction-' + this.direction, true);\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var children = [];\n var data = {\n 'class': this.classes,\n directives: [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n }\n }],\n on: {\n click: function click() {\n return _this.isActive = !_this.isActive;\n }\n }\n };\n\n if (this.openOnHover) {\n data.on.mouseenter = function () {\n return _this.isActive = true;\n };\n data.on.mouseleave = function () {\n return _this.isActive = false;\n };\n }\n\n if (this.isActive) {\n children = (this.$slots.default || []).map(function (b, i) {\n b.key = i;\n\n return b;\n });\n }\n\n var list = h('transition-group', {\n 'class': 'speed-dial__list',\n props: {\n name: this.transition,\n mode: this.mode,\n origin: this.origin,\n tag: 'div'\n }\n }, children);\n\n return h('div', data, [this.$slots.activator, list]);\n }\n});\n\n/***/ }),\n/* 223 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 224 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VStepperHeader */\n/* unused harmony export VStepperItems */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VStepper__ = __webpack_require__(225);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VStepperStep__ = __webpack_require__(227);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VStepperContent__ = __webpack_require__(228);\n/* unused harmony reexport VStepper */\n/* unused harmony reexport VStepperContent */\n/* unused harmony reexport VStepperStep */\n\n\n\n\n\nvar VStepperHeader = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('stepper__header');\nvar VStepperItems = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('stepper__items');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VStepperContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VStepperContent__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VStepperStep__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VStepperStep__[\"a\" /* default */]);\n Vue.component(VStepperHeader.name, VStepperHeader);\n Vue.component(VStepperItems.name, VStepperItems);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */]);\n\n/***/ }),\n/* 225 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl__ = __webpack_require__(226);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n provide: function provide() {\n return {\n stepClick: this.stepClick\n };\n },\n data: function data() {\n return {\n inputValue: null,\n isBooted: false,\n steps: [],\n content: [],\n isReverse: false\n };\n },\n\n\n props: {\n nonLinear: Boolean,\n altLabels: Boolean,\n vertical: Boolean,\n value: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper': true,\n 'stepper--is-booted': this.isBooted,\n 'stepper--vertical': this.vertical,\n 'stepper--alt-labels': this.altLabels,\n 'stepper--non-linear': this.nonLinear,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n watch: {\n inputValue: function inputValue(val, prev) {\n this.isReverse = Number(val) < Number(prev);\n for (var index = this.steps.length; --index >= 0;) {\n this.steps[index].toggle(this.inputValue);\n }\n for (var _index = this.content.length; --_index >= 0;) {\n this.content[_index].toggle(this.inputValue, this.isReverse);\n }\n\n this.$emit('input', this.inputValue);\n prev && (this.isBooted = true);\n },\n value: function value() {\n var _this = this;\n\n this.getSteps();\n this.$nextTick(function () {\n return _this.inputValue = _this.value;\n });\n }\n },\n\n mounted: function mounted() {\n this.getSteps();\n\n this.inputValue = this.value || this.steps[0].step || 1;\n },\n\n\n methods: {\n getSteps: function getSteps() {\n this.steps = [];\n this.content = [];\n for (var index = 0; index < this.$children.length; index++) {\n var child = this.$children[index];\n // TODO: use the component name instead of tag\n if (child.$options._componentTag === 'v-stepper-step') {\n this.steps.push(child);\n } else if (child.$options._componentTag === 'v-stepper-content') {\n child.isVertical = this.vertical;\n this.content.push(child);\n }\n }\n },\n stepClick: function stepClick(step) {\n var _this2 = this;\n\n this.getSteps();\n this.$nextTick(function () {\n return _this2.inputValue = step;\n });\n }\n },\n\n render: function render(h) {\n return h('div', {\n 'class': this.classes\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 226 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 227 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__directives_ripple__ = __webpack_require__(17);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper-step',\n\n directives: { Ripple: __WEBPACK_IMPORTED_MODULE_1__directives_ripple__[\"a\" /* default */] },\n\n inject: ['stepClick'],\n\n data: function data() {\n return {\n isActive: false,\n isInactive: true\n };\n },\n\n\n props: {\n complete: Boolean,\n completeIcon: {\n type: String,\n default: 'check'\n },\n editIcon: {\n type: String,\n default: 'edit'\n },\n errorIcon: {\n type: String,\n default: 'warning'\n },\n editable: Boolean,\n rules: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n step: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper__step': true,\n 'stepper__step--active': this.isActive,\n 'stepper__step--editable': this.editable,\n 'stepper__step--inactive': this.isInactive,\n 'stepper__step--error': this.hasError,\n 'stepper__step--complete': this.complete,\n 'error--text': this.hasError\n };\n },\n hasError: function hasError() {\n return this.rules.some(function (i) {\n return i() !== true;\n });\n }\n },\n\n methods: {\n click: function click(e) {\n e.stopPropagation();\n\n if (this.editable) {\n this.stepClick(this.step);\n }\n },\n toggle: function toggle(step) {\n this.isActive = step.toString() === this.step.toString();\n this.isInactive = Number(step) < Number(this.step);\n }\n },\n\n render: function render(h) {\n var data = {\n 'class': this.classes,\n directives: [{\n name: 'ripple',\n value: this.editable\n }],\n on: { click: this.click }\n };\n var stepContent = void 0;\n\n if (this.hasError) {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.errorIcon)];\n } else if (this.complete) {\n if (this.editable) {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.editIcon)];\n } else {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.completeIcon)];\n }\n } else {\n stepContent = this.step;\n }\n\n var step = h('span', {\n staticClass: 'stepper__step__step',\n 'class': {\n 'primary': !this.hasError && (this.complete || this.isActive)\n }\n }, stepContent);\n\n var label = h('div', {\n staticClass: 'stepper__label'\n }, this.$slots.default);\n\n return h('div', data, [step, label]);\n }\n});\n\n/***/ }),\n/* 228 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper-content',\n\n data: function data() {\n return {\n height: 0,\n // Must be null to allow\n // previous comparison\n isActive: null,\n isReverse: false,\n isVertical: false\n };\n },\n\n\n props: {\n step: {\n type: [Number, String],\n required: true\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper__content': true\n };\n },\n computedTransition: function computedTransition() {\n return this.isReverse ? __WEBPACK_IMPORTED_MODULE_0__transitions__[\"e\" /* VTabReverseTransition */] : __WEBPACK_IMPORTED_MODULE_0__transitions__[\"f\" /* VTabTransition */];\n },\n styles: function styles() {\n if (!this.isVertical) return {};\n\n return {\n height: !isNaN(this.height) ? this.height + 'px' : this.height\n };\n },\n wrapperClasses: function wrapperClasses() {\n return {\n 'stepper__wrapper': true\n };\n }\n },\n\n watch: {\n isActive: function isActive(current, previous) {\n // If active and the previous state\n // was null, is just booting up\n if (current && previous == null) {\n return this.height = 'auto';\n }\n\n if (!this.isVertical) return;\n\n if (this.isActive) this.enter();else this.leave();\n }\n },\n\n mounted: function mounted() {\n this.$refs.wrapper.addEventListener('transitionend', this.onTransition, false);\n },\n beforeDestroy: function beforeDestroy() {\n this.$refs.wrapper.removeEventListener('transitionend', this.onTransition, false);\n },\n\n\n methods: {\n onTransition: function onTransition(e) {\n if (!this.isActive || e.propertyName !== 'height') return;\n\n this.height = 'auto';\n },\n enter: function enter() {\n var _this = this;\n\n var scrollHeight = 0;\n\n // Render bug with height\n requestAnimationFrame(function () {\n scrollHeight = _this.$refs.wrapper.scrollHeight;\n });\n\n this.height = 0;\n\n // Give the collapsing element time to collapse\n setTimeout(function () {\n return _this.height = scrollHeight || 'auto';\n }, 450);\n },\n leave: function leave() {\n var _this2 = this;\n\n this.height = this.$refs.wrapper.clientHeight;\n setTimeout(function () {\n return _this2.height = 0;\n }, 10);\n },\n toggle: function toggle(step, reverse) {\n this.isActive = step.toString() === this.step.toString();\n this.isReverse = reverse;\n }\n },\n\n render: function render(h) {\n var contentData = {\n 'class': this.classes\n };\n var wrapperData = {\n 'class': this.wrapperClasses,\n style: this.styles,\n ref: 'wrapper'\n };\n\n if (!this.isVertical) {\n contentData.directives = [{\n name: 'show',\n value: this.isActive\n }];\n }\n\n var wrapper = h('div', wrapperData, [this.$slots.default]);\n var content = h('div', contentData, [wrapper]);\n\n return h(this.computedTransition, {\n on: this.$listeners\n }, [content]);\n }\n});\n\n/***/ }),\n/* 229 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSwitch__ = __webpack_require__(230);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */]);\n\n/***/ }),\n/* 230 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl__ = __webpack_require__(231);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_selectable__ = __webpack_require__(42);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_touch__ = __webpack_require__(9);\n\n\n\n\n// Mixins\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-switch',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_selectable__[\"a\" /* default */]],\n\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_5__directives_touch__[\"a\" /* default */] },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'input-group--selection-controls switch': true\n };\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n rippleClasses: function rippleClasses() {\n return {\n 'input-group--selection-controls__ripple': true,\n 'input-group--selection-controls__ripple--active': this.isActive\n };\n },\n containerClasses: function containerClasses() {\n return {\n 'input-group--selection-controls__container': true,\n 'input-group--selection-controls__container--light': this.light,\n 'input-group--selection-controls__container--disabled': this.disabled\n };\n },\n toggleClasses: function toggleClasses() {\n return {\n 'input-group--selection-controls__toggle': true,\n 'input-group--selection-controls__toggle--active': this.isActive\n };\n }\n },\n\n methods: {\n onSwipeLeft: function onSwipeLeft() {\n if (this.isActive) this.toggle();\n },\n onSwipeRight: function onSwipeRight() {\n if (!this.isActive) this.toggle();\n }\n },\n\n render: function render(h) {\n var container = h('div', {\n 'class': this.containerClasses\n }, [h('div', { 'class': this.toggleClasses }), this.genRipple({\n directives: [{\n name: 'touch',\n value: {\n left: this.onSwipeLeft,\n right: this.onSwipeRight\n }\n }]\n })]);\n\n return this.genInputGroup([container]);\n }\n});\n\n/***/ }),\n/* 231 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 232 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSystemBar__ = __webpack_require__(233);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */]);\n\n/***/ }),\n/* 233 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl__ = __webpack_require__(234);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-system-bar',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('bar', ['height', 'window']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n height: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n lightsOut: Boolean,\n status: Boolean,\n window: Boolean\n },\n\n computed: {\n classes: function classes() {\n return this.addBackgroundColorClassChecks(Object.assign({\n 'system-bar--lights-out': this.lightsOut,\n 'system-bar--absolute': this.absolute,\n 'system-bar--fixed': !this.absolute && (this.app || this.fixed),\n 'system-bar--status': this.status,\n 'system-bar--window': this.window\n }, this.themeClasses));\n },\n computedHeight: function computedHeight() {\n if (this.height) return parseInt(this.height);\n\n return this.window ? 32 : 24;\n }\n },\n\n methods: {\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return this.computedHeight;\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'system-bar',\n 'class': this.classes,\n style: {\n height: this.computedHeight + 'px'\n }\n };\n\n return h('div', data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 234 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 235 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTabs__ = __webpack_require__(236);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTab__ = __webpack_require__(243);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VTabsItems__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VTabItem__ = __webpack_require__(244);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VTabsSlider__ = __webpack_require__(68);\n/* unused harmony reexport VTabs */\n/* unused harmony reexport VTabItem */\n/* unused harmony reexport VTab */\n/* unused harmony reexport VTabsItems */\n/* unused harmony reexport VTabsSlider */\n\n\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VTab__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VTab__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VTabsItems__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VTabsItems__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VTabItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VTabItem__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VTabsSlider__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VTabsSlider__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */]);\n\n/***/ }),\n/* 236 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl__ = __webpack_require__(237);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_tabs_computed__ = __webpack_require__(238);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_tabs_generators__ = __webpack_require__(239);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_tabs_props__ = __webpack_require__(240);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_tabs_touch__ = __webpack_require__(241);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_tabs_watchers__ = __webpack_require__(242);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__directives_touch__ = __webpack_require__(9);\n// Styles\n\n\n// Component level mixins\n\n\n\n\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tabs',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_9__mixins_registrable__[\"b\" /* provide */])('tabs'), __WEBPACK_IMPORTED_MODULE_6__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_7__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_tabs_computed__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_tabs_props__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_tabs_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_tabs_touch__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_tabs_watchers__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_themeable__[\"a\" /* default */]],\n\n directives: {\n Resize: __WEBPACK_IMPORTED_MODULE_10__directives_resize__[\"a\" /* default */],\n Touch: __WEBPACK_IMPORTED_MODULE_11__directives_touch__[\"a\" /* default */]\n },\n\n provide: function provide() {\n return {\n tabClick: this.tabClick,\n tabProxy: this.tabProxy,\n registerItems: this.registerItems,\n unregisterItems: this.unregisterItems\n };\n },\n data: function data() {\n return {\n bar: [],\n content: [],\n isBooted: false,\n isOverflowing: false,\n lazyValue: this.value,\n nextIconVisible: false,\n prevIconVisible: false,\n resizeTimeout: null,\n reverse: false,\n scrollOffset: 0,\n sliderWidth: null,\n sliderLeft: null,\n startX: 0,\n tabsContainer: null,\n tabs: [],\n tabItems: null,\n transitionTime: 300,\n widths: {\n bar: 0,\n container: 0,\n wrapper: 0\n }\n };\n },\n\n\n watch: {\n tabs: 'onResize'\n },\n\n mounted: function mounted() {\n this.checkIcons();\n },\n\n\n methods: {\n checkIcons: function checkIcons() {\n this.prevIconVisible = this.checkPrevIcon();\n this.nextIconVisible = this.checkNextIcon();\n },\n checkPrevIcon: function checkPrevIcon() {\n return this.scrollOffset > 0;\n },\n checkNextIcon: function checkNextIcon() {\n // Check one scroll ahead to know the width of right-most item\n return this.widths.container > this.scrollOffset + this.widths.wrapper;\n },\n callSlider: function callSlider() {\n var _this = this;\n\n if (this.hideSlider || !this.activeTab) return false;\n\n // Give screen time to paint\n var action = (this.activeTab || {}).action;\n var activeTab = action === this.activeTab ? this.activeTab : this.tabs.find(function (tab) {\n return tab.action === action;\n });\n\n this.$nextTick(function () {\n if (!activeTab || !activeTab.$el) return;\n _this.sliderWidth = activeTab.$el.scrollWidth;\n _this.sliderLeft = activeTab.$el.offsetLeft;\n });\n },\n\n /**\n * When v-navigation-drawer changes the\n * width of the container, call resize\n * after the transition is complete\n */\n onResize: function onResize() {\n var _this2 = this;\n\n if (this._isDestroyed) return;\n\n this.setWidths();\n\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = setTimeout(function () {\n _this2.callSlider();\n _this2.scrollIntoView();\n _this2.checkIcons();\n }, this.transitionTime);\n },\n overflowCheck: function overflowCheck(e, fn) {\n this.isOverflowing && fn(e);\n },\n scrollTo: function scrollTo(direction) {\n this.scrollOffset = this.newOffset(direction);\n },\n setOverflow: function setOverflow() {\n this.isOverflowing = this.widths.bar < this.widths.container;\n },\n setWidths: function setWidths() {\n var bar = this.$refs.bar ? this.$refs.bar.clientWidth : 0;\n var container = this.$refs.container ? this.$refs.container.clientWidth : 0;\n var wrapper = this.$refs.wrapper ? this.$refs.wrapper.clientWidth : 0;\n\n this.widths = { bar: bar, container: container, wrapper: wrapper };\n\n this.setOverflow();\n },\n findActiveLink: function findActiveLink() {\n var _this3 = this;\n\n if (!this.tabs.length || this.lazyValue) return;\n\n var activeIndex = this.tabs.findIndex(function (tabItem, index) {\n var id = tabItem.action === tabItem ? index.toString() : tabItem.action;\n return id === _this3.lazyValue || tabItem.$el.firstChild.className.indexOf(_this3.activeClass) > -1;\n });\n\n var index = activeIndex > -1 ? activeIndex : 0;\n var tab = this.tabs[index];\n\n /* istanbul ignore next */\n // There is not a reliable way to test\n this.inputValue = tab.action === tab ? index : tab.action;\n },\n parseNodes: function parseNodes() {\n var item = [];\n var items = [];\n var slider = [];\n var tab = [];\n var length = (this.$slots.default || []).length;\n\n for (var i = 0; i < length; i++) {\n var vnode = this.$slots.default[i];\n\n if (vnode.componentOptions) {\n switch (vnode.componentOptions.Ctor.options.name) {\n case 'v-tabs-slider':\n slider.push(vnode);\n break;\n case 'v-tabs-items':\n items.push(vnode);\n break;\n case 'v-tab-item':\n item.push(vnode);\n break;\n // case 'v-tab' - intentionally omitted\n default:\n tab.push(vnode);\n }\n } else {\n tab.push(vnode);\n }\n }\n\n return { tab: tab, slider: slider, items: items, item: item };\n },\n register: function register(options) {\n this.tabs.push(options);\n },\n scrollIntoView: function scrollIntoView() {\n if (!this.activeTab) return;\n if (!this.isOverflowing) return this.scrollOffset = 0;\n\n var totalWidth = this.widths.wrapper + this.scrollOffset;\n var _activeTab$$el = this.activeTab.$el,\n clientWidth = _activeTab$$el.clientWidth,\n offsetLeft = _activeTab$$el.offsetLeft;\n\n var itemOffset = clientWidth + offsetLeft;\n var additionalOffset = clientWidth * 0.3;\n\n /* istanbul ignore else */\n if (offsetLeft < this.scrollOffset) {\n this.scrollOffset = Math.max(offsetLeft - additionalOffset, 0);\n } else if (totalWidth < itemOffset) {\n this.scrollOffset -= totalWidth - itemOffset - additionalOffset;\n }\n },\n tabClick: function tabClick(tab) {\n this.inputValue = tab.action === tab ? this.tabs.indexOf(tab) : tab.action;\n this.scrollIntoView();\n },\n tabProxy: function tabProxy(val) {\n this.lazyValue = val;\n },\n registerItems: function registerItems(fn) {\n this.tabItems = fn;\n },\n unregisterItems: function unregisterItems() {\n this.tabItems = null;\n },\n unregister: function unregister(tab) {\n this.tabs = this.tabs.filter(function (o) {\n return o !== tab;\n });\n },\n updateTabs: function updateTabs() {\n for (var index = this.tabs.length; --index >= 0;) {\n this.tabs[index].toggle(this.target);\n }\n\n this.setOverflow();\n }\n },\n\n render: function render(h) {\n var _parseNodes = this.parseNodes(),\n tab = _parseNodes.tab,\n slider = _parseNodes.slider,\n items = _parseNodes.items,\n item = _parseNodes.item;\n\n return h('div', {\n staticClass: 'tabs',\n directives: [{\n name: 'resize',\n arg: 400,\n modifiers: { quiet: true },\n value: this.onResize\n }]\n }, [this.genBar([this.hideSlider ? null : this.genSlider(slider), tab]), this.genItems(items, item)]);\n }\n});\n\n/***/ }),\n/* 237 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 238 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs computed\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n computed: {\n activeIndex: function activeIndex() {\n var _this = this;\n\n return this.tabs.findIndex(function (tab, index) {\n var id = tab.action === tab ? index.toString() : tab.action;\n return id === _this.lazyValue;\n });\n },\n activeTab: function activeTab() {\n if (!this.tabs.length) return undefined;\n\n return this.tabs[this.activeIndex];\n },\n containerStyles: function containerStyles() {\n return this.height ? {\n height: parseInt(this.height, 10) + 'px'\n } : null;\n },\n hasArrows: function hasArrows() {\n return (this.showArrows || !this.isMobile) && this.isOverflowing;\n },\n\n inputValue: {\n get: function get() {\n return this.lazyValue;\n },\n set: function set(val) {\n // Always use strings\n val = val.toString();\n\n this.lazyValue = val;\n this.$emit('input', val);\n }\n },\n isMobile: function isMobile() {\n return this.$vuetify.breakpoint.width < this.mobileBreakPoint;\n },\n sliderStyles: function sliderStyles() {\n return {\n left: this.sliderLeft + 'px',\n transition: this.sliderLeft != null ? null : 'none',\n width: this.sliderWidth + 'px'\n };\n },\n target: function target() {\n return this.activeTab ? this.activeTab.action : null;\n }\n }\n});\n\n/***/ }),\n/* 239 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTabsItems__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTabsSlider__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n\n\n\n\n/**\n * Tabs generators\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genBar: function genBar(items) {\n return this.$createElement('div', {\n staticClass: 'tabs__bar',\n 'class': this.addBackgroundColorClassChecks({\n 'theme--dark': this.dark,\n 'theme--light': this.light\n }),\n ref: 'bar'\n }, [this.genTransition('prev'), this.genWrapper(this.genContainer(items)), this.genTransition('next')]);\n },\n genContainer: function genContainer(items) {\n return this.$createElement('div', {\n staticClass: 'tabs__container',\n class: {\n 'tabs__container--align-with-title': this.alignWithTitle,\n 'tabs__container--centered': this.centered,\n 'tabs__container--fixed-tabs': this.fixedTabs,\n 'tabs__container--grow': this.grow,\n 'tabs__container--icons-and-text': this.iconsAndText,\n 'tabs__container--overflow': this.isOverflowing,\n 'tabs__container--right': this.right\n },\n style: this.containerStyles,\n ref: 'container'\n }, items);\n },\n genIcon: function genIcon(direction) {\n var _this = this;\n\n if (!this.hasArrows || !this[direction + 'IconVisible']) return null;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n staticClass: 'tabs__icon tabs__icon--' + direction,\n props: {\n disabled: !this[direction + 'IconVisible']\n },\n on: {\n click: function click() {\n return _this.scrollTo(direction);\n }\n }\n }, this[direction + 'Icon']);\n },\n genItems: function genItems(items, item) {\n if (items.length > 0) return items;\n if (!item.length) return null;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VTabsItems__[\"a\" /* default */], item);\n },\n genTransition: function genTransition(direction) {\n return this.$createElement('transition', {\n props: { name: 'fade-transition' }\n }, [this.genIcon(direction)]);\n },\n genWrapper: function genWrapper(items) {\n var _this2 = this;\n\n return this.$createElement('div', {\n staticClass: 'tabs__wrapper',\n class: {\n 'tabs__wrapper--show-arrows': this.hasArrows\n },\n ref: 'wrapper',\n directives: [{\n name: 'touch',\n value: {\n start: function start(e) {\n return _this2.overflowCheck(e, _this2.onTouchStart);\n },\n move: function move(e) {\n return _this2.overflowCheck(e, _this2.onTouchMove);\n },\n end: function end(e) {\n return _this2.overflowCheck(e, _this2.onTouchEnd);\n }\n }\n }]\n }, [items]);\n },\n genSlider: function genSlider(items) {\n if (!items.length) {\n items = [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VTabsSlider__[\"a\" /* default */], {\n props: { color: this.sliderColor }\n })];\n }\n\n return this.$createElement('div', {\n staticClass: 'tabs__slider-wrapper',\n style: this.sliderStyles\n }, items);\n }\n }\n});\n\n/***/ }),\n/* 240 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs props\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n alignWithTitle: Boolean,\n centered: Boolean,\n fixedTabs: Boolean,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: undefined,\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n hideSlider: Boolean,\n iconsAndText: Boolean,\n mobileBreakPoint: {\n type: [Number, String],\n default: 1264,\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n right: Boolean,\n showArrows: Boolean,\n sliderColor: {\n type: String,\n default: 'accent'\n },\n value: [Number, String]\n }\n});\n\n/***/ }),\n/* 241 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs touch\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n newOffset: function newOffset(direction) {\n var clientWidth = this.$refs.wrapper.clientWidth;\n\n if (direction === 'prev') {\n return Math.max(this.scrollOffset - clientWidth, 0);\n } else {\n return Math.min(this.scrollOffset + clientWidth, this.$refs.container.clientWidth - clientWidth);\n }\n },\n onTouchStart: function onTouchStart(e) {\n this.startX = this.scrollOffset + e.touchstartX;\n this.$refs.container.style.transition = 'none';\n this.$refs.container.style.willChange = 'transform';\n },\n onTouchMove: function onTouchMove(e) {\n this.scrollOffset = this.startX - e.touchmoveX;\n },\n onTouchEnd: function onTouchEnd() {\n var container = this.$refs.container;\n var wrapper = this.$refs.wrapper;\n var maxScrollOffset = container.clientWidth - wrapper.clientWidth;\n container.style.transition = null;\n container.style.willChange = null;\n\n /* istanbul ignore else */\n if (this.scrollOffset < 0 || !this.isOverflowing) {\n this.scrollOffset = 0;\n } else if (this.scrollOffset >= maxScrollOffset) {\n this.scrollOffset = maxScrollOffset;\n }\n }\n }\n});\n\n/***/ }),\n/* 242 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs watchers\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n watch: {\n activeTab: function activeTab(tab, prev) {\n !prev && tab && this.updateTabs();\n\n setTimeout(this.callSlider, 0);\n\n if (!tab) return;\n\n var action = tab.action;\n this.tabItems && this.tabItems(action === tab ? this.tabs.indexOf(tab).toString() : action);\n },\n\n alignWithTitle: 'callSlider',\n centered: 'callSlider',\n fixedTabs: 'callSlider',\n hasArrows: function hasArrows(val) {\n if (!val) this.scrollOffset = 0;\n },\n\n isBooted: 'findActiveLink',\n lazyValue: 'updateTabs',\n right: 'callSlider',\n value: function value(val) {\n this.lazyValue = val;\n },\n\n '$vuetify.application.left': 'onResize',\n '$vuetify.application.right': 'onResize',\n scrollOffset: function scrollOffset(val) {\n this.$refs.container.style.transform = 'translateX(' + -val + 'px)';\n if (this.hasArrows) {\n this.prevIconVisible = this.checkPrevIcon();\n this.nextIconVisible = this.checkNextIcon();\n }\n }\n }\n});\n\n/***/ }),\n/* 243 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_helpers__ = __webpack_require__(2);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Mixins\n\n\n\n// Utilities\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tab',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_registrable__[\"a\" /* inject */])('tabs', 'v-tab', 'v-tabs'), __WEBPACK_IMPORTED_MODULE_0__mixins_routable__[\"a\" /* default */]],\n\n inject: ['tabClick'],\n\n data: function data() {\n return {\n isActive: false\n };\n },\n\n\n props: {\n activeClass: {\n type: String,\n default: 'tabs__item--active'\n },\n ripple: {\n type: [Boolean, Object],\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'tabs__item': true,\n 'tabs__item--disabled': this.disabled\n }, this.activeClass, !this.to && this.isActive);\n },\n action: function action() {\n var to = this.to || this.href;\n\n if (this.$router && this.to === Object(this.to)) {\n var resolve = this.$router.resolve(this.to, this.$route, this.append);\n\n to = resolve.href;\n }\n\n return typeof to === 'string' ? to.replace('#', '') : this;\n }\n },\n\n watch: {\n $route: 'onRouteChange'\n },\n\n mounted: function mounted() {\n this.tabs.register(this);\n this.onRouteChange();\n },\n beforeDestroy: function beforeDestroy() {\n this.tabs.unregister(this);\n },\n\n\n methods: {\n click: function click(e) {\n // If user provides an\n // actual link, do not\n // prevent default\n if (this.href && this.href.indexOf('#') > -1) e.preventDefault();\n\n this.$emit('click', e);\n\n this.to || this.tabClick(this);\n },\n onRouteChange: function onRouteChange() {\n var _this = this;\n\n if (!this.to || !this.$refs.link) return;\n\n var path = '_vnode.data.class.' + this.activeClass;\n\n this.$nextTick(function () {\n if (Object(__WEBPACK_IMPORTED_MODULE_2__util_helpers__[\"i\" /* getObjectValueByPath */])(_this.$refs.link, path)) {\n _this.tabClick(_this);\n }\n });\n },\n toggle: function toggle(action) {\n this.isActive = action === this || action === this.action;\n }\n },\n\n render: function render(h) {\n var link = this.generateRouteLink();\n var data = link.data;\n\n // If disabled, use div as anchor tags do not support\n // being disabled\n\n var tag = this.disabled ? 'div' : link.tag;\n\n data.ref = 'link';\n\n return h('div', {\n staticClass: 'tabs__div'\n }, [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 244 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__directives_touch__ = __webpack_require__(9);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tab-item',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_bootable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"a\" /* inject */])('tabs', 'v-tab-item', 'v-tabs-items')],\n\n components: {\n VTabTransition: __WEBPACK_IMPORTED_MODULE_1__transitions__[\"f\" /* VTabTransition */],\n VTabReverseTransition: __WEBPACK_IMPORTED_MODULE_1__transitions__[\"e\" /* VTabReverseTransition */]\n },\n\n directives: {\n Touch: __WEBPACK_IMPORTED_MODULE_3__directives_touch__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n isActive: false,\n reverse: false\n };\n },\n\n\n props: {\n id: String,\n transition: {\n type: [Boolean, String],\n default: 'tab-transition'\n },\n reverseTransition: {\n type: [Boolean, String],\n default: 'tab-reverse-transition'\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.reverse ? this.reverseTransition : this.transition;\n }\n },\n\n methods: {\n toggle: function toggle(target, reverse, showTransition, index) {\n this.$el.style.transition = !showTransition ? 'none' : null;\n this.reverse = reverse;\n this.isActive = (this.id || index.toString()) === target;\n }\n },\n\n mounted: function mounted() {\n this.tabs.register(this);\n },\n beforeDestroy: function beforeDestroy() {\n this.tabs.unregister(this);\n },\n render: function render(h) {\n var data = {\n staticClass: 'tabs__content',\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n domProps: { id: this.id },\n on: this.$listeners\n };\n\n var div = h('div', data, this.showLazyContent(this.$slots.default));\n\n if (!this.computedTransition) return div;\n\n return h('transition', {\n props: { name: this.computedTransition }\n }, [div]);\n }\n});\n\n/***/ }),\n/* 245 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTextField__ = __webpack_require__(246);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */]);\n\n/***/ }),\n/* 246 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_maskable__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_soloable__ = __webpack_require__(51);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Styles\n\n\n\n// Mixins\n\n\n\n\n\nvar dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month'];\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-text-field',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_maskable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_soloable__[\"a\" /* default */]],\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n initialValue: null,\n inputHeight: null,\n internalChange: false,\n badInput: false\n };\n },\n\n\n props: {\n autofocus: Boolean,\n autoGrow: Boolean,\n box: Boolean,\n clearable: Boolean,\n color: {\n type: String,\n default: 'primary'\n },\n counter: [Boolean, Number, String],\n fullWidth: Boolean,\n multiLine: Boolean,\n noResize: Boolean,\n placeholder: String,\n prefix: String,\n rowHeight: {\n type: [Number, String],\n default: 24,\n validator: function validator(v) {\n return !isNaN(parseFloat(v));\n }\n },\n rows: {\n type: [Number, String],\n default: 5,\n validator: function validator(v) {\n return !isNaN(parseInt(v, 10));\n }\n },\n singleLine: Boolean,\n suffix: String,\n textarea: Boolean,\n type: {\n type: String,\n default: 'text'\n }\n },\n\n computed: {\n classes: function classes() {\n var classes = _extends({}, this.genSoloClasses(), {\n 'input-group--text-field': true,\n 'input-group--text-field-box': this.box,\n 'input-group--single-line': this.singleLine || this.isSolo,\n 'input-group--multi-line': this.multiLine,\n 'input-group--full-width': this.fullWidth,\n 'input-group--no-resize': this.noResizeHandle,\n 'input-group--prefix': this.prefix,\n 'input-group--suffix': this.suffix,\n 'input-group--textarea': this.textarea\n });\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n count: function count() {\n var inputLength = void 0;\n if (this.inputValue) inputLength = this.inputValue.toString().length;else inputLength = 0;\n\n return inputLength + ' / ' + this.counterLength;\n },\n counterLength: function counterLength() {\n var parsedLength = parseInt(this.counter, 10);\n return isNaN(parsedLength) ? 25 : parsedLength;\n },\n\n inputValue: {\n get: function get() {\n return this.lazyValue;\n },\n set: function set(val) {\n if (this.mask) {\n this.lazyValue = this.unmaskText(this.maskText(this.unmaskText(val)));\n this.setSelectionRange();\n } else {\n this.lazyValue = val;\n this.$emit('input', this.lazyValue);\n }\n }\n },\n isDirty: function isDirty() {\n return this.lazyValue != null && this.lazyValue.toString().length > 0 || this.badInput || dirtyTypes.includes(this.type);\n },\n isTextarea: function isTextarea() {\n return this.multiLine || this.textarea;\n },\n noResizeHandle: function noResizeHandle() {\n return this.isTextarea && (this.noResize || this.shouldAutoGrow);\n },\n shouldAutoGrow: function shouldAutoGrow() {\n return this.isTextarea && this.autoGrow;\n }\n },\n\n watch: {\n isFocused: function isFocused(val) {\n if (val) {\n this.initialValue = this.lazyValue;\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue);\n }\n },\n value: function value(val) {\n var _this = this;\n\n if (this.mask && !this.internalChange) {\n var masked = this.maskText(this.unmaskText(val));\n this.lazyValue = this.unmaskText(masked);\n\n // Emit when the externally set value was modified internally\n String(val) !== this.lazyValue && this.$nextTick(function () {\n _this.$refs.input.value = masked;\n _this.$emit('input', _this.lazyValue);\n });\n } else this.lazyValue = val;\n\n if (this.internalChange) this.internalChange = false;\n\n !this.validateOnBlur && this.validate();\n this.shouldAutoGrow && this.calculateInputHeight();\n }\n },\n\n mounted: function mounted() {\n this.shouldAutoGrow && this.calculateInputHeight();\n this.autofocus && this.focus();\n },\n\n\n methods: {\n calculateInputHeight: function calculateInputHeight() {\n var _this2 = this;\n\n this.inputHeight = null;\n\n this.$nextTick(function () {\n var height = _this2.$refs.input ? _this2.$refs.input.scrollHeight : 0;\n var minHeight = parseInt(_this2.rows, 10) * parseFloat(_this2.rowHeight);\n _this2.inputHeight = Math.max(minHeight, height);\n });\n },\n onInput: function onInput(e) {\n this.mask && this.resetSelections(e.target);\n this.inputValue = e.target.value;\n this.badInput = e.target.validity && e.target.validity.badInput;\n this.shouldAutoGrow && this.calculateInputHeight();\n },\n blur: function blur(e) {\n var _this3 = this;\n\n this.isFocused = false;\n // Reset internalChange state\n // to allow external change\n // to persist\n this.internalChange = false;\n\n this.$nextTick(function () {\n _this3.validate();\n });\n this.$emit('blur', e);\n },\n focus: function focus(e) {\n if (!this.$refs.input) return;\n\n this.isFocused = true;\n if (document.activeElement !== this.$refs.input) {\n this.$refs.input.focus();\n }\n this.$emit('focus', e);\n },\n keyDown: function keyDown(e) {\n // Prevents closing of a\n // dialog when pressing\n // enter\n if (this.isTextarea && this.isFocused && e.keyCode === 13) {\n e.stopPropagation();\n }\n\n this.internalChange = true;\n },\n genCounter: function genCounter() {\n return this.$createElement('div', {\n 'class': {\n 'input-group__counter': true,\n 'input-group__counter--error': this.hasError\n }\n }, this.count);\n },\n genInput: function genInput() {\n var tag = this.isTextarea ? 'textarea' : 'input';\n var listeners = Object.assign({}, this.$listeners);\n delete listeners['change']; // Change should not be bound externally\n\n var data = {\n style: {},\n domProps: {\n value: this.maskText(this.lazyValue)\n },\n attrs: _extends({}, this.$attrs, {\n autofocus: this.autofocus,\n disabled: this.disabled,\n required: this.required,\n readonly: this.readonly,\n tabindex: this.tabindex,\n 'aria-label': (!this.$attrs || !this.$attrs.id) && this.label // Label `for` will be set if we have an id\n }),\n on: Object.assign(listeners, {\n blur: this.blur,\n input: this.onInput,\n focus: this.focus,\n keydown: this.keyDown\n }),\n ref: 'input'\n };\n\n if (this.shouldAutoGrow) {\n data.style.height = this.inputHeight && this.inputHeight + 'px';\n }\n\n if (this.placeholder) data.attrs.placeholder = this.placeholder;\n\n if (!this.isTextarea) {\n data.attrs.type = this.type;\n } else {\n data.attrs.rows = this.rows;\n }\n\n if (this.mask) {\n data.attrs.maxlength = this.masked.length;\n }\n\n var children = [this.$createElement(tag, data)];\n\n this.prefix && children.unshift(this.genFix('prefix'));\n this.suffix && children.push(this.genFix('suffix'));\n\n return children;\n },\n genFix: function genFix(type) {\n return this.$createElement('span', {\n 'class': 'input-group--text-field__' + type\n }, this[type]);\n },\n clearableCallback: function clearableCallback() {\n var _this4 = this;\n\n this.inputValue = null;\n this.$nextTick(function () {\n return _this4.$refs.input.focus();\n });\n }\n },\n\n render: function render() {\n return this.genInputGroup(this.genInput(), { attrs: { tabindex: false } });\n }\n});\n\n/***/ }),\n/* 247 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTimePicker__ = __webpack_require__(248);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__ = __webpack_require__(69);\n/* unused harmony reexport VTimePicker */\n/* unused harmony reexport VTimePickerClock */\n/* unused harmony reexport VTimePickerTitle */\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */]);\n\n/***/ }),\n/* 248 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTimePickerTitle__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_picker__ = __webpack_require__(65);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n// Components\n\n\n\n// Mixins\n\n\n// Utils\n\n\n\nvar rangeHours24 = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(24);\nvar rangeHours12am = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(12);\nvar rangeHours12pm = rangeHours12am.map(function (v) {\n return v + 12;\n});\nvar rangeMinutes = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(60);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-time-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_picker__[\"a\" /* default */]],\n\n data: function data() {\n return {\n inputHour: null,\n inputMinute: null,\n period: 'am',\n selectingHour: true\n };\n },\n\n\n props: {\n allowedHours: Function,\n allowedMinutes: Function,\n format: {\n type: String,\n default: 'ampm',\n validator: function validator(val) {\n return ['ampm', '24hr'].includes(val);\n }\n },\n min: String,\n max: String,\n scrollable: Boolean,\n value: null\n },\n\n computed: {\n isAllowedHourCb: function isAllowedHourCb() {\n var _this = this;\n\n if (!this.min && !this.max) return this.allowedHours;\n\n var minHour = this.min ? this.min.split(':')[0] : 0;\n var maxHour = this.max ? this.max.split(':')[0] : 23;\n\n return function (val) {\n return val >= minHour * 1 && val <= maxHour * 1 && (!_this.allowedHours || _this.allowedHours(val));\n };\n },\n isAllowedMinuteCb: function isAllowedMinuteCb() {\n var _this2 = this;\n\n var isHourAllowed = !this.allowedHours || this.allowedHours(this.inputHour);\n if (!this.min && !this.max) {\n return isHourAllowed ? this.allowedMinutes : function () {\n return false;\n };\n }\n\n var _ref = this.min ? this.min.split(':') : [0, 0],\n _ref2 = _slicedToArray(_ref, 2),\n minHour = _ref2[0],\n minMinute = _ref2[1];\n\n var _ref3 = this.max ? this.max.split(':') : [23, 59],\n _ref4 = _slicedToArray(_ref3, 2),\n maxHour = _ref4[0],\n maxMinute = _ref4[1];\n\n var minTime = minHour * 60 + minMinute * 1;\n var maxTime = maxHour * 60 + maxMinute * 1;\n\n return function (val) {\n var time = 60 * _this2.inputHour + val;\n return time >= minTime && time <= maxTime && isHourAllowed && (!_this2.allowedMinutes || _this2.allowedMinutes(val));\n };\n },\n isAmPm: function isAmPm() {\n return this.format === 'ampm';\n }\n },\n\n watch: {\n value: 'setInputData'\n },\n\n methods: {\n emitValue: function emitValue() {\n if (this.inputHour != null && this.inputMinute != null) {\n this.$emit('input', Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(this.inputHour) + ':' + Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(this.inputMinute));\n }\n },\n setPeriod: function setPeriod(period) {\n this.period = period;\n if (this.inputHour != null) {\n var newHour = this.inputHour + (period === 'am' ? -12 : 12);\n this.inputHour = this.firstAllowed('hour', newHour);\n this.emitValue();\n }\n },\n setInputData: function setInputData(value) {\n if (value == null) {\n this.inputHour = null;\n this.inputMinute = null;\n return;\n }\n\n if (value instanceof Date) {\n this.inputHour = value.getHours();\n this.inputMinute = value.getMinutes();\n } else {\n var _ref5 = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:\\d+)?([ap]m)?$/, '') || [],\n _ref6 = _slicedToArray(_ref5, 5),\n hour = _ref6[1],\n minute = _ref6[2],\n period = _ref6[4];\n\n this.inputHour = period ? this.convert12to24(parseInt(hour, 10), period) : parseInt(hour, 10);\n this.inputMinute = parseInt(minute, 10);\n }\n\n this.period = this.inputHour < 12 ? 'am' : 'pm';\n },\n convert24to12: function convert24to12(hour) {\n return hour ? (hour - 1) % 12 + 1 : 12;\n },\n convert12to24: function convert12to24(hour, period) {\n return hour % 12 + (period === 'pm' ? 12 : 0);\n },\n onInput: function onInput(value) {\n if (this.selectingHour) {\n this.inputHour = this.isAmPm ? this.convert12to24(value, this.period) : value;\n } else {\n this.inputMinute = value;\n }\n this.emitValue();\n },\n onChange: function onChange() {\n if (!this.selectingHour) {\n this.$emit('change', this.value);\n }\n\n this.selectingHour = !this.selectingHour;\n },\n firstAllowed: function firstAllowed(type, value) {\n var allowedFn = type === 'hour' ? this.isAllowedHourCb : this.isAllowedMinuteCb;\n if (!allowedFn) return value;\n\n // TODO: clean up\n var range = type === 'minute' ? rangeMinutes : this.isAmPm ? value < 12 ? rangeHours12am : rangeHours12pm : rangeHours24;\n var first = range.find(function (v) {\n return allowedFn((v + value) % range.length + range[0]);\n });\n return ((first || 0) + value) % range.length + range[0];\n },\n genClock: function genClock() {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */], {\n props: {\n allowedValues: this.selectingHour ? this.isAllowedHourCb : this.isAllowedMinuteCb,\n color: this.color,\n dark: this.dark,\n double: this.selectingHour && !this.isAmPm,\n format: this.selectingHour ? this.isAmPm ? this.convert24to12 : function (val) {\n return val;\n } : function (val) {\n return Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(val, 2);\n },\n max: this.selectingHour ? this.isAmPm && this.period === 'am' ? 11 : 23 : 59,\n min: this.selectingHour && this.isAmPm && this.period === 'pm' ? 12 : 0,\n scrollable: this.scrollable,\n size: this.width - (!this.fullWidth && this.landscape ? 80 : 20),\n step: this.selectingHour ? 1 : 5,\n value: this.selectingHour ? this.inputHour : this.inputMinute\n },\n on: {\n input: this.onInput,\n change: this.onChange\n },\n ref: 'clock'\n });\n },\n genPickerBody: function genPickerBody() {\n return this.$createElement('div', {\n staticClass: 'time-picker-clock__container',\n style: {\n width: this.width + 'px',\n height: this.width - (!this.fullWidth && this.landscape ? 60 : 0) + 'px'\n },\n key: this.selectingHour\n }, [this.genClock()]);\n },\n genPickerTitle: function genPickerTitle() {\n var _this3 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VTimePickerTitle__[\"a\" /* default */], {\n props: {\n ampm: this.isAmPm,\n hour: this.inputHour,\n minute: this.inputMinute,\n period: this.period,\n selectingHour: this.selectingHour\n },\n on: {\n 'update:selectingHour': function updateSelectingHour(value) {\n return _this3.selectingHour = value;\n },\n 'update:period': this.setPeriod\n },\n ref: 'title',\n slot: 'title'\n });\n }\n },\n\n mounted: function mounted() {\n this.setInputData(this.value);\n },\n render: function render(h) {\n return this.genPicker('picker--time');\n }\n});\n\n/***/ }),\n/* 249 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 250 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 251 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VToolbarTitle */\n/* unused harmony export VToolbarItems */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VToolbar__ = __webpack_require__(252);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__ = __webpack_require__(254);\n/* unused harmony reexport VToolbar */\n/* unused harmony reexport VToolbarSideIcon */\n\n\n\n\n\nvar VToolbarTitle = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('toolbar__title');\nvar VToolbarItems = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('toolbar__items');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */]);\n Vue.component(VToolbarItems.name, VToolbarItems);\n Vue.component(VToolbarTitle.name, VToolbarTitle);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */]);\n\n/***/ }),\n/* 252 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl__ = __webpack_require__(253);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_scroll__ = __webpack_require__(71);\n// Styles\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-toolbar',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('top', ['clippedLeft', 'clippedRight', 'computedHeight', 'invertedScroll', 'manualScroll']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n directives: { Scroll: __WEBPACK_IMPORTED_MODULE_5__directives_scroll__[\"a\" /* default */] },\n\n data: function data() {\n return {\n activeTimeout: null,\n currentScroll: 0,\n heights: {\n mobileLandscape: 48,\n mobile: 56,\n desktop: 64,\n dense: 48\n },\n isActive: true,\n isExtended: false,\n isScrollingUp: false,\n previousScroll: null,\n previousScrollDirection: null,\n savedScroll: 0,\n target: null\n };\n },\n\n props: {\n card: Boolean,\n clippedLeft: Boolean,\n clippedRight: Boolean,\n dense: Boolean,\n extended: Boolean,\n extensionHeight: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n flat: Boolean,\n floating: Boolean,\n height: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n invertedScroll: Boolean,\n manualScroll: Boolean,\n prominent: Boolean,\n scrollOffScreen: Boolean,\n scrollTarget: String,\n scrollThreshold: {\n type: Number,\n default: 300\n },\n tabs: Boolean\n },\n\n computed: {\n computedContentHeight: function computedContentHeight() {\n if (this.height) return parseInt(this.height);\n if (this.dense) return this.heights.dense;\n\n if (this.prominent || this.$vuetify.breakpoint.mdAndUp) return this.heights.desktop;\n\n if (this.$vuetify.breakpoint.width > this.$vuetify.breakpoint.height) return this.heights.mobileLandscape;\n\n return this.heights.mobile;\n },\n computedExtensionHeight: function computedExtensionHeight() {\n if (this.tabs) return 48;\n if (this.extensionHeight) return parseInt(this.extensionHeight);\n\n return this.computedContentHeight;\n },\n computedHeight: function computedHeight() {\n if (!this.isExtended) return this.computedContentHeight;\n\n return this.computedContentHeight + this.computedExtensionHeight;\n },\n computedMarginTop: function computedMarginTop() {\n if (!this.app) return 0;\n\n return this.$vuetify.application.bar;\n },\n classes: function classes() {\n return this.addBackgroundColorClassChecks({\n 'toolbar': true,\n 'elevation-0': this.flat || !this.isActive && !this.tabs,\n 'toolbar--absolute': this.absolute,\n 'toolbar--card': this.card,\n 'toolbar--clipped': this.clippedLeft || this.clippedRight,\n 'toolbar--dense': this.dense,\n 'toolbar--extended': this.isExtended,\n 'toolbar--fixed': !this.absolute && (this.app || this.fixed),\n 'toolbar--floating': this.floating,\n 'toolbar--prominent': this.prominent,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n });\n },\n computedPaddingLeft: function computedPaddingLeft() {\n if (!this.app || this.clippedLeft) return 0;\n\n return this.$vuetify.application.left;\n },\n computedPaddingRight: function computedPaddingRight() {\n if (!this.app || this.clippedRight) return 0;\n\n return this.$vuetify.application.right;\n },\n computedTransform: function computedTransform() {\n return !this.isActive ? -this.computedHeight : 0;\n },\n currentThreshold: function currentThreshold() {\n return Math.abs(this.currentScroll - this.savedScroll);\n },\n styles: function styles() {\n return {\n marginTop: this.computedMarginTop + 'px',\n paddingRight: this.computedPaddingRight + 'px',\n paddingLeft: this.computedPaddingLeft + 'px',\n transform: 'translateY(' + this.computedTransform + 'px)'\n };\n }\n },\n\n watch: {\n currentThreshold: function currentThreshold(val) {\n if (this.invertedScroll) {\n return this.isActive = this.currentScroll > this.scrollThreshold;\n }\n\n if (val < this.scrollThreshold || !this.isBooted) return;\n\n this.isActive = this.isScrollingUp;\n this.savedScroll = this.currentScroll;\n },\n isActive: function isActive() {\n this.savedScroll = 0;\n },\n invertedScroll: function invertedScroll(val) {\n this.isActive = !val;\n },\n manualScroll: function manualScroll(val) {\n this.isActive = !val;\n },\n isScrollingUp: function isScrollingUp(val) {\n this.savedScroll = this.savedScroll || this.currentScroll;\n }\n },\n\n created: function created() {\n if (this.invertedScroll || this.manualScroll) this.isActive = false;\n },\n mounted: function mounted() {\n if (this.scrollTarget) {\n this.target = document.querySelector(this.scrollTarget);\n }\n },\n\n\n methods: {\n onScroll: function onScroll() {\n if (!this.scrollOffScreen || this.manualScroll || typeof window === 'undefined') return;\n\n var target = this.target || window;\n\n this.currentScroll = this.scrollTarget ? target.scrollTop : target.pageYOffset || document.documentElement.scrollTop;\n\n this.isScrollingUp = this.currentScroll < this.previousScroll;\n\n this.previousScroll = this.currentScroll;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return this.invertedScroll || this.manualScroll ? 0 : this.computedHeight;\n }\n },\n\n render: function render(h) {\n this.isExtended = this.extended || !!this.$slots.extension;\n\n var children = [];\n var data = {\n 'class': this.classes,\n style: this.styles,\n on: this.$listeners\n };\n\n data.directives = [{\n arg: this.scrollTarget,\n name: 'scroll',\n value: this.onScroll\n }];\n\n children.push(h('div', {\n staticClass: 'toolbar__content',\n style: { height: this.computedContentHeight + 'px' },\n ref: 'content'\n }, this.$slots.default));\n\n if (this.isExtended) {\n children.push(h('div', {\n staticClass: 'toolbar__extension',\n style: { height: this.computedExtensionHeight + 'px' }\n }, this.$slots.extension));\n }\n\n return h('nav', data, children);\n }\n});\n\n/***/ }),\n/* 253 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 254 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_VIcon__ = __webpack_require__(3);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-toolbar-side-icon',\n\n functional: true,\n\n render: function render(h, _ref) {\n var slots = _ref.slots,\n listeners = _ref.listeners,\n props = _ref.props,\n data = _ref.data;\n\n var classes = data.staticClass ? data.staticClass + ' toolbar__side-icon' : 'toolbar__side-icon';\n\n var d = Object.assign(data, {\n staticClass: classes,\n props: Object.assign(props, {\n icon: true\n }),\n on: listeners\n });\n\n var defaultSlot = slots().default;\n\n return h(__WEBPACK_IMPORTED_MODULE_0__components_VBtn__[\"a\" /* default */], d, defaultSlot || [h(__WEBPACK_IMPORTED_MODULE_1__components_VIcon__[\"a\" /* default */], 'menu')]);\n }\n});\n\n/***/ }),\n/* 255 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTooltip__ = __webpack_require__(256);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */]);\n\n/***/ }),\n/* 256 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl__ = __webpack_require__(257);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_delayable__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_detachable__ = __webpack_require__(25);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_menuable__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n// Mixins\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tooltip',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_delayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_detachable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_menuable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n calculatedMinWidth: 0,\n closeDependents: false\n };\n },\n\n props: {\n debounce: {\n type: [Number, String],\n default: 0\n },\n disabled: Boolean,\n fixed: {\n type: Boolean,\n default: true\n },\n openDelay: {\n type: [Number, String],\n default: 200\n },\n tag: {\n type: String,\n default: 'span'\n },\n transition: String,\n zIndex: {\n default: null\n }\n },\n\n computed: {\n calculatedLeft: function calculatedLeft() {\n var _dimensions = this.dimensions,\n activator = _dimensions.activator,\n content = _dimensions.content;\n\n var unknown = !this.bottom && !this.left && !this.top && !this.right;\n var left = 0;\n\n if (this.top || this.bottom || unknown) {\n left = activator.left + activator.width / 2 - content.width / 2;\n } else if (this.left || this.right) {\n left = activator.left + (this.right ? activator.width : -content.width) + (this.right ? 10 : -10);\n }\n\n return this.calcXOverflow(left) + 'px';\n },\n calculatedTop: function calculatedTop() {\n var _dimensions2 = this.dimensions,\n activator = _dimensions2.activator,\n content = _dimensions2.content;\n\n var top = 0;\n\n if (this.top || this.bottom) {\n top = activator.top + (this.bottom ? activator.height : -content.height) + (this.bottom ? 10 : -10);\n } else if (this.left || this.right) {\n top = activator.top + activator.height / 2 - content.height / 2;\n }\n\n return this.calcYOverflow(top + this.pageYOffset) + 'px';\n },\n classes: function classes() {\n return {\n 'tooltip--top': this.top,\n 'tooltip--right': this.right,\n 'tooltip--bottom': this.bottom,\n 'tooltip--left': this.left\n };\n },\n computedTransition: function computedTransition() {\n if (this.transition) return this.transition;\n if (this.top) return 'slide-y-reverse-transition';\n if (this.right) return 'slide-x-transition';\n if (this.bottom) return 'slide-y-transition';\n if (this.left) return 'slide-x-reverse-transition';\n },\n offsetY: function offsetY() {\n return this.top || this.bottom;\n },\n offsetX: function offsetX() {\n return this.left || this.right;\n },\n styles: function styles() {\n return {\n left: this.calculatedLeft,\n maxWidth: isNaN(this.maxWidth) ? this.maxWidth : this.maxWidth + 'px',\n opacity: this.isActive ? 0.9 : 0,\n top: this.calculatedTop,\n zIndex: this.zIndex || this.activeZIndex\n };\n }\n },\n\n methods: {\n activate: function activate() {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions();\n // Start the transition\n requestAnimationFrame(this.startTransition);\n }\n },\n\n mounted: function mounted() {\n this.value && this.callActivate();\n },\n render: function render(h) {\n var _addBackgroundColorCl,\n _this = this;\n\n var tooltip = h('div', {\n staticClass: 'tooltip__content',\n 'class': this.addBackgroundColorClassChecks((_addBackgroundColorCl = {}, _defineProperty(_addBackgroundColorCl, this.contentClass, true), _defineProperty(_addBackgroundColorCl, 'menuable__content__active', this.isActive), _addBackgroundColorCl)),\n style: this.styles,\n attrs: this.attrs,\n directives: [{\n name: 'show',\n value: this.isContentActive\n }],\n ref: 'content'\n }, this.$slots.default);\n\n return h(this.tag, {\n staticClass: 'tooltip',\n 'class': this.classes\n }, [h('transition', {\n props: {\n name: this.computedTransition\n }\n }, [tooltip]), h('span', {\n on: this.disabled ? {} : {\n mouseenter: function mouseenter() {\n _this.runDelay('open', function () {\n return _this.isActive = true;\n });\n },\n mouseleave: function mouseleave() {\n _this.runDelay('close', function () {\n return _this.isActive = false;\n });\n }\n },\n ref: 'activator'\n }, this.$slots.activator)]);\n }\n});\n\n/***/ }),\n/* 257 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 258 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (immutable) */ __webpack_exports__[\"default\"] = install;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ripple__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__scroll__ = __webpack_require__(71);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__touch__ = __webpack_require__(9);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"ClickOutside\", function() { return __WEBPACK_IMPORTED_MODULE_0__click_outside__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Ripple\", function() { return __WEBPACK_IMPORTED_MODULE_2__ripple__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Resize\", function() { return __WEBPACK_IMPORTED_MODULE_1__resize__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Scroll\", function() { return __WEBPACK_IMPORTED_MODULE_3__scroll__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Touch\", function() { return __WEBPACK_IMPORTED_MODULE_4__touch__[\"a\"]; });\n\n\n\n\n\n\n\n\nfunction install(Vue) {\n Vue.directive('click-outside', __WEBPACK_IMPORTED_MODULE_0__click_outside__[\"a\" /* default */]);\n Vue.directive('ripple', __WEBPACK_IMPORTED_MODULE_2__ripple__[\"a\" /* default */]);\n Vue.directive('resize', __WEBPACK_IMPORTED_MODULE_1__resize__[\"a\" /* default */]);\n Vue.directive('scroll', __WEBPACK_IMPORTED_MODULE_3__scroll__[\"a\" /* default */]);\n Vue.directive('touch', __WEBPACK_IMPORTED_MODULE_4__touch__[\"a\" /* default */]);\n}\n\n/***/ })\n/******/ ])[\"default\"];\n});\n//# sourceMappingURL=vuetify.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanM/ZGM0OCJdLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KCk7XG5cdGVsc2UgaWYodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKVxuXHRcdGRlZmluZShbXSwgZmFjdG9yeSk7XG5cdGVsc2UgaWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnKVxuXHRcdGV4cG9ydHNbXCJWdWV0aWZ5XCJdID0gZmFjdG9yeSgpO1xuXHRlbHNlXG5cdFx0cm9vdFtcIlZ1ZXRpZnlcIl0gPSBmYWN0b3J5KCk7XG59KSh0eXBlb2Ygc2VsZiAhPT0gJ3VuZGVmaW5lZCcgPyBzZWxmIDogdGhpcywgZnVuY3Rpb24oKSB7XG5yZXR1cm4gLyoqKioqKi8gKGZ1bmN0aW9uKG1vZHVsZXMpIHsgLy8gd2VicGFja0Jvb3RzdHJhcFxuLyoqKioqKi8gXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuLyoqKioqKi8gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuLyoqKioqKi8gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4vKioqKioqLyBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbi8qKioqKiovIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4vKioqKioqLyBcdFx0XHRpOiBtb2R1bGVJZCxcbi8qKioqKiovIFx0XHRcdGw6IGZhbHNlLFxuLyoqKioqKi8gXHRcdFx0ZXhwb3J0czoge31cbi8qKioqKiovIFx0XHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbi8qKioqKiovIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuLyoqKioqKi8gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbi8qKioqKiovIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4vKioqKioqLyBcdH1cbi8qKioqKiovXG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbi8qKioqKiovIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4vKioqKioqLyBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwge1xuLyoqKioqKi8gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuLyoqKioqKi8gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuLyoqKioqKi8gXHRcdFx0XHRnZXQ6IGdldHRlclxuLyoqKioqKi8gXHRcdFx0fSk7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4vKioqKioqLyBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4vKioqKioqLyBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuLyoqKioqKi8gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbi8qKioqKiovIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4vKioqKioqLyBcdFx0cmV0dXJuIGdldHRlcjtcbi8qKioqKiovIFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIi9kaXN0L1wiO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4vKioqKioqLyBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDcyKTtcbi8qKioqKiovIH0pXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gKFtcbi8qIDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnY29sb3JhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGNvbG9yOiBTdHJpbmdcbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6IG51bGxcbiAgICB9O1xuICB9LFxuXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZENvbG9yOiBmdW5jdGlvbiBjb21wdXRlZENvbG9yKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29sb3IgfHwgdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBhZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrczogZnVuY3Rpb24gYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoKSB7XG4gICAgICB2YXIgb2JqID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB7fTtcbiAgICAgIHZhciBjb2xvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogdGhpcy5jb21wdXRlZENvbG9yO1xuXG4gICAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5hc3NpZ24oe30sIG9iaik7XG5cbiAgICAgIGlmIChjb2xvcikge1xuICAgICAgICBjbGFzc2VzW2NvbG9yXSA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgYWRkVGV4dENvbG9yQ2xhc3NDaGVja3M6IGZ1bmN0aW9uIGFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKCkge1xuICAgICAgdmFyIG9iaiA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDoge307XG4gICAgICB2YXIgY29sb3IgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHRoaXMuY29tcHV0ZWRDb2xvcjtcblxuICAgICAgdmFyIGNsYXNzZXMgPSBPYmplY3QuYXNzaWduKHt9LCBvYmopO1xuXG4gICAgICBpZiAoY29sb3IpIHtcbiAgICAgICAgdmFyIF9jb2xvciR0cmltJHNwbGl0ID0gY29sb3IudHJpbSgpLnNwbGl0KCcgJyksXG4gICAgICAgICAgICBfY29sb3IkdHJpbSRzcGxpdDIgPSBfc2xpY2VkVG9BcnJheShfY29sb3IkdHJpbSRzcGxpdCwgMiksXG4gICAgICAgICAgICBjb2xvck5hbWUgPSBfY29sb3IkdHJpbSRzcGxpdDJbMF0sXG4gICAgICAgICAgICBjb2xvck1vZGlmaWVyID0gX2NvbG9yJHRyaW0kc3BsaXQyWzFdO1xuXG4gICAgICAgIGNsYXNzZXNbY29sb3JOYW1lICsgJy0tdGV4dCddID0gdHJ1ZTtcbiAgICAgICAgY29sb3JNb2RpZmllciAmJiAoY2xhc3Nlc1sndGV4dC0tJyArIGNvbG9yTW9kaWZpZXJdID0gdHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndGhlbWVhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGRhcms6IEJvb2xlYW4sXG4gICAgbGlnaHQ6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIHRoZW1lQ2xhc3NlczogZnVuY3Rpb24gdGhlbWVDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFya1xuICAgICAgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZVwiXSA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWw7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZlwiXSA9IGNyZWF0ZVNpbXBsZVRyYW5zaXRpb247XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiY1wiXSA9IGNyZWF0ZUphdmFTY3JpcHRUcmFuc2l0aW9uO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IGRpcmVjdGl2ZUNvbmZpZyAqL1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBhZGRPbmNlRXZlbnRMaXN0ZW5lcjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJpXCJdID0gZ2V0T2JqZWN0VmFsdWVCeVBhdGg7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZFwiXSA9IGNyZWF0ZVJhbmdlO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImpcIl0gPSBnZXRaSW5kZXg7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZ1wiXSA9IGVzY2FwZUhUTUw7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiaFwiXSA9IGZpbHRlck9iamVjdE9uS2V5cztcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBmaWx0ZXJDaGlsZHJlbiAqL1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBjb252ZXJ0VG9Vbml0O1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cbmZ1bmN0aW9uIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoYykge1xuICB2YXIgZWwgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICdkaXYnO1xuICB2YXIgbmFtZSA9IGFyZ3VtZW50c1syXTtcblxuICBuYW1lID0gbmFtZSB8fCBjLnJlcGxhY2UoL19fL2csICctJyk7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndi0nICsgbmFtZSxcbiAgICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgX3JlZikge1xuICAgICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgICAgY2hpbGRyZW4gPSBfcmVmLmNoaWxkcmVuO1xuXG4gICAgICBkYXRhLnN0YXRpY0NsYXNzID0gKGMgKyAnICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgICAgcmV0dXJuIGgoZWwsIGRhdGEsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24obmFtZSkge1xuICB2YXIgb3JpZ2luID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiAndG9wIGNlbnRlciAwJztcbiAgdmFyIG1vZGUgPSBhcmd1bWVudHNbMl07XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBuYW1lLFxuXG4gICAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICAgIHByb3BzOiB7XG4gICAgICBvcmlnaW46IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBkZWZhdWx0OiBvcmlnaW5cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgY29udGV4dCkge1xuICAgICAgY29udGV4dC5kYXRhID0gY29udGV4dC5kYXRhIHx8IHt9O1xuICAgICAgY29udGV4dC5kYXRhLnByb3BzID0geyBuYW1lOiBuYW1lIH07XG4gICAgICBjb250ZXh0LmRhdGEub24gPSBjb250ZXh0LmRhdGEub24gfHwge307XG4gICAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUoY29udGV4dC5kYXRhLm9uKSkge1xuICAgICAgICBjb250ZXh0LmRhdGEub24gPSBfZXh0ZW5kcyh7fSwgY29udGV4dC5kYXRhLm9uKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1vZGUpIGNvbnRleHQuZGF0YS5wcm9wcy5tb2RlID0gbW9kZTtcblxuICAgICAgY29udGV4dC5kYXRhLm9uLmJlZm9yZUVudGVyID0gZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9IGNvbnRleHQucHJvcHMub3JpZ2luO1xuICAgICAgICBlbC5zdHlsZS53ZWJraXRUcmFuc2Zvcm1PcmlnaW4gPSBjb250ZXh0LnByb3BzLm9yaWdpbjtcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgY29udGV4dC5kYXRhLCBjb250ZXh0LmNoaWxkcmVuKTtcbiAgICB9XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUphdmFTY3JpcHRUcmFuc2l0aW9uKG5hbWUsIGZ1bmN0aW9ucykge1xuICB2YXIgY3NzID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiB0cnVlO1xuICB2YXIgbW9kZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAzICYmIGFyZ3VtZW50c1szXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzNdIDogJ2luLW91dCc7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBuYW1lLFxuXG4gICAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICAgIHByb3BzOiB7XG4gICAgICBjc3M6IHtcbiAgICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgICAgZGVmYXVsdDogY3NzXG4gICAgICB9LFxuICAgICAgbW9kZToge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIGRlZmF1bHQ6IG1vZGVcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgY29udGV4dCkge1xuICAgICAgdmFyIGRhdGEgPSB7XG4gICAgICAgIHByb3BzOiBfZXh0ZW5kcyh7fSwgY29udGV4dC5wcm9wcywge1xuICAgICAgICAgIG5hbWU6IG5hbWVcbiAgICAgICAgfSksXG4gICAgICAgIG9uOiBmdW5jdGlvbnNcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgZGF0YSwgY29udGV4dC5jaGlsZHJlbik7XG4gICAgfVxuICB9O1xufVxuXG5mdW5jdGlvbiBkaXJlY3RpdmVDb25maWcoYmluZGluZykge1xuICB2YXIgZGVmYXVsdHMgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHt9O1xuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0cywgYmluZGluZy5tb2RpZmllcnMsIHsgdmFsdWU6IGJpbmRpbmcuYXJnIH0sIGJpbmRpbmcudmFsdWUgfHwge30pO1xufVxuXG5mdW5jdGlvbiBhZGRPbmNlRXZlbnRMaXN0ZW5lcihlbCwgZXZlbnQsIGNiKSB7XG4gIHZhciBvbmNlID0gZnVuY3Rpb24gb25jZSgpIHtcbiAgICBjYigpO1xuICAgIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIG9uY2UsIGZhbHNlKTtcbiAgfTtcblxuICBlbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBvbmNlLCBmYWxzZSk7XG59XG5cbmZ1bmN0aW9uIGdldE9iamVjdFZhbHVlQnlQYXRoKG9iaiwgcGF0aCkge1xuICAvLyBjcmVkaXQ6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjQ5MTQ2My9hY2Nlc3NpbmctbmVzdGVkLWphdmFzY3JpcHQtb2JqZWN0cy13aXRoLXN0cmluZy1rZXkjY29tbWVudDU1Mjc4NDEzXzY0OTE2MjFcbiAgaWYgKCFwYXRoIHx8IHBhdGguY29uc3RydWN0b3IgIT09IFN0cmluZykgcmV0dXJuO1xuICBwYXRoID0gcGF0aC5yZXBsYWNlKC9cXFsoXFx3KylcXF0vZywgJy4kMScpOyAvLyBjb252ZXJ0IGluZGV4ZXMgdG8gcHJvcGVydGllc1xuICBwYXRoID0gcGF0aC5yZXBsYWNlKC9eXFwuLywgJycpOyAvLyBzdHJpcCBhIGxlYWRpbmcgZG90XG4gIHZhciBhID0gcGF0aC5zcGxpdCgnLicpO1xuICBmb3IgKHZhciBpID0gMCwgbiA9IGEubGVuZ3RoOyBpIDwgbjsgKytpKSB7XG4gICAgdmFyIGsgPSBhW2ldO1xuICAgIGlmIChvYmogaW5zdGFuY2VvZiBPYmplY3QgJiYgayBpbiBvYmopIHtcbiAgICAgIG9iaiA9IG9ialtrXTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuICByZXR1cm4gb2JqO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVSYW5nZShsZW5ndGgpIHtcbiAgcmV0dXJuIFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoQXJyYXkuZnJvbSh7IGxlbmd0aDogbGVuZ3RoIH0sIGZ1bmN0aW9uICh2LCBrKSB7XG4gICAgcmV0dXJuIGs7XG4gIH0pKSk7XG59XG5cbmZ1bmN0aW9uIGdldFpJbmRleChlbCkge1xuICBpZiAoIWVsIHx8IGVsLm5vZGVUeXBlICE9PSBOb2RlLkVMRU1FTlRfTk9ERSkgcmV0dXJuIDA7XG5cbiAgdmFyIGluZGV4ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWwpLmdldFByb3BlcnR5VmFsdWUoJ3otaW5kZXgnKTtcblxuICBpZiAoaXNOYU4oaW5kZXgpKSByZXR1cm4gZ2V0WkluZGV4KGVsLnBhcmVudE5vZGUpO1xuICByZXR1cm4gaW5kZXg7XG59XG5cbnZhciB0YWdzVG9SZXBsYWNlID0ge1xuICAnJic6ICcmYW1wOycsXG4gICc8JzogJyZsdDsnLFxuICAnPic6ICcmZ3Q7J1xufTtcblxuZnVuY3Rpb24gZXNjYXBlSFRNTChzdHIpIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bJjw+XS9nLCBmdW5jdGlvbiAodGFnKSB7XG4gICAgcmV0dXJuIHRhZ3NUb1JlcGxhY2VbdGFnXSB8fCB0YWc7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJPYmplY3RPbktleXMob2JqLCBrZXlzKSB7XG4gIHZhciBmaWx0ZXJlZCA9IHt9O1xuXG4gIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgIGlmICh0eXBlb2Ygb2JqW2tleV0gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBmaWx0ZXJlZFtrZXldID0gb2JqW2tleV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZpbHRlcmVkO1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJDaGlsZHJlbigpIHtcbiAgdmFyIGFycmF5ID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBbXTtcbiAgdmFyIHRhZyA9IGFyZ3VtZW50c1sxXTtcblxuICByZXR1cm4gYXJyYXkuZmlsdGVyKGZ1bmN0aW9uIChjaGlsZCkge1xuICAgIHJldHVybiBjaGlsZC5jb21wb25lbnRPcHRpb25zICYmIGNoaWxkLmNvbXBvbmVudE9wdGlvbnMuQ3Rvci5vcHRpb25zLm5hbWUgPT09IHRhZztcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRUb1VuaXQoc3RyKSB7XG4gIHZhciB1bml0ID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiAncHgnO1xuXG4gIHJldHVybiBpc05hTihzdHIpID8gc3RyIDogJycgKyBOdW1iZXIoc3RyKSArIHVuaXQ7XG59XG5cbi8qKiovIH0pLFxuLyogMyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGluamVjdDtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gcHJvdmlkZTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cblxuXG5mdW5jdGlvbiBnZW5lcmF0ZVdhcm5pbmcoY2hpbGQsIHBhcmVudCkge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdUaGUgJyArIGNoaWxkICsgJyBjb21wb25lbnQgbXVzdCBiZSB1c2VkIGluc2lkZSBhICcgKyBwYXJlbnQpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBpbmplY3QobmFtZXNwYWNlLCBjaGlsZCwgcGFyZW50KSB7XG4gIHZhciBkZWZhdWx0SW1wbCA9IGNoaWxkICYmIHBhcmVudCA/IHtcbiAgICByZWdpc3RlcjogZ2VuZXJhdGVXYXJuaW5nKGNoaWxkLCBwYXJlbnQpLFxuICAgIHVucmVnaXN0ZXI6IGdlbmVyYXRlV2FybmluZyhjaGlsZCwgcGFyZW50KVxuICB9IDogbnVsbDtcblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1pbmplY3QnLFxuXG4gICAgaW5qZWN0OiBfZGVmaW5lUHJvcGVydHkoe30sIG5hbWVzcGFjZSwge1xuICAgICAgZGVmYXVsdDogZGVmYXVsdEltcGxcbiAgICB9KVxuICB9O1xufVxuXG5mdW5jdGlvbiBwcm92aWRlKG5hbWVzcGFjZSkge1xuICByZXR1cm4ge1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1wcm92aWRlJyxcblxuICAgIG1ldGhvZHM6IHtcbiAgICAgIHJlZ2lzdGVyOiBudWxsLFxuICAgICAgdW5yZWdpc3RlcjogbnVsbFxuICAgIH0sXG4gICAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe30sIG5hbWVzcGFjZSwge1xuICAgICAgICByZWdpc3RlcjogdGhpcy5yZWdpc3RlcixcbiAgICAgICAgdW5yZWdpc3RlcjogdGhpcy51bnJlZ2lzdGVyXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG5cbi8qKiovIH0pLFxuLyogNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gY29uc29sZVdhcm47XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGNvbnNvbGVFcnJvcjtcbmZ1bmN0aW9uIGNyZWF0ZU1lc3NhZ2UobWVzc2FnZSwgY29tcG9uZW50SW5zdGFuY2UpIHtcbiAgdmFyIGNvbXBvbmVudEluZm8gPSBjb21wb25lbnRJbnN0YW5jZSA/ICcgaW4gXCInICsgY29tcG9uZW50SW5zdGFuY2UuJG9wdGlvbnMubmFtZSArICdcIicgOiAnJztcbiAgcmV0dXJuICdbVnVldGlmeV0gJyArIG1lc3NhZ2UgKyBjb21wb25lbnRJbmZvO1xufVxuXG5mdW5jdGlvbiBjb25zb2xlV2FybihtZXNzYWdlKSB7XG4gIHZhciBjb21wb25lbnRJbnN0YW5jZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogbnVsbDtcblxuICBjb25zb2xlLndhcm4oY3JlYXRlTWVzc2FnZShtZXNzYWdlLCBjb21wb25lbnRJbnN0YW5jZSkpO1xufVxuXG5mdW5jdGlvbiBjb25zb2xlRXJyb3IobWVzc2FnZSkge1xuICB2YXIgY29tcG9uZW50SW5zdGFuY2UgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IG51bGw7XG5cbiAgY29uc29sZS5lcnJvcihjcmVhdGVNZXNzYWdlKG1lc3NhZ2UsIGNvbXBvbmVudEluc3RhbmNlKSk7XG59XG5cbi8qKiovIH0pLFxuLyogNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gZmFjdG9yeTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbmZ1bmN0aW9uIGZhY3RvcnkoKSB7XG4gIHZhciBfd2F0Y2g7XG5cbiAgdmFyIHByb3AgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6ICd2YWx1ZSc7XG4gIHZhciBldmVudCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogJ2lucHV0JztcblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICd0b2dnbGVhYmxlJyxcblxuICAgIG1vZGVsOiB7IHByb3A6IHByb3AsIGV2ZW50OiBldmVudCB9LFxuXG4gICAgcHJvcHM6IF9kZWZpbmVQcm9wZXJ0eSh7fSwgcHJvcCwgeyByZXF1aXJlZDogZmFsc2UgfSksXG5cbiAgICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXNBY3RpdmU6ICEhdGhpc1twcm9wXVxuICAgICAgfTtcbiAgICB9LFxuXG5cbiAgICB3YXRjaDogKF93YXRjaCA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3dhdGNoLCBwcm9wLCBmdW5jdGlvbiAodmFsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gISF2YWw7XG4gICAgfSksIF9kZWZpbmVQcm9wZXJ0eShfd2F0Y2gsICdpc0FjdGl2ZScsIGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgISF2YWwgIT09IHRoaXNbcHJvcF0gJiYgdGhpcy4kZW1pdChldmVudCwgdmFsKTtcbiAgICB9KSwgX3dhdGNoKVxuICB9O1xufVxuXG52YXIgVG9nZ2xlYWJsZSA9IGZhY3RvcnkoKTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChUb2dnbGVhYmxlKTtcblxuLyoqKi8gfSksXG4vKiA3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZCb3R0b21TaGVldFRyYW5zdGlvbiAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZDYXJvdXNlbFRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWQ2Fyb3VzZWxSZXZlcnNlVHJhbnNpdGlvbiAqL1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImZcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWVGFiVHJhbnNpdGlvbjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZUYWJSZXZlcnNlVHJhbnNpdGlvbjsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVk1lbnVUcmFuc2l0aW9uICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkZhYlRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWRGlhbG9nVHJhbnNpdGlvbiAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZEaWFsb2dCb3R0b21UcmFuc2l0aW9uICovXG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZGYWRlVHJhbnNpdGlvbjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiY1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZTY2FsZVRyYW5zaXRpb247IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWU2xpZGVYVHJhbnNpdGlvbjsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlNsaWRlWFJldmVyc2VUcmFuc2l0aW9uICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlNsaWRlWVRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWU2xpZGVZUmV2ZXJzZVRyYW5zaXRpb24gKi9cbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gVkV4cGFuZFRyYW5zaXRpb247IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZSb3dFeHBhbmRUcmFuc2l0aW9uICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19leHBhbmRfdHJhbnNpdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MSk7XG5cblxuXG5cbi8vIENvbXBvbmVudCBzcGVjaWZpYyB0cmFuc2l0aW9uc1xudmFyIFZCb3R0b21TaGVldFRyYW5zdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnYm90dG9tLXNoZWV0LXRyYW5zaXRpb24nKTtcbnZhciBWQ2Fyb3VzZWxUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdjYXJvdXNlbC10cmFuc2l0aW9uJyk7XG52YXIgVkNhcm91c2VsUmV2ZXJzZVRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ2Nhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbicpO1xudmFyIFZUYWJUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCd0YWItdHJhbnNpdGlvbicpO1xudmFyIFZUYWJSZXZlcnNlVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgndGFiLXJldmVyc2UtdHJhbnNpdGlvbicpO1xudmFyIFZNZW51VHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnbWVudS10cmFuc2l0aW9uJyk7XG52YXIgVkZhYlRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ2ZhYi10cmFuc2l0aW9uJywgJ2NlbnRlciBjZW50ZXInLCAnb3V0LWluJyk7XG5cbi8vIEdlbmVyaWMgdHJhbnNpdGlvbnNcbnZhciBWRGlhbG9nVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnZGlhbG9nLXRyYW5zaXRpb24nKTtcbnZhciBWRGlhbG9nQm90dG9tVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnZGlhbG9nLWJvdHRvbS10cmFuc2l0aW9uJyk7XG52YXIgVkZhZGVUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdmYWRlLXRyYW5zaXRpb24nKTtcbnZhciBWU2NhbGVUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdzY2FsZS10cmFuc2l0aW9uJyk7XG52YXIgVlNsaWRlWFRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ3NsaWRlLXgtdHJhbnNpdGlvbicpO1xudmFyIFZTbGlkZVhSZXZlcnNlVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24nKTtcbnZhciBWU2xpZGVZVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnc2xpZGUteS10cmFuc2l0aW9uJyk7XG52YXIgVlNsaWRlWVJldmVyc2VUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdzbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbicpO1xuXG4vLyBKYXZhU2NyaXB0IHRyYW5zaXRpb25zXG52YXIgVkV4cGFuZFRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImNcIiAvKiBjcmVhdGVKYXZhU2NyaXB0VHJhbnNpdGlvbiAqL10pKCdleHBhbmQtdHJhbnNpdGlvbicsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2V4cGFuZF90cmFuc2l0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCkpO1xudmFyIFZSb3dFeHBhbmRUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJjXCIgLyogY3JlYXRlSmF2YVNjcmlwdFRyYW5zaXRpb24gKi9dKSgncm93LWV4cGFuZC10cmFuc2l0aW9uJywgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZXhwYW5kX3RyYW5zaXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSkoJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWQnKSk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImdcIl0gPSAoaW5zdGFsbCk7XG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudCgndi1ib3R0b20tc2hlZXQtdHJhbnNpdGlvbicsIFZCb3R0b21TaGVldFRyYW5zdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtY2Fyb3VzZWwtdHJhbnNpdGlvbicsIFZDYXJvdXNlbFRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LWNhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbicsIFZDYXJvdXNlbFJldmVyc2VUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1kaWFsb2ctdHJhbnNpdGlvbicsIFZEaWFsb2dUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1kaWFsb2ctYm90dG9tLXRyYW5zaXRpb24nLCBWRGlhbG9nQm90dG9tVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZmFiLXRyYW5zaXRpb24nLCBWRmFiVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZmFkZS10cmFuc2l0aW9uJywgVkZhZGVUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1tZW51LXRyYW5zaXRpb24nLCBWTWVudVRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LXNjYWxlLXRyYW5zaXRpb24nLCBWU2NhbGVUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1zbGlkZS14LXRyYW5zaXRpb24nLCBWU2xpZGVYVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3Ytc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24nLCBWU2xpZGVYUmV2ZXJzZVRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LXNsaWRlLXktdHJhbnNpdGlvbicsIFZTbGlkZVlUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1zbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbicsIFZTbGlkZVlSZXZlcnNlVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtdGFiLXJldmVyc2UtdHJhbnNpdGlvbicsIFZUYWJSZXZlcnNlVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtdGFiLXRyYW5zaXRpb24nLCBWVGFiVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZXhwYW5kLXRyYW5zaXRpb24nLCBWRXhwYW5kVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3Ytcm93LWV4cGFuZC10cmFuc2l0aW9uJywgVlJvd0V4cGFuZFRyYW5zaXRpb24pO1xufVxuXG4vKioqLyB9KSxcbi8qIDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKCkge1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGRpcmVjdGl2ZShlLCBlbCwgYmluZGluZykge1xuICAvLyBBcmdzIG1heSBub3QgYWx3YXlzIGJlIHN1cHBsaWVkXG4gIGJpbmRpbmcuYXJncyA9IGJpbmRpbmcuYXJncyB8fCB7fTtcblxuICAvLyBJZiBubyBjbG9zZUNvbmRpdGlvbmFsIHdhcyBzdXBwbGllZCBhc3NpZ24gYSBkZWZhdWx0XG4gIHZhciBpc0FjdGl2ZSA9IGJpbmRpbmcuYXJncy5jbG9zZUNvbmRpdGlvbmFsIHx8IGNsb3NlQ29uZGl0aW9uYWw7XG5cbiAgLy8gVGhlIGluY2x1ZGUgZWxlbWVudCBjYWxsYmFja3MgYmVsb3cgY2FuIGJlIGV4cGVuc2l2ZVxuICAvLyBzbyB3ZSBzaG91bGQgYXZvaWQgY2FsbGluZyB0aGVtIHdoZW4gd2UncmUgbm90IGFjdGl2ZS5cbiAgLy8gRXhwbGljaXRseSBjaGVjayBmb3IgZmFsc2UgdG8gYWxsb3cgZmFsbGJhY2sgY29tcGF0aWJpbGl0eVxuICAvLyB3aXRoIG5vbi10b2dnbGVhYmxlIGNvbXBvbmVudHNcbiAgaWYgKCFlIHx8IGlzQWN0aXZlKGUpID09PSBmYWxzZSkgcmV0dXJuO1xuXG4gIC8vIElmIGNsaWNrIHdhcyB0cmlnZ2VyZWQgcHJvZ3JhbW1hdGljYWx5IChkb21FbC5jbGljaygpKSB0aGVuXG4gIC8vIGl0IHNob3VsZG4ndCBiZSB0cmVhdGVkIGFzIGNsaWNrLW91dHNpZGVcbiAgLy8gQ2hyb21lL0ZpcmVmb3ggc3VwcG9ydCBpc1RydXN0ZWQgcHJvcGVydHlcbiAgLy8gSUUvRWRnZSBzdXBwb3J0IHBvaW50ZXJUeXBlIHByb3BlcnR5IChlbXB0eSBpZiBub3QgdHJpZ2dlcmVkXG4gIC8vIGJ5IHBvaW50aW5nIGRldmljZSlcbiAgaWYgKCdpc1RydXN0ZWQnIGluIGUgJiYgIWUuaXNUcnVzdGVkIHx8ICdwb2ludGVyVHlwZScgaW4gZSAmJiAhZS5wb2ludGVyVHlwZSkgcmV0dXJuO1xuXG4gIC8vIENoZWNrIGlmIGFkZGl0aW9uYWwgZWxlbWVudHMgd2VyZSBwYXNzZWQgdG8gYmUgaW5jbHVkZWQgaW4gY2hlY2tcbiAgLy8gKGNsaWNrIG11c3QgYmUgb3V0c2lkZSBhbGwgaW5jbHVkZWQgZWxlbWVudHMsIGlmIGFueSlcbiAgdmFyIGVsZW1lbnRzID0gKGJpbmRpbmcuYXJncy5pbmNsdWRlIHx8IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gW107XG4gIH0pKCk7XG4gIC8vIEFkZCB0aGUgcm9vdCBlbGVtZW50IGZvciB0aGUgY29tcG9uZW50IHRoaXMgZGlyZWN0aXZlIHdhcyBkZWZpbmVkIG9uXG4gIGVsZW1lbnRzLnB1c2goZWwpO1xuXG4gIC8vIENoZWNrIGlmIGl0J3MgYSBjbGljayBvdXRzaWRlIG91ciBlbGVtZW50cywgYW5kIHRoZW4gaWYgb3VyIGNhbGxiYWNrIHJldHVybnMgdHJ1ZS5cbiAgLy8gTm9uLXRvZ2dsZWFibGUgY29tcG9uZW50cyBzaG91bGQgdGFrZSBhY3Rpb24gaW4gdGhlaXIgY2FsbGJhY2sgYW5kIHJldHVybiBmYWxzeS5cbiAgLy8gVG9nZ2xlYWJsZSBjYW4gcmV0dXJuIHRydWUgaWYgaXQgd2FudHMgdG8gZGVhY3RpdmF0ZS5cbiAgLy8gTm90ZSB0aGF0LCBiZWNhdXNlIHdlJ3JlIGluIHRoZSBjYXB0dXJlIHBoYXNlLCB0aGlzIGNhbGxiYWNrIHdpbGwgb2NjdXJlIGJlZm9yZVxuICAvLyB0aGUgYnViYmxpbmcgY2xpY2sgZXZlbnQgb24gYW55IG91dHNpZGUgZWxlbWVudHMuXG4gICFjbGlja2VkSW5FbHMoZSwgZWxlbWVudHMpICYmIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgIGlzQWN0aXZlKGUpICYmIGJpbmRpbmcudmFsdWUoKTtcbiAgfSwgMCk7XG59XG5cbmZ1bmN0aW9uIGNsaWNrZWRJbkVscyhlLCBlbGVtZW50cykge1xuICAvLyBHZXQgcG9zaXRpb24gb2YgY2xpY2tcbiAgdmFyIHggPSBlLmNsaWVudFgsXG4gICAgICB5ID0gZS5jbGllbnRZO1xuICAvLyBMb29wIG92ZXIgYWxsIGluY2x1ZGVkIGVsZW1lbnRzIHRvIHNlZSBpZiBjbGljayB3YXMgaW4gYW55IG9mIHRoZW1cblxuICB2YXIgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWU7XG4gIHZhciBfZGlkSXRlcmF0b3JFcnJvciA9IGZhbHNlO1xuICB2YXIgX2l0ZXJhdG9yRXJyb3IgPSB1bmRlZmluZWQ7XG5cbiAgdHJ5IHtcbiAgICBmb3IgKHZhciBfaXRlcmF0b3IgPSBlbGVtZW50c1tTeW1ib2wuaXRlcmF0b3JdKCksIF9zdGVwOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24gPSAoX3N0ZXAgPSBfaXRlcmF0b3IubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWUpIHtcbiAgICAgIHZhciBlbCA9IF9zdGVwLnZhbHVlO1xuXG4gICAgICBpZiAoY2xpY2tlZEluRWwoZWwsIHgsIHkpKSByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIF9kaWRJdGVyYXRvckVycm9yID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvciA9IGVycjtcbiAgfSBmaW5hbGx5IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uICYmIF9pdGVyYXRvci5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yLnJldHVybigpO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAoX2RpZEl0ZXJhdG9yRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgX2l0ZXJhdG9yRXJyb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5mdW5jdGlvbiBjbGlja2VkSW5FbChlbCwgeCwgeSkge1xuICAvLyBHZXQgYm91bmRpbmcgcmVjdCBmb3IgZWxlbWVudFxuICAvLyAod2UncmUgaW4gY2FwdHVyaW5nIGV2ZW50IGFuZCB3ZSB3YW50IHRvIGNoZWNrIGZvciBtdWx0aXBsZSBlbGVtZW50cyxcbiAgLy8gIHNvIGNhbid0IHVzZSB0YXJnZXQuKVxuICB2YXIgYiA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgd2FzIGluIHRoZSBlbGVtZW50J3MgYm91bmRpbmcgcmVjdFxuXG4gIHJldHVybiB4ID49IGIubGVmdCAmJiB4IDw9IGIucmlnaHQgJiYgeSA+PSBiLnRvcCAmJiB5IDw9IGIuYm90dG9tO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuXG4gIC8vIFtkYXRhLWFwcF0gbWF5IG5vdCBiZSBmb3VuZFxuICAvLyBpZiB1c2luZyBiaW5kLCBpbnNlcnRlZCBtYWtlc1xuICAvLyBzdXJlIHRoYXQgdGhlIHJvb3QgZWxlbWVudCBpc1xuICAvLyBhdmFpbGFibGUsIGlPUyBkb2VzIG5vdCBzdXBwb3J0XG4gIC8vIGNsaWNrcyBvbiBib2R5XG4gIGluc2VydGVkOiBmdW5jdGlvbiBpbnNlcnRlZChlbCwgYmluZGluZykge1xuICAgIHZhciBvbkNsaWNrID0gZnVuY3Rpb24gb25DbGljayhlKSB7XG4gICAgICByZXR1cm4gZGlyZWN0aXZlKGUsIGVsLCBiaW5kaW5nKTtcbiAgICB9O1xuICAgIC8vIGlPUyBkb2VzIG5vdCByZWNvZ25pemUgY2xpY2sgZXZlbnRzIG9uIGRvY3VtZW50XG4gICAgLy8gb3IgYm9keSwgdGhpcyBpcyB0aGUgZW50aXJlIHB1cnBvc2Ugb2YgdGhlIHYtYXBwXG4gICAgLy8gY29tcG9uZW50IGFuZCBbZGF0YS1hcHBdLCBzdG9wIHJlbW92aW5nIHRoaXNcbiAgICB2YXIgYXBwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtYXBwXScpIHx8IGRvY3VtZW50LmJvZHk7IC8vIFRoaXMgaXMgb25seSBmb3IgdW5pdCB0ZXN0c1xuICAgIGFwcC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIG9uQ2xpY2ssIHRydWUpO1xuICAgIGVsLl9jbGlja091dHNpZGUgPSBvbkNsaWNrO1xuICB9LFxuICB1bmJpbmQ6IGZ1bmN0aW9uIHVuYmluZChlbCkge1xuICAgIHZhciBhcHAgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hcHBdJykgfHwgZG9jdW1lbnQuYm9keTsgLy8gVGhpcyBpcyBvbmx5IGZvciB1bml0IHRlc3RzXG4gICAgYXBwICYmIGFwcC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLl9jbGlja091dHNpZGUsIHRydWUpO1xuICAgIGRlbGV0ZSBlbC5fY2xpY2tPdXRzaWRlO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxudmFyIF90b3VjaHN0YXJ0ID0gZnVuY3Rpb24gX3RvdWNoc3RhcnQoZXZlbnQsIHdyYXBwZXIpIHtcbiAgdmFyIHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF07XG4gIHdyYXBwZXIudG91Y2hzdGFydFggPSB0b3VjaC5jbGllbnRYO1xuICB3cmFwcGVyLnRvdWNoc3RhcnRZID0gdG91Y2guY2xpZW50WTtcblxuICB3cmFwcGVyLnN0YXJ0ICYmIHdyYXBwZXIuc3RhcnQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpO1xufTtcblxudmFyIF90b3VjaGVuZCA9IGZ1bmN0aW9uIF90b3VjaGVuZChldmVudCwgd3JhcHBlcikge1xuICB2YXIgdG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXTtcbiAgd3JhcHBlci50b3VjaGVuZFggPSB0b3VjaC5jbGllbnRYO1xuICB3cmFwcGVyLnRvdWNoZW5kWSA9IHRvdWNoLmNsaWVudFk7XG5cbiAgd3JhcHBlci5lbmQgJiYgd3JhcHBlci5lbmQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpO1xuXG4gIGhhbmRsZUdlc3R1cmUod3JhcHBlcik7XG59O1xuXG52YXIgX3RvdWNobW92ZSA9IGZ1bmN0aW9uIF90b3VjaG1vdmUoZXZlbnQsIHdyYXBwZXIpIHtcbiAgdmFyIHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF07XG4gIHdyYXBwZXIudG91Y2htb3ZlWCA9IHRvdWNoLmNsaWVudFg7XG4gIHdyYXBwZXIudG91Y2htb3ZlWSA9IHRvdWNoLmNsaWVudFk7XG5cbiAgd3JhcHBlci5tb3ZlICYmIHdyYXBwZXIubW92ZShPYmplY3QuYXNzaWduKGV2ZW50LCB3cmFwcGVyKSk7XG59O1xuXG52YXIgaGFuZGxlR2VzdHVyZSA9IGZ1bmN0aW9uIGhhbmRsZUdlc3R1cmUod3JhcHBlcikge1xuICB2YXIgdG91Y2hzdGFydFggPSB3cmFwcGVyLnRvdWNoc3RhcnRYLFxuICAgICAgdG91Y2hlbmRYID0gd3JhcHBlci50b3VjaGVuZFgsXG4gICAgICB0b3VjaHN0YXJ0WSA9IHdyYXBwZXIudG91Y2hzdGFydFksXG4gICAgICB0b3VjaGVuZFkgPSB3cmFwcGVyLnRvdWNoZW5kWTtcblxuICB2YXIgZGlyUmF0aW8gPSAwLjU7XG4gIHZhciBtaW5EaXN0YW5jZSA9IDE2O1xuICB3cmFwcGVyLm9mZnNldFggPSB0b3VjaGVuZFggLSB0b3VjaHN0YXJ0WDtcbiAgd3JhcHBlci5vZmZzZXRZID0gdG91Y2hlbmRZIC0gdG91Y2hzdGFydFk7XG5cbiAgaWYgKE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WSkgPCBkaXJSYXRpbyAqIE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WCkpIHtcbiAgICB3cmFwcGVyLmxlZnQgJiYgdG91Y2hlbmRYIDwgdG91Y2hzdGFydFggLSBtaW5EaXN0YW5jZSAmJiB3cmFwcGVyLmxlZnQod3JhcHBlcik7XG4gICAgd3JhcHBlci5yaWdodCAmJiB0b3VjaGVuZFggPiB0b3VjaHN0YXJ0WCArIG1pbkRpc3RhbmNlICYmIHdyYXBwZXIucmlnaHQod3JhcHBlcik7XG4gIH1cblxuICBpZiAoTWF0aC5hYnMod3JhcHBlci5vZmZzZXRYKSA8IGRpclJhdGlvICogTWF0aC5hYnMod3JhcHBlci5vZmZzZXRZKSkge1xuICAgIHdyYXBwZXIudXAgJiYgdG91Y2hlbmRZIDwgdG91Y2hzdGFydFkgLSBtaW5EaXN0YW5jZSAmJiB3cmFwcGVyLnVwKHdyYXBwZXIpO1xuICAgIHdyYXBwZXIuZG93biAmJiB0b3VjaGVuZFkgPiB0b3VjaHN0YXJ0WSArIG1pbkRpc3RhbmNlICYmIHdyYXBwZXIuZG93bih3cmFwcGVyKTtcbiAgfVxufTtcblxuZnVuY3Rpb24gaW5zZXJ0ZWQoZWwsIF9yZWYsIF9yZWYyKSB7XG4gIHZhciB2YWx1ZSA9IF9yZWYudmFsdWU7XG4gIHZhciBjb250ZXh0ID0gX3JlZjIuY29udGV4dDtcblxuICB2YXIgd3JhcHBlciA9IHtcbiAgICB0b3VjaHN0YXJ0WDogMCxcbiAgICB0b3VjaHN0YXJ0WTogMCxcbiAgICB0b3VjaGVuZFg6IDAsXG4gICAgdG91Y2hlbmRZOiAwLFxuICAgIHRvdWNobW92ZVg6IDAsXG4gICAgdG91Y2htb3ZlWTogMCxcbiAgICBvZmZzZXRYOiAwLFxuICAgIG9mZnNldFk6IDAsXG4gICAgbGVmdDogdmFsdWUubGVmdCxcbiAgICByaWdodDogdmFsdWUucmlnaHQsXG4gICAgdXA6IHZhbHVlLnVwLFxuICAgIGRvd246IHZhbHVlLmRvd24sXG4gICAgc3RhcnQ6IHZhbHVlLnN0YXJ0LFxuICAgIG1vdmU6IHZhbHVlLm1vdmUsXG4gICAgZW5kOiB2YWx1ZS5lbmRcbiAgfTtcblxuICB2YXIgdGFyZ2V0ID0gdmFsdWUucGFyZW50ID8gZWwucGFyZW50Tm9kZSA6IGVsO1xuICB2YXIgb3B0aW9ucyA9IHZhbHVlLm9wdGlvbnMgfHwgeyBwYXNzaXZlOiB0cnVlXG5cbiAgICAvLyBOZWVkZWQgdG8gcGFzcyB1bml0IHRlc3RzXG4gIH07aWYgKCF0YXJnZXQpIHJldHVybjtcblxuICB2YXIgaGFuZGxlcnMgPSB7XG4gICAgdG91Y2hzdGFydDogZnVuY3Rpb24gdG91Y2hzdGFydChlKSB7XG4gICAgICByZXR1cm4gX3RvdWNoc3RhcnQoZSwgd3JhcHBlcik7XG4gICAgfSxcbiAgICB0b3VjaGVuZDogZnVuY3Rpb24gdG91Y2hlbmQoZSkge1xuICAgICAgcmV0dXJuIF90b3VjaGVuZChlLCB3cmFwcGVyKTtcbiAgICB9LFxuICAgIHRvdWNobW92ZTogZnVuY3Rpb24gdG91Y2htb3ZlKGUpIHtcbiAgICAgIHJldHVybiBfdG91Y2htb3ZlKGUsIHdyYXBwZXIpO1xuICAgIH1cbiAgfTtcbiAgdGFyZ2V0Ll90b3VjaEhhbmRsZXJzID0gT2JqZWN0LmFzc2lnbihPYmplY3QodGFyZ2V0Ll90b3VjaEhhbmRsZXJzKSwgX2RlZmluZVByb3BlcnR5KHt9LCBjb250ZXh0Ll91aWQsIGhhbmRsZXJzKSk7XG4gIHZhciBfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uID0gdHJ1ZTtcbiAgdmFyIF9kaWRJdGVyYXRvckVycm9yID0gZmFsc2U7XG4gIHZhciBfaXRlcmF0b3JFcnJvciA9IHVuZGVmaW5lZDtcblxuICB0cnkge1xuICAgIGZvciAodmFyIF9pdGVyYXRvciA9IE9iamVjdC5rZXlzKGhhbmRsZXJzKVtTeW1ib2wuaXRlcmF0b3JdKCksIF9zdGVwOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24gPSAoX3N0ZXAgPSBfaXRlcmF0b3IubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWUpIHtcbiAgICAgIHZhciBldmVudE5hbWUgPSBfc3RlcC52YWx1ZTtcblxuICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyc1tldmVudE5hbWVdLCBvcHRpb25zKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIF9kaWRJdGVyYXRvckVycm9yID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvciA9IGVycjtcbiAgfSBmaW5hbGx5IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uICYmIF9pdGVyYXRvci5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yLnJldHVybigpO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAoX2RpZEl0ZXJhdG9yRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgX2l0ZXJhdG9yRXJyb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHVuYmluZChlbCwgX3JlZjMsIF9yZWY0KSB7XG4gIHZhciB2YWx1ZSA9IF9yZWYzLnZhbHVlO1xuICB2YXIgY29udGV4dCA9IF9yZWY0LmNvbnRleHQ7XG5cbiAgdmFyIHRhcmdldCA9IHZhbHVlLnBhcmVudCA/IGVsLnBhcmVudE5vZGUgOiBlbDtcblxuICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuXG4gIHZhciBoYW5kbGVycyA9IHRhcmdldC5fdG91Y2hIYW5kbGVyc1tjb250ZXh0Ll91aWRdO1xuICB2YXIgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgPSB0cnVlO1xuICB2YXIgX2RpZEl0ZXJhdG9yRXJyb3IyID0gZmFsc2U7XG4gIHZhciBfaXRlcmF0b3JFcnJvcjIgPSB1bmRlZmluZWQ7XG5cbiAgdHJ5IHtcbiAgICBmb3IgKHZhciBfaXRlcmF0b3IyID0gT2JqZWN0LmtleXMoaGFuZGxlcnMpW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3N0ZXAyOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24yID0gKF9zdGVwMiA9IF9pdGVyYXRvcjIubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgPSB0cnVlKSB7XG4gICAgICB2YXIgZXZlbnROYW1lID0gX3N0ZXAyLnZhbHVlO1xuXG4gICAgICB0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIGhhbmRsZXJzW2V2ZW50TmFtZV0pO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgX2RpZEl0ZXJhdG9yRXJyb3IyID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvcjIgPSBlcnI7XG4gIH0gZmluYWxseSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgJiYgX2l0ZXJhdG9yMi5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yMi5yZXR1cm4oKTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgaWYgKF9kaWRJdGVyYXRvckVycm9yMikge1xuICAgICAgICB0aHJvdyBfaXRlcmF0b3JFcnJvcjI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGVsZXRlIHRhcmdldC5fdG91Y2hIYW5kbGVyc1tjb250ZXh0Ll91aWRdO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3RvdWNoJyxcbiAgaW5zZXJ0ZWQ6IGluc2VydGVkLFxuICB1bmJpbmQ6IHVuYmluZFxufSk7XG5cbi8qKiovIH0pLFxuLyogMTAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExMSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gaW5zZXJ0ZWQoZWwsIGJpbmRpbmcpIHtcbiAgdmFyIGNhbGxiYWNrID0gYmluZGluZy52YWx1ZTtcbiAgdmFyIG9wdGlvbnMgPSBiaW5kaW5nLm9wdGlvbnMgfHwgeyBwYXNzaXZlOiB0cnVlIH07XG5cbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGNhbGxiYWNrLCBvcHRpb25zKTtcbiAgZWwuX29uUmVzaXplID0ge1xuICAgIGNhbGxiYWNrOiBjYWxsYmFjayxcbiAgICBvcHRpb25zOiBvcHRpb25zXG4gIH07XG5cbiAgaWYgKCFiaW5kaW5nLm1vZGlmaWVycyB8fCAhYmluZGluZy5tb2RpZmllcnMucXVpZXQpIHtcbiAgICBjYWxsYmFjaygpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHVuYmluZChlbCwgYmluZGluZykge1xuICB2YXIgX2VsJF9vblJlc2l6ZSA9IGVsLl9vblJlc2l6ZSxcbiAgICAgIGNhbGxiYWNrID0gX2VsJF9vblJlc2l6ZS5jYWxsYmFjayxcbiAgICAgIG9wdGlvbnMgPSBfZWwkX29uUmVzaXplLm9wdGlvbnM7XG5cblxuICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncmVzaXplJywgY2FsbGJhY2ssIG9wdGlvbnMpO1xuICBkZWxldGUgZWwuX29uUmVzaXplO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Jlc2l6ZScsXG4gIGluc2VydGVkOiBpbnNlcnRlZCxcbiAgdW5iaW5kOiB1bmJpbmRcbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBmYWN0b3J5O1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuXG5cbmZ1bmN0aW9uIGZhY3RvcnkoKSB7XG4gIHZhciBzZWxlY3RlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogW107XG5cbiAgdmFyIHByb3BzID0ge1xuICAgIGFic29sdXRlOiBCb29sZWFuLFxuICAgIGJvdHRvbTogQm9vbGVhbixcbiAgICBmaXhlZDogQm9vbGVhbixcbiAgICBsZWZ0OiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHRvcDogQm9vbGVhblxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ3Bvc2l0aW9uYWJsZScsXG4gICAgcHJvcHM6IHNlbGVjdGVkLmxlbmd0aCA/IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaFwiIC8qIGZpbHRlck9iamVjdE9uS2V5cyAqL10pKHByb3BzLCBzZWxlY3RlZCkgOiBwcm9wc1xuICB9O1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZhY3RvcnkoKSk7XG5cbi8qKiovIH0pLFxuLyogMTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyb3V0YWJsZScsXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIFJpcHBsZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBhY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGFwcGVuZDogQm9vbGVhbixcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBleGFjdDoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHVuZGVmaW5lZFxuICAgIH0sXG4gICAgZXhhY3RBY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGhyZWY6IFtTdHJpbmcsIE9iamVjdF0sXG4gICAgdG86IFtTdHJpbmcsIE9iamVjdF0sXG4gICAgbnV4dDogQm9vbGVhbixcbiAgICByZXBsYWNlOiBCb29sZWFuLFxuICAgIHJpcHBsZTogW0Jvb2xlYW4sIE9iamVjdF0sXG4gICAgdGFnOiBTdHJpbmcsXG4gICAgdGFyZ2V0OiBTdHJpbmdcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge30sXG4gICAgZ2VuZXJhdGVSb3V0ZUxpbms6IGZ1bmN0aW9uIGdlbmVyYXRlUm91dGVMaW5rKCkge1xuICAgICAgdmFyIGV4YWN0ID0gdGhpcy5leGFjdDtcbiAgICAgIHZhciB0YWcgPSB2b2lkIDA7XG5cbiAgICAgIHZhciBkYXRhID0gX2RlZmluZVByb3BlcnR5KHtcbiAgICAgICAgYXR0cnM6IHsgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgICAgcHJvcHM6IHt9LFxuICAgICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICAgIG5hbWU6ICdyaXBwbGUnLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnJpcHBsZSAmJiAhdGhpcy5kaXNhYmxlZCA/IHRoaXMucmlwcGxlIDogZmFsc2VcbiAgICAgICAgfV1cbiAgICAgIH0sIHRoaXMudG8gPyAnbmF0aXZlT24nIDogJ29uJywgX2V4dGVuZHMoe30sIHRoaXMuJGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogdGhpcy5jbGlja1xuICAgICAgfSkpO1xuXG4gICAgICBpZiAodHlwZW9mIHRoaXMuZXhhY3QgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGV4YWN0ID0gdGhpcy50byA9PT0gJy8nIHx8IHRoaXMudG8gPT09IE9iamVjdCh0aGlzLnRvKSAmJiB0aGlzLnRvLnBhdGggPT09ICcvJztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudG8pIHtcbiAgICAgICAgLy8gQWRkIGEgc3BlY2lhbCBhY3RpdmVDbGFzcyBob29rXG4gICAgICAgIC8vIGZvciBjb21wb25lbnQgbGV2ZWwgc3R5bGVzXG4gICAgICAgIHZhciBhY3RpdmVDbGFzcyA9IHRoaXMuYWN0aXZlQ2xhc3M7XG4gICAgICAgIHZhciBleGFjdEFjdGl2ZUNsYXNzID0gdGhpcy5leGFjdEFjdGl2ZUNsYXNzIHx8IGFjdGl2ZUNsYXNzO1xuXG4gICAgICAgIGlmICh0aGlzLnByb3h5Q2xhc3MpIHtcbiAgICAgICAgICBhY3RpdmVDbGFzcyArPSAnICcgKyB0aGlzLnByb3h5Q2xhc3M7XG4gICAgICAgICAgZXhhY3RBY3RpdmVDbGFzcyArPSAnICcgKyB0aGlzLnByb3h5Q2xhc3M7XG4gICAgICAgIH1cblxuICAgICAgICB0YWcgPSB0aGlzLm51eHQgPyAnbnV4dC1saW5rJyA6ICdyb3V0ZXItbGluayc7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZGF0YS5wcm9wcywge1xuICAgICAgICAgIHRvOiB0aGlzLnRvLFxuICAgICAgICAgIGV4YWN0OiBleGFjdCxcbiAgICAgICAgICBhY3RpdmVDbGFzczogYWN0aXZlQ2xhc3MsXG4gICAgICAgICAgZXhhY3RBY3RpdmVDbGFzczogZXhhY3RBY3RpdmVDbGFzcyxcbiAgICAgICAgICBhcHBlbmQ6IHRoaXMuYXBwZW5kLFxuICAgICAgICAgIHJlcGxhY2U6IHRoaXMucmVwbGFjZVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRhZyA9IHRoaXMuaHJlZiAmJiAnYScgfHwgdGhpcy50YWcgfHwgJ2EnO1xuXG4gICAgICAgIGlmICh0YWcgPT09ICdhJykge1xuICAgICAgICAgIGlmICh0aGlzLmhyZWYpIGRhdGEuYXR0cnMuaHJlZiA9IHRoaXMuaHJlZjtcbiAgICAgICAgICBpZiAodGhpcy50YXJnZXQpIGRhdGEuYXR0cnMudGFyZ2V0ID0gdGhpcy50YXJnZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgdGFnOiB0YWcsIGRhdGE6IGRhdGEgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19tb250aENoYW5nZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcGFkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NyZWF0ZU5hdGl2ZUxvY2FsZUZvcm1hdHRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJiXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19tb250aENoYW5nZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJjXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19wYWRfX1tcImFcIl07IH0pO1xuXG5cblxuXG5cblxuLyoqKi8gfSksXG4vKiAxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gYXBwbGljYXRpb25hYmxlO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcblxuXG5mdW5jdGlvbiBhcHBsaWNhdGlvbmFibGUodmFsdWUpIHtcbiAgdmFyIGV2ZW50cyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogW107XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnYXBwbGljYXRpb25hYmxlJyxcblxuICAgIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3Bvc2l0aW9uYWJsZV9fW1wiYlwiIC8qIGZhY3RvcnkgKi9dKShbJ2Fic29sdXRlJywgJ2ZpeGVkJ10pXSxcblxuICAgIHByb3BzOiB7XG4gICAgICBhcHA6IEJvb2xlYW5cbiAgICB9LFxuXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgIGFwcGxpY2F0aW9uUHJvcGVydHk6IGZ1bmN0aW9uIGFwcGxpY2F0aW9uUHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgd2F0Y2g6IHtcbiAgICAgIC8vIElmIHByZXZpb3VzIHZhbHVlIHdhcyBhcHBcbiAgICAgIC8vIHJlc2V0IHRoZSBwcm92aWRlZCBwcm9wXG4gICAgICBhcHA6IGZ1bmN0aW9uIGFwcCh4LCBwcmV2KSB7XG4gICAgICAgIHByZXYgPyB0aGlzLnJlbW92ZUFwcGxpY2F0aW9uKHRydWUpIDogdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIGFjdGl2YXRlZDogZnVuY3Rpb24gYWN0aXZhdGVkKCkge1xuICAgICAgdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgfSxcbiAgICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgICAgZm9yICh2YXIgaSA9IDAsIGxlbmd0aCA9IGV2ZW50cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICB0aGlzLiR3YXRjaChldmVudHNbaV0sIHRoaXMuY2FsbFVwZGF0ZSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuICAgIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuICAgIGRlYWN0aXZhdGVkOiBmdW5jdGlvbiBkZWFjdGl2YXRlZCgpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXBwbGljYXRpb24oKTtcbiAgICB9LFxuICAgIGRlc3Ryb3llZDogZnVuY3Rpb24gZGVzdHJveWVkKCkge1xuICAgICAgdGhpcy5yZW1vdmVBcHBsaWNhdGlvbigpO1xuICAgIH0sXG5cblxuICAgIG1ldGhvZHM6IHtcbiAgICAgIGNhbGxVcGRhdGU6IGZ1bmN0aW9uIGNhbGxVcGRhdGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5hcHApIHJldHVybjtcblxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmJpbmQodGhpcy5fdWlkLCB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHksIHRoaXMudXBkYXRlQXBwbGljYXRpb24oKSk7XG4gICAgICB9LFxuICAgICAgcmVtb3ZlQXBwbGljYXRpb246IGZ1bmN0aW9uIHJlbW92ZUFwcGxpY2F0aW9uKGZvcmNlKSB7XG4gICAgICAgIGlmICghZm9yY2UgJiYgIXRoaXMuYXBwKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi51bmJpbmQodGhpcy5fdWlkLCB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHkpO1xuICAgICAgfSxcblxuICAgICAgdXBkYXRlQXBwbGljYXRpb246IGZ1bmN0aW9uIHVwZGF0ZUFwcGxpY2F0aW9uKCkge31cbiAgICB9XG4gIH07XG59XG5cbi8qKiovIH0pLFxuLyogMTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKipcbiAqIEJvb3RhYmxlXG4gKiBAbWl4aW5cbiAqXG4gKiBVc2VkIHRvIGFkZCBsYXp5IGNvbnRlbnQgZnVuY3Rpb25hbGl0eSB0byBjb21wb25lbnRzXG4gKiBMb29rcyBmb3IgY2hhbmdlIGluIFwiaXNBY3RpdmVcIiB0byBhdXRvbWF0aWNhbGx5IGJvb3RcbiAqIE90aGVyd2lzZSBjYW4gYmUgc2V0IG1hbnVhbGx5XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnYm9vdGFibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQm9vdGVkOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBsYXp5OiBCb29sZWFuXG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoKSB7XG4gICAgICB0aGlzLmlzQm9vdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHNob3dMYXp5Q29udGVudDogZnVuY3Rpb24gc2hvd0xhenlDb250ZW50KGNvbnRlbnQpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQm9vdGVkIHx8ICF0aGlzLmxhenkgfHwgdGhpcy5pc0FjdGl2ZSA/IGNvbnRlbnQgOiBudWxsO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBzdHlsZShlbCwgdmFsdWUpIHtcbiAgZWwuc3R5bGVbJ3RyYW5zZm9ybSddID0gdmFsdWU7XG4gIGVsLnN0eWxlWyd3ZWJraXRUcmFuc2Zvcm0nXSA9IHZhbHVlO1xufVxuXG52YXIgcmlwcGxlID0ge1xuICAvKipcbiAgICogQHBhcmFtIHtFdmVudH0gZVxuICAgKiBAcGFyYW0ge0VsZW1lbnR9IGVsXG4gICAqIEBwYXJhbSB7eyBjbGFzcz86IHN0cmluZywgY2VudGVyPzogYm9vbGVhbiB9fSBbdmFsdWU9e31dXG4gICAqL1xuICBzaG93OiBmdW5jdGlvbiBzaG93KGUsIGVsKSB7XG4gICAgdmFyIHZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiB7fTtcblxuICAgIGlmICghZWwuX3JpcHBsZSB8fCAhZWwuX3JpcHBsZS5lbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICB2YXIgYW5pbWF0aW9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuXG4gICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGFuaW1hdGlvbik7XG4gICAgY29udGFpbmVyLmNsYXNzTmFtZSA9ICdyaXBwbGVfX2NvbnRhaW5lcic7XG5cbiAgICBpZiAodmFsdWUuY2xhc3MpIHtcbiAgICAgIGNvbnRhaW5lci5jbGFzc05hbWUgKz0gJyAnICsgdmFsdWUuY2xhc3M7XG4gICAgfVxuXG4gICAgdmFyIHNpemUgPSBlbC5jbGllbnRXaWR0aCA+IGVsLmNsaWVudEhlaWdodCA/IGVsLmNsaWVudFdpZHRoIDogZWwuY2xpZW50SGVpZ2h0O1xuICAgIGFuaW1hdGlvbi5jbGFzc05hbWUgPSAncmlwcGxlX19hbmltYXRpb24nO1xuICAgIGFuaW1hdGlvbi5zdHlsZS53aWR0aCA9IHNpemUgKiAodmFsdWUuY2VudGVyID8gMSA6IDIpICsgJ3B4JztcbiAgICBhbmltYXRpb24uc3R5bGUuaGVpZ2h0ID0gYW5pbWF0aW9uLnN0eWxlLndpZHRoO1xuXG4gICAgZWwuYXBwZW5kQ2hpbGQoY29udGFpbmVyKTtcbiAgICB2YXIgY29tcHV0ZWQgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG4gICAgaWYgKGNvbXB1dGVkLnBvc2l0aW9uICE9PSAnYWJzb2x1dGUnICYmIGNvbXB1dGVkLnBvc2l0aW9uICE9PSAnZml4ZWQnKSBlbC5zdHlsZS5wb3NpdGlvbiA9ICdyZWxhdGl2ZSc7XG5cbiAgICB2YXIgb2Zmc2V0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgdmFyIHggPSB2YWx1ZS5jZW50ZXIgPyAnNTAlJyA6IGUuY2xpZW50WCAtIG9mZnNldC5sZWZ0ICsgJ3B4JztcbiAgICB2YXIgeSA9IHZhbHVlLmNlbnRlciA/ICc1MCUnIDogZS5jbGllbnRZIC0gb2Zmc2V0LnRvcCArICdweCc7XG5cbiAgICBhbmltYXRpb24uY2xhc3NMaXN0LmFkZCgncmlwcGxlX19hbmltYXRpb24tLWVudGVyJyk7XG4gICAgYW5pbWF0aW9uLmNsYXNzTGlzdC5hZGQoJ3JpcHBsZV9fYW5pbWF0aW9uLS12aXNpYmxlJyk7XG4gICAgc3R5bGUoYW5pbWF0aW9uLCAndHJhbnNsYXRlKC01MCUsIC01MCUpIHRyYW5zbGF0ZSgnICsgeCArICcsICcgKyB5ICsgJykgc2NhbGUzZCgwLjAxLDAuMDEsMC4wMSknKTtcbiAgICBhbmltYXRpb24uZGF0YXNldC5hY3RpdmF0ZWQgPSBEYXRlLm5vdygpO1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBhbmltYXRpb24uY2xhc3NMaXN0LnJlbW92ZSgncmlwcGxlX19hbmltYXRpb24tLWVudGVyJyk7XG4gICAgICBzdHlsZShhbmltYXRpb24sICd0cmFuc2xhdGUoLTUwJSwgLTUwJSkgdHJhbnNsYXRlKCcgKyB4ICsgJywgJyArIHkgKyAnKSAgc2NhbGUzZCgwLjk5LDAuOTksMC45OSknKTtcbiAgICB9LCAwKTtcbiAgfSxcblxuICBoaWRlOiBmdW5jdGlvbiBoaWRlKGVsKSB7XG4gICAgaWYgKCFlbC5fcmlwcGxlIHx8ICFlbC5fcmlwcGxlLmVuYWJsZWQpIHJldHVybjtcblxuICAgIHZhciByaXBwbGVzID0gZWwuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgncmlwcGxlX19hbmltYXRpb24nKTtcblxuICAgIGlmIChyaXBwbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIHZhciBhbmltYXRpb24gPSByaXBwbGVzW3JpcHBsZXMubGVuZ3RoIC0gMV07XG4gICAgdmFyIGRpZmYgPSBEYXRlLm5vdygpIC0gTnVtYmVyKGFuaW1hdGlvbi5kYXRhc2V0LmFjdGl2YXRlZCk7XG4gICAgdmFyIGRlbGF5ID0gNDAwIC0gZGlmZjtcblxuICAgIGRlbGF5ID0gZGVsYXkgPCAwID8gMCA6IGRlbGF5O1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBhbmltYXRpb24uY2xhc3NMaXN0LnJlbW92ZSgncmlwcGxlX19hbmltYXRpb24tLXZpc2libGUnKTtcblxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIE5lZWQgdG8gZmlndXJlIG91dCBhIG5ldyB3YXkgdG8gZG8gdGhpc1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmIChyaXBwbGVzLmxlbmd0aCA8IDEpIGVsLnN0eWxlLnBvc2l0aW9uID0gbnVsbDtcbiAgICAgICAgICBhbmltYXRpb24ucGFyZW50Tm9kZSAmJiBlbC5yZW1vdmVDaGlsZChhbmltYXRpb24ucGFyZW50Tm9kZSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHt9XG4gICAgICB9LCAzMDApO1xuICAgIH0sIGRlbGF5KTtcbiAgfVxufTtcblxuZnVuY3Rpb24gaXNSaXBwbGVFbmFibGVkKHZhbHVlKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8ICEhdmFsdWU7XG59XG5cbmZ1bmN0aW9uIHJpcHBsZVNob3coZSkge1xuICB2YXIgdmFsdWUgPSB7fTtcbiAgdmFyIGVsZW1lbnQgPSBlLmN1cnJlbnRUYXJnZXQ7XG4gIHZhbHVlLmNlbnRlciA9IGVsZW1lbnQuX3JpcHBsZS5jZW50ZXJlZDtcbiAgaWYgKGVsZW1lbnQuX3JpcHBsZS5jbGFzcykge1xuICAgIHZhbHVlLmNsYXNzID0gZWxlbWVudC5fcmlwcGxlLmNsYXNzO1xuICB9XG4gIHJpcHBsZS5zaG93KGUsIGVsZW1lbnQsIHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gcmlwcGxlSGlkZShlKSB7XG4gIHJpcHBsZS5oaWRlKGUuY3VycmVudFRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVJpcHBsZShlbCwgYmluZGluZywgd2FzRW5hYmxlZCkge1xuICB2YXIgZW5hYmxlZCA9IGlzUmlwcGxlRW5hYmxlZChiaW5kaW5nLnZhbHVlKTtcbiAgaWYgKCFlbmFibGVkKSB7XG4gICAgcmlwcGxlLmhpZGUoZWwpO1xuICB9XG4gIGVsLl9yaXBwbGUgPSBlbC5fcmlwcGxlIHx8IHt9O1xuICBlbC5fcmlwcGxlLmVuYWJsZWQgPSBlbmFibGVkO1xuICB2YXIgdmFsdWUgPSBiaW5kaW5nLnZhbHVlIHx8IHt9O1xuICBpZiAodmFsdWUuY2VudGVyKSB7XG4gICAgZWwuX3JpcHBsZS5jZW50ZXJlZCA9IHRydWU7XG4gIH1cbiAgaWYgKHZhbHVlLmNsYXNzKSB7XG4gICAgZWwuX3JpcHBsZS5jbGFzcyA9IGJpbmRpbmcudmFsdWUuY2xhc3M7XG4gIH1cbiAgaWYgKGVuYWJsZWQgJiYgIXdhc0VuYWJsZWQpIHtcbiAgICBpZiAoJ29udG91Y2hzdGFydCcgaW4gd2luZG93KSB7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHJpcHBsZUhpZGUsIGZhbHNlKTtcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoY2FuY2VsJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICAgIH1cblxuICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHJpcHBsZVNob3csIGZhbHNlKTtcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gICAgLy8gQW5jaG9yIHRhZ3MgY2FuIGJlIGRyYWdnZWQsIGNhdXNlcyBvdGhlciBoaWRlcyB0byBmYWlsIC0gIzE1MzdcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdkcmFnc3RhcnQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gIH0gZWxzZSBpZiAoIWVuYWJsZWQgJiYgd2FzRW5hYmxlZCkge1xuICAgIHJlbW92ZUxpc3RlbmVycyhlbCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlTGlzdGVuZXJzKGVsKSB7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCByaXBwbGVTaG93LCBmYWxzZSk7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHJpcHBsZVNob3csIGZhbHNlKTtcbiAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoY2FuY2VsJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcmFnc3RhcnQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG59XG5cbmZ1bmN0aW9uIGRpcmVjdGl2ZShlbCwgYmluZGluZykge1xuICB1cGRhdGVSaXBwbGUoZWwsIGJpbmRpbmcsIGZhbHNlKTtcbn1cblxuZnVuY3Rpb24gdW5iaW5kKGVsLCBiaW5kaW5nKSB7XG4gIGRlbGV0ZSBlbC5fcmlwcGxlO1xuICByZW1vdmVMaXN0ZW5lcnMoZWwpO1xufVxuXG5mdW5jdGlvbiB1cGRhdGUoZWwsIGJpbmRpbmcpIHtcbiAgaWYgKGJpbmRpbmcudmFsdWUgPT09IGJpbmRpbmcub2xkVmFsdWUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICB2YXIgd2FzRW5hYmxlZCA9IGlzUmlwcGxlRW5hYmxlZChiaW5kaW5nLm9sZFZhbHVlKTtcbiAgdXBkYXRlUmlwcGxlKGVsLCBiaW5kaW5nLCB3YXNFbmFibGVkKTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyaXBwbGUnLFxuICBiaW5kOiBkaXJlY3RpdmUsXG4gIHVuYmluZDogdW5iaW5kLFxuICB1cGRhdGU6IHVwZGF0ZVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2xvYWRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3ZhbGlkYXRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnaW5wdXQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbG9hZGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX192YWxpZGF0YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc0ZvY3VzZWQ6IGZhbHNlLFxuICAgICAgdGFiRm9jdXNlZDogZmFsc2UsXG4gICAgICBpbnRlcm5hbFRhYkluZGV4OiBudWxsLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXBwZW5kSWNvbjogU3RyaW5nLFxuICAgIGFwcGVuZEljb25DYjogRnVuY3Rpb24sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgaGludDogU3RyaW5nLFxuICAgIGhpZGVEZXRhaWxzOiBCb29sZWFuLFxuICAgIGxhYmVsOiBTdHJpbmcsXG4gICAgcGVyc2lzdGVudEhpbnQ6IEJvb2xlYW4sXG4gICAgcGxhY2Vob2xkZXI6IFN0cmluZyxcbiAgICBwcmVwZW5kSWNvbjogU3RyaW5nLFxuICAgIHByZXBlbmRJY29uQ2I6IEZ1bmN0aW9uLFxuICAgIHJlYWRvbmx5OiBCb29sZWFuLFxuICAgIHJlcXVpcmVkOiBCb29sZWFuLFxuICAgIHRhYmluZGV4OiB7XG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICB0b2dnbGVLZXlzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gWzEzLCAzMl07XG4gICAgICB9XG4gICAgfSxcbiAgICB2YWx1ZToge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgaW5wdXRHcm91cENsYXNzZXM6IGZ1bmN0aW9uIGlucHV0R3JvdXBDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAnaW5wdXQtZ3JvdXAnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFzeW5jLWxvYWRpbmcnOiB0aGlzLmxvYWRpbmcgIT09IGZhbHNlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWZvY3VzZWQnOiB0aGlzLmlzRm9jdXNlZCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXJ0eSc6IHRoaXMuaXNEaXJ0eSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS10YWItZm9jdXNlZCc6IHRoaXMudGFiRm9jdXNlZCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZXJyb3InOiB0aGlzLmhhc0Vycm9yLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uJzogdGhpcy5hcHBlbmRJY29uLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbic6IHRoaXMucHJlcGVuZEljb24sXG4gICAgICAgICdpbnB1dC1ncm91cC0tcmVxdWlyZWQnOiB0aGlzLnJlcXVpcmVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWhpZGUtZGV0YWlscyc6IHRoaXMuaGlkZURldGFpbHMsXG4gICAgICAgICdpbnB1dC1ncm91cC0tcGxhY2Vob2xkZXInOiAhIXRoaXMucGxhY2Vob2xkZXIsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH0sIHRoaXMuY2xhc3Nlcyk7XG4gICAgfSxcbiAgICBpc0RpcnR5OiBmdW5jdGlvbiBpc0RpcnR5KCkge1xuICAgICAgcmV0dXJuICEhdGhpcy5pbnB1dFZhbHVlO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ3JvdXBGb2N1czogZnVuY3Rpb24gZ3JvdXBGb2N1cyhlKSB7fSxcbiAgICBncm91cEJsdXI6IGZ1bmN0aW9uIGdyb3VwQmx1cihlKSB7XG4gICAgICB0aGlzLnRhYkZvY3VzZWQgPSBmYWxzZTtcbiAgICB9LFxuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICBmb3I6IHRoaXMuJGF0dHJzLmlkXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmxhYmVsIHx8IHRoaXMubGFiZWwpO1xuICAgIH0sXG4gICAgZ2VuTWVzc2FnZXM6IGZ1bmN0aW9uIGdlbk1lc3NhZ2VzKCkge1xuICAgICAgdmFyIG1lc3NhZ2VzID0gbnVsbDtcblxuICAgICAgaWYgKHRoaXMuaGludCAmJiAodGhpcy5pc0ZvY3VzZWQgfHwgdGhpcy5wZXJzaXN0ZW50SGludCkgJiYgIXRoaXMudmFsaWRhdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIG1lc3NhZ2VzID0gW3RoaXMuZ2VuSGludCgpXTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWxpZGF0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgbWVzc2FnZXMgPSBbdGhpcy5nZW5FcnJvcih0aGlzLnZhbGlkYXRpb25zWzBdKV07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIG5hbWU6ICdzbGlkZS15LXRyYW5zaXRpb24nXG4gICAgICAgIH1cbiAgICAgIH0sIG1lc3NhZ2VzKTtcbiAgICB9LFxuICAgIGdlbkhpbnQ6IGZ1bmN0aW9uIGdlbkhpbnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXBfX21lc3NhZ2VzIGlucHV0LWdyb3VwX19oaW50JyxcbiAgICAgICAgZG9tUHJvcHM6IHsgaW5uZXJIVE1MOiB0aGlzLmhpbnQgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5FcnJvcjogZnVuY3Rpb24gZ2VuRXJyb3IoZXJyb3IpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdpbnB1dC1ncm91cF9fbWVzc2FnZXMgaW5wdXQtZ3JvdXBfX2Vycm9yJ1xuICAgICAgfSwgZXJyb3IpO1xuICAgIH0sXG4gICAgZ2VuSWNvbjogZnVuY3Rpb24gZ2VuSWNvbih0eXBlKSB7XG4gICAgICB2YXIgX2NsYXNzO1xuXG4gICAgICB2YXIgZGVmYXVsdENhbGxiYWNrID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiBudWxsO1xuXG4gICAgICB2YXIgc2hvdWxkQ2xlYXIgPSB0eXBlID09PSAnYXBwZW5kJyAmJiB0aGlzLmNsZWFyYWJsZSAmJiB0aGlzLmlzRGlydHk7XG4gICAgICB2YXIgaWNvbiA9IHNob3VsZENsZWFyID8gJ2NsZWFyJyA6IHRoaXNbdHlwZSArICdJY29uJ107XG4gICAgICB2YXIgY2FsbGJhY2sgPSBzaG91bGRDbGVhciA/IHRoaXMuY2xlYXJhYmxlQ2FsbGJhY2sgOiB0aGlzW3R5cGUgKyAnSWNvbkNiJ10gfHwgZGVmYXVsdENhbGxiYWNrO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2NvbXBvbmVudHNfVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAnY2xhc3MnOiAoX2NsYXNzID0ge30sIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdpbnB1dC1ncm91cF9fJyArIHR5cGUgKyAnLWljb24nLCB0cnVlKSwgX2RlZmluZVByb3BlcnR5KF9jbGFzcywgJ2lucHV0LWdyb3VwX19pY29uLWNiJywgISFjYWxsYmFjayksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdpbnB1dC1ncm91cF9faWNvbi1jbGVhcmFibGUnLCBzaG91bGRDbGVhciksIF9jbGFzcyksXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWRcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgaWYgKCFjYWxsYmFjaykgcmV0dXJuO1xuXG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGljb24pO1xuICAgIH0sXG4gICAgZ2VuSW5wdXRHcm91cDogZnVuY3Rpb24gZ2VuSW5wdXRHcm91cChpbnB1dCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGRhdGEgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHt9O1xuICAgICAgdmFyIGRlZmF1bHRBcHBlbmRDYWxsYmFjayA9IGFyZ3VtZW50cy5sZW5ndGggPiAyICYmIGFyZ3VtZW50c1syXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzJdIDogbnVsbDtcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgICB2YXIgd3JhcHBlckNoaWxkcmVuID0gW107XG4gICAgICB2YXIgZGV0YWlsc0NoaWxkcmVuID0gW107XG5cbiAgICAgIGRhdGEgPSBPYmplY3QuYXNzaWduKHt9LCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuaW5wdXRHcm91cENsYXNzZXMsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdGFiaW5kZXg6IHRoaXMuZGlzYWJsZWQgPyAtMSA6IHRoaXMuaW50ZXJuYWxUYWJJbmRleCB8fCB0aGlzLnRhYmluZGV4XG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgZm9jdXM6IHRoaXMuZ3JvdXBGb2N1cyxcbiAgICAgICAgICBibHVyOiB0aGlzLmdyb3VwQmx1cixcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMudGFiRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAga2V5dXA6IGZ1bmN0aW9uIGtleXVwKGUpIHtcbiAgICAgICAgICAgIGlmIChbOSwgMTZdLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgX3RoaXMudGFiRm9jdXNlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAgIGlmICghX3RoaXMudG9nZ2xlKSByZXR1cm47XG5cbiAgICAgICAgICAgIGlmIChfdGhpcy50b2dnbGVLZXlzLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGRhdGEpO1xuXG4gICAgICBpZiAodGhpcy4kc2xvdHMubGFiZWwgfHwgdGhpcy5sYWJlbCkge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuTGFiZWwoKSk7XG4gICAgICB9XG5cbiAgICAgIHdyYXBwZXJDaGlsZHJlbi5wdXNoKGlucHV0KTtcblxuICAgICAgaWYgKHRoaXMucHJlcGVuZEljb24pIHtcbiAgICAgICAgd3JhcHBlckNoaWxkcmVuLnVuc2hpZnQodGhpcy5nZW5JY29uKCdwcmVwZW5kJykpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5hcHBlbmRJY29uIHx8IHRoaXMuY2xlYXJhYmxlKSB7XG4gICAgICAgIHdyYXBwZXJDaGlsZHJlbi5wdXNoKHRoaXMuZ2VuSWNvbignYXBwZW5kJywgZGVmYXVsdEFwcGVuZENhbGxiYWNrKSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBwcm9ncmVzcyA9IHRoaXMuZ2VuUHJvZ3Jlc3MoKTtcbiAgICAgIHByb2dyZXNzICYmIGRldGFpbHNDaGlsZHJlbi5wdXNoKHByb2dyZXNzKTtcblxuICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdpbnB1dC1ncm91cF9faW5wdXQnXG4gICAgICB9LCB3cmFwcGVyQ2hpbGRyZW4pKTtcblxuICAgICAgIXRoaXMuaGlkZURldGFpbHMgJiYgZGV0YWlsc0NoaWxkcmVuLnB1c2godGhpcy5nZW5NZXNzYWdlcygpKTtcblxuICAgICAgaWYgKHRoaXMuY291bnRlcikge1xuICAgICAgICBkZXRhaWxzQ2hpbGRyZW4ucHVzaCh0aGlzLmdlbkNvdW50ZXIoKSk7XG4gICAgICB9XG5cbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXBfX2RldGFpbHMnXG4gICAgICB9LCBkZXRhaWxzQ2hpbGRyZW4pKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGRhdGEsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cbmZ1bmN0aW9uIHNlYXJjaENoaWxkcmVuKGNoaWxkcmVuKSB7XG4gIHZhciByZXN1bHRzID0gW107XG4gIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBjaGlsZHJlbi5sZW5ndGg7IGluZGV4KyspIHtcbiAgICB2YXIgY2hpbGQgPSBjaGlsZHJlbltpbmRleF07XG4gICAgaWYgKGNoaWxkLmlzQWN0aXZlICYmIGNoaWxkLmlzRGVwZW5kZW50KSB7XG4gICAgICByZXN1bHRzLnB1c2goY2hpbGQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHRzLnB1c2guYXBwbHkocmVzdWx0cywgX3RvQ29uc3VtYWJsZUFycmF5KHNlYXJjaENoaWxkcmVuKGNoaWxkLiRjaGlsZHJlbikpKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0cztcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdkZXBlbmRlbnQnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNsb3NlRGVwZW5kZW50czogdHJ1ZSxcbiAgICAgIGlzRGVwZW5kZW50OiB0cnVlXG4gICAgfTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRPcGVuRGVwZW5kZW50czogZnVuY3Rpb24gZ2V0T3BlbkRlcGVuZGVudHMoKSB7XG4gICAgICBpZiAodGhpcy5jbG9zZURlcGVuZGVudHMpIHJldHVybiBzZWFyY2hDaGlsZHJlbih0aGlzLiRjaGlsZHJlbik7XG5cbiAgICAgIHJldHVybiBbXTtcbiAgICB9LFxuICAgIGdldE9wZW5EZXBlbmRlbnRFbGVtZW50czogZnVuY3Rpb24gZ2V0T3BlbkRlcGVuZGVudEVsZW1lbnRzKCkge1xuICAgICAgdmFyIHJlc3VsdCA9IFtdO1xuICAgICAgdmFyIG9wZW5EZXBlbmRlbnRzID0gdGhpcy5nZXRPcGVuRGVwZW5kZW50cygpO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoLmFwcGx5KHJlc3VsdCwgX3RvQ29uc3VtYWJsZUFycmF5KG9wZW5EZXBlbmRlbnRzW2luZGV4XS5nZXRDbGlja2FibGVEZXBlbmRlbnRFbGVtZW50cygpKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSxcbiAgICBnZXRDbGlja2FibGVEZXBlbmRlbnRFbGVtZW50czogZnVuY3Rpb24gZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMoKSB7XG4gICAgICB2YXIgcmVzdWx0ID0gW3RoaXMuJGVsXTtcbiAgICAgIGlmICh0aGlzLiRyZWZzLmNvbnRlbnQpIHJlc3VsdC5wdXNoKHRoaXMuJHJlZnMuY29udGVudCk7XG4gICAgICByZXN1bHQucHVzaC5hcHBseShyZXN1bHQsIF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdldE9wZW5EZXBlbmRlbnRFbGVtZW50cygpKSk7XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKHZhbCkgcmV0dXJuO1xuXG4gICAgICB2YXIgb3BlbkRlcGVuZGVudHMgPSB0aGlzLmdldE9wZW5EZXBlbmRlbnRzKCk7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIG9wZW5EZXBlbmRlbnRzW2luZGV4XS5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG5cblxuLyoqIEBtaXhpbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyaXBwbGVhYmxlJyxcblxuICBkaXJlY3RpdmVzOiB7IFJpcHBsZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgcHJvcHM6IHtcbiAgICByaXBwbGU6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuUmlwcGxlOiBmdW5jdGlvbiBnZW5SaXBwbGUoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGF0YSA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogeyBkaXJlY3RpdmVzOiBbXSB9O1xuXG4gICAgICBkYXRhLmNsYXNzID0gdGhpcy5yaXBwbGVDbGFzc2VzIHx8ICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUnO1xuICAgICAgZGF0YS5kaXJlY3RpdmVzLnB1c2goe1xuICAgICAgICBuYW1lOiAncmlwcGxlJyxcbiAgICAgICAgdmFsdWU6IHRoaXMucmlwcGxlICYmICF0aGlzLmRpc2FibGVkICYmIHsgY2VudGVyOiB0cnVlIH1cbiAgICAgIH0pO1xuICAgICAgZGF0YS5vbiA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuJGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgIF90aGlzLiRlbWl0KCdjbGljaycsIGUpO1xuICAgICAgICAgIF90aGlzLnRvZ2dsZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGRhdGEpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgcGFkU3RhcnQgPSBmdW5jdGlvbiBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKSB7XG4gIHRhcmdldExlbmd0aCA9IHRhcmdldExlbmd0aCA+PiAwO1xuICBzdHJpbmcgPSBTdHJpbmcoc3RyaW5nKTtcbiAgcGFkU3RyaW5nID0gU3RyaW5nKHBhZFN0cmluZyk7XG4gIGlmIChzdHJpbmcubGVuZ3RoID4gdGFyZ2V0TGVuZ3RoKSB7XG4gICAgcmV0dXJuIFN0cmluZyhzdHJpbmcpO1xuICB9XG5cbiAgdGFyZ2V0TGVuZ3RoID0gdGFyZ2V0TGVuZ3RoIC0gc3RyaW5nLmxlbmd0aDtcbiAgaWYgKHRhcmdldExlbmd0aCA+IHBhZFN0cmluZy5sZW5ndGgpIHtcbiAgICBwYWRTdHJpbmcgKz0gcGFkU3RyaW5nLnJlcGVhdCh0YXJnZXRMZW5ndGggLyBwYWRTdHJpbmcubGVuZ3RoKTtcbiAgfVxuICByZXR1cm4gcGFkU3RyaW5nLnNsaWNlKDAsIHRhcmdldExlbmd0aCkgKyBTdHJpbmcoc3RyaW5nKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoZnVuY3Rpb24gKG4pIHtcbiAgdmFyIGxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogMjtcbiAgcmV0dXJuIHBhZFN0YXJ0KG4sIGxlbmd0aCwgJzAnKTtcbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBTU1JCb290YWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIFVzZWQgaW4gbGF5b3V0IGNvbXBvbmVudHMgKGRyYXdlciwgdG9vbGJhciwgY29udGVudClcbiAqIHRvIGF2b2lkIGFuIGVudHJ5IGFuaW1hdGlvbiB3aGVuIHVzaW5nIFNTUlxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Nzci1ib290YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNCb290ZWQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAvLyBVc2Ugc2V0QXR0cmlidXRlIGluc3RlYWQgb2YgZGF0YXNldFxuICAgIC8vIGJlY2F1c2UgZGF0YXNldCBkb2VzIG5vdCB3b3JrIHdlbGxcbiAgICAvLyB3aXRoIHVuaXQgdGVzdHNcbiAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgIF90aGlzLiRlbC5zZXRBdHRyaWJ1dGUoJ2RhdGEtYm9vdGVkJywgdHJ1ZSk7XG4gICAgICBfdGhpcy5pc0Jvb3RlZCA9IHRydWU7XG4gICAgfSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd0cmFuc2l0aW9uYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBtb2RlOiBTdHJpbmcsXG4gICAgb3JpZ2luOiBTdHJpbmcsXG4gICAgdHJhbnNpdGlvbjogU3RyaW5nXG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xudmFyIF90eXBlb2YgPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgdHlwZW9mIFN5bWJvbC5pdGVyYXRvciA9PT0gXCJzeW1ib2xcIiA/IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIHR5cGVvZiBvYmo7IH0gOiBmdW5jdGlvbiAob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9O1xuXG5cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUF0dGFjaFRhcmdldCh2YWwpIHtcbiAgdmFyIHR5cGUgPSB0eXBlb2YgdmFsID09PSAndW5kZWZpbmVkJyA/ICd1bmRlZmluZWQnIDogX3R5cGVvZih2YWwpO1xuXG4gIGlmICh0eXBlID09PSAnYm9vbGVhbicgfHwgdHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiB0cnVlO1xuXG4gIHJldHVybiB2YWwubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2RldGFjaGFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBhdHRhY2g6IHtcbiAgICAgIHR5cGU6IG51bGwsXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIHZhbGlkYXRvcjogdmFsaWRhdGVBdHRhY2hUYXJnZXRcbiAgICB9LFxuICAgIGNvbnRlbnRDbGFzczoge1xuICAgICAgZGVmYXVsdDogJydcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmluaXREZXRhY2goKTtcbiAgfSxcbiAgZGVhY3RpdmF0ZWQ6IGZ1bmN0aW9uIGRlYWN0aXZhdGVkKCkge1xuICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAoIXRoaXMuJHJlZnMuY29udGVudCkgcmV0dXJuO1xuXG4gICAgLy8gSUUxMSBGaXhcbiAgICB0cnkge1xuICAgICAgdGhpcy4kcmVmcy5jb250ZW50LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy4kcmVmcy5jb250ZW50KTtcbiAgICB9IGNhdGNoIChlKSB7fVxuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGluaXREZXRhY2g6IGZ1bmN0aW9uIGluaXREZXRhY2goKSB7XG4gICAgICBpZiAodGhpcy5faXNEZXN0cm95ZWQgfHwgIXRoaXMuJHJlZnMuY29udGVudCB8fFxuICAgICAgLy8gTGVhdmUgbWVudSBpbiBwbGFjZSBpZiBhdHRhY2hlZFxuICAgICAgLy8gYW5kIGRldiBoYXMgbm90IGNoYW5nZWQgdGFyZ2V0XG4gICAgICB0aGlzLmF0dGFjaCA9PT0gJycgfHwgLy8gSWYgdXNlZCBhcyBhIGJvb2xlYW4gcHJvcCAoPHYtbWVudSBhdHRhY2g+KVxuICAgICAgdGhpcy5hdHRhY2ggPT09IHRydWUgfHwgLy8gSWYgYm91bmQgdG8gYSBib29sZWFuICg8di1tZW51IDphdHRhY2g9XCJ0cnVlXCI+KVxuICAgICAgdGhpcy5hdHRhY2ggPT09ICdhdHRhY2gnIC8vIElmIGJvdW5kIGFzIGJvb2xlYW4gcHJvcCBpbiBwdWcgKHYtbWVudShhdHRhY2gpKVxuICAgICAgKSByZXR1cm47XG5cbiAgICAgIHZhciB0YXJnZXQgPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy5hdHRhY2ggPT09IGZhbHNlKSB7XG4gICAgICAgIC8vIERlZmF1bHQsIGRldGFjaCB0byBhcHBcbiAgICAgICAgdGFyZ2V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtYXBwXScpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5hdHRhY2ggPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIC8vIENTUyBzZWxlY3RvclxuICAgICAgICB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuYXR0YWNoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIERPTSBFbGVtZW50XG4gICAgICAgIHRhcmdldCA9IHRoaXMuYXR0YWNoO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRhcmdldCkge1xuICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdVbmFibGUgdG8gbG9jYXRlIHRhcmdldCAnICsgKHRoaXMuYXR0YWNoIHx8ICdbZGF0YS1hcHBdJyksIHRoaXMpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRhcmdldC5pbnNlcnRCZWZvcmUodGhpcy4kcmVmcy5jb250ZW50LCB0YXJnZXQuZmlyc3RDaGlsZCk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAncmV0dXJuYWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgb3JpZ2luYWxWYWx1ZTogbnVsbFxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICByZXR1cm5WYWx1ZTogbnVsbFxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLm9yaWdpbmFsVmFsdWUgPSB0aGlzLnJldHVyblZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4kZW1pdCgndXBkYXRlOnJldHVyblZhbHVlJywgdGhpcy5vcmlnaW5hbFZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHNhdmU6IGZ1bmN0aW9uIHNhdmUodmFsdWUpIHtcbiAgICAgIHRoaXMub3JpZ2luYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkNhcmRBY3Rpb25zICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkNhcmRUZXh0ICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkNhcmRUaXRsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjEpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNhcmQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJkTWVkaWEgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJkVGl0bGUgKi9cblxuXG5cblxuXG52YXIgVkNhcmRBY3Rpb25zID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdjYXJkX19hY3Rpb25zJyk7XG52YXIgVkNhcmRUZXh0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdjYXJkX190ZXh0Jyk7XG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDYXJkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkVGl0bGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkVGl0bGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVkNhcmRBY3Rpb25zLm5hbWUsIFZDYXJkQWN0aW9ucyk7XG4gIFZ1ZS5jb21wb25lbnQoVkNhcmRUZXh0Lm5hbWUsIFZDYXJkVGV4dCk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hlY2tib3hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTI4KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hlY2tib3hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoZWNrYm94X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDMwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk1lbnVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQ2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTWVudV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk1lbnVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDMxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IEdyaWQ7XG5mdW5jdGlvbiBHcmlkKG5hbWUpIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndi0nICsgbmFtZSxcblxuICAgIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgICBwcm9wczoge1xuICAgICAgaWQ6IFN0cmluZyxcbiAgICAgIHRhZzoge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIGRlZmF1bHQ6ICdkaXYnXG4gICAgICB9XG4gICAgfSxcblxuICAgIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICAgIHZhciBwcm9wcyA9IF9yZWYucHJvcHMsXG4gICAgICAgICAgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgICBjaGlsZHJlbiA9IF9yZWYuY2hpbGRyZW47XG5cbiAgICAgIGRhdGEuc3RhdGljQ2xhc3MgPSAobmFtZSArICcgJyArIChkYXRhLnN0YXRpY0NsYXNzIHx8ICcnKSkudHJpbSgpO1xuXG4gICAgICBpZiAoZGF0YS5hdHRycykge1xuICAgICAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5rZXlzKGRhdGEuYXR0cnMpLmZpbHRlcihmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgdmFyIHZhbHVlID0gZGF0YS5hdHRyc1trZXldO1xuICAgICAgICAgIHJldHVybiB2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY2xhc3Nlcy5sZW5ndGgpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyAnICsgY2xhc3Nlcy5qb2luKCcgJyk7XG4gICAgICAgIGRlbGV0ZSBkYXRhLmF0dHJzO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgZGF0YS5kb21Qcm9wcyA9IGRhdGEuZG9tUHJvcHMgfHwge307XG4gICAgICAgIGRhdGEuZG9tUHJvcHMuaWQgPSBwcm9wcy5pZDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGgocHJvcHMudGFnLCBkYXRhLCBjaGlsZHJlbik7XG4gICAgfVxuICB9O1xufVxuXG4vKioqLyB9KSxcbi8qIDMzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBjb2xvclRvSW50O1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBpbnRUb0hleDtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG5cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IGNvbG9yXG4gKiBAcmV0dXJucyB7bnVtYmVyfVxuICovXG5mdW5jdGlvbiBjb2xvclRvSW50KGNvbG9yKSB7XG4gIHZhciByZ2IgPSB2b2lkIDA7XG5cbiAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ251bWJlcicpIHtcbiAgICByZ2IgPSBjb2xvcjtcbiAgfSBlbHNlIGlmICh0eXBlb2YgY29sb3IgPT09ICdzdHJpbmcnKSB7XG4gICAgdmFyIGMgPSBjb2xvclswXSA9PT0gJyMnID8gY29sb3Iuc3Vic3RyaW5nKDEpIDogY29sb3I7XG4gICAgaWYgKGMubGVuZ3RoID09PSAzKSB7XG4gICAgICBjID0gYy5zcGxpdCgnJykubWFwKGZ1bmN0aW9uIChjaGFyKSB7XG4gICAgICAgIHJldHVybiBjaGFyICsgY2hhcjtcbiAgICAgIH0pLmpvaW4oJycpO1xuICAgIH1cbiAgICBpZiAoYy5sZW5ndGggIT09IDYpIHtcbiAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdcXCcnICsgY29sb3IgKyAnXFwnIGlzIG5vdCBhIHZhbGlkIHJnYiBjb2xvcicpO1xuICAgIH1cbiAgICByZ2IgPSBwYXJzZUludChjLCAxNik7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ29sb3JzIGNhbiBvbmx5IGJlIG51bWJlcnMgb3Igc3RyaW5ncywgcmVjaWV2ZWQgJyArIGNvbG9yLmNvbnN0cnVjdG9yLm5hbWUgKyAnIGluc3RlYWQnKTtcbiAgfVxuXG4gIGlmIChyZ2IgPCAwKSB7XG4gICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ0NvbG9ycyBjYW5ub3QgYmUgbmVnYXRpdmU6IFxcJycgKyBjb2xvciArICdcXCcnKTtcbiAgICByZ2IgPSAwO1xuICB9IGVsc2UgaWYgKHJnYiA+IDB4ZmZmZmZmIHx8IGlzTmFOKHJnYikpIHtcbiAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnXFwnJyArIGNvbG9yICsgJ1xcJyBpcyBub3QgYSB2YWxpZCByZ2IgY29sb3InKTtcbiAgICByZ2IgPSAweGZmZmZmZjtcbiAgfVxuXG4gIHJldHVybiByZ2I7XG59XG5cbi8qKlxuICogQHBhcmFtIHtudW1iZXJ9IGNvbG9yXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5mdW5jdGlvbiBpbnRUb0hleChjb2xvcikge1xuICBjb2xvciA9IGNvbG9yLnRvU3RyaW5nKDE2KTtcblxuICBpZiAoY29sb3IubGVuZ3RoIDwgNikgY29sb3IgPSAnMCcucmVwZWF0KDYgLSBjb2xvci5sZW5ndGgpICsgY29sb3I7XG5cbiAgcmV0dXJuICcjJyArIGNvbG9yO1xufVxuXG4vKioqLyB9KSxcbi8qIDM0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5NCk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQXZhdGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDM1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2J1dHRvbi1ncm91cCcsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcmVnaXN0cmFibGVfX1tcImJcIiAvKiBwcm92aWRlICovXSkoJ2J1dHRvbkdyb3VwJyldLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJ1dHRvbnM6IFtdLFxuICAgICAgbGlzdGVuZXJzOiBbXSxcbiAgICAgIGlzRGVzdHJveWluZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBidXR0b25zOiAndXBkYXRlJ1xuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRWYWx1ZTogZnVuY3Rpb24gZ2V0VmFsdWUoaSkge1xuICAgICAgaWYgKHRoaXMuYnV0dG9uc1tpXS52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvbnNbaV0udmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpeCBmb3IgdGVzdGluZywgdGhpcyBzaG91bGQgYWx3YXlzIGJlIGZhbHNlIGluIHRoZSBicm93c2VyXG4gICAgICBpZiAodGhpcy5idXR0b25zW2ldLiRlbC52YWx1ZSAhPSBudWxsICYmIHRoaXMuYnV0dG9uc1tpXS4kZWwudmFsdWUgIT09ICcnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvbnNbaV0uJGVsLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaTtcbiAgICB9LFxuICAgIHVwZGF0ZTogZnVuY3Rpb24gdXBkYXRlKCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0gW107XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5idXR0b25zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBlbG0gPSB0aGlzLmJ1dHRvbnNbaV0uJGVsO1xuICAgICAgICB2YXIgYnV0dG9uID0gdGhpcy5idXR0b25zW2ldO1xuXG4gICAgICAgIGVsbS5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtb25seS1jaGlsZCcpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzU2VsZWN0ZWQoaSkpIHtcbiAgICAgICAgICAhYnV0dG9uLnRvICYmIChidXR0b24uaXNBY3RpdmUgPSB0cnVlKTtcbiAgICAgICAgICBzZWxlY3RlZC5wdXNoKGkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICFidXR0b24udG8gJiYgKGJ1dHRvbi5pc0FjdGl2ZSA9IGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoc2VsZWN0ZWQubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uc1tzZWxlY3RlZFswXV0uJGVsLnNldEF0dHJpYnV0ZSgnZGF0YS1vbmx5LWNoaWxkJywgdHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZW5zdXJlTWFuZGF0b3J5SW52YXJpYW50KHNlbGVjdGVkLmxlbmd0aCA+IDApO1xuICAgIH0sXG4gICAgcmVnaXN0ZXI6IGZ1bmN0aW9uIHJlZ2lzdGVyKGJ1dHRvbikge1xuICAgICAgdmFyIGluZGV4ID0gdGhpcy5idXR0b25zLmxlbmd0aDtcbiAgICAgIHRoaXMuYnV0dG9ucy5wdXNoKGJ1dHRvbik7XG4gICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKHRoaXMudXBkYXRlVmFsdWUuYmluZCh0aGlzLCBpbmRleCkpO1xuICAgICAgYnV0dG9uLiRvbignY2xpY2snLCB0aGlzLmxpc3RlbmVyc1tpbmRleF0pO1xuICAgIH0sXG4gICAgdW5yZWdpc3RlcjogZnVuY3Rpb24gdW5yZWdpc3RlcihidXR0b25Ub1VucmVnaXN0ZXIpIHtcbiAgICAgIC8vIEJhc2ljIGNsZWFudXAgaWYgd2UncmUgZGVzdHJveWluZ1xuICAgICAgaWYgKHRoaXMuaXNEZXN0cm95aW5nKSB7XG4gICAgICAgIHZhciBpbmRleCA9IHRoaXMuYnV0dG9ucy5pbmRleE9mKGJ1dHRvblRvVW5yZWdpc3Rlcik7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBidXR0b25Ub1VucmVnaXN0ZXIuJG9mZignY2xpY2snLCB0aGlzLmxpc3RlbmVyc1tpbmRleF0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5yZWRvUmVnaXN0cmF0aW9ucyhidXR0b25Ub1VucmVnaXN0ZXIpO1xuICAgIH0sXG4gICAgcmVkb1JlZ2lzdHJhdGlvbnM6IGZ1bmN0aW9uIHJlZG9SZWdpc3RyYXRpb25zKGJ1dHRvblRvVW5yZWdpc3Rlcikge1xuICAgICAgdmFyIHNlbGVjdGVkQ291bnQgPSAwO1xuXG4gICAgICB2YXIgYnV0dG9ucyA9IFtdO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMuYnV0dG9ucy5sZW5ndGg7ICsraW5kZXgpIHtcbiAgICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMuYnV0dG9uc1tpbmRleF07XG4gICAgICAgIGlmIChidXR0b24gIT09IGJ1dHRvblRvVW5yZWdpc3Rlcikge1xuICAgICAgICAgIGJ1dHRvbnMucHVzaChidXR0b24pO1xuICAgICAgICAgIHNlbGVjdGVkQ291bnQgKz0gQm9vbGVhbih0aGlzLmlzU2VsZWN0ZWQoaW5kZXgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbi4kb2ZmKCdjbGljaycsIHRoaXMubGlzdGVuZXJzW2luZGV4XSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuYnV0dG9ucyA9IFtdO1xuICAgICAgdGhpcy5saXN0ZW5lcnMgPSBbXTtcblxuICAgICAgZm9yICh2YXIgX2luZGV4ID0gMDsgX2luZGV4IDwgYnV0dG9ucy5sZW5ndGg7ICsrX2luZGV4KSB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXIoYnV0dG9uc1tfaW5kZXhdKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5lbnN1cmVNYW5kYXRvcnlJbnZhcmlhbnQoc2VsZWN0ZWRDb3VudCA+IDApO1xuICAgICAgdGhpcy51cGRhdGVBbGxWYWx1ZXMgJiYgdGhpcy51cGRhdGVBbGxWYWx1ZXMoKTtcbiAgICB9LFxuICAgIGVuc3VyZU1hbmRhdG9yeUludmFyaWFudDogZnVuY3Rpb24gZW5zdXJlTWFuZGF0b3J5SW52YXJpYW50KGhhc1NlbGVjdGVkQWxyZWFkeSkge1xuICAgICAgLy8gUHJlc2VydmUgdGhlIG1hbmRhdG9yeSBpbnZhcmlhbnQgYnkgc2VsZWN0aW5nIHRoZSBmaXJzdCB0cmFja2VkIGJ1dHRvbiwgaWYgbmVlZGVkXG5cbiAgICAgIGlmICghdGhpcy5tYW5kYXRvcnkgfHwgaGFzU2VsZWN0ZWRBbHJlYWR5KSByZXR1cm47XG5cbiAgICAgIGlmICghdGhpcy5saXN0ZW5lcnMubGVuZ3RoKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1RoZXJlIG11c3QgYmUgYXQgbGVhc3Qgb25lIHYtYnRuIGNoaWxkIGlmIHRoZSBtYW5kYXRvcnkgcHJvcGVydHkgaXMgdHJ1ZS4nLCB0aGlzKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxpc3RlbmVyc1swXSgpO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy5pc0Rlc3Ryb3lpbmcgPSB0cnVlO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RpYWxvZ3Nfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGlhbG9nc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RpYWxvZ3Nfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kZXBlbmRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RldGFjaGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX292ZXJsYXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZXR1cm5hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zdGFja2FibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG4vLyBIZWxwZXJzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRpYWxvZycsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGVwZW5kZW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RldGFjaGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfb3ZlcmxheWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmV0dXJuYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zdGFja2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX2RpcmVjdGl2ZXNfY2xpY2tfb3V0c2lkZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNEZXBlbmRlbnQ6IGZhbHNlLFxuICAgICAgc3RhY2tDbGFzczogJ2RpYWxvZ19fY29udGVudF9fYWN0aXZlJyxcbiAgICAgIHN0YWNrTWluWkluZGV4OiAyMDBcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBwZXJzaXN0ZW50OiBCb29sZWFuLFxuICAgIGZ1bGxzY3JlZW46IEJvb2xlYW4sXG4gICAgZnVsbFdpZHRoOiBCb29sZWFuLFxuICAgIG1heFdpZHRoOiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBOdW1iZXJdLFxuICAgICAgZGVmYXVsdDogJ25vbmUnXG4gICAgfSxcbiAgICBvcmlnaW46IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjZW50ZXIgY2VudGVyJ1xuICAgIH0sXG4gICAgd2lkdGg6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIE51bWJlcl0sXG4gICAgICBkZWZhdWx0OiAnYXV0bydcbiAgICB9LFxuICAgIHNjcm9sbGFibGU6IEJvb2xlYW4sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogW1N0cmluZywgQm9vbGVhbl0sXG4gICAgICBkZWZhdWx0OiAnZGlhbG9nLXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBfcmVmO1xuXG4gICAgICByZXR1cm4gX3JlZiA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgKCdkaWFsb2cgJyArIHRoaXMuY29udGVudENsYXNzKS50cmltKCksIHRydWUpLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgJ2RpYWxvZy0tYWN0aXZlJywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfcmVmLCAnZGlhbG9nLS1wZXJzaXN0ZW50JywgdGhpcy5wZXJzaXN0ZW50KSwgX2RlZmluZVByb3BlcnR5KF9yZWYsICdkaWFsb2ctLWZ1bGxzY3JlZW4nLCB0aGlzLmZ1bGxzY3JlZW4pLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgJ2RpYWxvZy0tc2Nyb2xsYWJsZScsIHRoaXMuc2Nyb2xsYWJsZSksIF9yZWY7XG4gICAgfSxcbiAgICBjb250ZW50Q2xhc3NlczogZnVuY3Rpb24gY29udGVudENsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnZGlhbG9nX19jb250ZW50JzogdHJ1ZSxcbiAgICAgICAgJ2RpYWxvZ19fY29udGVudF9fYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICBpZiAodmFsKSB7XG4gICAgICAgIHRoaXMuc2hvdygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW1vdmVPdmVybGF5KCk7XG4gICAgICAgIHRoaXMudW5iaW5kKCk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5pc0Jvb3RlZCA9IHRoaXMuaXNBY3RpdmU7XG4gICAgdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLnNob3coKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHRoaXMudW5iaW5kKCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgY2xvc2VDb25kaXRpb25hbDogZnVuY3Rpb24gY2xvc2VDb25kaXRpb25hbChlKSB7XG4gICAgICAvLyBjbG9zZSBkaWFsb2cgaWYgIXBlcnNpc3RlbnQsIGNsaWNrZWQgb3V0c2lkZSBhbmQgd2UncmUgdGhlIHRvcG1vc3QgZGlhbG9nLlxuICAgICAgLy8gU2luY2UgdGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgaW4gYSBjYXB0dXJlIGV2ZW50IChib3R0b20gdXApLCB3ZSBzaG91bGRuJ3QgbmVlZCB0byBzdG9wIHByb3BhZ2F0aW9uXG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5wZXJzaXN0ZW50ICYmIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX3V0aWxfaGVscGVyc19fW1wialwiIC8qIGdldFpJbmRleCAqL10pKHRoaXMuJHJlZnMuY29udGVudCkgPj0gdGhpcy5nZXRNYXhaSW5kZXgoKSAmJiAhdGhpcy4kcmVmcy5jb250ZW50LmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICB9LFxuICAgIHNob3c6IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgICAhdGhpcy5mdWxsc2NyZWVuICYmICF0aGlzLmhpZGVPdmVybGF5ICYmIHRoaXMuZ2VuT3ZlcmxheSgpO1xuICAgICAgdGhpcy5mdWxsc2NyZWVuICYmIHRoaXMuaGlkZVNjcm9sbCgpO1xuICAgICAgdGhpcy4kcmVmcy5jb250ZW50LmZvY3VzKCk7XG4gICAgICB0aGlzLiRsaXN0ZW5lcnMua2V5ZG93biAmJiB0aGlzLmJpbmQoKTtcbiAgICB9LFxuICAgIGJpbmQ6IGZ1bmN0aW9uIGJpbmQoKSB7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMub25LZXlkb3duKTtcbiAgICB9LFxuICAgIHVuYmluZDogZnVuY3Rpb24gdW5iaW5kKCkge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLm9uS2V5ZG93bik7XG4gICAgfSxcbiAgICBvbktleWRvd246IGZ1bmN0aW9uIG9uS2V5ZG93bihlKSB7XG4gICAgICB0aGlzLiRlbWl0KCdrZXlkb3duJywgZSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICByZWY6ICdkaWFsb2cnLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICBjbG9zZUNvbmRpdGlvbmFsOiB0aGlzLmNsb3NlQ29uZGl0aW9uYWwsXG4gICAgICAgICAgaW5jbHVkZTogdGhpcy5nZXRPcGVuRGVwZW5kZW50RWxlbWVudHNcbiAgICAgICAgfVxuICAgICAgfSwgeyBuYW1lOiAnc2hvdycsIHZhbHVlOiB0aGlzLmlzQWN0aXZlIH1dLFxuICAgICAgb246IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmICghdGhpcy5mdWxsc2NyZWVuKSB7XG4gICAgICBkYXRhLnN0eWxlID0ge1xuICAgICAgICBtYXhXaWR0aDogdGhpcy5tYXhXaWR0aCA9PT0gJ25vbmUnID8gdW5kZWZpbmVkIDogaXNOYU4odGhpcy5tYXhXaWR0aCkgPyB0aGlzLm1heFdpZHRoIDogdGhpcy5tYXhXaWR0aCArICdweCcsXG4gICAgICAgIHdpZHRoOiB0aGlzLndpZHRoID09PSAnYXV0bycgPyB1bmRlZmluZWQgOiBpc05hTih0aGlzLndpZHRoKSA/IHRoaXMud2lkdGggOiB0aGlzLndpZHRoICsgJ3B4J1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy4kc2xvdHMuYWN0aXZhdG9yKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2RpYWxvZ19fYWN0aXZhdG9yJyxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGlmICghX3RoaXMuZGlzYWJsZWQpIF90aGlzLmlzQWN0aXZlID0gIV90aGlzLmlzQWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmFjdGl2YXRvcl0pKTtcbiAgICB9XG5cbiAgICB2YXIgZGlhbG9nID0gaCgndHJhbnNpdGlvbicsIHtcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIG5hbWU6IHRoaXMudHJhbnNpdGlvbiB8fCAnJywgLy8gSWYgZmFsc2UsIHNob3cgbm90aGluZ1xuICAgICAgICBvcmlnaW46IHRoaXMub3JpZ2luXG4gICAgICB9XG4gICAgfSwgW2goJ2RpdicsIGRhdGEsIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKV0pO1xuXG4gICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNvbnRlbnRDbGFzc2VzLFxuICAgICAgZG9tUHJvcHM6IHsgdGFiSW5kZXg6IC0xIH0sXG4gICAgICBzdHlsZTogeyB6SW5kZXg6IHRoaXMuYWN0aXZlWkluZGV4IH0sXG4gICAgICByZWY6ICdjb250ZW50J1xuICAgIH0sIFtkaWFsb2ddKSk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdkaWFsb2dfX2NvbnRhaW5lcicsXG4gICAgICBzdHlsZToge1xuICAgICAgICBkaXNwbGF5OiAhdGhpcy4kc2xvdHMuYWN0aXZhdG9yIHx8IHRoaXMuZnVsbFdpZHRoID8gJ2Jsb2NrJyA6ICdpbmxpbmUtYmxvY2snXG4gICAgICB9XG4gICAgfSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAzNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX292ZXJsYXlfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfb3ZlcmxheV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX292ZXJsYXlfc3R5bF9fKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ292ZXJsYXlhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBvdmVybGF5OiBudWxsLFxuICAgICAgb3ZlcmxheU9mZnNldDogMCxcbiAgICAgIG92ZXJsYXlUaW1lb3V0OiBudWxsLFxuICAgICAgb3ZlcmxheVRyYW5zaXRpb25EdXJhdGlvbjogNTAwICsgMTUwIC8vIHRyYW5zaXRpb24gKyBkZWxheVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGhpZGVPdmVybGF5OiBCb29sZWFuXG4gIH0sXG5cbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlbW92ZU92ZXJsYXkoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5PdmVybGF5OiBmdW5jdGlvbiBnZW5PdmVybGF5KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgLy8gSWYgZm4gaXMgY2FsbGVkIGFuZCB0aW1lb3V0IGlzIGFjdGl2ZVxuICAgICAgLy8gb3Igb3ZlcmxheSBhbHJlYWR5IGV4aXN0c1xuICAgICAgLy8gY2FuY2VsIHJlbW92YWwgb2Ygb3ZlcmxheSBhbmQgcmUtYWRkIGFjdGl2ZVxuICAgICAgaWYgKCF0aGlzLmlzQWN0aXZlIHx8IHRoaXMuaGlkZU92ZXJsYXkgfHwgdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLm92ZXJsYXlUaW1lb3V0IHx8IHRoaXMub3ZlcmxheSkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5vdmVybGF5VGltZW91dCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheSAmJiB0aGlzLm92ZXJsYXkuY2xhc3NMaXN0LmFkZCgnb3ZlcmxheS0tYWN0aXZlJyk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMub3ZlcmxheSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdGhpcy5vdmVybGF5LmNsYXNzTmFtZSA9ICdvdmVybGF5JztcblxuICAgICAgaWYgKHRoaXMuYWJzb2x1dGUpIHRoaXMub3ZlcmxheS5jbGFzc05hbWUgKz0gJyBvdmVybGF5LS1hYnNvbHV0ZSc7XG5cbiAgICAgIHRoaXMuaGlkZVNjcm9sbCgpO1xuXG4gICAgICB2YXIgcGFyZW50ID0gdGhpcy5hYnNvbHV0ZSA/IHRoaXMuJGVsLnBhcmVudE5vZGUgOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hcHBdJyk7XG5cbiAgICAgIHBhcmVudCAmJiBwYXJlbnQuaW5zZXJ0QmVmb3JlKHRoaXMub3ZlcmxheSwgcGFyZW50LmZpcnN0Q2hpbGQpO1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgICB0aGlzLm92ZXJsYXkuY2xpZW50SGVpZ2h0OyAvLyBGb3JjZSByZXBhaW50XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24gKCkge1xuICAgICAgICBfdGhpcy5vdmVybGF5LmNsYXNzTmFtZSArPSAnIG92ZXJsYXktLWFjdGl2ZSc7XG5cbiAgICAgICAgaWYgKF90aGlzLmFjdGl2ZVpJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgX3RoaXMub3ZlcmxheS5zdHlsZS56SW5kZXggPSBfdGhpcy5hY3RpdmVaSW5kZXggLSAxO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcbiAgICByZW1vdmVPdmVybGF5OiBmdW5jdGlvbiByZW1vdmVPdmVybGF5KCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5vdmVybGF5KSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dTY3JvbGwoKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5vdmVybGF5LmNsYXNzTGlzdC5yZW1vdmUoJ292ZXJsYXktLWFjdGl2ZScpO1xuXG4gICAgICB0aGlzLm92ZXJsYXlUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIElFMTEgRml4XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgX3RoaXMyLm92ZXJsYXkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChfdGhpczIub3ZlcmxheSk7XG4gICAgICAgICAgX3RoaXMyLm92ZXJsYXkgPSBudWxsO1xuICAgICAgICAgIF90aGlzMi5zaG93U2Nyb2xsKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHt9XG5cbiAgICAgICAgY2xlYXJUaW1lb3V0KF90aGlzMi5vdmVybGF5VGltZW91dCk7XG4gICAgICAgIF90aGlzMi5vdmVybGF5VGltZW91dCA9IG51bGw7XG4gICAgICB9LCB0aGlzLm92ZXJsYXlUcmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHNjcm9sbExpc3RlbmVyOiBmdW5jdGlvbiBzY3JvbGxMaXN0ZW5lcihlKSB7XG4gICAgICBpZiAoZS50eXBlID09PSAna2V5ZG93bicpIHtcbiAgICAgICAgaWYgKFsnSU5QVVQnLCAnVEVYVEFSRUEnLCAnU0VMRUNUJ10uaW5jbHVkZXMoZS50YXJnZXQudGFnTmFtZSkpIHJldHVybjtcblxuICAgICAgICB2YXIgdXAgPSBbMzgsIDMzXTtcbiAgICAgICAgdmFyIGRvd24gPSBbNDAsIDM0XTtcblxuICAgICAgICBpZiAodXAuaW5jbHVkZXMoZS5rZXlDb2RlKSkge1xuICAgICAgICAgIGUuZGVsdGFZID0gLTE7XG4gICAgICAgIH0gZWxzZSBpZiAoZG93bi5pbmNsdWRlcyhlLmtleUNvZGUpKSB7XG4gICAgICAgICAgZS5kZWx0YVkgPSAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZS50YXJnZXQgPT09IHRoaXMub3ZlcmxheSB8fCBlLnR5cGUgIT09ICdrZXlkb3duJyAmJiBlLnRhcmdldCA9PT0gZG9jdW1lbnQuYm9keSB8fCB0aGlzLmNoZWNrUGF0aChlKSkgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH0sXG4gICAgaGFzU2Nyb2xsYmFyOiBmdW5jdGlvbiBoYXNTY3JvbGxiYXIoZWwpIHtcbiAgICAgIGlmICghZWwgfHwgZWwubm9kZVR5cGUgIT09IE5vZGUuRUxFTUVOVF9OT0RFKSByZXR1cm4gZmFsc2U7XG5cbiAgICAgIHZhciBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsKTtcbiAgICAgIHJldHVybiBbJ2F1dG8nLCAnc2Nyb2xsJ10uaW5jbHVkZXMoc3R5bGVbJ292ZXJmbG93LXknXSkgJiYgZWwuc2Nyb2xsSGVpZ2h0ID4gZWwuY2xpZW50SGVpZ2h0O1xuICAgIH0sXG4gICAgc2hvdWxkU2Nyb2xsOiBmdW5jdGlvbiBzaG91bGRTY3JvbGwoZWwsIGRlbHRhKSB7XG4gICAgICBpZiAoZWwuc2Nyb2xsVG9wID09PSAwICYmIGRlbHRhIDwgMCkgcmV0dXJuIHRydWU7XG4gICAgICByZXR1cm4gZWwuc2Nyb2xsVG9wICsgZWwuY2xpZW50SGVpZ2h0ID09PSBlbC5zY3JvbGxIZWlnaHQgJiYgZGVsdGEgPiAwO1xuICAgIH0sXG4gICAgaXNJbnNpZGU6IGZ1bmN0aW9uIGlzSW5zaWRlKGVsLCBwYXJlbnQpIHtcbiAgICAgIGlmIChlbCA9PT0gcGFyZW50KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChlbCA9PT0gbnVsbCB8fCBlbCA9PT0gZG9jdW1lbnQuYm9keSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0luc2lkZShlbC5wYXJlbnROb2RlLCBwYXJlbnQpO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBlXG4gICAgICogQHJldHVybnMgYm9vbGVhblxuICAgICAqL1xuICAgIGNoZWNrUGF0aDogZnVuY3Rpb24gY2hlY2tQYXRoKGUpIHtcbiAgICAgIHZhciBwYXRoID0gZS5wYXRoIHx8IHRoaXMuY29tcG9zZWRQYXRoKGUpO1xuICAgICAgdmFyIGRlbHRhID0gZS5kZWx0YVkgfHwgLWUud2hlZWxEZWx0YTtcblxuICAgICAgaWYgKGUudHlwZSA9PT0gJ2tleWRvd24nICYmIHBhdGhbMF0gPT09IGRvY3VtZW50LmJvZHkpIHtcbiAgICAgICAgdmFyIGRpYWxvZyA9IHRoaXMuJHJlZnMuZGlhbG9nO1xuICAgICAgICB2YXIgc2VsZWN0ZWQgPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuYW5jaG9yTm9kZTtcbiAgICAgICAgaWYgKHRoaXMuaGFzU2Nyb2xsYmFyKGRpYWxvZykgJiYgdGhpcy5pc0luc2lkZShzZWxlY3RlZCwgZGlhbG9nKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLnNob3VsZFNjcm9sbChkaWFsb2csIGRlbHRhKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHBhdGgubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHZhciBlbCA9IHBhdGhbaW5kZXhdO1xuXG4gICAgICAgIGlmIChlbCA9PT0gZG9jdW1lbnQpIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoZWwgPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkgcmV0dXJuIHRydWU7XG4gICAgICAgIGlmIChlbCA9PT0gdGhpcy4kcmVmcy5jb250ZW50KSByZXR1cm4gdHJ1ZTtcblxuICAgICAgICBpZiAodGhpcy5oYXNTY3JvbGxiYXIoZWwpKSByZXR1cm4gdGhpcy5zaG91bGRTY3JvbGwoZWwsIGRlbHRhKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFBvbHlmaWxsIGZvciBFdmVudC5wcm90b3R5cGUuY29tcG9zZWRQYXRoXG4gICAgICogQHBhcmFtIHtFdmVudH0gZVxuICAgICAqIEByZXR1cm5zIEVsZW1lbnRbXVxuICAgICAqL1xuICAgIGNvbXBvc2VkUGF0aDogZnVuY3Rpb24gY29tcG9zZWRQYXRoKGUpIHtcbiAgICAgIGlmIChlLmNvbXBvc2VkUGF0aCkgcmV0dXJuIGUuY29tcG9zZWRQYXRoKCk7XG5cbiAgICAgIHZhciBwYXRoID0gW107XG4gICAgICB2YXIgZWwgPSBlLnRhcmdldDtcblxuICAgICAgd2hpbGUgKGVsKSB7XG4gICAgICAgIHBhdGgucHVzaChlbCk7XG5cbiAgICAgICAgaWYgKGVsLnRhZ05hbWUgPT09ICdIVE1MJykge1xuICAgICAgICAgIHBhdGgucHVzaChkb2N1bWVudCk7XG4gICAgICAgICAgcGF0aC5wdXNoKHdpbmRvdyk7XG5cbiAgICAgICAgICByZXR1cm4gcGF0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIGVsID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGhpZGVTY3JvbGw6IGZ1bmN0aW9uIGhpZGVTY3JvbGwoKSB7XG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5icmVha3BvaW50LnNtQW5kRG93bikge1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnb3ZlcmZsb3cteS1oaWRkZW4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd3aGVlbCcsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hvd1Njcm9sbDogZnVuY3Rpb24gc2hvd1Njcm9sbCgpIHtcbiAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdvdmVyZmxvdy15LWhpZGRlbicpO1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3doZWVsJywgdGhpcy5zY3JvbGxMaXN0ZW5lcik7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMzggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5mdW5jdGlvbiBfdG9Db25zdW1hYmxlQXJyYXkoYXJyKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgZm9yICh2YXIgaSA9IDAsIGFycjIgPSBBcnJheShhcnIubGVuZ3RoKTsgaSA8IGFyci5sZW5ndGg7IGkrKykgeyBhcnIyW2ldID0gYXJyW2ldOyB9IHJldHVybiBhcnIyOyB9IGVsc2UgeyByZXR1cm4gQXJyYXkuZnJvbShhcnIpOyB9IH1cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc3RhY2thYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBzdGFja0Jhc2U6IG51bGwsXG4gICAgICBzdGFja0NsYXNzOiAndW5wZWNpZmllZCcsXG4gICAgICBzdGFja0VsZW1lbnQ6IG51bGwsXG4gICAgICBzdGFja0V4Y2x1ZGU6IG51bGwsXG4gICAgICBzdGFja01pblpJbmRleDogMFxuICAgIH07XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICAvKipcbiAgICAgKiBDdXJyZW50bHkgYWN0aXZlIHotaW5kZXhcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICBhY3RpdmVaSW5kZXg6IGZ1bmN0aW9uIGFjdGl2ZVpJbmRleCgpIHtcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIDA7XG5cbiAgICAgIHZhciBjb250ZW50ID0gdGhpcy5zdGFja0VsZW1lbnQgfHwgdGhpcy4kcmVmcy5jb250ZW50O1xuICAgICAgLy8gUmV0dXJuIGN1cnJlbnQgemluZGV4IGlmIG5vdCBhY3RpdmVcblxuICAgICAgdmFyIGluZGV4ID0gIXRoaXMuaXNBY3RpdmUgPyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImpcIiAvKiBnZXRaSW5kZXggKi9dKShjb250ZW50KSA6IHRoaXMuZ2V0TWF4WkluZGV4KHRoaXMuc3RhY2tFeGNsdWRlIHx8IFtjb250ZW50XSkgKyAyO1xuXG4gICAgICBpZiAoaW5kZXggPT0gbnVsbCkgcmV0dXJuIGluZGV4O1xuXG4gICAgICAvLyBSZXR1cm4gbWF4IGN1cnJlbnQgei1pbmRleCAoZXhjbHVkaW5nIHNlbGYpICsgMlxuICAgICAgLy8gKDIgdG8gbGVhdmUgcm9vbSBmb3IgYW4gb3ZlcmxheSBiZWxvdywgaWYgbmVlZGVkKVxuICAgICAgcmV0dXJuIHBhcnNlSW50KGluZGV4KTtcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRNYXhaSW5kZXg6IGZ1bmN0aW9uIGdldE1heFpJbmRleCgpIHtcbiAgICAgIHZhciBleGNsdWRlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBbXTtcblxuICAgICAgdmFyIGJhc2UgPSB0aGlzLnN0YWNrQmFzZSB8fCB0aGlzLiRlbDtcbiAgICAgIC8vIFN0YXJ0IHdpdGggbG93ZXN0IGFsbG93ZWQgei1pbmRleCBvciB6LWluZGV4IG9mXG4gICAgICAvLyBiYXNlIGNvbXBvbmVudCdzIGVsZW1lbnQsIHdoaWNoZXZlciBpcyBncmVhdGVyXG4gICAgICB2YXIgemlzID0gW3RoaXMuc3RhY2tNaW5aSW5kZXgsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wialwiIC8qIGdldFpJbmRleCAqL10pKGJhc2UpXTtcbiAgICAgIC8vIENvbnZlcnQgdGhlIE5vZGVMaXN0IHRvIGFuIGFycmF5IHRvXG4gICAgICAvLyBwcmV2ZW50IGFuIEVkZ2UgYnVnIHdpdGggU3ltYm9sLml0ZXJhdG9yXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdnVldGlmeWpzL3Z1ZXRpZnkvaXNzdWVzLzIxNDZcbiAgICAgIHZhciBhY3RpdmVFbGVtZW50cyA9IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSh0aGlzLnN0YWNrQ2xhc3MpKSk7XG5cbiAgICAgIC8vIEdldCB6LWluZGV4IGZvciBhbGwgYWN0aXZlIGRpYWxvZ3NcbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBhY3RpdmVFbGVtZW50cy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgaWYgKCFleGNsdWRlLmluY2x1ZGVzKGFjdGl2ZUVsZW1lbnRzW2luZGV4XSkpIHtcbiAgICAgICAgICB6aXMucHVzaChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImpcIiAvKiBnZXRaSW5kZXggKi9dKShhY3RpdmVFbGVtZW50c1tpbmRleF0pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gTWF0aC5tYXguYXBwbHkoTWF0aCwgemlzKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDM5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzQ2lyY3VsYXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEzKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUHJvZ3Jlc3NDaXJjdWxhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzQ2lyY3VsYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA0MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZ1bmN0aW9uICgpIHtcbiAgdmFyIGV4cGFuZGVkUGFyZW50Q2xhc3MgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6ICcnO1xuXG4gIHJldHVybiB7XG4gICAgZW50ZXI6IGZ1bmN0aW9uIGVudGVyKGVsLCBkb25lKSB7XG4gICAgICBlbC5fcGFyZW50ID0gZWwucGFyZW50Tm9kZTtcblxuICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJhXCIgLyogYWRkT25jZUV2ZW50TGlzdGVuZXIgKi9dKShlbCwgJ3RyYW5zaXRpb25lbmQnLCBkb25lKTtcblxuICAgICAgLy8gR2V0IGhlaWdodCB0aGF0IGlzIHRvIGJlIHNjcm9sbGVkXG4gICAgICBlbC5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICAgICAgZWwuc3R5bGUuaGVpZ2h0ID0gMDtcbiAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgZXhwYW5kZWRQYXJlbnRDbGFzcyAmJiBlbC5fcGFyZW50LmNsYXNzTGlzdC5hZGQoZXhwYW5kZWRQYXJlbnRDbGFzcyk7XG5cbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gZWwuc3R5bGUuaGVpZ2h0ID0gZWwuc2Nyb2xsSGVpZ2h0ICsgJ3B4JztcbiAgICAgIH0sIDEwMCk7XG4gICAgfSxcbiAgICBhZnRlckVudGVyOiBmdW5jdGlvbiBhZnRlckVudGVyKGVsKSB7XG4gICAgICBlbC5zdHlsZS5vdmVyZmxvdyA9IG51bGw7XG4gICAgICBlbC5zdHlsZS5oZWlnaHQgPSBudWxsO1xuICAgIH0sXG4gICAgbGVhdmU6IGZ1bmN0aW9uIGxlYXZlKGVsLCBkb25lKSB7XG4gICAgICAvLyBSZW1vdmUgaW5pdGlhbCB0cmFuc2l0aW9uXG4gICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImFcIiAvKiBhZGRPbmNlRXZlbnRMaXN0ZW5lciAqL10pKGVsLCAndHJhbnNpdGlvbmVuZCcsIGRvbmUpO1xuXG4gICAgICAvLyBTZXQgaGVpZ2h0IGJlZm9yZSB3ZSB0cmFuc2l0aW9uIHRvIDBcbiAgICAgIGVsLnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7XG4gICAgICBlbC5zdHlsZS5oZWlnaHQgPSBlbC5vZmZzZXRIZWlnaHQgKyAncHgnO1xuXG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIGVsLnN0eWxlLmhlaWdodCA9IDA7XG4gICAgICB9LCAxMDApO1xuICAgIH0sXG4gICAgYWZ0ZXJMZWF2ZTogZnVuY3Rpb24gYWZ0ZXJMZWF2ZShlbCkge1xuICAgICAgZXhwYW5kZWRQYXJlbnRDbGFzcyAmJiBlbC5fcGFyZW50ICYmIGVsLl9wYXJlbnQuY2xhc3NMaXN0LnJlbW92ZShleHBhbmRlZFBhcmVudENsYXNzKTtcbiAgICB9XG4gIH07XG59KTtcblxuLyoqKi8gfSksXG4vKiA0MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2lucHV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5KTtcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc2VsZWN0YWJsZScsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19pbnB1dF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBtb2RlbDoge1xuICAgIHByb3A6ICdpbnB1dFZhbHVlJyxcbiAgICBldmVudDogJ2NoYW5nZSdcbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdhY2NlbnQnXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGlkOiBTdHJpbmcsXG4gICAgaW5wdXRWYWx1ZTogbnVsbCxcbiAgICBmYWxzZVZhbHVlOiBudWxsLFxuICAgIHRydWVWYWx1ZTogbnVsbFxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKCkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5pbnB1dFZhbHVlKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlLmluZGV4T2YodGhpcy52YWx1ZSkgIT09IC0xO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudHJ1ZVZhbHVlIHx8ICF0aGlzLmZhbHNlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUgPyB0aGlzLnZhbHVlID09PSB0aGlzLmlucHV0VmFsdWUgOiBCb29sZWFuKHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmlucHV0VmFsdWUgPT09IHRoaXMudHJ1ZVZhbHVlO1xuICAgIH0sXG4gICAgaXNEaXJ0eTogZnVuY3Rpb24gaXNEaXJ0eSgpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQWN0aXZlO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGluZGV0ZXJtaW5hdGUodmFsKSB7XG4gICAgICB0aGlzLmlucHV0SW5kZXRlcm1pbmF0ZSA9IHZhbDtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgb246IHsgY2xpY2s6IHRoaXMudG9nZ2xlIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgZm9yOiB0aGlzLmlkXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmxhYmVsIHx8IHRoaXMubGFiZWwpO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHZhciBpbnB1dCA9IHRoaXMuaW5wdXRWYWx1ZTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGlucHV0KSkge1xuICAgICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKCk7XG4gICAgICAgIHZhciBpID0gaW5wdXQuaW5kZXhPZih0aGlzLnZhbHVlKTtcblxuICAgICAgICBpZiAoaSA9PT0gLTEpIHtcbiAgICAgICAgICBpbnB1dC5wdXNoKHRoaXMudmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlucHV0LnNwbGljZShpLCAxKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLnRydWVWYWx1ZSB8fCB0aGlzLmZhbHNlVmFsdWUpIHtcbiAgICAgICAgaW5wdXQgPSBpbnB1dCA9PT0gdGhpcy50cnVlVmFsdWUgPyB0aGlzLmZhbHNlVmFsdWUgOiB0aGlzLnRydWVWYWx1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICBpbnB1dCA9IHRoaXMudmFsdWUgPT09IHRoaXMuaW5wdXRWYWx1ZSA/IG51bGwgOiB0aGlzLnZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5wdXQgPSAhaW5wdXQ7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudmFsaWRhdGUodHJ1ZSwgaW5wdXQpO1xuXG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCBpbnB1dCk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVlByb2dyZXNzTGluZWFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ0KTtcblxuXG4vKipcbiAqIExvYWRhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCB0byBhZGQgbGluZWFyIHByb2dyZXNzIGJhciB0byBjb21wb25lbnRzXG4gKiBDYW4gdXNlIGEgZGVmYXVsdCBiYXIgd2l0aCBhIHNwZWNpZmljIGNvbG9yXG4gKiBvciBkZXNpZ25hdGUgYSBjdXN0b20gcHJvZ3Jlc3MgbGluZWFyIGJhclxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2xvYWRhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxvYWRpbmc6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblByb2dyZXNzOiBmdW5jdGlvbiBnZW5Qcm9ncmVzcygpIHtcbiAgICAgIGlmICh0aGlzLmxvYWRpbmcgPT09IGZhbHNlKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuJHNsb3RzLnByb2dyZXNzIHx8IHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZQcm9ncmVzc0xpbmVhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMubG9hZGluZyA9PT0gdHJ1ZSB8fCB0aGlzLmxvYWRpbmcgPT09ICcnID8gdGhpcy5jb2xvciB8fCAncHJpbWFyeScgOiB0aGlzLmxvYWRpbmcsXG4gICAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICAgIGluZGV0ZXJtaW5hdGU6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0xpbmVhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjkpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0xpbmVhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzTGluZWFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUHJvZ3Jlc3NMaW5lYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzTGluZWFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQ1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoaXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoaXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQ2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb21wb25lbnRzX1ZTZWxlY3RfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZmlsdGVyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19sb2FkYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKipcbiAqIERhdGFJdGVyYWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIEJhc2UgYmVoYXZpb3IgZm9yIGRhdGEgdGFibGUgYW5kIGRhdGEgaXRlcmF0b3JcbiAqIHByb3ZpZGluZyBzZWxlY3Rpb24sIHBhZ2luYXRpb24sIHNvcnRpbmcgYW5kIGZpbHRlcmluZy5cbiAqXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnZGF0YS1pdGVyYWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc2VhcmNoTGVuZ3RoOiAwLFxuICAgICAgZGVmYXVsdFBhZ2luYXRpb246IHtcbiAgICAgICAgZGVzY2VuZGluZzogZmFsc2UsXG4gICAgICAgIHBhZ2U6IDEsXG4gICAgICAgIHJvd3NQZXJQYWdlOiA1LFxuICAgICAgICBzb3J0Qnk6IG51bGwsXG4gICAgICAgIHRvdGFsSXRlbXM6IDBcbiAgICAgIH0sXG4gICAgICBleHBhbmRlZDoge30sXG4gICAgICBhY3Rpb25zQ2xhc3NlczogJ2RhdGEtaXRlcmF0b3JfX2FjdGlvbnMnLFxuICAgICAgYWN0aW9uc1JhbmdlQ29udHJvbHNDbGFzc2VzOiAnZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fcmFuZ2UtY29udHJvbHMnLFxuICAgICAgYWN0aW9uc1NlbGVjdENsYXNzZXM6ICdkYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QnLFxuICAgICAgYWN0aW9uc1BhZ2luYXRpb25DbGFzc2VzOiAnZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fcGFnaW5hdGlvbidcbiAgICB9O1xuICB9LFxuXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19maWx0ZXJhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbG9hZGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBleHBhbmQ6IEJvb2xlYW4sXG4gICAgaGlkZUFjdGlvbnM6IEJvb2xlYW4sXG4gICAgZGlzYWJsZUluaXRpYWxTb3J0OiBCb29sZWFuLFxuICAgIG11c3RTb3J0OiBCb29sZWFuLFxuICAgIG5vUmVzdWx0c1RleHQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdObyBtYXRjaGluZyByZWNvcmRzIGZvdW5kJ1xuICAgIH0sXG4gICAgbmV4dEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX3JpZ2h0J1xuICAgIH0sXG4gICAgcHJldkljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICByb3dzUGVyUGFnZUl0ZW1zOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gWzUsIDEwLCAyNSwgeyB0ZXh0OiAnQWxsJywgdmFsdWU6IC0xIH1dO1xuICAgICAgfVxuICAgIH0sXG4gICAgcm93c1BlclBhZ2VUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnSXRlbXMgcGVyIHBhZ2U6J1xuICAgIH0sXG4gICAgc2VsZWN0QWxsOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICBzZWFyY2g6IHtcbiAgICAgIHJlcXVpcmVkOiBmYWxzZVxuICAgIH0sXG4gICAgZmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KHZhbCwgc2VhcmNoKSB7XG4gICAgICAgIHJldHVybiB2YWwgIT0gbnVsbCAmJiB0eXBlb2YgdmFsICE9PSAnYm9vbGVhbicgJiYgdmFsLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKHNlYXJjaCkgIT09IC0xO1xuICAgICAgfVxuICAgIH0sXG4gICAgY3VzdG9tRmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBzZWFyY2gsIGZpbHRlcikge1xuICAgICAgICBzZWFyY2ggPSBzZWFyY2gudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBpZiAoc2VhcmNoLnRyaW0oKSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGkpLnNvbWUoZnVuY3Rpb24gKGopIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXIoaVtqXSwgc2VhcmNoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBjdXN0b21Tb3J0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBpbmRleCwgaXNEZXNjZW5kaW5nKSB7XG4gICAgICAgIGlmIChpbmRleCA9PT0gbnVsbCkgcmV0dXJuIGl0ZW1zO1xuXG4gICAgICAgIHJldHVybiBpdGVtcy5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICAgICAgdmFyIHNvcnRBID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShhLCBpbmRleCk7XG4gICAgICAgICAgdmFyIHNvcnRCID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShiLCBpbmRleCk7XG5cbiAgICAgICAgICBpZiAoaXNEZXNjZW5kaW5nKSB7XG4gICAgICAgICAgICB2YXIgX3JlZiA9IFtzb3J0Qiwgc29ydEFdO1xuICAgICAgICAgICAgc29ydEEgPSBfcmVmWzBdO1xuICAgICAgICAgICAgc29ydEIgPSBfcmVmWzFdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIENoZWNrIGlmIGJvdGggYXJlIG51bWJlcnNcbiAgICAgICAgICBpZiAoIWlzTmFOKHNvcnRBKSAmJiAhaXNOYU4oc29ydEIpKSB7XG4gICAgICAgICAgICByZXR1cm4gc29ydEEgLSBzb3J0QjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDaGVjayBpZiBib3RoIGNhbm5vdCBiZSBldmFsdWF0ZWRcbiAgICAgICAgICBpZiAoc29ydEEgPT09IG51bGwgJiYgc29ydEIgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhciBfbWFwID0gW3NvcnRBLCBzb3J0Ql0ubWFwKGZ1bmN0aW9uIChzKSB7XG4gICAgICAgICAgICByZXR1cm4gKHMgfHwgJycpLnRvU3RyaW5nKCkudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHZhciBfbWFwMiA9IF9zbGljZWRUb0FycmF5KF9tYXAsIDIpO1xuXG4gICAgICAgICAgc29ydEEgPSBfbWFwMlswXTtcbiAgICAgICAgICBzb3J0QiA9IF9tYXAyWzFdO1xuXG5cbiAgICAgICAgICBpZiAoc29ydEEgPiBzb3J0QikgcmV0dXJuIDE7XG4gICAgICAgICAgaWYgKHNvcnRBIDwgc29ydEIpIHJldHVybiAtMTtcblxuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBpdGVtczoge1xuICAgICAgdHlwZTogQXJyYXksXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICB0b3RhbEl0ZW1zOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBpdGVtS2V5OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnaWQnXG4gICAgfSxcbiAgICBwYWdpbmF0aW9uOiB7XG4gICAgICB0eXBlOiBPYmplY3QsXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdCgpIHt9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRQYWdpbmF0aW9uOiBmdW5jdGlvbiBjb21wdXRlZFBhZ2luYXRpb24oKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNQYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uIDogdGhpcy5kZWZhdWx0UGFnaW5hdGlvbjtcbiAgICB9LFxuICAgIGhhc1BhZ2luYXRpb246IGZ1bmN0aW9uIGhhc1BhZ2luYXRpb24oKSB7XG4gICAgICB2YXIgcGFnaW5hdGlvbiA9IHRoaXMucGFnaW5hdGlvbiB8fCB7fTtcblxuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHBhZ2luYXRpb24pLmxlbmd0aCA+IDA7XG4gICAgfSxcbiAgICBoYXNTZWxlY3RBbGw6IGZ1bmN0aW9uIGhhc1NlbGVjdEFsbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdEFsbCAhPT0gdW5kZWZpbmVkICYmIHRoaXMuc2VsZWN0QWxsICE9PSBmYWxzZTtcbiAgICB9LFxuICAgIGl0ZW1zTGVuZ3RoOiBmdW5jdGlvbiBpdGVtc0xlbmd0aCgpIHtcbiAgICAgIGlmICh0aGlzLnNlYXJjaCkgcmV0dXJuIHRoaXMuc2VhcmNoTGVuZ3RoO1xuICAgICAgcmV0dXJuIHRoaXMudG90YWxJdGVtcyB8fCB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIGluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGluZGV0ZXJtaW5hdGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNTZWxlY3RBbGwgJiYgdGhpcy5zb21lSXRlbXMgJiYgIXRoaXMuZXZlcnlJdGVtO1xuICAgIH0sXG4gICAgZXZlcnlJdGVtOiBmdW5jdGlvbiBldmVyeUl0ZW0oKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEl0ZW1zLmxlbmd0aCAmJiB0aGlzLmZpbHRlcmVkSXRlbXMuZXZlcnkoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlzU2VsZWN0ZWQoaSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHNvbWVJdGVtczogZnVuY3Rpb24gc29tZUl0ZW1zKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLmZpbHRlcmVkSXRlbXMuc29tZShmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzU2VsZWN0ZWQoaSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdldFBhZ2U6IGZ1bmN0aW9uIGdldFBhZ2UoKSB7XG4gICAgICB2YXIgcm93c1BlclBhZ2UgPSB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5yb3dzUGVyUGFnZTtcblxuXG4gICAgICByZXR1cm4gcm93c1BlclBhZ2UgPT09IE9iamVjdChyb3dzUGVyUGFnZSkgPyByb3dzUGVyUGFnZS52YWx1ZSA6IHJvd3NQZXJQYWdlO1xuICAgIH0sXG4gICAgcGFnZVN0YXJ0OiBmdW5jdGlvbiBwYWdlU3RhcnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQYWdlID09PSAtMSA/IDAgOiAodGhpcy5jb21wdXRlZFBhZ2luYXRpb24ucGFnZSAtIDEpICogdGhpcy5nZXRQYWdlO1xuICAgIH0sXG4gICAgcGFnZVN0b3A6IGZ1bmN0aW9uIHBhZ2VTdG9wKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0UGFnZSA9PT0gLTEgPyB0aGlzLml0ZW1zTGVuZ3RoIDogdGhpcy5jb21wdXRlZFBhZ2luYXRpb24ucGFnZSAqIHRoaXMuZ2V0UGFnZTtcbiAgICB9LFxuICAgIGZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEl0ZW1zSW1wbCgpO1xuICAgIH0sXG4gICAgc2VsZWN0ZWQ6IGZ1bmN0aW9uIHNlbGVjdGVkKCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0ge307XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy52YWx1ZS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgc2VsZWN0ZWRbdGhpcy52YWx1ZVtpbmRleF1bdGhpcy5pdGVtS2V5XV0gPSB0cnVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNlbGVjdGVkO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGl0ZW1zTGVuZ3RoOiBmdW5jdGlvbiBpdGVtc0xlbmd0aCh0b3RhbEl0ZW1zKSB7XG4gICAgICB0aGlzLnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiAxLCB0b3RhbEl0ZW1zOiB0b3RhbEl0ZW1zIH0pO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgaW5pdFBhZ2luYXRpb246IGZ1bmN0aW9uIGluaXRQYWdpbmF0aW9uKCkge1xuICAgICAgaWYgKCF0aGlzLnJvd3NQZXJQYWdlSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1RoZSBwcm9wIFxcJ3Jvd3MtcGVyLXBhZ2UtaXRlbXNcXCcgY2FuIG5vdCBiZSBlbXB0eScsIHRoaXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbi5yb3dzUGVyUGFnZSA9IHRoaXMucm93c1BlclBhZ2VJdGVtc1swXTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbi50b3RhbEl0ZW1zID0gdGhpcy5pdGVtc0xlbmd0aDtcblxuICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uKE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZGVmYXVsdFBhZ2luYXRpb24sIHRoaXMucGFnaW5hdGlvbikpO1xuICAgIH0sXG4gICAgdXBkYXRlUGFnaW5hdGlvbjogZnVuY3Rpb24gdXBkYXRlUGFnaW5hdGlvbih2YWwpIHtcbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5oYXNQYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uIDogdGhpcy5kZWZhdWx0UGFnaW5hdGlvbjtcbiAgICAgIHZhciB1cGRhdGVkUGFnaW5hdGlvbiA9IE9iamVjdC5hc3NpZ24oe30sIHBhZ2luYXRpb24sIHZhbCk7XG4gICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6cGFnaW5hdGlvbicsIHVwZGF0ZWRQYWdpbmF0aW9uKTtcblxuICAgICAgaWYgKCF0aGlzLmhhc1BhZ2luYXRpb24pIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbiA9IHVwZGF0ZWRQYWdpbmF0aW9uO1xuICAgICAgfVxuICAgIH0sXG4gICAgaXNTZWxlY3RlZDogZnVuY3Rpb24gaXNTZWxlY3RlZChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFtpdGVtW3RoaXMuaXRlbUtleV1dO1xuICAgIH0sXG4gICAgaXNFeHBhbmRlZDogZnVuY3Rpb24gaXNFeHBhbmRlZChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5leHBhbmRlZFtpdGVtW3RoaXMuaXRlbUtleV1dO1xuICAgIH0sXG4gICAgZmlsdGVyZWRJdGVtc0ltcGw6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXNJbXBsKCkge1xuICAgICAgaWYgKHRoaXMudG90YWxJdGVtcykgcmV0dXJuIHRoaXMuaXRlbXM7XG5cbiAgICAgIHZhciBpdGVtcyA9IHRoaXMuaXRlbXMuc2xpY2UoKTtcbiAgICAgIHZhciBoYXNTZWFyY2ggPSB0eXBlb2YgdGhpcy5zZWFyY2ggIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc2VhcmNoICE9PSBudWxsO1xuXG4gICAgICBpZiAoaGFzU2VhcmNoKSB7XG4gICAgICAgIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBhZGRpdGlvbmFsRmlsdGVyQXJncyA9IEFycmF5KF9sZW4pLCBfa2V5ID0gMDsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgICAgIGFkZGl0aW9uYWxGaWx0ZXJBcmdzW19rZXldID0gYXJndW1lbnRzW19rZXldO1xuICAgICAgICB9XG5cbiAgICAgICAgaXRlbXMgPSB0aGlzLmN1c3RvbUZpbHRlci5hcHBseSh0aGlzLCBbaXRlbXMsIHRoaXMuc2VhcmNoLCB0aGlzLmZpbHRlcl0uY29uY2F0KGFkZGl0aW9uYWxGaWx0ZXJBcmdzKSk7XG4gICAgICAgIHRoaXMuc2VhcmNoTGVuZ3RoID0gaXRlbXMubGVuZ3RoO1xuICAgICAgfVxuXG4gICAgICBpdGVtcyA9IHRoaXMuY3VzdG9tU29ydChpdGVtcywgdGhpcy5jb21wdXRlZFBhZ2luYXRpb24uc29ydEJ5LCB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5kZXNjZW5kaW5nKTtcblxuICAgICAgcmV0dXJuIHRoaXMuaGlkZUFjdGlvbnMgJiYgIXRoaXMuaGFzUGFnaW5hdGlvbiA/IGl0ZW1zIDogaXRlbXMuc2xpY2UodGhpcy5wYWdlU3RhcnQsIHRoaXMucGFnZVN0b3ApO1xuICAgIH0sXG4gICAgc29ydDogZnVuY3Rpb24gc29ydChpbmRleCkge1xuICAgICAgdmFyIF9jb21wdXRlZFBhZ2luYXRpb24gPSB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbixcbiAgICAgICAgICBzb3J0QnkgPSBfY29tcHV0ZWRQYWdpbmF0aW9uLnNvcnRCeSxcbiAgICAgICAgICBkZXNjZW5kaW5nID0gX2NvbXB1dGVkUGFnaW5hdGlvbi5kZXNjZW5kaW5nO1xuXG4gICAgICBpZiAoc29ydEJ5ID09PSBudWxsKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogaW5kZXgsIGRlc2NlbmRpbmc6IGZhbHNlIH0pO1xuICAgICAgfSBlbHNlIGlmIChzb3J0QnkgPT09IGluZGV4ICYmICFkZXNjZW5kaW5nKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IGRlc2NlbmRpbmc6IHRydWUgfSk7XG4gICAgICB9IGVsc2UgaWYgKHNvcnRCeSAhPT0gaW5kZXgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uKHsgc29ydEJ5OiBpbmRleCwgZGVzY2VuZGluZzogZmFsc2UgfSk7XG4gICAgICB9IGVsc2UgaWYgKCF0aGlzLm11c3RTb3J0KSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogbnVsbCwgZGVzY2VuZGluZzogbnVsbCB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogaW5kZXgsIGRlc2NlbmRpbmc6IGZhbHNlIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUodmFsdWUpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB2YXIgc2VsZWN0ZWQgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnNlbGVjdGVkKTtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHNlbGVjdGVkW3RoaXMuZmlsdGVyZWRJdGVtc1tpbmRleF1bdGhpcy5pdGVtS2V5XV0gPSB2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLml0ZW1zLmZpbHRlcihmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gc2VsZWN0ZWRbaVtfdGhpczMuaXRlbUtleV1dO1xuICAgICAgfSkpO1xuICAgIH0sXG4gICAgY3JlYXRlUHJvcHM6IGZ1bmN0aW9uIGNyZWF0ZVByb3BzKGl0ZW0sIGluZGV4KSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgdmFyIHByb3BzID0geyBpdGVtOiBpdGVtLCBpbmRleDogaW5kZXggfTtcbiAgICAgIHZhciBrZXlQcm9wID0gdGhpcy5pdGVtS2V5O1xuICAgICAgdmFyIGl0ZW1LZXkgPSBpdGVtW2tleVByb3BdO1xuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvcHMsICdzZWxlY3RlZCcsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzNC5zZWxlY3RlZFtpdGVtW190aGlzNC5pdGVtS2V5XV07XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gc2V0KHZhbHVlKSB7XG4gICAgICAgICAgaWYgKGl0ZW1LZXkgPT0gbnVsbCkge1xuICAgICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnXCInICsga2V5UHJvcCArICdcIiBhdHRyaWJ1dGUgbXVzdCBiZSBkZWZpbmVkIGZvciBpdGVtJywgX3RoaXM0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB2YXIgc2VsZWN0ZWQgPSBfdGhpczQudmFsdWUuc2xpY2UoKTtcbiAgICAgICAgICBpZiAodmFsdWUpIHNlbGVjdGVkLnB1c2goaXRlbSk7ZWxzZSBzZWxlY3RlZCA9IHNlbGVjdGVkLmZpbHRlcihmdW5jdGlvbiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIGlba2V5UHJvcF0gIT09IGl0ZW1LZXk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgX3RoaXM0LiRlbWl0KCdpbnB1dCcsIHNlbGVjdGVkKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ2V4cGFuZGVkJywge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM0LmV4cGFuZGVkW2l0ZW1bX3RoaXM0Lml0ZW1LZXldXTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsdWUpIHtcbiAgICAgICAgICBpZiAoaXRlbUtleSA9PSBudWxsKSB7XG4gICAgICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdcIicgKyBrZXlQcm9wICsgJ1wiIGF0dHJpYnV0ZSBtdXN0IGJlIGRlZmluZWQgZm9yIGl0ZW0nLCBfdGhpczQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghX3RoaXM0LmV4cGFuZCkge1xuICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIF90aGlzNC5leHBhbmRlZCkge1xuICAgICAgICAgICAgICBfdGhpczQuZXhwYW5kZWQuaGFzT3duUHJvcGVydHkoa2V5KSAmJiBfdGhpczQuJHNldChfdGhpczQuZXhwYW5kZWQsIGtleSwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBfdGhpczQuJHNldChfdGhpczQuZXhwYW5kZWQsIGl0ZW1LZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBwcm9wcztcbiAgICB9LFxuICAgIGdlbkl0ZW1zOiBmdW5jdGlvbiBnZW5JdGVtcygpIHtcbiAgICAgIGlmICghdGhpcy5pdGVtc0xlbmd0aCAmJiAhdGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgdmFyIG5vRGF0YSA9IHRoaXMuJHNsb3RzWyduby1kYXRhJ10gfHwgdGhpcy5ub0RhdGFUZXh0O1xuICAgICAgICByZXR1cm4gW3RoaXMuZ2VuRW1wdHlJdGVtcyhub0RhdGEpXTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIHZhciBub1Jlc3VsdHMgPSB0aGlzLiRzbG90c1snbm8tcmVzdWx0cyddIHx8IHRoaXMubm9SZXN1bHRzVGV4dDtcbiAgICAgICAgcmV0dXJuIFt0aGlzLmdlbkVtcHR5SXRlbXMobm9SZXN1bHRzKV07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmdlbkZpbHRlcmVkSXRlbXMoKTtcbiAgICB9LFxuICAgIGdlblByZXZJY29uOiBmdW5jdGlvbiBnZW5QcmV2SWNvbigpIHtcbiAgICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuY29tcHV0ZWRQYWdpbmF0aW9uLnBhZ2UgPT09IDEsXG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBsaWdodDogdGhpcy5saWdodFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHZhciBwYWdlID0gX3RoaXM1LmNvbXB1dGVkUGFnaW5hdGlvbi5wYWdlO1xuICAgICAgICAgICAgX3RoaXM1LnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiBwYWdlIC0gMSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiAnUHJldmlvdXMgcGFnZScgLy8gVE9ETzogTG9jYWxpemF0aW9uXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29tcG9uZW50c19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB0aGlzLnByZXZJY29uKV0pO1xuICAgIH0sXG4gICAgZ2VuTmV4dEljb246IGZ1bmN0aW9uIGdlbk5leHRJY29uKCkge1xuICAgICAgdmFyIF90aGlzNiA9IHRoaXM7XG5cbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5jb21wdXRlZFBhZ2luYXRpb247XG4gICAgICB2YXIgZGlzYWJsZWQgPSBwYWdpbmF0aW9uLnJvd3NQZXJQYWdlIDwgMCB8fCBwYWdpbmF0aW9uLnBhZ2UgKiBwYWdpbmF0aW9uLnJvd3NQZXJQYWdlID49IHRoaXMuaXRlbXNMZW5ndGggfHwgdGhpcy5wYWdlU3RvcCA8IDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBkaXNhYmxlZDogZGlzYWJsZWQsXG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBsaWdodDogdGhpcy5saWdodFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHZhciBwYWdlID0gX3RoaXM2LmNvbXB1dGVkUGFnaW5hdGlvbi5wYWdlO1xuICAgICAgICAgICAgX3RoaXM2LnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiBwYWdlICsgMSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiAnTmV4dCBwYWdlJyAvLyBUT0RPOiBMb2NhbGl6YXRpb25cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb21wb25lbnRzX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHRoaXMubmV4dEljb24pXSk7XG4gICAgfSxcbiAgICBnZW5TZWxlY3Q6IGZ1bmN0aW9uIGdlblNlbGVjdCgpIHtcbiAgICAgIHZhciBfdGhpczcgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmFjdGlvbnNTZWxlY3RDbGFzc2VzXG4gICAgICB9LCBbdGhpcy5yb3dzUGVyUGFnZVRleHQsIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb21wb25lbnRzX1ZTZWxlY3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBhdHRyczoge1xuICAgICAgICAgICdhcmlhLWxhYmVsJzogdGhpcy5yb3dzUGVyUGFnZVRleHRcbiAgICAgICAgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBpdGVtczogdGhpcy5yb3dzUGVyUGFnZUl0ZW1zLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5yb3dzUGVyUGFnZSxcbiAgICAgICAgICBoaWRlRGV0YWlsczogdHJ1ZSxcbiAgICAgICAgICBhdXRvOiB0cnVlLFxuICAgICAgICAgIG1pbldpZHRoOiAnNzVweCdcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gaW5wdXQodmFsKSB7XG4gICAgICAgICAgICBfdGhpczcudXBkYXRlUGFnaW5hdGlvbih7XG4gICAgICAgICAgICAgIHBhZ2U6IDEsXG4gICAgICAgICAgICAgIHJvd3NQZXJQYWdlOiB2YWxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSldKTtcbiAgICB9LFxuICAgIGdlblBhZ2luYXRpb246IGZ1bmN0aW9uIGdlblBhZ2luYXRpb24oKSB7XG4gICAgICB2YXIgcGFnaW5hdGlvbiA9ICfigJMnO1xuXG4gICAgICBpZiAodGhpcy5pdGVtc0xlbmd0aCkge1xuICAgICAgICB2YXIgc3RvcCA9IHRoaXMuaXRlbXNMZW5ndGggPCB0aGlzLnBhZ2VTdG9wIHx8IHRoaXMucGFnZVN0b3AgPCAwID8gdGhpcy5pdGVtc0xlbmd0aCA6IHRoaXMucGFnZVN0b3A7XG5cbiAgICAgICAgcGFnaW5hdGlvbiA9IHRoaXMuJHNjb3BlZFNsb3RzLnBhZ2VUZXh0ID8gdGhpcy4kc2NvcGVkU2xvdHMucGFnZVRleHQoe1xuICAgICAgICAgIHBhZ2VTdGFydDogdGhpcy5wYWdlU3RhcnQgKyAxLFxuICAgICAgICAgIHBhZ2VTdG9wOiBzdG9wLFxuICAgICAgICAgIGl0ZW1zTGVuZ3RoOiB0aGlzLml0ZW1zTGVuZ3RoXG4gICAgICAgIH0pIDogdGhpcy5wYWdlU3RhcnQgKyAxICsgJy0nICsgc3RvcCArICcgb2YgJyArIHRoaXMuaXRlbXNMZW5ndGg7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWN0aW9uc1BhZ2luYXRpb25DbGFzc2VzXG4gICAgICB9LCBbcGFnaW5hdGlvbl0pO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHZhciByYW5nZUNvbnRyb2xzID0gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmFjdGlvbnNSYW5nZUNvbnRyb2xzQ2xhc3Nlc1xuICAgICAgfSwgW3RoaXMuZ2VuUGFnaW5hdGlvbigpLCB0aGlzLmdlblByZXZJY29uKCksIHRoaXMuZ2VuTmV4dEljb24oKV0pO1xuXG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5hY3Rpb25zQ2xhc3Nlc1xuICAgICAgfSwgW3RoaXMucm93c1BlclBhZ2VJdGVtcy5sZW5ndGggPiAxID8gdGhpcy5nZW5TZWxlY3QoKSA6IG51bGwsIHJhbmdlQ29udHJvbHNdKV07XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTZWxlY3RfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTM3KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTZWxlY3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiA0OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnZmlsdGVyYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBub0RhdGFUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnTm8gZGF0YSBhdmFpbGFibGUnXG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA1MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzkpO1xuLyoqXG4gKiBNYXNrYWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIENyZWF0ZXMgYW4gaW5wdXQgbWFzayB0aGF0IGlzXG4gKiBnZW5lcmF0ZWQgZnJvbSBhIG1hc2tlZCBzdHJcbiAqXG4gKiBFeGFtcGxlOiBtYXNrPVwiIyMjIyAjIyMjICMjIyMgIyMjI1wiXG4gKi9cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnbWFza2FibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNlbGVjdGlvbjogMCxcbiAgICAgIGxhenlTZWxlY3Rpb246IDAsXG4gICAgICBwcmVEZWZpbmVkOiB7XG4gICAgICAgICdjcmVkaXQtY2FyZCc6ICcjIyMjIC0gIyMjIyAtICMjIyMgLSAjIyMjJyxcbiAgICAgICAgJ2RhdGUnOiAnIyMvIyMvIyMjIycsXG4gICAgICAgICdkYXRlLXdpdGgtdGltZSc6ICcjIy8jIy8jIyMjICMjOiMjJyxcbiAgICAgICAgJ3Bob25lJzogJygjIyMpICMjIyAtICMjIyMnLFxuICAgICAgICAnc29jaWFsJzogJyMjIy0jIy0jIyMjJyxcbiAgICAgICAgJ3RpbWUnOiAnIyM6IyMnLFxuICAgICAgICAndGltZS13aXRoLXNlY29uZHMnOiAnIyM6IyM6IyMnXG4gICAgICB9XG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGRvbnRGaWxsTWFza0JsYW5rczogQm9vbGVhbixcbiAgICBtYXNrOiB7XG4gICAgICB0eXBlOiBbT2JqZWN0LCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgcmV0dXJuTWFza2VkVmFsdWU6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIG1hc2tlZDogZnVuY3Rpb24gbWFza2VkKCkge1xuICAgICAgdmFyIHByZURlZmluZWQgPSB0aGlzLnByZURlZmluZWRbdGhpcy5tYXNrXTtcbiAgICAgIHZhciBtYXNrID0gcHJlRGVmaW5lZCB8fCB0aGlzLm1hc2sgfHwgJyc7XG5cbiAgICAgIHJldHVybiBtYXNrLnNwbGl0KCcnKTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICAvKipcbiAgICAgKiBNYWtlIHN1cmUgdGhlIGN1cnNvciBpcyBpbiB0aGUgY29ycmVjdFxuICAgICAqIGxvY2F0aW9uIHdoZW4gdGhlIG1hc2sgY2hhbmdlc1xuICAgICAqL1xuICAgIG1hc2s6IGZ1bmN0aW9uIG1hc2soKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuJHJlZnMuaW5wdXQpIHJldHVybjtcblxuICAgICAgdmFyIG9sZFZhbHVlID0gdGhpcy4kcmVmcy5pbnB1dC52YWx1ZTtcbiAgICAgIHZhciBuZXdWYWx1ZSA9IHRoaXMubWFza1RleHQoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJjXCIgLyogdW5tYXNrVGV4dCAqL10pKHRoaXMubGF6eVZhbHVlKSk7XG4gICAgICB2YXIgcG9zaXRpb24gPSAwO1xuICAgICAgdmFyIHNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgc2VsZWN0aW9uOyBpbmRleCsrKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fW1wiYVwiIC8qIGlzTWFza0RlbGltaXRlciAqL10pKG9sZFZhbHVlW2luZGV4XSkgfHwgcG9zaXRpb24rKztcbiAgICAgIH1cblxuICAgICAgc2VsZWN0aW9uID0gMDtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBfaW5kZXggPSAwOyBfaW5kZXggPCBuZXdWYWx1ZS5sZW5ndGg7IF9pbmRleCsrKSB7XG4gICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJhXCIgLyogaXNNYXNrRGVsaW1pdGVyICovXSkobmV3VmFsdWVbX2luZGV4XSkgfHwgcG9zaXRpb24tLTtcbiAgICAgICAgICBzZWxlY3Rpb24rKztcbiAgICAgICAgICBpZiAocG9zaXRpb24gPD0gMCkgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBfdGhpcy4kcmVmcy5pbnB1dC52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICBfdGhpcy5zZXRDYXJldFBvc2l0aW9uKHNlbGVjdGlvbik7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgYmVmb3JlTW91bnQ6IGZ1bmN0aW9uIGJlZm9yZU1vdW50KCkge1xuICAgIGlmICghdGhpcy5tYXNrIHx8IHRoaXMudmFsdWUgPT0gbnVsbCB8fCAhdGhpcy5yZXR1cm5NYXNrZWRWYWx1ZSkgcmV0dXJuO1xuXG4gICAgdmFyIHZhbHVlID0gdGhpcy5tYXNrVGV4dCh0aGlzLnZhbHVlKTtcblxuICAgIC8vIFNlZSBpZiBtYXNrZWQgdmFsdWUgZG9lcyBub3RcbiAgICAvLyBtYXRjaCB0aGUgdXNlciBnaXZlbiB2YWx1ZVxuICAgIGlmICh2YWx1ZSA9PT0gdGhpcy52YWx1ZSkgcmV0dXJuO1xuXG4gICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgc2V0Q2FyZXRQb3NpdGlvbjogZnVuY3Rpb24gc2V0Q2FyZXRQb3NpdGlvbihzZWxlY3Rpb24pIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHNlbGVjdGlvbjtcbiAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXMyLiRyZWZzLmlucHV0ICYmIF90aGlzMi4kcmVmcy5pbnB1dC5zZXRTZWxlY3Rpb25SYW5nZShfdGhpczIuc2VsZWN0aW9uLCBfdGhpczIuc2VsZWN0aW9uKTtcbiAgICAgIH0sIDApO1xuICAgIH0sXG4gICAgdXBkYXRlUmFuZ2U6IGZ1bmN0aW9uIHVwZGF0ZVJhbmdlKCkge1xuICAgICAgaWYgKCF0aGlzLiRyZWZzLmlucHV0KSByZXR1cm47XG5cbiAgICAgIHZhciBuZXdWYWx1ZSA9IHRoaXMubWFza1RleHQodGhpcy5sYXp5VmFsdWUpO1xuICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7XG5cbiAgICAgIHRoaXMuJHJlZnMuaW5wdXQudmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgbmV3VmFsdWUubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgaWYgKHRoaXMubGF6eVNlbGVjdGlvbiA8PSAwKSBicmVhaztcbiAgICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX21hc2tfX1tcImFcIiAvKiBpc01hc2tEZWxpbWl0ZXIgKi9dKShuZXdWYWx1ZVtpbmRleF0pIHx8IHRoaXMubGF6eVNlbGVjdGlvbi0tO1xuICAgICAgICAgIHNlbGVjdGlvbisrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0Q2FyZXRQb3NpdGlvbihzZWxlY3Rpb24pO1xuICAgICAgLy8gdGhpcy4kZW1pdCgpIG11c3Qgb2NjdXIgb25seSB3aGVuIGFsbCBpbnRlcm5hbCB2YWx1ZXMgYXJlIGNvcnJlY3RcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5yZXR1cm5NYXNrZWRWYWx1ZSA/IHRoaXMuJHJlZnMuaW5wdXQudmFsdWUgOiB0aGlzLmxhenlWYWx1ZSk7XG4gICAgfSxcbiAgICBtYXNrVGV4dDogZnVuY3Rpb24gbWFza1RleHQodGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMubWFzayA/IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fW1wiYlwiIC8qIG1hc2tUZXh0ICovXSkodGV4dCwgdGhpcy5tYXNrZWQsIHRoaXMuZG9udEZpbGxNYXNrQmxhbmtzKSA6IHRleHQ7XG4gICAgfSxcbiAgICB1bm1hc2tUZXh0OiBmdW5jdGlvbiB1bm1hc2tUZXh0KHRleHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1hc2sgJiYgIXRoaXMucmV0dXJuTWFza2VkVmFsdWUgPyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX21hc2tfX1tcImNcIiAvKiB1bm1hc2tUZXh0ICovXSkodGV4dCkgOiB0ZXh0O1xuICAgIH0sXG5cbiAgICAvLyBXaGVuIHRoZSBpbnB1dCBjaGFuZ2VzIGFuZCBpc1xuICAgIC8vIHJlLWNyZWF0ZWQsIGVuc3VyZSB0aGF0IHRoZVxuICAgIC8vIGNhcmV0IGxvY2F0aW9uIGlzIGNvcnJlY3RcbiAgICBzZXRTZWxlY3Rpb25SYW5nZTogZnVuY3Rpb24gc2V0U2VsZWN0aW9uUmFuZ2UoKSB7XG4gICAgICB0aGlzLiRuZXh0VGljayh0aGlzLnVwZGF0ZVJhbmdlKTtcbiAgICB9LFxuICAgIHJlc2V0U2VsZWN0aW9uczogZnVuY3Rpb24gcmVzZXRTZWxlY3Rpb25zKGlucHV0KSB7XG4gICAgICBpZiAoIWlucHV0LnNlbGVjdGlvbkVuZCkgcmV0dXJuO1xuICAgICAgdGhpcy5zZWxlY3Rpb24gPSBpbnB1dC5zZWxlY3Rpb25FbmQ7XG4gICAgICB0aGlzLmxhenlTZWxlY3Rpb24gPSAwO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5zZWxlY3Rpb247IGluZGV4KyspIHtcbiAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJhXCIgLyogaXNNYXNrRGVsaW1pdGVyICovXSkoaW5wdXQudmFsdWVbaW5kZXhdKSB8fCB0aGlzLmxhenlTZWxlY3Rpb24rKztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDUxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdzb2xvYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBmbGF0OiBCb29sZWFuLFxuICAgIHNvbG9JbnZlcnRlZDogQm9vbGVhbixcbiAgICBzb2xvOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBpc1NvbG86IGZ1bmN0aW9uIGlzU29sbygpIHtcbiAgICAgIHJldHVybiB0aGlzLnNvbG8gfHwgdGhpcy5zb2xvSW52ZXJ0ZWQ7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Tb2xvQ2xhc3NlczogZnVuY3Rpb24gZ2VuU29sb0NsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNvbG8nOiB0aGlzLmlzU29sbyxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zb2xvLWludmVydGVkJzogdGhpcy5zb2xvSW52ZXJ0ZWQsXG4gICAgICAgICdlbGV2YXRpb24tMCc6IHRoaXMuZmxhdFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDUyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpdmlkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQ0KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGl2aWRlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpdmlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDUzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBEZWxheWFibGVcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBDaGFuZ2VzIHRoZSBvcGVuIG9yIGNsb3NlXG4gKiBkZWxheSB0aW1lIGZvciBlbGVtZW50c1xuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2RlbGF5YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgb3BlblRpbWVvdXQ6IG51bGwsXG4gICAgICBjbG9zZVRpbWVvdXQ6IG51bGxcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgb3BlbkRlbGF5OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgY2xvc2VEZWxheToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDIwMFxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLyoqXG4gICAgICogQ2xlYXIgYW55IHBlbmRpbmcgZGVsYXlcbiAgICAgKiB0aW1lcnMgZnJvbSBleGVjdXRpbmdcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgY2xlYXJEZWxheTogZnVuY3Rpb24gY2xlYXJEZWxheSgpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLm9wZW5UaW1lb3V0KTtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlVGltZW91dCk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFJ1bnMgY2FsbGJhY2sgYWZ0ZXJcbiAgICAgKiBhIHNwZWNpZmllZCBkZWxheVxuICAgICAqXG4gICAgICogQHBhcmFtICB7U3RyaW5nfSAgIHR5cGVcbiAgICAgKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2JcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgcnVuRGVsYXk6IGZ1bmN0aW9uIHJ1bkRlbGF5KHR5cGUsIGNiKSB7XG4gICAgICB0aGlzLmNsZWFyRGVsYXkoKTtcblxuICAgICAgdmFyIGRlbGF5ID0gcGFyc2VJbnQodGhpc1t0eXBlICsgJ0RlbGF5J10sIDEwKTtcblxuICAgICAgdGhpc1t0eXBlICsgJ1RpbWVvdXQnXSA9IHNldFRpbWVvdXQoY2IsIGRlbGF5KTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDU0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0YWNrYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cblxuXG5cblxuXG4vKiBlc2xpbnQtZGlzYWJsZSBvYmplY3QtcHJvcGVydHktbmV3bGluZSAqL1xudmFyIGRpbWVuc2lvbnMgPSB7XG4gIGFjdGl2YXRvcjoge1xuICAgIHRvcDogMCwgbGVmdDogMCxcbiAgICBib3R0b206IDAsIHJpZ2h0OiAwLFxuICAgIHdpZHRoOiAwLCBoZWlnaHQ6IDAsXG4gICAgb2Zmc2V0VG9wOiAwLCBzY3JvbGxIZWlnaHQ6IDBcbiAgfSxcbiAgY29udGVudDoge1xuICAgIHRvcDogMCwgbGVmdDogMCxcbiAgICBib3R0b206IDAsIHJpZ2h0OiAwLFxuICAgIHdpZHRoOiAwLCBoZWlnaHQ6IDAsXG4gICAgb2Zmc2V0VG9wOiAwLCBzY3JvbGxIZWlnaHQ6IDBcbiAgfSxcbiAgaGFzV2luZG93OiBmYWxzZVxuICAvKiBlc2xpbnQtZW5hYmxlIG9iamVjdC1wcm9wZXJ0eS1uZXdsaW5lICovXG5cbiAgLyoqXG4gICAqIE1lbnVhYmxlXG4gICAqXG4gICAqIEBtaXhpblxuICAgKlxuICAgKiBVc2VkIGZvciBmaXhlZCBvciBhYnNvbHV0ZWx5IHBvc2l0aW9uaW5nXG4gICAqIGVsZW1lbnRzIHdpdGhpbiB0aGUgRE9NXG4gICAqIENhbiBjYWxjdWxhdGUgWCBhbmQgWSBheGlzIG92ZXJmbG93c1xuICAgKiBBcyB3ZWxsIGFzIGJlIG1hbnVhbGx5IHBvc2l0aW9uZWRcbiAgICovXG59Oy8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnbWVudWFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3RhY2thYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFic29sdXRlWDogMCxcbiAgICAgIGFic29sdXRlWTogMCxcbiAgICAgIGRpbWVuc2lvbnM6IE9iamVjdC5hc3NpZ24oe30sIGRpbWVuc2lvbnMpLFxuICAgICAgaXNDb250ZW50QWN0aXZlOiBmYWxzZSxcbiAgICAgIHBhZ2VZT2Zmc2V0OiAwLFxuICAgICAgc3RhY2tDbGFzczogJ21lbnVhYmxlX19jb250ZW50X19hY3RpdmUnLFxuICAgICAgc3RhY2tNaW5aSW5kZXg6IDZcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZhdG9yOiB7XG4gICAgICBkZWZhdWx0OiBudWxsLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiBbJ3N0cmluZycsICdvYmplY3QnXS5pbmNsdWRlcyh0eXBlb2YgdmFsID09PSAndW5kZWZpbmVkJyA/ICd1bmRlZmluZWQnIDogX3R5cGVvZih2YWwpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGFsbG93T3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgbWF4V2lkdGg6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAnYXV0bydcbiAgICB9LFxuICAgIG1pbldpZHRoOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIG51ZGdlQm90dG9tOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZUxlZnQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZVJpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgbnVkZ2VUb3A6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZVdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgb2Zmc2V0T3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgcG9zaXRpb25YOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBwb3NpdGlvblk6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHpJbmRleDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZExlZnQ6IGZ1bmN0aW9uIGNvbXB1dGVkTGVmdCgpIHtcbiAgICAgIHZhciBhID0gdGhpcy5kaW1lbnNpb25zLmFjdGl2YXRvcjtcbiAgICAgIHZhciBjID0gdGhpcy5kaW1lbnNpb25zLmNvbnRlbnQ7XG4gICAgICB2YXIgbWluV2lkdGggPSBhLndpZHRoIDwgYy53aWR0aCA/IGMud2lkdGggOiBhLndpZHRoO1xuICAgICAgdmFyIGxlZnQgPSAwO1xuXG4gICAgICBsZWZ0ICs9IHRoaXMubGVmdCA/IGEubGVmdCAtIChtaW5XaWR0aCAtIGEud2lkdGgpIDogYS5sZWZ0O1xuXG4gICAgICBpZiAodGhpcy5vZmZzZXRYKSBsZWZ0ICs9IHRoaXMubGVmdCA/IC1hLndpZHRoIDogYS53aWR0aDtcbiAgICAgIGlmICh0aGlzLm51ZGdlTGVmdCkgbGVmdCAtPSBwYXJzZUludCh0aGlzLm51ZGdlTGVmdCk7XG4gICAgICBpZiAodGhpcy5udWRnZVJpZ2h0KSBsZWZ0ICs9IHBhcnNlSW50KHRoaXMubnVkZ2VSaWdodCk7XG5cbiAgICAgIHJldHVybiBsZWZ0O1xuICAgIH0sXG4gICAgY29tcHV0ZWRUb3A6IGZ1bmN0aW9uIGNvbXB1dGVkVG9wKCkge1xuICAgICAgdmFyIGEgPSB0aGlzLmRpbWVuc2lvbnMuYWN0aXZhdG9yO1xuICAgICAgdmFyIGMgPSB0aGlzLmRpbWVuc2lvbnMuY29udGVudDtcbiAgICAgIHZhciB0b3AgPSB0aGlzLnRvcCA/IGEuYm90dG9tIC0gYy5oZWlnaHQgOiBhLnRvcDtcblxuICAgICAgaWYgKCF0aGlzLmlzQXR0YWNoZWQpIHRvcCArPSB0aGlzLnBhZ2VZT2Zmc2V0O1xuICAgICAgaWYgKHRoaXMub2Zmc2V0WSkgdG9wICs9IHRoaXMudG9wID8gLWEuaGVpZ2h0IDogYS5oZWlnaHQ7XG4gICAgICBpZiAodGhpcy5udWRnZVRvcCkgdG9wIC09IHRoaXMubnVkZ2VUb3A7XG4gICAgICBpZiAodGhpcy5udWRnZUJvdHRvbSkgdG9wICs9IHRoaXMubnVkZ2VCb3R0b207XG5cbiAgICAgIHJldHVybiB0b3A7XG4gICAgfSxcbiAgICBoYXNBY3RpdmF0b3I6IGZ1bmN0aW9uIGhhc0FjdGl2YXRvcigpIHtcbiAgICAgIHJldHVybiAhIXRoaXMuJHNsb3RzLmFjdGl2YXRvciB8fCB0aGlzLmFjdGl2YXRvcjtcbiAgICB9LFxuICAgIGlzQXR0YWNoZWQ6IGZ1bmN0aW9uIGlzQXR0YWNoZWQoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdHRhY2ggIT09IGZhbHNlO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGRpc2FibGVkOiBmdW5jdGlvbiBkaXNhYmxlZCh2YWwpIHtcbiAgICAgIHZhbCAmJiB0aGlzLmNhbGxEZWFjdGl2YXRlKCk7XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICB2YWwgPyB0aGlzLmNhbGxBY3RpdmF0ZSgpIDogdGhpcy5jYWxsRGVhY3RpdmF0ZSgpO1xuICAgIH1cbiAgfSxcblxuICBiZWZvcmVNb3VudDogZnVuY3Rpb24gYmVmb3JlTW91bnQoKSB7XG4gICAgdGhpcy5jaGVja0ZvcldpbmRvdygpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGFic29sdXRlUG9zaXRpb246IGZ1bmN0aW9uIGFic29sdXRlUG9zaXRpb24oKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvZmZzZXRUb3A6IDAsXG4gICAgICAgIHNjcm9sbEhlaWdodDogMCxcbiAgICAgICAgdG9wOiB0aGlzLnBvc2l0aW9uWSB8fCB0aGlzLmFic29sdXRlWSxcbiAgICAgICAgYm90dG9tOiB0aGlzLnBvc2l0aW9uWSB8fCB0aGlzLmFic29sdXRlWSxcbiAgICAgICAgbGVmdDogdGhpcy5wb3NpdGlvblggfHwgdGhpcy5hYnNvbHV0ZVgsXG4gICAgICAgIHJpZ2h0OiB0aGlzLnBvc2l0aW9uWCB8fCB0aGlzLmFic29sdXRlWCxcbiAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICB3aWR0aDogMFxuICAgICAgfTtcbiAgICB9LFxuICAgIGFjdGl2YXRlOiBmdW5jdGlvbiBhY3RpdmF0ZSgpIHt9LFxuICAgIGNhbGNMZWZ0OiBmdW5jdGlvbiBjYWxjTGVmdCgpIHtcbiAgICAgIHJldHVybiAodGhpcy5pc0F0dGFjaGVkID8gdGhpcy5jb21wdXRlZExlZnQgOiB0aGlzLmNhbGNYT3ZlcmZsb3codGhpcy5jb21wdXRlZExlZnQpKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjVG9wOiBmdW5jdGlvbiBjYWxjVG9wKCkge1xuICAgICAgcmV0dXJuICh0aGlzLmlzQXR0YWNoZWQgPyB0aGlzLmNvbXB1dGVkVG9wIDogdGhpcy5jYWxjWU92ZXJmbG93KHRoaXMuY29tcHV0ZWRUb3ApKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjWE92ZXJmbG93OiBmdW5jdGlvbiBjYWxjWE92ZXJmbG93KGxlZnQpIHtcbiAgICAgIHZhciBwYXJzZWRNYXhXaWR0aCA9IGlzTmFOKHBhcnNlSW50KHRoaXMubWF4V2lkdGgpKSA/IDAgOiBwYXJzZUludCh0aGlzLm1heFdpZHRoKTtcbiAgICAgIHZhciBpbm5lcldpZHRoID0gdGhpcy5nZXRJbm5lcldpZHRoKCk7XG4gICAgICB2YXIgbWF4V2lkdGggPSBNYXRoLm1heCh0aGlzLmRpbWVuc2lvbnMuY29udGVudC53aWR0aCwgcGFyc2VkTWF4V2lkdGgpO1xuICAgICAgdmFyIHRvdGFsV2lkdGggPSBsZWZ0ICsgbWF4V2lkdGg7XG4gICAgICB2YXIgYXZhaWxhYmxlV2lkdGggPSB0b3RhbFdpZHRoIC0gaW5uZXJXaWR0aDtcblxuICAgICAgaWYgKCghdGhpcy5sZWZ0IHx8IHRoaXMucmlnaHQpICYmIGF2YWlsYWJsZVdpZHRoID4gMCkge1xuICAgICAgICBsZWZ0ID0gaW5uZXJXaWR0aCAtIG1heFdpZHRoIC0gKGlubmVyV2lkdGggPiA2MDAgPyAzMCA6IDEyKSAvLyBBY2NvdW50IGZvciBzY3JvbGxiYXJcbiAgICAgICAgO1xuICAgICAgfVxuXG4gICAgICBpZiAobGVmdCA8IDApIGxlZnQgPSAxMjtcblxuICAgICAgcmV0dXJuIGxlZnQ7XG4gICAgfSxcbiAgICBjYWxjWU92ZXJmbG93OiBmdW5jdGlvbiBjYWxjWU92ZXJmbG93KHRvcCkge1xuICAgICAgdmFyIGRvY3VtZW50SGVpZ2h0ID0gdGhpcy5nZXRJbm5lckhlaWdodCgpO1xuICAgICAgdmFyIHRvVG9wID0gdGhpcy5wYWdlWU9mZnNldCArIGRvY3VtZW50SGVpZ2h0O1xuICAgICAgdmFyIGFjdGl2YXRvciA9IHRoaXMuZGltZW5zaW9ucy5hY3RpdmF0b3I7XG4gICAgICB2YXIgY29udGVudEhlaWdodCA9IHRoaXMuZGltZW5zaW9ucy5jb250ZW50LmhlaWdodDtcbiAgICAgIHZhciB0b3RhbEhlaWdodCA9IHRvcCArIGNvbnRlbnRIZWlnaHQ7XG4gICAgICB2YXIgaXNPdmVyZmxvd2luZyA9IHRvVG9wIDwgdG90YWxIZWlnaHQ7XG5cbiAgICAgIC8vIElmIG92ZXJmbG93aW5nIGJvdHRvbSBhbmQgb2Zmc2V0XG4gICAgICAvLyBUT0RPOiBzZXQgJ2JvdHRvbScgcG9zaXRpb24gaW5zdGVhZCBvZiAndG9wJ1xuICAgICAgaWYgKGlzT3ZlcmZsb3dpbmcgJiYgdGhpcy5vZmZzZXRPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0aGlzLnBhZ2VZT2Zmc2V0ICsgKGFjdGl2YXRvci50b3AgLSBjb250ZW50SGVpZ2h0KTtcbiAgICAgICAgLy8gSWYgb3ZlcmZsb3dpbmcgYm90dG9tXG4gICAgICB9IGVsc2UgaWYgKGlzT3ZlcmZsb3dpbmcgJiYgIXRoaXMuYWxsb3dPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0b1RvcCAtIGNvbnRlbnRIZWlnaHQgLSAxMjtcbiAgICAgICAgLy8gSWYgb3ZlcmZsb3dpbmcgdG9wXG4gICAgICB9IGVsc2UgaWYgKHRvcCA8IHRoaXMucGFnZVlPZmZzZXQgJiYgIXRoaXMuYWxsb3dPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0aGlzLnBhZ2VZT2Zmc2V0ICsgMTI7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0b3AgPCAxMiA/IDEyIDogdG9wO1xuICAgIH0sXG4gICAgY2FsbEFjdGl2YXRlOiBmdW5jdGlvbiBjYWxsQWN0aXZhdGUoKSB7XG4gICAgICBpZiAoIXRoaXMuaGFzV2luZG93KSByZXR1cm47XG5cbiAgICAgIHRoaXMuYWN0aXZhdGUoKTtcbiAgICB9LFxuICAgIGNhbGxEZWFjdGl2YXRlOiBmdW5jdGlvbiBjYWxsRGVhY3RpdmF0ZSgpIHtcbiAgICAgIHRoaXMuaXNDb250ZW50QWN0aXZlID0gZmFsc2U7XG5cbiAgICAgIHRoaXMuZGVhY3RpdmF0ZSgpO1xuICAgIH0sXG4gICAgY2hlY2tGb3JXaW5kb3c6IGZ1bmN0aW9uIGNoZWNrRm9yV2luZG93KCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykge1xuICAgICAgICB0aGlzLmhhc1dpbmRvdyA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnO1xuICAgICAgfVxuICAgIH0sXG4gICAgY2hlY2tGb3JQYWdlWU9mZnNldDogZnVuY3Rpb24gY2hlY2tGb3JQYWdlWU9mZnNldCgpIHtcbiAgICAgIGlmICh0aGlzLmhhc1dpbmRvdykge1xuICAgICAgICB0aGlzLnBhZ2VZT2Zmc2V0ID0gdGhpcy5nZXRPZmZzZXRUb3AoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGRlYWN0aXZhdGU6IGZ1bmN0aW9uIGRlYWN0aXZhdGUoKSB7fSxcbiAgICBnZXRBY3RpdmF0b3I6IGZ1bmN0aW9uIGdldEFjdGl2YXRvcigpIHtcbiAgICAgIGlmICh0aGlzLmFjdGl2YXRvcikge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMuYWN0aXZhdG9yID09PSAnc3RyaW5nJyA/IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5hY3RpdmF0b3IpIDogdGhpcy5hY3RpdmF0b3I7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRyZWZzLmFjdGl2YXRvci5jaGlsZHJlbi5sZW5ndGggPiAwID8gdGhpcy4kcmVmcy5hY3RpdmF0b3IuY2hpbGRyZW5bMF0gOiB0aGlzLiRyZWZzLmFjdGl2YXRvcjtcbiAgICB9LFxuICAgIGdldElubmVySGVpZ2h0OiBmdW5jdGlvbiBnZXRJbm5lckhlaWdodCgpIHtcbiAgICAgIGlmICghdGhpcy5oYXNXaW5kb3cpIHJldHVybiAwO1xuXG4gICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgfSxcbiAgICBnZXRJbm5lcldpZHRoOiBmdW5jdGlvbiBnZXRJbm5lcldpZHRoKCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9LFxuICAgIGdldE9mZnNldFRvcDogZnVuY3Rpb24gZ2V0T2Zmc2V0VG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtcbiAgICB9LFxuICAgIGdldFJvdW5kZWRCb3VuZGVkQ2xpZW50UmVjdDogZnVuY3Rpb24gZ2V0Um91bmRlZEJvdW5kZWRDbGllbnRSZWN0KGVsKSB7XG4gICAgICB2YXIgcmVjdCA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiBNYXRoLnJvdW5kKHJlY3QudG9wKSxcbiAgICAgICAgbGVmdDogTWF0aC5yb3VuZChyZWN0LmxlZnQpLFxuICAgICAgICBib3R0b206IE1hdGgucm91bmQocmVjdC5ib3R0b20pLFxuICAgICAgICByaWdodDogTWF0aC5yb3VuZChyZWN0LnJpZ2h0KSxcbiAgICAgICAgd2lkdGg6IE1hdGgucm91bmQocmVjdC53aWR0aCksXG4gICAgICAgIGhlaWdodDogTWF0aC5yb3VuZChyZWN0LmhlaWdodClcbiAgICAgIH07XG4gICAgfSxcbiAgICBtZWFzdXJlOiBmdW5jdGlvbiBtZWFzdXJlKGVsLCBzZWxlY3Rvcikge1xuICAgICAgZWwgPSBzZWxlY3RvciA/IGVsLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpIDogZWw7XG5cbiAgICAgIGlmICghZWwgfHwgIXRoaXMuaGFzV2luZG93KSByZXR1cm4gbnVsbDtcblxuICAgICAgdmFyIHJlY3QgPSB0aGlzLmdldFJvdW5kZWRCb3VuZGVkQ2xpZW50UmVjdChlbCk7XG5cbiAgICAgIC8vIEFjY291bnQgZm9yIGFjdGl2YXRvciBtYXJnaW5cbiAgICAgIGlmICh0aGlzLmlzQXR0YWNoZWQpIHtcbiAgICAgICAgdmFyIHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWwpO1xuXG4gICAgICAgIHJlY3QubGVmdCA9IHBhcnNlSW50KHN0eWxlLm1hcmdpbkxlZnQpO1xuICAgICAgICByZWN0LnRvcCA9IHBhcnNlSW50KHN0eWxlLm1hcmdpblRvcCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWN0O1xuICAgIH0sXG4gICAgc25lYWtQZWVrOiBmdW5jdGlvbiBzbmVha1BlZWsoY2IpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBlbCA9IF90aGlzLiRyZWZzLmNvbnRlbnQ7XG5cbiAgICAgICAgaWYgKCFlbCB8fCBfdGhpcy5pc1Nob3duKGVsKSkgcmV0dXJuIGNiKCk7XG5cbiAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9ICdpbmxpbmUtYmxvY2snO1xuICAgICAgICBjYigpO1xuICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBzdGFydFRyYW5zaXRpb246IGZ1bmN0aW9uIHN0YXJ0VHJhbnNpdGlvbigpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzQ29udGVudEFjdGl2ZSA9IHRydWU7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGlzU2hvd246IGZ1bmN0aW9uIGlzU2hvd24oZWwpIHtcbiAgICAgIHJldHVybiBlbC5zdHlsZS5kaXNwbGF5ICE9PSAnbm9uZSc7XG4gICAgfSxcbiAgICB1cGRhdGVEaW1lbnNpb25zOiBmdW5jdGlvbiB1cGRhdGVEaW1lbnNpb25zKCkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuY2hlY2tGb3JXaW5kb3coKTtcbiAgICAgIHRoaXMuY2hlY2tGb3JQYWdlWU9mZnNldCgpO1xuXG4gICAgICB2YXIgZGltZW5zaW9ucyA9IHt9O1xuXG4gICAgICAvLyBBY3RpdmF0b3Igc2hvdWxkIGFscmVhZHkgYmUgc2hvd25cbiAgICAgIGRpbWVuc2lvbnMuYWN0aXZhdG9yID0gIXRoaXMuaGFzQWN0aXZhdG9yIHx8IHRoaXMuYWJzb2x1dGUgPyB0aGlzLmFic29sdXRlUG9zaXRpb24oKSA6IHRoaXMubWVhc3VyZSh0aGlzLmdldEFjdGl2YXRvcigpKTtcblxuICAgICAgLy8gRGlzcGxheSBhbmQgaGlkZSB0byBnZXQgZGltZW5zaW9uc1xuICAgICAgdGhpcy5zbmVha1BlZWsoZnVuY3Rpb24gKCkge1xuICAgICAgICBkaW1lbnNpb25zLmNvbnRlbnQgPSBfdGhpczMubWVhc3VyZShfdGhpczMuJHJlZnMuY29udGVudCk7XG5cbiAgICAgICAgX3RoaXMzLmRpbWVuc2lvbnMgPSBkaW1lbnNpb25zO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA1NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTdWJoZWFkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTdWJoZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkxpc3RUaWxlQWN0aW9uVGV4dCAqL1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWTGlzdFRpbGVDb250ZW50OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gVkxpc3RUaWxlVGl0bGU7IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZMaXN0VGlsZVN1YlRpdGxlICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WTGlzdF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkxpc3RHcm91cF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkxpc3RUaWxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WTGlzdFRpbGVBY3Rpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTU4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZMaXN0VGlsZUF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIl07IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkxpc3RHcm91cCAqL1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkxpc3RUaWxlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMaXN0VGlsZUFjdGlvbl9fW1wiYVwiXTsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWTGlzdFRpbGVBdmF0YXIgKi9cblxuXG5cblxuXG5cblxuXG5cbnZhciBWTGlzdFRpbGVBY3Rpb25UZXh0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdsaXN0X190aWxlX19hY3Rpb24tdGV4dCcsICdzcGFuJyk7XG52YXIgVkxpc3RUaWxlQ29udGVudCA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnbGlzdF9fdGlsZV9fY29udGVudCcsICdkaXYnKTtcbnZhciBWTGlzdFRpbGVUaXRsZSA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnbGlzdF9fdGlsZV9fdGl0bGUnLCAnZGl2Jyk7XG52YXIgVkxpc3RUaWxlU3ViVGl0bGUgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImVcIiAvKiBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsICovXSkoJ2xpc3RfX3RpbGVfX3N1Yi10aXRsZScsICdkaXYnKTtcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZMaXN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WTGlzdF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZMaXN0R3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZMaXN0R3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WTGlzdFRpbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZMaXN0VGlsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMaXN0VGlsZUFjdGlvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkxpc3RUaWxlQWN0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZMaXN0VGlsZUFjdGlvblRleHQubmFtZSwgVkxpc3RUaWxlQWN0aW9uVGV4dCk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WTGlzdFRpbGVBdmF0YXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZMaXN0VGlsZUF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChWTGlzdFRpbGVDb250ZW50Lm5hbWUsIFZMaXN0VGlsZUNvbnRlbnQpO1xuICBWdWUuY29tcG9uZW50KFZMaXN0VGlsZVN1YlRpdGxlLm5hbWUsIFZMaXN0VGlsZVN1YlRpdGxlKTtcbiAgVnVlLmNvbXBvbmVudChWTGlzdFRpbGVUaXRsZS5uYW1lLCBWTGlzdFRpbGVUaXRsZSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJmXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNTcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl90aXRsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3Nik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl90aXRsZV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RpdGxlX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19waWNrZXJfYnV0dG9uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU4KTtcblxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLXRpdGxlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19waWNrZXJfYnV0dG9uX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzUmV2ZXJzaW5nOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkYXRlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnJ1xuICAgIH0sXG4gICAgc2VsZWN0aW5nWWVhcjogQm9vbGVhbixcbiAgICB5ZWFyOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogJydcbiAgICB9LFxuICAgIHllYXJJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzUmV2ZXJzaW5nID8gJ3BpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24nIDogJ3BpY2tlci10cmFuc2l0aW9uJztcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUodmFsLCBwcmV2KSB7XG4gICAgICB0aGlzLmlzUmV2ZXJzaW5nID0gdmFsIDwgcHJldjtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblllYXJJY29uOiBmdW5jdGlvbiBnZW5ZZWFySWNvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy55ZWFySWNvbik7XG4gICAgfSxcbiAgICBnZXRZZWFyQnRuOiBmdW5jdGlvbiBnZXRZZWFyQnRuKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2VuUGlja2VyQnV0dG9uKCdzZWxlY3RpbmdZZWFyJywgdHJ1ZSwgW3RoaXMueWVhciwgdGhpcy55ZWFySWNvbiA/IHRoaXMuZ2VuWWVhckljb24oKSA6IG51bGxdLCAnZGF0ZS1waWNrZXItdGl0bGVfX3llYXInKTtcbiAgICB9LFxuICAgIGdlblRpdGxlVGV4dDogZnVuY3Rpb24gZ2VuVGl0bGVUZXh0KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy5jb21wdXRlZFRyYW5zaXRpb25cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgZG9tUHJvcHM6IHsgaW5uZXJIVE1MOiB0aGlzLmRhdGUgfHwgJyZuYnNwOycgfSxcbiAgICAgICAga2V5OiB0aGlzLnZhbHVlXG4gICAgICB9KV0pO1xuICAgIH0sXG4gICAgZ2VuVGl0bGVEYXRlOiBmdW5jdGlvbiBnZW5UaXRsZURhdGUodGl0bGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlblBpY2tlckJ1dHRvbignc2VsZWN0aW5nWWVhcicsIGZhbHNlLCB0aGlzLmdlblRpdGxlVGV4dCh0aXRsZSksICdkYXRlLXBpY2tlci10aXRsZV9fZGF0ZScpO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXItdGl0bGUnXG4gICAgfSwgW3RoaXMuZ2V0WWVhckJ0bigpLCB0aGlzLmdlblRpdGxlRGF0ZSgpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDU4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5QaWNrZXJCdXR0b246IGZ1bmN0aW9uIGdlblBpY2tlckJ1dHRvbihwcm9wLCB2YWx1ZSwgY29udGVudCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIHN0YXRpY0NsYXNzID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgJiYgYXJndW1lbnRzWzNdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbM10gOiAnJztcblxuICAgICAgdmFyIGFjdGl2ZSA9IHRoaXNbcHJvcF0gPT09IHZhbHVlO1xuICAgICAgdmFyIGNsaWNrID0gZnVuY3Rpb24gY2xpY2soZXZlbnQpIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIF90aGlzLiRlbWl0KCd1cGRhdGU6JyArIHByb3AsIHZhbHVlKTtcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAoJ3BpY2tlcl9fdGl0bGVfX2J0biAnICsgc3RhdGljQ2xhc3MpLnRyaW0oKSxcbiAgICAgICAgJ2NsYXNzJzogeyBhY3RpdmU6IGFjdGl2ZSB9LFxuICAgICAgICBvbjogYWN0aXZlID8gdW5kZWZpbmVkIDogeyBjbGljazogY2xpY2sgfVxuICAgICAgfSwgQXJyYXkuaXNBcnJheShjb250ZW50KSA/IGNvbnRlbnQgOiBbY29udGVudF0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNTkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl9oZWFkZXJfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfaGVhZGVyX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfaGVhZGVyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xudmFyIF9zbGljZWRUb0FycmF5ID0gZnVuY3Rpb24gKCkgeyBmdW5jdGlvbiBzbGljZUl0ZXJhdG9yKGFyciwgaSkgeyB2YXIgX2FyciA9IFtdOyB2YXIgX24gPSB0cnVlOyB2YXIgX2QgPSBmYWxzZTsgdmFyIF9lID0gdW5kZWZpbmVkOyB0cnkgeyBmb3IgKHZhciBfaSA9IGFycltTeW1ib2wuaXRlcmF0b3JdKCksIF9zOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7IF9hcnIucHVzaChfcy52YWx1ZSk7IGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsgfSB9IGNhdGNoIChlcnIpIHsgX2QgPSB0cnVlOyBfZSA9IGVycjsgfSBmaW5hbGx5IHsgdHJ5IHsgaWYgKCFfbiAmJiBfaVtcInJldHVyblwiXSkgX2lbXCJyZXR1cm5cIl0oKTsgfSBmaW5hbGx5IHsgaWYgKF9kKSB0aHJvdyBfZTsgfSB9IHJldHVybiBfYXJyOyB9IHJldHVybiBmdW5jdGlvbiAoYXJyLCBpKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgcmV0dXJuIGFycjsgfSBlbHNlIGlmIChTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGFycikpIHsgcmV0dXJuIHNsaWNlSXRlcmF0b3IoYXJyLCBpKTsgfSBlbHNlIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2VcIik7IH0gfTsgfSgpO1xuXG5cblxuLy8gQ29tcG9uZW50c1xuXG5cblxuLy8gTWl4aW5zXG5cblxuLy8gVXRpbHNcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZGF0ZS1waWNrZXItaGVhZGVyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNSZXZlcnNpbmc6IGZhbHNlLFxuICAgICAgZGVmYXVsdENvbG9yOiAnYWNjZW50J1xuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBsb2NhbGU6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdlbi11cydcbiAgICB9LFxuICAgIG1pbjogU3RyaW5nLFxuICAgIG1heDogU3RyaW5nLFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgdmFsdWU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGZvcm1hdHRlcjogZnVuY3Rpb24gZm9ybWF0dGVyKCkge1xuICAgICAgaWYgKHRoaXMuZm9ybWF0KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdDtcbiAgICAgIH0gZWxzZSBpZiAoU3RyaW5nKHRoaXMudmFsdWUpLnNwbGl0KCctJylbMV0pIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyBtb250aDogJ2xvbmcnLCB5ZWFyOiAnbnVtZXJpYycsIHRpbWVab25lOiAnVVRDJyB9LCB7IGxlbmd0aDogNyB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgeWVhcjogJ251bWVyaWMnLCB0aW1lWm9uZTogJ1VUQycgfSwgeyBsZW5ndGg6IDQgfSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKG5ld1ZhbCwgb2xkVmFsKSB7XG4gICAgICB0aGlzLmlzUmV2ZXJzaW5nID0gbmV3VmFsIDwgb2xkVmFsO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQnRuOiBmdW5jdGlvbiBnZW5CdG4oY2hhbmdlKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkIHx8IGNoYW5nZSA8IDAgJiYgdGhpcy5taW4gJiYgdGhpcy5jYWxjdWxhdGVDaGFuZ2UoY2hhbmdlKSA8IHRoaXMubWluIHx8IGNoYW5nZSA+IDAgJiYgdGhpcy5tYXggJiYgdGhpcy5jYWxjdWxhdGVDaGFuZ2UoY2hhbmdlKSA+IHRoaXMubWF4O1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBkaXNhYmxlZDogZGlzYWJsZWQsXG4gICAgICAgICAgaWNvbjogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBuYXRpdmVPbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljayhlKSB7XG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2lucHV0JywgX3RoaXMuY2FsY3VsYXRlQ2hhbmdlKGNoYW5nZSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBjaGFuZ2UgPCAwID8gdGhpcy5wcmV2SWNvbiA6IHRoaXMubmV4dEljb24pXSk7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVDaGFuZ2U6IGZ1bmN0aW9uIGNhbGN1bGF0ZUNoYW5nZShzaWduKSB7XG4gICAgICB2YXIgX1N0cmluZyRzcGxpdCRtYXAgPSBTdHJpbmcodGhpcy52YWx1ZSkuc3BsaXQoJy0nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICAgICAgcmV0dXJuIDEgKiB2O1xuICAgICAgfSksXG4gICAgICAgICAgX1N0cmluZyRzcGxpdCRtYXAyID0gX3NsaWNlZFRvQXJyYXkoX1N0cmluZyRzcGxpdCRtYXAsIDIpLFxuICAgICAgICAgIHllYXIgPSBfU3RyaW5nJHNwbGl0JG1hcDJbMF0sXG4gICAgICAgICAgbW9udGggPSBfU3RyaW5nJHNwbGl0JG1hcDJbMV07XG5cbiAgICAgIGlmIChtb250aCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiAnJyArICh5ZWFyICsgc2lnbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdXRpbF9fW1wiYlwiIC8qIG1vbnRoQ2hhbmdlICovXSkoU3RyaW5nKHRoaXMudmFsdWUpLCBzaWduKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGdlbkhlYWRlcjogZnVuY3Rpb24gZ2VuSGVhZGVyKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBoZWFkZXIgPSB0aGlzLiRjcmVhdGVFbGVtZW50KCdzdHJvbmcnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuZGlzYWJsZWQgPyB1bmRlZmluZWQgOiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICAgIGtleTogU3RyaW5nKHRoaXMudmFsdWUpLFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczIuJGVtaXQoJ3RvZ2dsZScpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHQgfHwgdGhpcy5mb3JtYXR0ZXIoU3RyaW5nKHRoaXMudmFsdWUpKV0pO1xuXG4gICAgICB2YXIgdHJhbnNpdGlvbiA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy5pc1JldmVyc2luZyA/ICd0YWItcmV2ZXJzZS10cmFuc2l0aW9uJyA6ICd0YWItdHJhbnNpdGlvbidcbiAgICAgICAgfVxuICAgICAgfSwgW2hlYWRlcl0pO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2RhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUnLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICdkYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgICAgfVxuICAgICAgfSwgW3RyYW5zaXRpb25dKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2RhdGUtcGlja2VyLWhlYWRlcidcbiAgICB9LCBbdGhpcy5nZW5CdG4oLTEpLCB0aGlzLmdlbkhlYWRlcigpLCB0aGlzLmdlbkJ0bigrMSldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2RhdGVfcGlja2VyX3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLy8gTWl4aW5zXG5cblxuXG4vLyBVdGlsc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLWRhdGUtdGFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kYXRlX3BpY2tlcl90YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGV2ZW50czoge1xuICAgICAgdHlwZTogW0FycmF5LCBPYmplY3QsIEZ1bmN0aW9uXSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGV2ZW50Q29sb3I6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIEZ1bmN0aW9uLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogJ3dhcm5pbmcnXG4gICAgfSxcbiAgICBmaXJzdERheU9mV2Vlazoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIHdlZWtkYXlGb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGZvcm1hdHRlcjogZnVuY3Rpb24gZm9ybWF0dGVyKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0IHx8IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyBkYXk6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sIHsgc3RhcnQ6IDgsIGxlbmd0aDogMiB9KTtcbiAgICB9LFxuICAgIHdlZWtkYXlGb3JtYXR0ZXI6IGZ1bmN0aW9uIHdlZWtkYXlGb3JtYXR0ZXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy53ZWVrZGF5Rm9ybWF0IHx8IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyB3ZWVrZGF5OiAnbmFycm93JywgdGltZVpvbmU6ICdVVEMnIH0pO1xuICAgIH0sXG4gICAgd2Vla0RheXM6IGZ1bmN0aW9uIHdlZWtEYXlzKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGZpcnN0ID0gcGFyc2VJbnQodGhpcy5maXJzdERheU9mV2VlaywgMTApO1xuXG4gICAgICByZXR1cm4gdGhpcy53ZWVrZGF5Rm9ybWF0dGVyID8gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg3KS5tYXAoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLndlZWtkYXlGb3JtYXR0ZXIoJzIwMTctMDEtJyArIChmaXJzdCArIGkgKyAxNSkpO1xuICAgICAgfSkgLy8gMjAxNy0wMS0xNSBpcyBTdW5kYXlcbiAgICAgIDogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg3KS5tYXAoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIFsnUycsICdNJywgJ1QnLCAnVycsICdUJywgJ0YnLCAnUyddWyhpICsgZmlyc3QpICUgN107XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGNhbGN1bGF0ZVRhYmxlRGF0ZTogZnVuY3Rpb24gY2FsY3VsYXRlVGFibGVEYXRlKGRlbHRhKSB7XG4gICAgICByZXR1cm4gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fW1wiYlwiIC8qIG1vbnRoQ2hhbmdlICovXSkodGhpcy50YWJsZURhdGUsIE1hdGguc2lnbihkZWx0YSB8fCAxKSk7XG4gICAgfSxcbiAgICBnZW5USGVhZDogZnVuY3Rpb24gZ2VuVEhlYWQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGRheXMgPSB0aGlzLndlZWtEYXlzLm1hcChmdW5jdGlvbiAoZGF5KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuJGNyZWF0ZUVsZW1lbnQoJ3RoJywgZGF5KTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RoZWFkJywgdGhpcy5nZW5UUihkYXlzKSk7XG4gICAgfSxcbiAgICBnZW5FdmVudDogZnVuY3Rpb24gZ2VuRXZlbnQoZGF0ZSkge1xuICAgICAgdmFyIGV2ZW50Q29sb3IgPSB2b2lkIDA7XG4gICAgICBpZiAodHlwZW9mIHRoaXMuZXZlbnRDb2xvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgZXZlbnRDb2xvciA9IHRoaXMuZXZlbnRDb2xvcjtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuZXZlbnRDb2xvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBldmVudENvbG9yID0gdGhpcy5ldmVudENvbG9yKGRhdGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXZlbnRDb2xvciA9IHRoaXMuZXZlbnRDb2xvcltkYXRlXTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXItdGFibGVfX2V2ZW50JyxcbiAgICAgICAgY2xhc3M6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe30sIGV2ZW50Q29sb3IgfHwgdGhpcy5jb2xvcilcbiAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvLyBSZXR1cm5zIG51bWJlciBvZiB0aGUgZGF5cyBmcm9tIHRoZSBmaXJzdERheU9mV2VlayB0byB0aGUgZmlyc3QgZGF5IG9mIHRoZSBjdXJyZW50IG1vbnRoXG4gICAgd2Vla0RheXNCZWZvcmVGaXJzdERheU9mVGhlTW9udGg6IGZ1bmN0aW9uIHdlZWtEYXlzQmVmb3JlRmlyc3REYXlPZlRoZU1vbnRoKCkge1xuICAgICAgdmFyIGZpcnN0RGF5T2ZUaGVNb250aCA9IG5ldyBEYXRlKHRoaXMuZGlzcGxheWVkWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmRpc3BsYXllZE1vbnRoICsgMSkgKyAnLTAxVDAwOjAwOjAwKzAwOjAwJyk7XG4gICAgICB2YXIgd2Vla0RheSA9IGZpcnN0RGF5T2ZUaGVNb250aC5nZXRVVENEYXkoKTtcbiAgICAgIHJldHVybiAod2Vla0RheSAtIHBhcnNlSW50KHRoaXMuZmlyc3REYXlPZldlZWspICsgNykgJSA3O1xuICAgIH0sXG4gICAgaXNFdmVudDogZnVuY3Rpb24gaXNFdmVudChkYXRlKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmV2ZW50cykpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRzLmluZGV4T2YoZGF0ZSkgPiAtMTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5ldmVudHMgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICByZXR1cm4gdGhpcy5ldmVudHMoZGF0ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICBnZW5UQm9keTogZnVuY3Rpb24gZ2VuVEJvZHkoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcbiAgICAgIHZhciBkYXlzSW5Nb250aCA9IG5ldyBEYXRlKHRoaXMuZGlzcGxheWVkWWVhciwgdGhpcy5kaXNwbGF5ZWRNb250aCArIDEsIDApLmdldERhdGUoKTtcbiAgICAgIHZhciByb3dzID0gW107XG4gICAgICB2YXIgZGF5ID0gdGhpcy53ZWVrRGF5c0JlZm9yZUZpcnN0RGF5T2ZUaGVNb250aCgpO1xuXG4gICAgICB3aGlsZSAoZGF5LS0pIHtcbiAgICAgICAgcm93cy5wdXNoKHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RkJykpO1xuICAgICAgfWZvciAoZGF5ID0gMTsgZGF5IDw9IGRheXNJbk1vbnRoOyBkYXkrKykge1xuICAgICAgICB2YXIgZGF0ZSA9IHRoaXMuZGlzcGxheWVkWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmRpc3BsYXllZE1vbnRoICsgMSkgKyAnLScgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJjXCIgLyogcGFkICovXSkoZGF5KTtcblxuICAgICAgICByb3dzLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudCgndGQnLCBbdGhpcy5nZW5CdXR0b24oZGF0ZSwgdHJ1ZSksIHRoaXMuaXNFdmVudChkYXRlKSA/IHRoaXMuZ2VuRXZlbnQoZGF0ZSkgOiBudWxsXSkpO1xuXG4gICAgICAgIGlmIChyb3dzLmxlbmd0aCAlIDcgPT09IDApIHtcbiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuVFIocm93cykpO1xuICAgICAgICAgIHJvd3MgPSBbXTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAocm93cy5sZW5ndGgpIHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRSKHJvd3MpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3Rib2R5JywgY2hpbGRyZW4pO1xuICAgIH0sXG4gICAgZ2VuVFI6IGZ1bmN0aW9uIGdlblRSKGNoaWxkcmVuKSB7XG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyJywgY2hpbGRyZW4pXTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblRhYmxlKCdkYXRlLXBpY2tlci10YWJsZSBkYXRlLXBpY2tlci10YWJsZS0tZGF0ZScsIFt0aGlzLmdlblRIZWFkKCksIHRoaXMuZ2VuVEJvZHkoKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA2MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RhYmxlX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RhYmxlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfdGFibGVfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2lzRGF0ZUFsbG93ZWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjIpO1xuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG4vLyBVdGlsc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBkaXJlY3RpdmVzOiB7IFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpc1JldmVyc2luZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBhbGxvd2VkRGF0ZXM6IEZ1bmN0aW9uLFxuICAgIGN1cnJlbnQ6IFN0cmluZyxcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBmb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtaW46IFN0cmluZyxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHRhYmxlRGF0ZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzUmV2ZXJzaW5nID8gJ3RhYi1yZXZlcnNlLXRyYW5zaXRpb24nIDogJ3RhYi10cmFuc2l0aW9uJztcbiAgICB9LFxuICAgIGRpc3BsYXllZE1vbnRoOiBmdW5jdGlvbiBkaXNwbGF5ZWRNb250aCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRhYmxlRGF0ZS5zcGxpdCgnLScpWzFdIC0gMTtcbiAgICB9LFxuICAgIGRpc3BsYXllZFllYXI6IGZ1bmN0aW9uIGRpc3BsYXllZFllYXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy50YWJsZURhdGUuc3BsaXQoJy0nKVswXSAqIDE7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdGFibGVEYXRlOiBmdW5jdGlvbiB0YWJsZURhdGUobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgIHRoaXMuaXNSZXZlcnNpbmcgPSBuZXdWYWwgPCBvbGRWYWw7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5CdXR0b25DbGFzc2VzOiBmdW5jdGlvbiBnZW5CdXR0b25DbGFzc2VzKHZhbHVlLCBpc0Rpc2FibGVkLCBpc0Zsb2F0aW5nKSB7XG4gICAgICB2YXIgaXNTZWxlY3RlZCA9IHZhbHVlID09PSB0aGlzLnZhbHVlO1xuICAgICAgdmFyIGlzQ3VycmVudCA9IHZhbHVlID09PSB0aGlzLmN1cnJlbnQ7XG5cbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnYnRuLS1hY3RpdmUnOiBpc1NlbGVjdGVkLFxuICAgICAgICAnYnRuLS1mbGF0JzogIWlzU2VsZWN0ZWQsXG4gICAgICAgICdidG4tLWljb24nOiBpc1NlbGVjdGVkICYmICFpc0Rpc2FibGVkICYmIGlzRmxvYXRpbmcsXG4gICAgICAgICdidG4tLWZsb2F0aW5nJzogaXNGbG9hdGluZyxcbiAgICAgICAgJ2J0bi0tZGVwcmVzc2VkJzogIWlzRmxvYXRpbmcgJiYgaXNTZWxlY3RlZCxcbiAgICAgICAgJ2J0bi0tZGlzYWJsZWQnOiBpc0Rpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQgJiYgaXNTZWxlY3RlZCxcbiAgICAgICAgJ2J0bi0tb3V0bGluZSc6IGlzQ3VycmVudCAmJiAhaXNTZWxlY3RlZFxuICAgICAgfTtcblxuICAgICAgaWYgKGlzU2VsZWN0ZWQpIHJldHVybiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMpO1xuICAgICAgaWYgKGlzQ3VycmVudCkgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICByZXR1cm4gY2xhc3NlcztcbiAgICB9LFxuICAgIGdlbkJ1dHRvbjogZnVuY3Rpb24gZ2VuQnV0dG9uKHZhbHVlLCBpc0Zsb2F0aW5nKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgaXNEaXNhYmxlZCA9ICFPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2lzRGF0ZUFsbG93ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSkodmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCwgdGhpcy5hbGxvd2VkRGF0ZXMpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnYnV0dG9uJywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2J0bicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuZ2VuQnV0dG9uQ2xhc3Nlcyh2YWx1ZSwgaXNEaXNhYmxlZCwgaXNGbG9hdGluZyksXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdHlwZTogJ2J1dHRvbidcbiAgICAgICAgfSxcbiAgICAgICAgZG9tUHJvcHM6IHtcbiAgICAgICAgICBkaXNhYmxlZDogaXNEaXNhYmxlZCxcbiAgICAgICAgICBpbm5lckhUTUw6ICc8ZGl2IGNsYXNzPVwiYnRuX19jb250ZW50XCI+JyArIHRoaXMuZm9ybWF0dGVyKHZhbHVlKSArICc8L2Rpdj4nXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiBpc0Rpc2FibGVkID8ge30gOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgd2hlZWw6IGZ1bmN0aW9uIHdoZWVsKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ3RhYmxlRGF0ZScsIHRoaXMuY2FsY3VsYXRlVGFibGVEYXRlKGUuZGVsdGFZKSk7XG4gICAgfSxcbiAgICB0b3VjaDogZnVuY3Rpb24gdG91Y2godmFsdWUpIHtcbiAgICAgIHRoaXMuJGVtaXQoJ3RhYmxlRGF0ZScsIHRoaXMuY2FsY3VsYXRlVGFibGVEYXRlKHZhbHVlKSk7XG4gICAgfSxcbiAgICBnZW5UYWJsZTogZnVuY3Rpb24gZ2VuVGFibGUoc3RhdGljQ2xhc3MsIGNoaWxkcmVuKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIHRyYW5zaXRpb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczogeyBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbiB9XG4gICAgICB9LCBbdGhpcy4kY3JlYXRlRWxlbWVudCgndGFibGUnLCB7IGtleTogdGhpcy50YWJsZURhdGUgfSwgY2hpbGRyZW4pXSk7XG5cbiAgICAgIHZhciB0b3VjaERpcmVjdGl2ZSA9IHtcbiAgICAgICAgbmFtZTogJ3RvdWNoJyxcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICBsZWZ0OiBmdW5jdGlvbiBsZWZ0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLm9mZnNldFggPCAtMTUgJiYgX3RoaXMyLnRvdWNoKDEpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcmlnaHQ6IGZ1bmN0aW9uIHJpZ2h0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLm9mZnNldFggPiAxNSAmJiBfdGhpczIudG91Y2goLTEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IHN0YXRpY0NsYXNzLFxuICAgICAgICBvbjogdGhpcy5zY3JvbGxhYmxlID8geyB3aGVlbDogdGhpcy53aGVlbCB9IDogdW5kZWZpbmVkLFxuICAgICAgICBkaXJlY3RpdmVzOiBbdG91Y2hEaXJlY3RpdmVdXG4gICAgICB9LCBbdHJhbnNpdGlvbl0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGlzRGF0ZUFsbG93ZWQ7XG5mdW5jdGlvbiBpc0RhdGVBbGxvd2VkKGRhdGUsIG1pbiwgbWF4LCBhbGxvd2VkRm4pIHtcbiAgcmV0dXJuICghYWxsb3dlZEZuIHx8IGFsbG93ZWRGbihkYXRlKSkgJiYgKCFtaW4gfHwgZGF0ZSA+PSBtaW4pICYmICghbWF4IHx8IGRhdGUgPD0gbWF4KTtcbn1cblxuLyoqKi8gfSksXG4vKiA2MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGF0ZV9waWNrZXJfdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNCk7XG4vLyBNaXhpbnNcblxuXG5cbi8vIFV0aWxzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLW1vbnRoLXRhYmxlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGF0ZV9waWNrZXJfdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uIGZvcm1hdHRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdCB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgbW9udGg6ICdzaG9ydCcsIHRpbWVab25lOiAnVVRDJyB9LCB7IHN0YXJ0OiA1LCBsZW5ndGg6IDIgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBjYWxjdWxhdGVUYWJsZURhdGU6IGZ1bmN0aW9uIGNhbGN1bGF0ZVRhYmxlRGF0ZShkZWx0YSkge1xuICAgICAgcmV0dXJuICcnICsgKHBhcnNlSW50KHRoaXMudGFibGVEYXRlLCAxMCkgKyBNYXRoLnNpZ24oZGVsdGEgfHwgMSkpO1xuICAgIH0sXG4gICAgZ2VuVEJvZHk6IGZ1bmN0aW9uIGdlblRCb2R5KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgICB2YXIgY29scyA9IEFycmF5KDMpLmZpbGwobnVsbCk7XG4gICAgICB2YXIgcm93cyA9IDEyIC8gY29scy5sZW5ndGg7XG5cbiAgICAgIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKHJvdykge1xuICAgICAgICB2YXIgdGRzID0gY29scy5tYXAoZnVuY3Rpb24gKF8sIGNvbCkge1xuICAgICAgICAgIHZhciBtb250aCA9IHJvdyAqIGNvbHMubGVuZ3RoICsgY29sO1xuICAgICAgICAgIHJldHVybiBfdGhpcy4kY3JlYXRlRWxlbWVudCgndGQnLCB7XG4gICAgICAgICAgICBrZXk6IG1vbnRoXG4gICAgICAgICAgfSwgW190aGlzLmdlbkJ1dHRvbihfdGhpcy5kaXNwbGF5ZWRZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKG1vbnRoICsgMSksIGZhbHNlKV0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjaGlsZHJlbi5wdXNoKF90aGlzLiRjcmVhdGVFbGVtZW50KCd0cicsIHtcbiAgICAgICAgICBrZXk6IHJvd1xuICAgICAgICB9LCB0ZHMpKTtcbiAgICAgIH07XG5cbiAgICAgIGZvciAodmFyIHJvdyA9IDA7IHJvdyA8IHJvd3M7IHJvdysrKSB7XG4gICAgICAgIF9sb29wKHJvdyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0Ym9keScsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblRhYmxlKCdkYXRlLXBpY2tlci10YWJsZSBkYXRlLXBpY2tlci10YWJsZS0tbW9udGgnLCBbdGhpcy5nZW5UQm9keSgpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfeWVhcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfeWVhcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl95ZWFyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLXllYXJzJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGVmYXVsdENvbG9yOiAncHJpbWFyeSdcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBmb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtaW46IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgbWF4OiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uIGZvcm1hdHRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdCB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgeWVhcjogJ251bWVyaWMnLCB0aW1lWm9uZTogJ1VUQycgfSwgeyBsZW5ndGg6IDQgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy4kZWwuc2Nyb2xsVG9wID0gdGhpcy4kZWwuc2Nyb2xsSGVpZ2h0IC8gMiAtIHRoaXMuJGVsLm9mZnNldEhlaWdodCAvIDI7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgZ2VuWWVhckl0ZW06IGZ1bmN0aW9uIGdlblllYXJJdGVtKHllYXIpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBmb3JtYXR0ZWQgPSB0aGlzLmZvcm1hdHRlcignJyArIHllYXIpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnbGknLCB7XG4gICAgICAgIGtleTogeWVhcixcbiAgICAgICAgJ2NsYXNzJzogcGFyc2VJbnQodGhpcy52YWx1ZSwgMTApID09PSB5ZWFyID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyh7IGFjdGl2ZTogdHJ1ZSB9KSA6IHt9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy4kZW1pdCgnaW5wdXQnLCB5ZWFyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGZvcm1hdHRlZCk7XG4gICAgfSxcbiAgICBnZW5ZZWFySXRlbXM6IGZ1bmN0aW9uIGdlblllYXJJdGVtcygpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgdmFyIHNlbGVjdGVkWWVhciA9IHRoaXMudmFsdWUgPyBwYXJzZUludCh0aGlzLnZhbHVlLCAxMCkgOiBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG4gICAgICB2YXIgbWF4WWVhciA9IHRoaXMubWF4ID8gcGFyc2VJbnQodGhpcy5tYXgsIDEwKSA6IHNlbGVjdGVkWWVhciArIDEwMDtcbiAgICAgIHZhciBtaW5ZZWFyID0gTWF0aC5taW4obWF4WWVhciwgdGhpcy5taW4gPyBwYXJzZUludCh0aGlzLm1pbiwgMTApIDogc2VsZWN0ZWRZZWFyIC0gMTAwKTtcblxuICAgICAgZm9yICh2YXIgeWVhciA9IG1heFllYXI7IHllYXIgPj0gbWluWWVhcjsgeWVhci0tKSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5ZZWFySXRlbSh5ZWFyKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd1bCcsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXIteWVhcnMnLFxuICAgICAgcmVmOiAneWVhcnMnXG4gICAgfSwgdGhpcy5nZW5ZZWFySXRlbXMoKSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8vIENvbXBvbmVudHNcblxuXG4vLyBNaXhpbnNcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAncGlja2VyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGZ1bGxXaWR0aDogQm9vbGVhbixcbiAgICBoZWFkZXJDb2xvcjogU3RyaW5nLFxuICAgIGxhbmRzY2FwZTogQm9vbGVhbixcbiAgICBub1RpdGxlOiBCb29sZWFuLFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjkwLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlSW50KHZhbHVlLCAxMCkgPiAwO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge30sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHt9LFxuICAgIGdlblBpY2tlckFjdGlvbnNTbG90OiBmdW5jdGlvbiBnZW5QaWNrZXJBY3Rpb25zU2xvdCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzY29wZWRTbG90cy5kZWZhdWx0ID8gdGhpcy4kc2NvcGVkU2xvdHMuZGVmYXVsdCh7XG4gICAgICAgIHNhdmU6IHRoaXMuc2F2ZSxcbiAgICAgICAgY2FuY2VsOiB0aGlzLmNhbmNlbFxuICAgICAgfSkgOiB0aGlzLiRzbG90cy5kZWZhdWx0O1xuICAgIH0sXG4gICAgZ2VuUGlja2VyOiBmdW5jdGlvbiBnZW5QaWNrZXIoc3RhdGljQ2xhc3MpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IHN0YXRpY0NsYXNzLFxuICAgICAgICBjbGFzczogdGhpcy5mdWxsV2lkdGggPyBbJ3BpY2tlci0tZnVsbC13aWR0aCddIDogW10sXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMuaGVhZGVyQ29sb3IgfHwgdGhpcy5jb2xvcixcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmssXG4gICAgICAgICAgZnVsbFdpZHRoOiB0aGlzLmZ1bGxXaWR0aCxcbiAgICAgICAgICBsYW5kc2NhcGU6IHRoaXMubGFuZHNjYXBlLFxuICAgICAgICAgIGxpZ2h0OiB0aGlzLmxpZ2h0LFxuICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLm5vVGl0bGUgPyBudWxsIDogdGhpcy5nZW5QaWNrZXJUaXRsZSgpLCB0aGlzLmdlblBpY2tlckJvZHkoKSwgdGhpcy4kY3JlYXRlRWxlbWVudCgndGVtcGxhdGUnLCB7IHNsb3Q6ICdhY3Rpb25zJyB9LCBbdGhpcy5nZW5QaWNrZXJBY3Rpb25zU2xvdCgpXSldKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODIpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA2NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG4vLyBNaXhpbnNcblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYnMtaXRlbXMnLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgndGFicycpXSxcblxuICBkaXJlY3RpdmVzOiB7IFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIGluamVjdDoge1xuICAgIHJlZ2lzdGVySXRlbXM6IHtcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHRhYlByb3h5OiB7XG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB1bnJlZ2lzdGVySXRlbXM6IHtcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9XG4gIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXRlbXM6IFtdLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgcmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjeWNsZTogQm9vbGVhbixcbiAgICB0b3VjaGxlc3M6IEJvb2xlYW4sXG4gICAgdmFsdWU6IFtOdW1iZXIsIFN0cmluZ11cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGFjdGl2ZUluZGV4OiBmdW5jdGlvbiBhY3RpdmVJbmRleCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmRJbmRleChmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIChpdGVtLmlkIHx8IGluZGV4LnRvU3RyaW5nKCkpID09PSBfdGhpcy5sYXp5VmFsdWU7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGFjdGl2ZUl0ZW06IGZ1bmN0aW9uIGFjdGl2ZUl0ZW0oKSB7XG4gICAgICBpZiAoIXRoaXMuaXRlbXMubGVuZ3RoKSByZXR1cm4gdW5kZWZpbmVkO1xuXG4gICAgICByZXR1cm4gdGhpcy5pdGVtc1t0aGlzLmFjdGl2ZUluZGV4XTtcbiAgICB9LFxuXG4gICAgaW5wdXRWYWx1ZToge1xuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgdmFsID0gdmFsLnRvU3RyaW5nKCk7XG5cbiAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG5cbiAgICAgICAgaWYgKHRoaXMudGFiUHJveHkpIHRoaXMudGFiUHJveHkodmFsKTtlbHNlIHRoaXMuJGVtaXQoJ2lucHV0JywgdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBhY3RpdmVJbmRleDogZnVuY3Rpb24gYWN0aXZlSW5kZXgoY3VycmVudCwgcHJldmlvdXMpIHtcbiAgICAgIHRoaXMucmV2ZXJzZSA9IGN1cnJlbnQgPCBwcmV2aW91cztcbiAgICAgIHRoaXMudXBkYXRlSXRlbXMoKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMucmVnaXN0ZXJJdGVtcyAmJiB0aGlzLnJlZ2lzdGVySXRlbXModGhpcy5jaGFuZ2VNb2RlbCk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy51bnJlZ2lzdGVySXRlbXMgJiYgdGhpcy51bnJlZ2lzdGVySXRlbXMoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjaGFuZ2VNb2RlbDogZnVuY3Rpb24gY2hhbmdlTW9kZWwodmFsKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWw7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KGN5Y2xlKSB7XG4gICAgICB2YXIgbmV4dEluZGV4ID0gdGhpcy5hY3RpdmVJbmRleCArIDE7XG5cbiAgICAgIGlmICghdGhpcy5pdGVtc1tuZXh0SW5kZXhdKSB7XG4gICAgICAgIGlmICghY3ljbGUpIHJldHVybjtcbiAgICAgICAgbmV4dEluZGV4ID0gMDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5pdGVtc1tuZXh0SW5kZXhdLmlkIHx8IG5leHRJbmRleDtcbiAgICB9LFxuICAgIHByZXY6IGZ1bmN0aW9uIHByZXYoY3ljbGUpIHtcbiAgICAgIHZhciBwcmV2SW5kZXggPSB0aGlzLmFjdGl2ZUluZGV4IC0gMTtcblxuICAgICAgaWYgKCF0aGlzLml0ZW1zW3ByZXZJbmRleF0pIHtcbiAgICAgICAgaWYgKCFjeWNsZSkgcmV0dXJuO1xuICAgICAgICBwcmV2SW5kZXggPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuaXRlbXNbcHJldkluZGV4XS5pZCB8fCBwcmV2SW5kZXg7XG4gICAgfSxcbiAgICBvblN3aXBlOiBmdW5jdGlvbiBvblN3aXBlKGFjdGlvbikge1xuICAgICAgdGhpc1thY3Rpb25dKHRoaXMuY3ljbGUpO1xuICAgIH0sXG4gICAgcmVnaXN0ZXI6IGZ1bmN0aW9uIHJlZ2lzdGVyKGl0ZW0pIHtcbiAgICAgIHRoaXMuaXRlbXMucHVzaChpdGVtKTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIoaXRlbSkge1xuICAgICAgdGhpcy5pdGVtcyA9IHRoaXMuaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBpICE9PSBpdGVtO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICB1cGRhdGVJdGVtczogZnVuY3Rpb24gdXBkYXRlSXRlbXMoKSB7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMuaXRlbXMubGVuZ3RoOyAtLWluZGV4ID49IDA7KSB7XG4gICAgICAgIHRoaXMuaXRlbXNbaW5kZXhdLnRvZ2dsZSh0aGlzLmxhenlWYWx1ZSwgdGhpcy5yZXZlcnNlLCB0aGlzLmlzQm9vdGVkLCBpbmRleCk7XG4gICAgICB9XG4gICAgICB0aGlzLmlzQm9vdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2l0ZW1zJyxcbiAgICAgIGRpcmVjdGl2ZXM6IFtdXG4gICAgfTtcblxuICAgICF0aGlzLnRvdWNobGVzcyAmJiBkYXRhLmRpcmVjdGl2ZXMucHVzaCh7XG4gICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgdmFsdWU6IHtcbiAgICAgICAgbGVmdDogZnVuY3Rpb24gbGVmdCgpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMyLm9uU3dpcGUoJ25leHQnKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmlnaHQ6IGZ1bmN0aW9uIHJpZ2h0KCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczIub25Td2lwZSgncHJldicpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtdGFicy1zbGlkZXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdhY2NlbnQnXG4gICAgfTtcbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFic19fc2xpZGVyJyxcbiAgICAgIGNsYXNzOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKClcbiAgICB9KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190aW1lX3BpY2tlcl90aXRsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190aW1lX3BpY2tlcl90aXRsZV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX3RpdGxlX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcGlja2VyX2J1dHRvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcblxuXG4vLyBNaXhpbnNcblxuXG4vLyBVdGlsc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10aW1lLXBpY2tlci10aXRsZScsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcGlja2VyX2J1dHRvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGFtcG06IEJvb2xlYW4sXG4gICAgaG91cjogTnVtYmVyLFxuICAgIG1pbnV0ZTogTnVtYmVyLFxuICAgIHBlcmlvZDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IocGVyaW9kKSB7XG4gICAgICAgIHJldHVybiBwZXJpb2QgPT09ICdhbScgfHwgcGVyaW9kID09PSAncG0nO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2VsZWN0aW5nSG91cjogQm9vbGVhblxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UaW1lOiBmdW5jdGlvbiBnZW5UaW1lKCkge1xuICAgICAgdmFyIGhvdXIgPSB0aGlzLmhvdXI7XG4gICAgICBpZiAodGhpcy5hbXBtKSB7XG4gICAgICAgIGhvdXIgPSBob3VyID8gKGhvdXIgLSAxKSAlIDEyICsgMSA6IDEyO1xuICAgICAgfVxuXG4gICAgICB2YXIgZGlzcGxheWVkSG91ciA9IHRoaXMuaG91ciA9PSBudWxsID8gJy0tJyA6IHRoaXMuYW1wbSA/IGhvdXIgOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX19bXCJjXCIgLyogcGFkICovXSkoaG91cik7XG4gICAgICB2YXIgZGlzcGxheWVkTWludXRlID0gdGhpcy5taW51dGUgPT0gbnVsbCA/ICctLScgOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX19bXCJjXCIgLyogcGFkICovXSkodGhpcy5taW51dGUpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAndGltZS1waWNrZXItdGl0bGVfX3RpbWUnXG4gICAgICB9LCBbdGhpcy5nZW5QaWNrZXJCdXR0b24oJ3NlbGVjdGluZ0hvdXInLCB0cnVlLCBkaXNwbGF5ZWRIb3VyKSwgdGhpcy4kY3JlYXRlRWxlbWVudCgnc3BhbicsICc6JyksIHRoaXMuZ2VuUGlja2VyQnV0dG9uKCdzZWxlY3RpbmdIb3VyJywgZmFsc2UsIGRpc3BsYXllZE1pbnV0ZSldKTtcbiAgICB9LFxuICAgIGdlbkFtUG06IGZ1bmN0aW9uIGdlbkFtUG0oKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLXRpdGxlX19hbXBtJ1xuICAgICAgfSwgW3RoaXMuZ2VuUGlja2VyQnV0dG9uKCdwZXJpb2QnLCAnYW0nLCAnYW0nKSwgdGhpcy5nZW5QaWNrZXJCdXR0b24oJ3BlcmlvZCcsICdwbScsICdwbScpXSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICd0aW1lLXBpY2tlci10aXRsZSdcbiAgICB9LCBbdGhpcy5nZW5UaW1lKCksIHRoaXMuYW1wbSA/IHRoaXMuZ2VuQW1QbSgpIDogbnVsbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA3MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX2Nsb2NrX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX2Nsb2NrX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGltZV9waWNrZXJfY2xvY2tfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRpbWUtcGlja2VyLWNsb2NrJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpbnB1dFZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgaXNEcmFnZ2luZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBhbGxvd2VkVmFsdWVzOiBGdW5jdGlvbixcbiAgICBkb3VibGU6IEJvb2xlYW4sXG4gICAgZm9ybWF0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KHZhbCkge1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgfVxuICAgIH0sXG4gICAgbWF4OiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgbWluOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgc2Nyb2xsYWJsZTogQm9vbGVhbixcbiAgICByb3RhdGU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyNzBcbiAgICB9LFxuICAgIHN0ZXA6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDFcbiAgICB9LFxuICAgIHZhbHVlOiBOdW1iZXJcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvdW50OiBmdW5jdGlvbiBjb3VudCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCAtIHRoaXMubWluICsgMTtcbiAgICB9LFxuICAgIGlubmVyUmFkaXVzOiBmdW5jdGlvbiBpbm5lclJhZGl1cygpIHtcbiAgICAgIHJldHVybiB0aGlzLnJhZGl1cyAtIE1hdGgubWF4KHRoaXMucmFkaXVzICogMC40LCA0OCk7XG4gICAgfSxcbiAgICBvdXRlclJhZGl1czogZnVuY3Rpb24gb3V0ZXJSYWRpdXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWRpdXMgLSA0O1xuICAgIH0sXG4gICAgcm91bmRDb3VudDogZnVuY3Rpb24gcm91bmRDb3VudCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRvdWJsZSA/IHRoaXMuY291bnQgLyAyIDogdGhpcy5jb3VudDtcbiAgICB9LFxuICAgIGRlZ3JlZXNQZXJVbml0OiBmdW5jdGlvbiBkZWdyZWVzUGVyVW5pdCgpIHtcbiAgICAgIHJldHVybiAzNjAgLyB0aGlzLnJvdW5kQ291bnQ7XG4gICAgfSxcbiAgICBkZWdyZWVzOiBmdW5jdGlvbiBkZWdyZWVzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGVncmVlc1BlclVuaXQgKiBNYXRoLlBJIC8gMTgwO1xuICAgIH0sXG4gICAgcmFkaXVzOiBmdW5jdGlvbiByYWRpdXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5zaXplIC8gMjtcbiAgICB9LFxuICAgIGRpc3BsYXllZFZhbHVlOiBmdW5jdGlvbiBkaXNwbGF5ZWRWYWx1ZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlID09IG51bGwgPyB0aGlzLm1pbiA6IHRoaXMudmFsdWU7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKF92YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gX3ZhbHVlO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgd2hlZWw6IGZ1bmN0aW9uIHdoZWVsKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHZhciB2YWx1ZSA9IHRoaXMuZGlzcGxheWVkVmFsdWUgKyBNYXRoLnNpZ24oZS53aGVlbERlbHRhIHx8IDEpO1xuICAgICAgdGhpcy51cGRhdGUoKHZhbHVlIC0gdGhpcy5taW4gKyB0aGlzLmNvdW50KSAlIHRoaXMuY291bnQgKyB0aGlzLm1pbik7XG4gICAgfSxcbiAgICBoYW5kU2NhbGU6IGZ1bmN0aW9uIGhhbmRTY2FsZSh2YWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZG91YmxlICYmIHZhbHVlIC0gdGhpcy5taW4gPj0gdGhpcy5yb3VuZENvdW50ID8gdGhpcy5pbm5lclJhZGl1cyAvIHRoaXMucmFkaXVzIDogdGhpcy5vdXRlclJhZGl1cyAvIHRoaXMucmFkaXVzO1xuICAgIH0sXG4gICAgaXNBbGxvd2VkOiBmdW5jdGlvbiBpc0FsbG93ZWQodmFsdWUpIHtcbiAgICAgIHJldHVybiAhdGhpcy5hbGxvd2VkVmFsdWVzIHx8IHRoaXMuYWxsb3dlZFZhbHVlcyh2YWx1ZSk7XG4gICAgfSxcbiAgICBnZW5WYWx1ZXM6IGZ1bmN0aW9uIGdlblZhbHVlcygpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuXG4gICAgICBmb3IgKHZhciB2YWx1ZSA9IHRoaXMubWluOyB2YWx1ZSA8PSB0aGlzLm1heDsgdmFsdWUgPSB2YWx1ZSArIHRoaXMuc3RlcCkge1xuICAgICAgICB2YXIgY2xhc3NlcyA9IHtcbiAgICAgICAgICBhY3RpdmU6IHZhbHVlID09PSB0aGlzLmRpc3BsYXllZFZhbHVlLFxuICAgICAgICAgIGRpc2FibGVkOiAhdGhpcy5pc0FsbG93ZWQodmFsdWUpXG4gICAgICAgIH07XG5cbiAgICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcywgdmFsdWUgPT09IHRoaXMudmFsdWUgPyB0aGlzLmNvbXB1dGVkQ29sb3IgOiBudWxsKSxcbiAgICAgICAgICBzdHlsZTogdGhpcy5nZXRUcmFuc2Zvcm0odmFsdWUpLFxuICAgICAgICAgIGRvbVByb3BzOiB7IGlubmVySFRNTDogJzxzcGFuPicgKyB0aGlzLmZvcm1hdCh2YWx1ZSkgKyAnPC9zcGFuPicgfVxuICAgICAgICB9KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9LFxuICAgIGdlbkhhbmQ6IGZ1bmN0aW9uIGdlbkhhbmQoKSB7XG4gICAgICB2YXIgc2NhbGUgPSAnc2NhbGVZKCcgKyB0aGlzLmhhbmRTY2FsZSh0aGlzLmRpc3BsYXllZFZhbHVlKSArICcpJztcbiAgICAgIHZhciBhbmdsZSA9IHRoaXMucm90YXRlICsgdGhpcy5kZWdyZWVzUGVyVW5pdCAqICh0aGlzLmRpc3BsYXllZFZhbHVlIC0gdGhpcy5taW4pO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLWNsb2NrX19oYW5kJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy52YWx1ZSA9PSBudWxsID8ge30gOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiAncm90YXRlKCcgKyBhbmdsZSArICdkZWcpICcgKyBzY2FsZVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdldFRyYW5zZm9ybTogZnVuY3Rpb24gZ2V0VHJhbnNmb3JtKGkpIHtcbiAgICAgIHZhciBfZ2V0UG9zaXRpb24gPSB0aGlzLmdldFBvc2l0aW9uKGkpLFxuICAgICAgICAgIHggPSBfZ2V0UG9zaXRpb24ueCxcbiAgICAgICAgICB5ID0gX2dldFBvc2l0aW9uLnk7XG5cbiAgICAgIHJldHVybiB7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZSgnICsgeCArICdweCwgJyArIHkgKyAncHgpJyB9O1xuICAgIH0sXG4gICAgZ2V0UG9zaXRpb246IGZ1bmN0aW9uIGdldFBvc2l0aW9uKHZhbHVlKSB7XG4gICAgICB2YXIgcmFkaXVzID0gKHRoaXMucmFkaXVzIC0gMjQpICogdGhpcy5oYW5kU2NhbGUodmFsdWUpO1xuICAgICAgdmFyIHJvdGF0ZVJhZGlhbnMgPSB0aGlzLnJvdGF0ZSAqIE1hdGguUEkgLyAxODA7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB4OiBNYXRoLnJvdW5kKE1hdGguc2luKCh2YWx1ZSAtIHRoaXMubWluKSAqIHRoaXMuZGVncmVlcyArIHJvdGF0ZVJhZGlhbnMpICogcmFkaXVzKSxcbiAgICAgICAgeTogTWF0aC5yb3VuZCgtTWF0aC5jb3MoKHZhbHVlIC0gdGhpcy5taW4pICogdGhpcy5kZWdyZWVzICsgcm90YXRlUmFkaWFucykgKiByYWRpdXMpXG4gICAgICB9O1xuICAgIH0sXG4gICAgb25Nb3VzZURvd246IGZ1bmN0aW9uIG9uTW91c2VEb3duKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgdGhpcy5pc0RyYWdnaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMub25EcmFnTW92ZShlKTtcbiAgICB9LFxuICAgIG9uTW91c2VVcDogZnVuY3Rpb24gb25Nb3VzZVVwKCkge1xuICAgICAgdGhpcy5pc0RyYWdnaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmlzQWxsb3dlZCh0aGlzLmlucHV0VmFsdWUpICYmIHRoaXMuJGVtaXQoJ2NoYW5nZScsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfSxcbiAgICBvbkRyYWdNb3ZlOiBmdW5jdGlvbiBvbkRyYWdNb3ZlKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGlmICghdGhpcy5pc0RyYWdnaW5nICYmIGUudHlwZSAhPT0gJ2NsaWNrJykgcmV0dXJuO1xuXG4gICAgICB2YXIgXyRyZWZzJGNsb2NrJGdldEJvdW5kID0gdGhpcy4kcmVmcy5jbG9jay5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgICAgICB3aWR0aCA9IF8kcmVmcyRjbG9jayRnZXRCb3VuZC53aWR0aCxcbiAgICAgICAgICB0b3AgPSBfJHJlZnMkY2xvY2skZ2V0Qm91bmQudG9wLFxuICAgICAgICAgIGxlZnQgPSBfJHJlZnMkY2xvY2skZ2V0Qm91bmQubGVmdDtcblxuICAgICAgdmFyIF9yZWYgPSAndG91Y2hlcycgaW4gZSA/IGUudG91Y2hlc1swXSA6IGUsXG4gICAgICAgICAgY2xpZW50WCA9IF9yZWYuY2xpZW50WCxcbiAgICAgICAgICBjbGllbnRZID0gX3JlZi5jbGllbnRZO1xuXG4gICAgICB2YXIgY2VudGVyID0geyB4OiB3aWR0aCAvIDIsIHk6IC13aWR0aCAvIDIgfTtcbiAgICAgIHZhciBjb29yZHMgPSB7IHg6IGNsaWVudFggLSBsZWZ0LCB5OiB0b3AgLSBjbGllbnRZIH07XG4gICAgICB2YXIgaGFuZEFuZ2xlID0gTWF0aC5yb3VuZCh0aGlzLmFuZ2xlKGNlbnRlciwgY29vcmRzKSAtIHRoaXMucm90YXRlICsgMzYwKSAlIDM2MDtcbiAgICAgIHZhciBpbnNpZGVDbGljayA9IHRoaXMuZG91YmxlICYmIHRoaXMuZXVjbGlkZWFuKGNlbnRlciwgY29vcmRzKSA8ICh0aGlzLm91dGVyUmFkaXVzICsgdGhpcy5pbm5lclJhZGl1cykgLyAyIC0gMTY7XG4gICAgICB2YXIgdmFsdWUgPSBNYXRoLnJvdW5kKGhhbmRBbmdsZSAvIHRoaXMuZGVncmVlc1BlclVuaXQpICsgdGhpcy5taW4gKyAoaW5zaWRlQ2xpY2sgPyB0aGlzLnJvdW5kQ291bnQgOiAwKTtcblxuICAgICAgLy8gTmVjZXNzYXJ5IHRvIGZpeCBlZGdlIGNhc2Ugd2hlbiBzZWxlY3RpbmcgbGVmdCBwYXJ0IG9mIG1heCB2YWx1ZVxuICAgICAgaWYgKGhhbmRBbmdsZSA+PSAzNjAgLSB0aGlzLmRlZ3JlZXNQZXJVbml0IC8gMikge1xuICAgICAgICB0aGlzLnVwZGF0ZShpbnNpZGVDbGljayA/IHRoaXMubWF4IDogdGhpcy5taW4pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy51cGRhdGUodmFsdWUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiB1cGRhdGUodmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLmlucHV0VmFsdWUgIT09IHZhbHVlICYmIHRoaXMuaXNBbGxvd2VkKHZhbHVlKSkge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBldWNsaWRlYW46IGZ1bmN0aW9uIGV1Y2xpZGVhbihwMCwgcDEpIHtcbiAgICAgIHZhciBkeCA9IHAxLnggLSBwMC54O1xuICAgICAgdmFyIGR5ID0gcDEueSAtIHAwLnk7XG5cbiAgICAgIHJldHVybiBNYXRoLnNxcnQoZHggKiBkeCArIGR5ICogZHkpO1xuICAgIH0sXG4gICAgYW5nbGU6IGZ1bmN0aW9uIGFuZ2xlKGNlbnRlciwgcDEpIHtcbiAgICAgIHZhciB2YWx1ZSA9IDIgKiBNYXRoLmF0YW4yKHAxLnkgLSBjZW50ZXIueSAtIHRoaXMuZXVjbGlkZWFuKGNlbnRlciwgcDEpLCBwMS54IC0gY2VudGVyLngpO1xuICAgICAgcmV0dXJuIE1hdGguYWJzKHZhbHVlICogMTgwIC8gTWF0aC5QSSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLWNsb2NrJyxcbiAgICAgIGNsYXNzOiB7XG4gICAgICAgICd0aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSc6IHRoaXMudmFsdWUgPT0gbnVsbFxuICAgICAgfSxcbiAgICAgIG9uOiB7XG4gICAgICAgIG1vdXNlZG93bjogdGhpcy5vbk1vdXNlRG93bixcbiAgICAgICAgbW91c2V1cDogdGhpcy5vbk1vdXNlVXAsXG4gICAgICAgIG1vdXNlbGVhdmU6IGZ1bmN0aW9uIG1vdXNlbGVhdmUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzRHJhZ2dpbmcgJiYgX3RoaXMub25Nb3VzZVVwKCk7XG4gICAgICAgIH0sXG4gICAgICAgIHRvdWNoc3RhcnQ6IHRoaXMub25Nb3VzZURvd24sXG4gICAgICAgIHRvdWNoZW5kOiB0aGlzLm9uTW91c2VVcCxcbiAgICAgICAgbW91c2Vtb3ZlOiB0aGlzLm9uRHJhZ01vdmUsXG4gICAgICAgIHRvdWNobW92ZTogdGhpcy5vbkRyYWdNb3ZlXG4gICAgICB9LFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLnNpemUgKyAncHgnLFxuICAgICAgICB3aWR0aDogdGhpcy5zaXplICsgJ3B4J1xuICAgICAgfSxcbiAgICAgIHJlZjogJ2Nsb2NrJ1xuICAgIH07XG5cbiAgICB0aGlzLnNjcm9sbGFibGUgJiYgKGRhdGEub24ud2hlZWwgPSB0aGlzLndoZWVsKTtcblxuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCBkYXRhLCBbdGhpcy5nZW5IYW5kKCksIHRoaXMuZ2VuVmFsdWVzKCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBpbnNlcnRlZChlbCwgYmluZGluZykge1xuICB2YXIgY2FsbGJhY2sgPSBiaW5kaW5nLnZhbHVlO1xuICB2YXIgb3B0aW9ucyA9IGJpbmRpbmcub3B0aW9ucyB8fCB7IHBhc3NpdmU6IHRydWUgfTtcbiAgdmFyIHRhcmdldCA9IGJpbmRpbmcuYXJnIHx8IHdpbmRvdztcbiAgaWYgKHRhcmdldCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybjtcblxuICBpZiAodGFyZ2V0ICE9PSB3aW5kb3cpIHtcbiAgICB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG4gIH1cblxuICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgY2FsbGJhY2ssIG9wdGlvbnMpO1xuXG4gIGVsLl9vblNjcm9sbCA9IHtcbiAgICBjYWxsYmFjazogY2FsbGJhY2ssXG4gICAgb3B0aW9uczogb3B0aW9ucyxcbiAgICB0YXJnZXQ6IHRhcmdldFxuICB9O1xufVxuXG5mdW5jdGlvbiB1bmJpbmQoZWwsIGJpbmRpbmcpIHtcbiAgaWYgKCFlbC5fb25TY3JvbGwpIHJldHVybjtcblxuICB2YXIgX2VsJF9vblNjcm9sbCA9IGVsLl9vblNjcm9sbCxcbiAgICAgIGNhbGxiYWNrID0gX2VsJF9vblNjcm9sbC5jYWxsYmFjayxcbiAgICAgIG9wdGlvbnMgPSBfZWwkX29uU2Nyb2xsLm9wdGlvbnMsXG4gICAgICB0YXJnZXQgPSBfZWwkX29uU2Nyb2xsLnRhcmdldDtcblxuXG4gIHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBjYWxsYmFjaywgb3B0aW9ucyk7XG4gIGRlbGV0ZSBlbC5fb25TY3JvbGw7XG59XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc2Nyb2xsJyxcbiAgaW5zZXJ0ZWQ6IGluc2VydGVkLFxuICB1bmJpbmQ6IHVuYmluZFxufSk7XG5cbi8qKiovIH0pLFxuLyogNzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfYXBwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2FwcF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19hcHBfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fZGlyZWN0aXZlc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTgpO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuXG5cblxuXG5mdW5jdGlvbiBWdWV0aWZ5KFZ1ZSwgYXJncykge1xuICB2YXIgVnVldGlmeSA9IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29tcG9uZW50c19fW1wiVnVldGlmeVwiXTtcblxuICBWdWUudXNlKFZ1ZXRpZnksIF9leHRlbmRzKHtcbiAgICBjb21wb25lbnRzOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfXyxcbiAgICBkaXJlY3RpdmVzOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2RpcmVjdGl2ZXNfX1xuICB9LCBhcmdzKSk7XG59XG5cblZ1ZXRpZnkudmVyc2lvbiA9ICcxLjAuMTcnO1xuXG5pZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LlZ1ZSkge1xuICB3aW5kb3cuVnVlLnVzZShWdWV0aWZ5KTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZGVmYXVsdFwiXSA9IChWdWV0aWZ5KTtcblxuLyoqKi8gfSksXG4vKiA3MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDc0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KF9fd2VicGFja19leHBvcnRzX18sIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVnVldGlmeV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3NSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWdWV0aWZ5XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WdWV0aWZ5X19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZBcHBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODEpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkFwcFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkFwcF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQWxlcnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkFsZXJ0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQWxlcnRfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQXZhdGFyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WQXZhdGFyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZCYWRnZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5Nik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQmFkZ2VcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZCYWRnZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQm90dG9tTmF2X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDk5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZCb3R0b21OYXZcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZCb3R0b21OYXZfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fVkJvdHRvbVNoZWV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQm90dG9tU2hlZXRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX1ZCb3R0b21TaGVldF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19WQnJlYWRjcnVtYnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTA3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZCcmVhZGNydW1ic1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fVkJyZWFkY3J1bWJzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX1ZCdG5fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkJ0blwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fVkJ0bl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WQnRuVG9nZ2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQnRuVG9nZ2xlXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WQnRuVG9nZ2xlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNyk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQ2FyZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX1ZDYXJkX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19WQ2Fyb3VzZWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZDYXJvdXNlbFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTFfX1ZDYXJvdXNlbF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMl9fVkNoZWNrYm94X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI4KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZDaGVja2JveFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX1ZDaGVja2JveF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xM19fVkNoaXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkNoaXBcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19WQ2hpcF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fVkRhdGFJdGVyYXRvcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRhdGFJdGVyYXRvclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX1ZEYXRhSXRlcmF0b3JfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX1ZEYXRhVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY0KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZEYXRhVGFibGVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE1X19WRGF0YVRhYmxlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19WRGF0ZVBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRhdGVQaWNrZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19WRGF0ZVBpY2tlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xN19fVkRpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRpYWxvZ1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTdfX1ZEaWFsb2dfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMThfX1ZEaXZpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZEaXZpZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xOF9fVkRpdmlkZXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTlfX1ZFeHBhbnNpb25QYW5lbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkV4cGFuc2lvblBhbmVsXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xOV9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzIwX19WRm9vdGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4OSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWRm9vdGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMF9fVkZvb3Rlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMV9fVkZvcm1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZGb3JtXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMV9fVkZvcm1fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjJfX1ZHcmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5NCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWR3JpZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjJfX1ZHcmlkX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzIzX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZJY29uXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yM19fVkljb25fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjRfX1ZKdW1ib3Ryb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkp1bWJvdHJvblwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjRfX1ZKdW1ib3Ryb25fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjVfX1ZMaXN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU2KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZMaXN0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yNV9fVkxpc3RfX1tcImZcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjZfX1ZNZW51X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMwKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZNZW51XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yNl9fVk1lbnVfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjdfX1ZOYXZpZ2F0aW9uRHJhd2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWTmF2aWdhdGlvbkRyYXdlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjdfX1ZOYXZpZ2F0aW9uRHJhd2VyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI4X19WUGFnaW5hdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDMpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlBhZ2luYXRpb25cIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI4X19WUGFnaW5hdGlvbl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yOV9fVlBhcmFsbGF4X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwNik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUGFyYWxsYXhcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI5X19WUGFyYWxsYXhfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzBfX1ZQaWNrZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjYpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlBpY2tlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzBfX1ZQaWNrZXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzFfX1ZQcm9ncmVzc0NpcmN1bGFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZQcm9ncmVzc0NpcmN1bGFyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zMV9fVlByb2dyZXNzQ2lyY3VsYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzJfX1ZQcm9ncmVzc0xpbmVhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0NCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUHJvZ3Jlc3NMaW5lYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzMyX19WUHJvZ3Jlc3NMaW5lYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzNfX1ZSYWRpb0dyb3VwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxMCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUmFkaW9Hcm91cFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzNfX1ZSYWRpb0dyb3VwX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM0X19WU2VsZWN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTZWxlY3RcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM0X19WU2VsZWN0X19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM1X19WU2xpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxNSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU2xpZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zNV9fVlNsaWRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zNl9fVlNuYWNrYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxOCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU25hY2tiYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM2X19WU25hY2tiYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzdfX1ZTcGVlZERpYWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIxKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTcGVlZERpYWxcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM3X19WU3BlZWREaWFsX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM4X19WU3RlcHBlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlN0ZXBwZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM4X19WU3RlcHBlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zOV9fVlN1YmhlYWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1NSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU3ViaGVhZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zOV9fVlN1YmhlYWRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80MF9fVlN3aXRjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlN3aXRjaFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDBfX1ZTd2l0Y2hfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDFfX1ZTeXN0ZW1CYXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTeXN0ZW1CYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQxX19WU3lzdGVtQmFyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQyX19WVGFic19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRhYnNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQyX19WVGFic19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80M19fVlRleHRGaWVsZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRleHRGaWVsZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDNfX1ZUZXh0RmllbGRfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDRfX1ZUaW1lUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Nyk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWVGltZVBpY2tlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDRfX1ZUaW1lUGlja2VyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ1X19WVG9vbGJhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTEpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRvb2xiYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ1X19WVG9vbGJhcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80Nl9fVlRvb2x0aXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjU1KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZUb29sdGlwXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80Nl9fVlRvb2x0aXBfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDdfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVHJhbnNpdGlvbnNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ3X190cmFuc2l0aW9uc19fW1wiZ1wiXTsgfSk7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qKiovIH0pLFxuLyogNzUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfYXBwbGljYXRpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDc3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19vcHRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDc4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfZ29Ub19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3OSk7XG5cblxuXG5cblxuXG52YXIgVnVldGlmeSA9IHtcbiAgaW5zdGFsbDogZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgICB2YXIgb3B0cyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge307XG5cbiAgICBpZiAodGhpcy5pbnN0YWxsZWQpIHJldHVybjtcblxuICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcblxuICAgIGNoZWNrVnVlVmVyc2lvbihWdWUpO1xuXG4gICAgVnVlLnByb3RvdHlwZS4kdnVldGlmeSA9IG5ldyBWdWUoe1xuICAgICAgZGF0YToge1xuICAgICAgICBhcHBsaWNhdGlvbjogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfYXBwbGljYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICAgICAgYnJlYWtwb2ludDoge30sXG4gICAgICAgIGRhcms6IGZhbHNlLFxuICAgICAgICBvcHRpb25zOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfb3B0aW9uc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShvcHRzLm9wdGlvbnMpLFxuICAgICAgICB0aGVtZTogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKG9wdHMudGhlbWUpXG4gICAgICB9LFxuICAgICAgbWV0aG9kczoge1xuICAgICAgICBnb1RvOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfZ29Ub19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAob3B0cy50cmFuc2l0aW9ucykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLnRyYW5zaXRpb25zKS5mb3JFYWNoKGZ1bmN0aW9uICh0cmFuc2l0aW9uKSB7XG4gICAgICAgIGlmICh0cmFuc2l0aW9uLm5hbWUgIT09IHVuZGVmaW5lZCAmJiB0cmFuc2l0aW9uLm5hbWUuc3RhcnRzV2l0aCgndi0nKSkge1xuICAgICAgICAgIFZ1ZS5jb21wb25lbnQodHJhbnNpdGlvbi5uYW1lLCB0cmFuc2l0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdHMuZGlyZWN0aXZlcykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLmRpcmVjdGl2ZXMpLmZvckVhY2goZnVuY3Rpb24gKGRpcmVjdGl2ZSkge1xuICAgICAgICBWdWUuZGlyZWN0aXZlKGRpcmVjdGl2ZS5uYW1lLCBkaXJlY3RpdmUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdHMuY29tcG9uZW50cykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLmNvbXBvbmVudHMpLmZvckVhY2goZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgICAgICBWdWUudXNlKGNvbXBvbmVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn07XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5mdW5jdGlvbiBjaGVja1Z1ZVZlcnNpb24oVnVlKSB7XG4gIHZhciB2dWVEZXAgPSAnXjIuNS4wJztcblxuICB2YXIgcmVxdWlyZWQgPSB2dWVEZXAuc3BsaXQoJy4nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICByZXR1cm4gdi5yZXBsYWNlKC9cXEQvZywgJycpO1xuICB9KTtcbiAgdmFyIGFjdHVhbCA9IFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJyk7XG5cbiAgLy8gU2ltcGxlIHNlbXZlciBjYXJldCByYW5nZSBjb21wYXJpc29uXG4gIHZhciBwYXNzZXMgPSBhY3R1YWxbMF0gPT09IHJlcXVpcmVkWzBdICYmICggLy8gbWFqb3IgbWF0Y2hlc1xuICBhY3R1YWxbMV0gPiByZXF1aXJlZFsxXSB8fCAvLyBtaW5vciBpcyBncmVhdGVyXG4gIGFjdHVhbFsxXSA9PT0gcmVxdWlyZWRbMV0gJiYgYWN0dWFsWzJdID49IHJlcXVpcmVkWzJdIC8vIG9yIG1pbm9yIGlzIGVxIGFuZCBwYXRjaCBpcyA+PVxuICApO1xuXG4gIGlmICghcGFzc2VzKSB7XG4gICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnVnVldGlmeSByZXF1aXJlcyBWdWUgdmVyc2lvbiAnICsgdnVlRGVwKTtcbiAgfVxufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKFZ1ZXRpZnkpO1xuXG4vKioqLyB9KSxcbi8qIDc2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGJhcjogMCxcbiAgYm90dG9tOiAwLFxuICBmb290ZXI6IDAsXG4gIGxlZnQ6IDAsXG4gIHJpZ2h0OiAwLFxuICB0b3A6IDAsXG4gIGNvbXBvbmVudHM6IHtcbiAgICBiYXI6IHt9LFxuICAgIGJvdHRvbToge30sXG4gICAgZm9vdGVyOiB7fSxcbiAgICBsZWZ0OiB7fSxcbiAgICByaWdodDoge30sXG4gICAgdG9wOiB7fVxuICB9LFxuICBiaW5kOiBmdW5jdGlvbiBiaW5kKHVpZCwgdGFyZ2V0LCB2YWx1ZSkge1xuICAgIGlmICghdGhpcy5jb21wb25lbnRzW3RhcmdldF0pIHJldHVybjtcblxuICAgIHRoaXMuY29tcG9uZW50c1t0YXJnZXRdID0gX2RlZmluZVByb3BlcnR5KHt9LCB1aWQsIHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZSh0YXJnZXQpO1xuICB9LFxuICB1bmJpbmQ6IGZ1bmN0aW9uIHVuYmluZCh1aWQsIHRhcmdldCkge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudHNbdGFyZ2V0XVt1aWRdID09IG51bGwpIHJldHVybjtcblxuICAgIGRlbGV0ZSB0aGlzLmNvbXBvbmVudHNbdGFyZ2V0XVt1aWRdO1xuICAgIHRoaXMudXBkYXRlKHRhcmdldCk7XG4gIH0sXG4gIHVwZGF0ZTogZnVuY3Rpb24gdXBkYXRlKHRhcmdldCkge1xuICAgIHRoaXNbdGFyZ2V0XSA9IE9iamVjdC52YWx1ZXModGhpcy5jb21wb25lbnRzW3RhcmdldF0pLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBjdXIpIHtcbiAgICAgIHJldHVybiBhY2MgKyBjdXI7XG4gICAgfSwgMCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDc3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSB0aGVtZTtcbi8qIGVzbGludC1kaXNhYmxlIG5vLW11bHRpLXNwYWNlcyAqL1xudmFyIFRIRU1FX0RFRkFVTFRTID0ge1xuICBwcmltYXJ5OiAnIzE5NzZEMicsIC8vIGJsdWUuZGFya2VuMlxuICBzZWNvbmRhcnk6ICcjNDI0MjQyJywgLy8gZ3JleS5kYXJrZW4zXG4gIGFjY2VudDogJyM4MkIxRkYnLCAvLyBibHVlLmFjY2VudDFcbiAgZXJyb3I6ICcjRkY1MjUyJywgLy8gcmVkLmFjY2VudDJcbiAgaW5mbzogJyMyMTk2RjMnLCAvLyBibHVlLmJhc2VcbiAgc3VjY2VzczogJyM0Q0FGNTAnLCAvLyBncmVlbi5iYXNlXG4gIHdhcm5pbmc6ICcjRkZDMTA3JyAvLyBhbWJlci5iYXNlXG59O1xuXG5mdW5jdGlvbiB0aGVtZSgpIHtcbiAgdmFyIHRoZW1lID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB7fTtcblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgVEhFTUVfREVGQVVMVFMsIHRoZW1lKTtcbn1cblxuLyoqKi8gfSksXG4vKiA3OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gb3B0aW9ucztcbnZhciBPUFRJT05TX0RFRkFVTFRTID0ge1xuICB0aGVtZVZhcmlhdGlvbnM6IFsncHJpbWFyeScsICdzZWNvbmRhcnknLCAnYWNjZW50J10sXG4gIG1pbmlmeVRoZW1lOiBudWxsLFxuICB0aGVtZUNhY2hlOiBudWxsXG59O1xuXG5mdW5jdGlvbiBvcHRpb25zKCkge1xuICB2YXIgb3B0aW9ucyA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDoge307XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIE9QVElPTlNfREVGQVVMVFMsIG9wdGlvbnMpO1xufVxuXG4vKioqLyB9KSxcbi8qIDc5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBnb1RvO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9lYXNpbmdfcGF0dGVybnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODApO1xuXG5cblxudmFyIGRlZmF1bHRzID0ge1xuICBkdXJhdGlvbjogNTAwLFxuICBvZmZzZXQ6IDAsXG4gIGVhc2luZzogJ2Vhc2VJbk91dEN1YmljJ1xufTtcblxuZnVuY3Rpb24gZ2V0RG9jdW1lbnRIZWlnaHQoKSB7XG4gIHJldHVybiBNYXRoLm1heChkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdodCwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCwgZG9jdW1lbnQuYm9keS5vZmZzZXRIZWlnaHQsIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRIZWlnaHQsIGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0LCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KTtcbn1cblxuZnVuY3Rpb24gZ2V0V2luZG93SGVpZ2h0KCkge1xuICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IHx8IChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgfHwgZG9jdW1lbnQuYm9keSkuY2xpZW50SGVpZ2h0O1xufVxuXG5mdW5jdGlvbiBpc1Z1ZUNvbXBvbmVudChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPSBudWxsICYmIG9iai5faXNWdWU7XG59XG5cbmZ1bmN0aW9uIGdldFRhcmdldExvY2F0aW9uKHRhcmdldCwgc2V0dGluZ3MpIHtcbiAgdmFyIGxvY2F0aW9uID0gdm9pZCAwO1xuXG4gIGlmIChpc1Z1ZUNvbXBvbmVudCh0YXJnZXQpKSB7XG4gICAgdGFyZ2V0ID0gdGFyZ2V0LiRlbDtcbiAgfVxuXG4gIGlmICh0YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50KSB7XG4gICAgbG9jYXRpb24gPSB0YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgd2luZG93LnNjcm9sbFk7XG4gIH0gZWxzZSBpZiAodHlwZW9mIHRhcmdldCA9PT0gJ3N0cmluZycpIHtcbiAgICBsb2NhdGlvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGFyZ2V0KS5vZmZzZXRUb3A7XG4gIH0gZWxzZSBpZiAodHlwZW9mIHRhcmdldCA9PT0gJ251bWJlcicpIHtcbiAgICBsb2NhdGlvbiA9IHRhcmdldDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIE1hdGgucm91bmQoTWF0aC5taW4oTWF0aC5tYXgobG9jYXRpb24gKyBzZXR0aW5ncy5vZmZzZXQsIDApLCBnZXREb2N1bWVudEhlaWdodCgpIC0gZ2V0V2luZG93SGVpZ2h0KCkpKTtcbn1cblxuZnVuY3Rpb24gZ29Ubyh0YXJnZXQsIG9wdGlvbnMpIHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSByZXR1cm47XG5cbiAgdmFyIHNldHRpbmdzID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdHMsIG9wdGlvbnMpO1xuXG4gIHZhciBzdGFydFRpbWUgPSBwZXJmb3JtYW5jZS5ub3coKTtcbiAgdmFyIHN0YXJ0TG9jYXRpb24gPSB3aW5kb3cucGFnZVlPZmZzZXQ7XG4gIHZhciB0YXJnZXRMb2NhdGlvbiA9IGdldFRhcmdldExvY2F0aW9uKHRhcmdldCwgc2V0dGluZ3MpO1xuICB2YXIgZGlzdGFuY2VUb1Njcm9sbCA9IHRhcmdldExvY2F0aW9uIC0gc3RhcnRMb2NhdGlvbjtcbiAgdmFyIGVhc2luZ0Z1bmN0aW9uID0gdHlwZW9mIHNldHRpbmdzLmVhc2luZyA9PT0gJ2Z1bmN0aW9uJyA/IHNldHRpbmdzLmVhc2luZyA6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9lYXNpbmdfcGF0dGVybnNfX1tzZXR0aW5ncy5lYXNpbmddO1xuXG4gIGlmIChpc05hTih0YXJnZXRMb2NhdGlvbikpIHtcbiAgICB2YXIgdHlwZSA9IHRhcmdldCA9PSBudWxsID8gdGFyZ2V0IDogdGFyZ2V0LmNvbnN0cnVjdG9yLm5hbWU7XG4gICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYVwiIC8qIGNvbnNvbGVFcnJvciAqL10pKCdUYXJnZXQgbXVzdCBiZSBhIFNlbGVjdG9yL051bWJlci9ET01FbGVtZW50L1Z1ZUNvbXBvbmVudCwgcmVjZWl2ZWQgJyArIHR5cGUgKyAnIGluc3RlYWQuJyk7XG4gIH1cbiAgaWYgKCFlYXNpbmdGdW5jdGlvbikgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYVwiIC8qIGNvbnNvbGVFcnJvciAqL10pKCdFYXNpbmcgZnVuY3Rpb24gXFwnJyArIHNldHRpbmdzLmVhc2luZyArICdcXCcgbm90IGZvdW5kLicpO1xuXG4gIGZ1bmN0aW9uIHN0ZXAoY3VycmVudFRpbWUpIHtcbiAgICB2YXIgcHJvZ3Jlc3NQZXJjZW50YWdlID0gTWF0aC5taW4oMSwgKGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1lKSAvIHNldHRpbmdzLmR1cmF0aW9uKTtcbiAgICB2YXIgdGFyZ2V0UG9zaXRpb24gPSBNYXRoLmZsb29yKHN0YXJ0TG9jYXRpb24gKyBkaXN0YW5jZVRvU2Nyb2xsICogZWFzaW5nRnVuY3Rpb24ocHJvZ3Jlc3NQZXJjZW50YWdlKSk7XG5cbiAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgdGFyZ2V0UG9zaXRpb24pO1xuXG4gICAgaWYgKE1hdGgucm91bmQod2luZG93LnBhZ2VZT2Zmc2V0KSA9PT0gdGFyZ2V0TG9jYXRpb24gfHwgcHJvZ3Jlc3NQZXJjZW50YWdlID09PSAxKSByZXR1cm47XG5cbiAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApO1xuICB9XG5cbiAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTtcbn1cblxuLyoqKi8gfSksXG4vKiA4MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJsaW5lYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBsaW5lYXI7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJblF1YWRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5RdWFkOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlT3V0UXVhZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VPdXRRdWFkOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5PdXRRdWFkXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluT3V0UXVhZDsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZUluQ3ViaWNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5DdWJpYzsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZU91dEN1YmljXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZU91dEN1YmljOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5PdXRDdWJpY1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VJbk91dEN1YmljOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5RdWFydFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VJblF1YXJ0OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlT3V0UXVhcnRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlT3V0UXVhcnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJbk91dFF1YXJ0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluT3V0UXVhcnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJblF1aW50XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluUXVpbnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VPdXRRdWludFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VPdXRRdWludDsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZUluT3V0UXVpbnRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5PdXRRdWludDsgfSk7XG4vLyBsaW5lYXJcbnZhciBsaW5lYXIgPSBmdW5jdGlvbiBsaW5lYXIodCkge1xuICByZXR1cm4gdDtcbn07XG4vLyBhY2NlbGVyYXRpbmcgZnJvbSB6ZXJvIHZlbG9jaXR5XG52YXIgZWFzZUluUXVhZCA9IGZ1bmN0aW9uIGVhc2VJblF1YWQodCkge1xuICByZXR1cm4gdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0UXVhZCA9IGZ1bmN0aW9uIGVhc2VPdXRRdWFkKHQpIHtcbiAgcmV0dXJuIHQgKiAoMiAtIHQpO1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dFF1YWQgPSBmdW5jdGlvbiBlYXNlSW5PdXRRdWFkKHQpIHtcbiAgcmV0dXJuIHQgPCAwLjUgPyAyICogdCAqIHQgOiAtMSArICg0IC0gMiAqIHQpICogdDtcbn07XG4vLyBhY2NlbGVyYXRpbmcgZnJvbSB6ZXJvIHZlbG9jaXR5XG52YXIgZWFzZUluQ3ViaWMgPSBmdW5jdGlvbiBlYXNlSW5DdWJpYyh0KSB7XG4gIHJldHVybiB0ICogdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0Q3ViaWMgPSBmdW5jdGlvbiBlYXNlT3V0Q3ViaWModCkge1xuICByZXR1cm4gLS10ICogdCAqIHQgKyAxO1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dEN1YmljID0gZnVuY3Rpb24gZWFzZUluT3V0Q3ViaWModCkge1xuICByZXR1cm4gdCA8IDAuNSA/IDQgKiB0ICogdCAqIHQgOiAodCAtIDEpICogKDIgKiB0IC0gMikgKiAoMiAqIHQgLSAyKSArIDE7XG59O1xuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VJblF1YXJ0ID0gZnVuY3Rpb24gZWFzZUluUXVhcnQodCkge1xuICByZXR1cm4gdCAqIHQgKiB0ICogdDtcbn07XG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VPdXRRdWFydCA9IGZ1bmN0aW9uIGVhc2VPdXRRdWFydCh0KSB7XG4gIHJldHVybiAxIC0gLS10ICogdCAqIHQgKiB0O1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dFF1YXJ0ID0gZnVuY3Rpb24gZWFzZUluT3V0UXVhcnQodCkge1xuICByZXR1cm4gdCA8IDAuNSA/IDggKiB0ICogdCAqIHQgKiB0IDogMSAtIDggKiAtLXQgKiB0ICogdCAqIHQ7XG59O1xuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VJblF1aW50ID0gZnVuY3Rpb24gZWFzZUluUXVpbnQodCkge1xuICByZXR1cm4gdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0UXVpbnQgPSBmdW5jdGlvbiBlYXNlT3V0UXVpbnQodCkge1xuICByZXR1cm4gMSArIC0tdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG52YXIgZWFzZUluT3V0UXVpbnQgPSBmdW5jdGlvbiBlYXNlSW5PdXRRdWludCh0KSB7XG4gIHJldHVybiB0IDwgMC41ID8gMTYgKiB0ICogdCAqIHQgKiB0ICogdCA6IDEgKyAxNiAqIC0tdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuXG4vKioqLyB9KSxcbi8qIDgxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4Mik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQXBwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDgyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwX3RoZW1lX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19hcHBfYnJlYWtwb2ludF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gQ29tcG9uZW50IGxldmVsIG1peGluc1xuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1hcHAnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2FwcF9icmVha3BvaW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcF90aGVtZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBwcm9wczoge1xuICAgIGlkOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYXBwJ1xuICAgIH0sXG4gICAgZGFyazogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe30sICd0aGVtZS0tJyArICh0aGlzLmRhcmsgPyAnZGFyaycgOiAnbGlnaHQnKSwgdHJ1ZSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy4kdnVldGlmeS5kYXJrID0gdGhpcy5kYXJrO1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBkYXJrOiBmdW5jdGlvbiBkYXJrKCkge1xuICAgICAgdGhpcy4kdnVldGlmeS5kYXJrID0gdGhpcy5kYXJrO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2FwcGxpY2F0aW9uJyxcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGF0dHJzOiB7ICdkYXRhLWFwcCc6IHRydWUgfSxcbiAgICAgIGRvbVByb3BzOiB7IGlkOiB0aGlzLmlkIH0sXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAncmVzaXplJyxcbiAgICAgICAgdmFsdWU6IHRoaXMub25SZXNpemVcbiAgICAgIH1dXG4gICAgfTtcblxuICAgIHZhciB3cmFwcGVyID0gaCgnZGl2JywgeyBzdGF0aWNDbGFzczogJ2FwcGxpY2F0aW9uLS13cmFwJyB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbd3JhcHBlcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA4MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDg0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb2xvclV0aWxzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODUpO1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0eWxlOiBudWxsXG4gICAgfTtcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIHBhcnNlZFRoZW1lOiBmdW5jdGlvbiBwYXJzZWRUaGVtZSgpIHtcbiAgICAgIHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfX1tcImNcIiAvKiBwYXJzZSAqL10odGhpcy4kdnVldGlmeS50aGVtZSk7XG4gICAgfSxcblxuICAgIC8qKiBAcmV0dXJuIHN0cmluZyAqL1xuICAgIGdlbmVyYXRlZFN0eWxlczogZnVuY3Rpb24gZ2VuZXJhdGVkU3R5bGVzKCkge1xuICAgICAgdmFyIHRoZW1lID0gdGhpcy5wYXJzZWRUaGVtZTtcbiAgICAgIHZhciBjc3MgPSB2b2lkIDA7XG5cbiAgICAgIGlmICh0aGlzLiR2dWV0aWZ5Lm9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICAgIGNzcyA9IHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZUNhY2hlLmdldCh0aGVtZSk7XG4gICAgICAgIGlmIChjc3MgIT0gbnVsbCkgcmV0dXJuIGNzcztcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbG9ycyA9IE9iamVjdC5rZXlzKHRoZW1lKTtcbiAgICAgIGNzcyA9ICdhIHsgY29sb3I6ICcgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbG9yVXRpbHNfX1tcImJcIiAvKiBpbnRUb0hleCAqL10pKHRoZW1lLnByaW1hcnkpICsgJzsgfSc7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29sb3JzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIHZhciBuYW1lID0gY29sb3JzW2ldO1xuICAgICAgICB2YXIgdmFsdWUgPSB0aGVtZVtuYW1lXTtcbiAgICAgICAgaWYgKHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZVZhcmlhdGlvbnMuaW5jbHVkZXMobmFtZSkpIHtcbiAgICAgICAgICBjc3MgKz0gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX3RoZW1lX19bXCJiXCIgLyogZ2VuVmFyaWF0aW9ucyAqL10obmFtZSwgdmFsdWUpLmpvaW4oJycpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNzcyArPSBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfX1tcImFcIiAvKiBnZW5CYXNlQ29sb3IgKi9dKG5hbWUsIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5vcHRpb25zLm1pbmlmeVRoZW1lICE9IG51bGwpIHtcbiAgICAgICAgY3NzID0gdGhpcy4kdnVldGlmeS5vcHRpb25zLm1pbmlmeVRoZW1lKGNzcyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLiR2dWV0aWZ5Lm9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZUNhY2hlLnNldCh0aGVtZSwgY3NzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNzcztcbiAgICB9LFxuICAgIHZ1ZU1ldGE6IGZ1bmN0aW9uIHZ1ZU1ldGEoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdHlsZTogW3tcbiAgICAgICAgICBjc3NUZXh0OiB0aGlzLmdlbmVyYXRlZFN0eWxlcyxcbiAgICAgICAgICB0eXBlOiAndGV4dC9jc3MnLFxuICAgICAgICAgIGlkOiAndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0J1xuICAgICAgICB9XVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gUmVndWxhciB2dWUtbWV0YVxuICBtZXRhSW5mbzogZnVuY3Rpb24gbWV0YUluZm8oKSB7XG4gICAgcmV0dXJuIHRoaXMudnVlTWV0YTtcbiAgfSxcblxuXG4gIC8vIE51eHRcbiAgaGVhZDogZnVuY3Rpb24gaGVhZCgpIHtcbiAgICByZXR1cm4gdGhpcy52dWVNZXRhO1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBnZW5lcmF0ZWRTdHlsZXM6IGZ1bmN0aW9uIGdlbmVyYXRlZFN0eWxlcygpIHtcbiAgICAgICF0aGlzLm1ldGEgJiYgdGhpcy5hcHBseVRoZW1lKCk7XG4gICAgfVxuICB9LFxuXG4gIGNyZWF0ZWQ6IGZ1bmN0aW9uIGNyZWF0ZWQoKSB7XG4gICAgaWYgKHRoaXMuJG1ldGEpIHtcbiAgICAgIC8vIFZ1ZS1tZXRhXG4gICAgICAvLyBIYW5kbGVkIGJ5IG1ldGFJbmZvKCkvbnV4dCgpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnICYmIHRoaXMuJHNzckNvbnRleHQpIHtcbiAgICAgIC8vIFNTUlxuICAgICAgdGhpcy4kc3NyQ29udGV4dC5oZWFkID0gdGhpcy4kc3NyQ29udGV4dC5oZWFkIHx8ICcnO1xuICAgICAgdGhpcy4kc3NyQ29udGV4dC5oZWFkICs9ICc8c3R5bGUgdHlwZT1cInRleHQvY3NzXCIgaWQ9XCJ2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXRcIj4nICsgdGhpcy5nZW5lcmF0ZWRTdHlsZXMgKyAnPC9zdHlsZT4nO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgLy8gQ2xpZW50LXNpZGVcbiAgICAgIHRoaXMuZ2VuU3R5bGUoKTtcbiAgICAgIHRoaXMuYXBwbHlUaGVtZSgpO1xuICAgIH1cbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBhcHBseVRoZW1lOiBmdW5jdGlvbiBhcHBseVRoZW1lKCkge1xuICAgICAgaWYgKHRoaXMuc3R5bGUpIHRoaXMuc3R5bGUuaW5uZXJIVE1MID0gdGhpcy5nZW5lcmF0ZWRTdHlsZXM7XG4gICAgfSxcbiAgICBnZW5TdHlsZTogZnVuY3Rpb24gZ2VuU3R5bGUoKSB7XG4gICAgICB2YXIgc3R5bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0Jyk7XG5cbiAgICAgIGlmICghc3R5bGUpIHtcbiAgICAgICAgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcbiAgICAgICAgc3R5bGUuaWQgPSAndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0JztcbiAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3R5bGUgPSBzdHlsZTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDg1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImNcIl0gPSBwYXJzZTtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gZ2VuVmFyaWF0aW9ucztcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZ2VuQmFzZUNvbG9yOyB9KTtcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBnZW5WYXJpYW50Q29sb3IgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yVXRpbHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29sb3JfdHJhbnNmb3JtU1JHQl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4Nik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODcpO1xuXG5cblxuXG4vKipcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGVtZVxuICogQHJldHVybnMge29iamVjdH1cbiAqL1xuZnVuY3Rpb24gcGFyc2UodGhlbWUpIHtcbiAgdmFyIGNvbG9ycyA9IE9iamVjdC5rZXlzKHRoZW1lKTtcbiAgdmFyIHBhcnNlZFRoZW1lID0ge307XG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICB2YXIgbmFtZSA9IGNvbG9yc1tpXTtcbiAgICB2YXIgdmFsdWUgPSB0aGVtZVtuYW1lXTtcblxuICAgIHBhcnNlZFRoZW1lW25hbWVdID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYVwiIC8qIGNvbG9yVG9JbnQgKi9dKSh2YWx1ZSk7XG4gIH1cblxuICByZXR1cm4gcGFyc2VkVGhlbWU7XG59XG5cbmZ1bmN0aW9uIGdlblZhcmlhdGlvbnMobmFtZSwgdmFsdWUpIHtcbiAgdmFyIHZhbHVlcyA9IEFycmF5KDEwKTtcbiAgdmFsdWVzWzBdID0gZ2VuQmFzZUNvbG9yKG5hbWUsIHZhbHVlKTtcblxuICBmb3IgKHZhciBpID0gMSwgbiA9IDU7IGkgPD0gNTsgKytpLCAtLW4pIHtcbiAgICB2YWx1ZXNbaV0gPSBnZW5WYXJpYW50Q29sb3IobmFtZSwgbGlnaHRlbih2YWx1ZSwgbiksICdsaWdodGVuJywgbik7XG4gIH1cblxuICBmb3IgKHZhciBfaSA9IDE7IF9pIDw9IDQ7ICsrX2kpIHtcbiAgICB2YWx1ZXNbX2kgKyA1XSA9IGdlblZhcmlhbnRDb2xvcihuYW1lLCBkYXJrZW4odmFsdWUsIF9pKSwgJ2RhcmtlbicsIF9pKTtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZXM7XG59XG5cbmZ1bmN0aW9uIGxpZ2h0ZW4odmFsdWUsIGFtb3VudCkge1xuICB2YXIgbGFiID0gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfX1tcImFcIiAvKiBmcm9tWFlaICovXShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yX3RyYW5zZm9ybVNSR0JfX1tcImJcIiAvKiB0b1hZWiAqL10odmFsdWUpKTtcbiAgbGFiWzBdID0gbGFiWzBdICsgYW1vdW50ICogMTA7XG4gIHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yX3RyYW5zZm9ybVNSR0JfX1tcImFcIiAvKiBmcm9tWFlaICovXShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2NvbG9yX3RyYW5zZm9ybUNJRUxBQl9fW1wiYlwiIC8qIHRvWFlaICovXShsYWIpKTtcbn1cblxuZnVuY3Rpb24gZGFya2VuKHZhbHVlLCBhbW91bnQpIHtcbiAgdmFyIGxhYiA9IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fY29sb3JfdHJhbnNmb3JtQ0lFTEFCX19bXCJhXCIgLyogZnJvbVhZWiAqL10oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb2xvcl90cmFuc2Zvcm1TUkdCX19bXCJiXCIgLyogdG9YWVogKi9dKHZhbHVlKSk7XG4gIGxhYlswXSA9IGxhYlswXSAtIGFtb3VudCAqIDEwO1xuICByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb2xvcl90cmFuc2Zvcm1TUkdCX19bXCJhXCIgLyogZnJvbVhZWiAqL10oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfX1tcImJcIiAvKiB0b1hZWiAqL10obGFiKSk7XG59XG5cbi8qKlxuICogR2VuZXJhdGUgdGhlIENTUyBmb3IgYSBiYXNlIGNvbG9yICgucHJpbWFyeSlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIFRoZSBjb2xvciBuYW1lXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IHZhbHVlIC0gVGhlIGNvbG9yIHZhbHVlXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG52YXIgZ2VuQmFzZUNvbG9yID0gZnVuY3Rpb24gZ2VuQmFzZUNvbG9yKG5hbWUsIHZhbHVlKSB7XG4gIHZhbHVlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYlwiIC8qIGludFRvSGV4ICovXSkodmFsdWUpO1xuICByZXR1cm4gJ1xcbi4nICsgbmFtZSArICcge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJyArIHZhbHVlICsgJyAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLXRleHQge1xcbiAgY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy0tdGV4dCBpbnB1dCxcXG4uJyArIG5hbWUgKyAnLS10ZXh0IHRleHRhcmVhIHtcXG4gIGNhcmV0LWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLWFmdGVyOjphZnRlciB7XFxuICBiYWNrZ3JvdW5kOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufSc7XG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIHRoZSBDU1MgZm9yIGEgdmFyaWFudCBjb2xvciAoLnByaW1hcnkuZGFya2VuLTIpXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBUaGUgY29sb3IgbmFtZVxuICogQHBhcmFtIHtzdHJpbmd8bnVtYmVyfSB2YWx1ZSAtIFRoZSBjb2xvciB2YWx1ZVxuICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgLSBUaGUgdmFyaWFudCB0eXBlIChkYXJrZW4vbGlnaHRlbilcbiAqIEBwYXJhbSB7bnVtYmVyfSBuIC0gVGhlIGRhcmtlbi9saWdodGVuIHN0ZXAgbnVtYmVyXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG52YXIgZ2VuVmFyaWFudENvbG9yID0gZnVuY3Rpb24gZ2VuVmFyaWFudENvbG9yKG5hbWUsIHZhbHVlLCB0eXBlLCBuKSB7XG4gIHZhbHVlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYlwiIC8qIGludFRvSGV4ICovXSkodmFsdWUpO1xuICByZXR1cm4gJ1xcbi4nICsgbmFtZSArICcuJyArIHR5cGUgKyAnLScgKyBuICsgJyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxuICBib3JkZXItY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy0tdGV4dC50ZXh0LS0nICsgdHlwZSArICctJyArIG4gKyAnIHtcXG4gIGNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLXRleHQudGV4dC0tJyArIHR5cGUgKyAnLScgKyBuICsgJyBpbnB1dCxcXG4uJyArIG5hbWUgKyAnLS10ZXh0LnRleHQtLScgKyB0eXBlICsgJy0nICsgbiArICcgdGV4dGFyZWEge1xcbiAgY2FyZXQtY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy4nICsgdHlwZSArICctJyArIG4gKyAnLS1hZnRlcjo6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZDogJyArIHZhbHVlICsgJyAhaW1wb3J0YW50O1xcbn0nO1xufTtcblxuLyoqKi8gfSksXG4vKiA4NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gZnJvbVhZWjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gdG9YWVo7XG4vLyBGb3IgY29udmVydGluZyBYWVogdG8gc1JHQlxudmFyIHNyZ2JGb3J3YXJkTWF0cml4ID0gW1szLjI0MDYsIC0xLjUzNzIsIC0wLjQ5ODZdLCBbLTAuOTY4OSwgMS44NzU4LCAwLjA0MTVdLCBbMC4wNTU3LCAtMC4yMDQwLCAxLjA1NzBdXTtcblxuLy8gRm9yd2FyZCBnYW1tYSBhZGp1c3RcbnZhciBzcmdiRm9yd2FyZFRyYW5zZm9ybSA9IGZ1bmN0aW9uIHNyZ2JGb3J3YXJkVHJhbnNmb3JtKEMpIHtcbiAgcmV0dXJuIEMgPD0gMC4wMDMxMzA4ID8gQyAqIDEyLjkyIDogMS4wNTUgKiBNYXRoLnBvdyhDLCAxIC8gMi40KSAtIDAuMDU1O1xufTtcblxuLy8gRm9yIGNvbnZlcnRpbmcgc1JHQiB0byBYWVpcbnZhciBzcmdiUmV2ZXJzZU1hdHJpeCA9IFtbMC40MTI0LCAwLjM1NzYsIDAuMTgwNV0sIFswLjIxMjYsIDAuNzE1MiwgMC4wNzIyXSwgWzAuMDE5MywgMC4xMTkyLCAwLjk1MDVdXTtcblxuLy8gUmV2ZXJzZSBnYW1tYSBhZGp1c3RcbnZhciBzcmdiUmV2ZXJzZVRyYW5zZm9ybSA9IGZ1bmN0aW9uIHNyZ2JSZXZlcnNlVHJhbnNmb3JtKEMpIHtcbiAgcmV0dXJuIEMgPD0gMC4wNDA0NSA/IEMgLyAxMi45MiA6IE1hdGgucG93KChDICsgMC4wNTUpIC8gMS4wNTUsIDIuNCk7XG59O1xuXG5mdW5jdGlvbiBjbGFtcCh2YWx1ZSkge1xuICByZXR1cm4gTWF0aC5tYXgoMCwgTWF0aC5taW4oMSwgdmFsdWUpKTtcbn1cblxuZnVuY3Rpb24gZnJvbVhZWih4eXopIHtcbiAgdmFyIHJnYiA9IEFycmF5KDMpO1xuICB2YXIgdHJhbnNmb3JtID0gc3JnYkZvcndhcmRUcmFuc2Zvcm07XG4gIHZhciBtYXRyaXggPSBzcmdiRm9yd2FyZE1hdHJpeDtcblxuICAvLyBNYXRyaXggdHJhbnNmb3JtLCB0aGVuIGdhbW1hIGFkanVzdG1lbnRcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICByZ2JbaV0gPSBNYXRoLnJvdW5kKGNsYW1wKHRyYW5zZm9ybShtYXRyaXhbaV1bMF0gKiB4eXpbMF0gKyBtYXRyaXhbaV1bMV0gKiB4eXpbMV0gKyBtYXRyaXhbaV1bMl0gKiB4eXpbMl0pKSAqIDI1NSk7XG4gIH1cblxuICAvLyBSZXNjYWxlIGJhY2sgdG8gWzAsIDI1NV1cbiAgcmV0dXJuIChyZ2JbMF0gPDwgMTYpICsgKHJnYlsxXSA8PCA4KSArIChyZ2JbMl0gPDwgMCk7XG59XG5cbmZ1bmN0aW9uIHRvWFlaKHJnYikge1xuICB2YXIgeHl6ID0gQXJyYXkoMyk7XG4gIHZhciB0cmFuc2Zvcm0gPSBzcmdiUmV2ZXJzZVRyYW5zZm9ybTtcbiAgdmFyIG1hdHJpeCA9IHNyZ2JSZXZlcnNlTWF0cml4O1xuXG4gIC8vIFJlc2NhbGUgZnJvbSBbMCwgMjU1XSB0byBbMCwgMV0gdGhlbiBhZGp1c3Qgc1JHQiBnYW1tYSB0byBsaW5lYXIgUkdCXG4gIHZhciByID0gdHJhbnNmb3JtKChyZ2IgPj4gMTYgJiAweGZmKSAvIDI1NSk7XG4gIHZhciBnID0gdHJhbnNmb3JtKChyZ2IgPj4gOCAmIDB4ZmYpIC8gMjU1KTtcbiAgdmFyIGIgPSB0cmFuc2Zvcm0oKHJnYiA+PiAwICYgMHhmZikgLyAyNTUpO1xuXG4gIC8vIE1hdHJpeCBjb2xvciBzcGFjZSB0cmFuc2Zvcm1cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICB4eXpbaV0gPSBtYXRyaXhbaV1bMF0gKiByICsgbWF0cml4W2ldWzFdICogZyArIG1hdHJpeFtpXVsyXSAqIGI7XG4gIH1cblxuICByZXR1cm4geHl6O1xufVxuXG4vKioqLyB9KSxcbi8qIDg3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBmcm9tWFlaO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSB0b1hZWjtcbnZhciBkZWx0YSA9IDAuMjA2ODk2NTUxNzI0MTM3OTM7IC8vIDbDtzI5XG5cbnZhciBjaWVsYWJGb3J3YXJkVHJhbnNmb3JtID0gZnVuY3Rpb24gY2llbGFiRm9yd2FyZFRyYW5zZm9ybSh0KSB7XG4gIHJldHVybiB0ID4gTWF0aC5wb3coZGVsdGEsIDMpID8gTWF0aC5jYnJ0KHQpIDogdCAvICgzICogTWF0aC5wb3coZGVsdGEsIDIpKSArIDQgLyAyOTtcbn07XG5cbnZhciBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtID0gZnVuY3Rpb24gY2llbGFiUmV2ZXJzZVRyYW5zZm9ybSh0KSB7XG4gIHJldHVybiB0ID4gZGVsdGEgPyBNYXRoLnBvdyh0LCAzKSA6IDMgKiBNYXRoLnBvdyhkZWx0YSwgMikgKiAodCAtIDQgLyAyOSk7XG59O1xuXG5mdW5jdGlvbiBmcm9tWFlaKHh5eikge1xuICB2YXIgdHJhbnNmb3JtID0gY2llbGFiRm9yd2FyZFRyYW5zZm9ybTtcbiAgdmFyIHRyYW5zZm9ybWVkWSA9IHRyYW5zZm9ybSh4eXpbMV0pO1xuXG4gIHJldHVybiBbMTE2ICogdHJhbnNmb3JtZWRZIC0gMTYsIDUwMCAqICh0cmFuc2Zvcm0oeHl6WzBdIC8gMC45NTA0NykgLSB0cmFuc2Zvcm1lZFkpLCAyMDAgKiAodHJhbnNmb3JtZWRZIC0gdHJhbnNmb3JtKHh5elsyXSAvIDEuMDg4ODMpKV07XG59XG5cbmZ1bmN0aW9uIHRvWFlaKGxhYikge1xuICB2YXIgdHJhbnNmb3JtID0gY2llbGFiUmV2ZXJzZVRyYW5zZm9ybTtcbiAgdmFyIExuID0gKGxhYlswXSArIDE2KSAvIDExNjtcbiAgcmV0dXJuIFt0cmFuc2Zvcm0oTG4gKyBsYWJbMV0gLyA1MDApICogMC45NTA0NywgdHJhbnNmb3JtKExuKSwgdHJhbnNmb3JtKExuIC0gbGFiWzJdIC8gMjAwKSAqIDEuMDg4ODNdO1xufVxuXG4vKioqLyB9KSxcbi8qIDg4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBBIG1vZGlmaWVkIHZlcnNpb24gb2YgaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vY2IxMDkvYjA3NGE2NWY3NTk1Y2ZmYzIxY2VhNTljZThkMTVmOWJcbiAqL1xuXG4vKipcbiAqIEEgVnVlIG1peGluIHRvIGdldCB0aGUgY3VycmVudCB3aWR0aC9oZWlnaHQgYW5kIHRoZSBhc3NvY2lhdGVkIGJyZWFrcG9pbnQuXG4gKlxuICogVXNlZnVsIHRvIGUuZy4gYWRhcHQgdGhlIHVzZXIgaW50ZXJmYWNlIGZyb20gaW5zaWRlIGEgVnVlIGNvbXBvbmVudFxuICogYXMgb3Bwb3NlZCB0byB1c2luZyBDU1MgY2xhc3Nlcy4gVGhlIGJyZWFrcG9pbnQgcGl4ZWwgdmFsdWVzIGFuZFxuICogcmFuZ2UgbmFtZXMgYXJlIHRha2VuIGZyb20gVnVldGlmeSAoaHR0cHM6Ly9naXRodWIuY29tL3Z1ZXRpZnlqcykuXG4gKlxuICogVXNlIHdpdGhpbiBhIGNvbXBvbmVudDpcbiAqXG4gKiAgIGltcG9ydCBicmVha3BvaW50IGZyb20gJy4vYnJlYWtwb2ludC5qcydcbiAqXG4gKiAgIGV4cG9ydCBkZWZhdWx0IHtcbiAqICAgICBuYW1lOiAnbXktY29tcG9uZW50JyxcbiAqICAgICBtaXhpbnM6IFticmVha3BvaW50XSxcbiAqICAgICAuLi5cbiAqXG4gKiBUaGVuIGluc2lkZSBhIHRlbXBsYXRlOlxuICpcbiAqICAgPGRpdiB2LWlmPVwiJGJyZWFrcG9pbnQuc21BbmREb3duXCI+Li4uPC9kaXY+XG4gKi9cbnZhciBicmVha3BvaW50ID0ge1xuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjbGllbnRXaWR0aDogY2xpZW50RGltZW5zaW9ucy5nZXRXaWR0aCgpLFxuICAgICAgY2xpZW50SGVpZ2h0OiBjbGllbnREaW1lbnNpb25zLmdldEhlaWdodCgpLFxuICAgICAgcmVzaXplVGltZW91dDogbnVsbFxuICAgIH07XG4gIH0sXG5cblxuICBjb21wdXRlZDoge1xuICAgIGJyZWFrcG9pbnQ6IGZ1bmN0aW9uIGJyZWFrcG9pbnQoKSB7XG4gICAgICB2YXIgeHMgPSB0aGlzLmNsaWVudFdpZHRoIDwgNjAwO1xuICAgICAgdmFyIHNtID0gdGhpcy5jbGllbnRXaWR0aCA8IDk2MCAmJiAheHM7XG4gICAgICB2YXIgbWQgPSB0aGlzLmNsaWVudFdpZHRoIDwgMTI4MCAtIDE2ICYmICEoc20gfHwgeHMpO1xuICAgICAgdmFyIGxnID0gdGhpcy5jbGllbnRXaWR0aCA8IDE5MjAgLSAxNiAmJiAhKG1kIHx8IHNtIHx8IHhzKTtcbiAgICAgIHZhciB4bCA9IHRoaXMuY2xpZW50V2lkdGggPj0gMTkyMCAtIDE2ICYmICEobGcgfHwgbWQgfHwgc20gfHwgeHMpO1xuXG4gICAgICB2YXIgeHNPbmx5ID0geHM7XG4gICAgICB2YXIgc21Pbmx5ID0gc207XG4gICAgICB2YXIgc21BbmREb3duID0gKHhzIHx8IHNtKSAmJiAhKG1kIHx8IGxnIHx8IHhsKTtcbiAgICAgIHZhciBzbUFuZFVwID0gIXhzICYmIChzbSB8fCBtZCB8fCBsZyB8fCB4bCk7XG4gICAgICB2YXIgbWRPbmx5ID0gbWQ7XG4gICAgICB2YXIgbWRBbmREb3duID0gKHhzIHx8IHNtIHx8IG1kKSAmJiAhKGxnIHx8IHhsKTtcbiAgICAgIHZhciBtZEFuZFVwID0gISh4cyB8fCBzbSkgJiYgKG1kIHx8IGxnIHx8IHhsKTtcbiAgICAgIHZhciBsZ09ubHkgPSBsZztcbiAgICAgIHZhciBsZ0FuZERvd24gPSAoeHMgfHwgc20gfHwgbWQgfHwgbGcpICYmICF4bDtcbiAgICAgIHZhciBsZ0FuZFVwID0gISh4cyB8fCBzbSB8fCBtZCkgJiYgKGxnIHx8IHhsKTtcbiAgICAgIHZhciB4bE9ubHkgPSB4bDtcblxuICAgICAgdmFyIG5hbWUgPSB2b2lkIDA7XG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgY2FzZSB4czpcbiAgICAgICAgICBuYW1lID0gJ3hzJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBzbTpcbiAgICAgICAgICBuYW1lID0gJ3NtJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBtZDpcbiAgICAgICAgICBuYW1lID0gJ21kJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBsZzpcbiAgICAgICAgICBuYW1lID0gJ2xnJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBuYW1lID0gJ3hsJztcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgdmFyIHJlc3VsdCA9IHtcbiAgICAgICAgLy8gRGVmaW5pdGUgYnJlYWtwb2ludC5cbiAgICAgICAgeHM6IHhzLFxuICAgICAgICBzbTogc20sXG4gICAgICAgIG1kOiBtZCxcbiAgICAgICAgbGc6IGxnLFxuICAgICAgICB4bDogeGwsXG5cbiAgICAgICAgLy8gVXNlZnVsIGUuZy4gdG8gY29uc3RydWN0IENTUyBjbGFzcyBuYW1lcyBkeW5hbWljYWxseS5cbiAgICAgICAgbmFtZTogbmFtZSxcblxuICAgICAgICAvLyBCcmVha3BvaW50IHJhbmdlcy5cbiAgICAgICAgeHNPbmx5OiB4c09ubHksXG4gICAgICAgIHNtT25seTogc21Pbmx5LFxuICAgICAgICBzbUFuZERvd246IHNtQW5kRG93bixcbiAgICAgICAgc21BbmRVcDogc21BbmRVcCxcbiAgICAgICAgbWRPbmx5OiBtZE9ubHksXG4gICAgICAgIG1kQW5kRG93bjogbWRBbmREb3duLFxuICAgICAgICBtZEFuZFVwOiBtZEFuZFVwLFxuICAgICAgICBsZ09ubHk6IGxnT25seSxcbiAgICAgICAgbGdBbmREb3duOiBsZ0FuZERvd24sXG4gICAgICAgIGxnQW5kVXA6IGxnQW5kVXAsXG4gICAgICAgIHhsT25seTogeGxPbmx5LFxuXG4gICAgICAgIC8vIEZvciBjdXN0b20gYnJlYWtwb2ludCBsb2dpYy5cbiAgICAgICAgd2lkdGg6IHRoaXMuY2xpZW50V2lkdGgsXG4gICAgICAgIGhlaWdodDogdGhpcy5jbGllbnRIZWlnaHRcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgYnJlYWtwb2ludDogZnVuY3Rpb24gYnJlYWtwb2ludCh2YWwpIHtcbiAgICAgIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludCA9IHZhbDtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQgPSB0aGlzLmJyZWFrcG9pbnQ7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgb25SZXNpemU6IGZ1bmN0aW9uIG9uUmVzaXplKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVzaXplVGltZW91dCk7XG5cbiAgICAgIC8vIEFkZGVkIGRlYm91bmNlIHRvIG1hdGNoIHdoYXRcbiAgICAgIC8vIHYtcmVzaXplIHVzZWQgdG8gZG8gYnV0IHdhc1xuICAgICAgLy8gcmVtb3ZlZCBkdWUgdG8gYSBtZW1vcnkgbGVha1xuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3Z1ZXRpZnlqcy92dWV0aWZ5L3B1bGwvMjk5N1xuICAgICAgdGhpcy5yZXNpemVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLmNsaWVudFdpZHRoID0gY2xpZW50RGltZW5zaW9ucy5nZXRXaWR0aCgpO1xuICAgICAgICBfdGhpcy5jbGllbnRIZWlnaHQgPSBjbGllbnREaW1lbnNpb25zLmdldEhlaWdodCgpO1xuICAgICAgfSwgMjAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBDcm9zcy1icm93c2VyIHN1cHBvcnQgYXMgZGVzY3JpYmVkIGluOlxuICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMjQ4MDgxXG59O3ZhciBjbGllbnREaW1lbnNpb25zID0ge1xuICBnZXRXaWR0aDogZnVuY3Rpb24gZ2V0V2lkdGgoKSB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiAwOyAvLyBTU1JcbiAgICByZXR1cm4gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoLCB3aW5kb3cuaW5uZXJXaWR0aCB8fCAwKTtcbiAgfSxcbiAgZ2V0SGVpZ2h0OiBmdW5jdGlvbiBnZXRIZWlnaHQoKSB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiAwOyAvLyBTU1JcbiAgICByZXR1cm4gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCwgd2luZG93LmlubmVySGVpZ2h0IHx8IDApO1xuICB9XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGJyZWFrcG9pbnQpO1xuXG4vKioqLyB9KSxcbi8qIDg5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFsZXJ0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkwKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQWxlcnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBbGVydF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFsZXJ0X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBbGVydF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA5MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdHJhbnNpdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQpO1xuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1hbGVydCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdHJhbnNpdGlvbmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNtaXNzaWJsZTogQm9vbGVhbixcbiAgICBpY29uOiBTdHJpbmcsXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2YWwpIHtcbiAgICAgICAgcmV0dXJuIFsnaW5mbycsICdlcnJvcicsICdzdWNjZXNzJywgJ3dhcm5pbmcnXS5pbmNsdWRlcyh2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdlcnJvcidcbiAgICB9O1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjb2xvciA9IHRoaXMudHlwZSAmJiAhdGhpcy5jb2xvciA/IHRoaXMudHlwZSA6IHRoaXMuY29tcHV0ZWRDb2xvcjtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnYWxlcnQtLWRpc21pc3NpYmxlJzogdGhpcy5kaXNtaXNzaWJsZSxcbiAgICAgICAgJ2FsZXJ0LS1vdXRsaW5lJzogdGhpcy5vdXRsaW5lXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gdGhpcy5vdXRsaW5lID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzLCBjb2xvcikgOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMsIGNvbG9yKTtcbiAgICB9LFxuICAgIGNvbXB1dGVkSWNvbjogZnVuY3Rpb24gY29tcHV0ZWRJY29uKCkge1xuICAgICAgaWYgKHRoaXMuaWNvbiB8fCAhdGhpcy50eXBlKSByZXR1cm4gdGhpcy5pY29uO1xuXG4gICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgICByZXR1cm4gJ2luZm8nO1xuICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgcmV0dXJuICd3YXJuaW5nJztcbiAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgICAgcmV0dXJuICdjaGVja19jaXJjbGUnO1xuICAgICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgICByZXR1cm4gJ3ByaW9yaXR5X2hpZ2gnO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtoKCdkaXYnLCB0aGlzLiRzbG90cy5kZWZhdWx0KV07XG5cbiAgICBpZiAodGhpcy5jb21wdXRlZEljb24pIHtcbiAgICAgIGNoaWxkcmVuLnVuc2hpZnQoaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgJ2NsYXNzJzogJ2FsZXJ0X19pY29uJ1xuICAgICAgfSwgdGhpcy5jb21wdXRlZEljb24pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kaXNtaXNzaWJsZSkge1xuICAgICAgdmFyIGNsb3NlID0gaCgnYScsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2FsZXJ0X19kaXNtaXNzaWJsZScsXG4gICAgICAgIG9uOiB7IGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy4kZW1pdCgnaW5wdXQnLCBmYWxzZSk7XG4gICAgICAgICAgfSB9XG4gICAgICB9LCBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICByaWdodDogdHJ1ZVxuICAgICAgICB9XG4gICAgICB9LCAnY2FuY2VsJyldKTtcblxuICAgICAgY2hpbGRyZW4ucHVzaChjbG9zZSk7XG4gICAgfVxuXG4gICAgdmFyIGFsZXJ0ID0gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdhbGVydCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgIHZhbHVlOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9XSxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9LCBjaGlsZHJlbik7XG5cbiAgICBpZiAoIXRoaXMudHJhbnNpdGlvbikgcmV0dXJuIGFsZXJ0O1xuXG4gICAgcmV0dXJuIGgoJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLnRyYW5zaXRpb24sXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZVxuICAgICAgfVxuICAgIH0sIFthbGVydF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDkyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaWNvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pY29uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2ljb25zX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG5cblxuXG5cbnZhciBTSVpFX01BUCA9IHtcbiAgc21hbGw6ICcxNnB4JyxcbiAgZGVmYXVsdDogJzI0cHgnLFxuICBtZWRpdW06ICcyOHB4JyxcbiAgbGFyZ2U6ICczNnB4JyxcbiAgeExhcmdlOiAnNDBweCdcbn07XG5cbmZ1bmN0aW9uIGlzRm9udEF3ZXNvbWU1KGljb25UeXBlKSB7XG4gIHJldHVybiBbJ2ZhcycsICdmYXInLCAnZmFsJywgJ2ZhYiddLnNvbWUoZnVuY3Rpb24gKHZhbCkge1xuICAgIHJldHVybiBpY29uVHlwZS5pbmNsdWRlcyh2YWwpO1xuICB9KTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWljb24nLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIGxlZnQ6IEJvb2xlYW4sXG4gICAgbWVkaXVtOiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ11cbiAgICB9LFxuICAgIHNtYWxsOiBCb29sZWFuLFxuICAgIHhMYXJnZTogQm9vbGVhblxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBkYXRhID0gX3JlZi5kYXRhLFxuICAgICAgICBfcmVmJGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgY2hpbGRyZW4gPSBfcmVmJGNoaWxkcmVuID09PSB1bmRlZmluZWQgPyBbXSA6IF9yZWYkY2hpbGRyZW47XG4gICAgdmFyIHNtYWxsID0gcHJvcHMuc21hbGwsXG4gICAgICAgIG1lZGl1bSA9IHByb3BzLm1lZGl1bSxcbiAgICAgICAgbGFyZ2UgPSBwcm9wcy5sYXJnZSxcbiAgICAgICAgeExhcmdlID0gcHJvcHMueExhcmdlO1xuXG4gICAgdmFyIHNpemVzID0geyBzbWFsbDogc21hbGwsIG1lZGl1bTogbWVkaXVtLCBsYXJnZTogbGFyZ2UsIHhMYXJnZTogeExhcmdlIH07XG4gICAgdmFyIGV4cGxpY2l0U2l6ZSA9IE9iamVjdC5rZXlzKHNpemVzKS5maW5kKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIHJldHVybiBzaXplc1trZXldICYmIGtleTtcbiAgICB9KTtcbiAgICB2YXIgZm9udFNpemUgPSBleHBsaWNpdFNpemUgJiYgU0laRV9NQVBbZXhwbGljaXRTaXplXSB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfX1tcImJcIiAvKiBjb252ZXJ0VG9Vbml0ICovXSkocHJvcHMuc2l6ZSk7XG5cbiAgICBpZiAoZm9udFNpemUpIGRhdGEuc3R5bGUgPSBfZXh0ZW5kcyh7IGZvbnRTaXplOiBmb250U2l6ZSB9LCBkYXRhLnN0eWxlKTtcblxuICAgIHZhciBpY29uTmFtZSA9ICcnO1xuICAgIGlmIChjaGlsZHJlbi5sZW5ndGgpIGljb25OYW1lID0gY2hpbGRyZW4ucG9wKCkudGV4dDtcbiAgICAvLyBTdXBwb3J0IHVzYWdlIG9mIHYtdGV4dCBhbmQgdi1odG1sXG4gICAgZWxzZSBpZiAoZGF0YS5kb21Qcm9wcykge1xuICAgICAgICBpY29uTmFtZSA9IGRhdGEuZG9tUHJvcHMudGV4dENvbnRlbnQgfHwgZGF0YS5kb21Qcm9wcy5pbm5lckhUTUwgfHwgaWNvbk5hbWU7XG5cbiAgICAgICAgLy8gUmVtb3ZlIG5vZGVzIHNvIGl0IGRvZXNuJ3RcbiAgICAgICAgLy8gb3ZlcndyaXRlIG91ciBjaGFuZ2VzXG4gICAgICAgIGRlbGV0ZSBkYXRhLmRvbVByb3BzLnRleHRDb250ZW50O1xuICAgICAgICBkZWxldGUgZGF0YS5kb21Qcm9wcy5pbm5lckhUTUw7XG4gICAgICB9XG5cbiAgICB2YXIgaWNvblR5cGUgPSAnbWF0ZXJpYWwtaWNvbnMnO1xuICAgIC8vIE1hdGVyaWFsIEljb24gZGVsaW1pdGVyIGlzIF9cbiAgICAvLyBodHRwczovL21hdGVyaWFsLmlvL2ljb25zL1xuICAgIHZhciBkZWxpbWl0ZXJJbmRleCA9IGljb25OYW1lLmluZGV4T2YoJy0nKTtcbiAgICB2YXIgaXNDdXN0b21JY29uID0gZGVsaW1pdGVySW5kZXggPiAtMTtcblxuICAgIGlmIChpc0N1c3RvbUljb24pIHtcbiAgICAgIGljb25UeXBlID0gaWNvbk5hbWUuc2xpY2UoMCwgZGVsaW1pdGVySW5kZXgpO1xuXG4gICAgICBpZiAoaXNGb250QXdlc29tZTUoaWNvblR5cGUpKSBpY29uVHlwZSA9ICcnO1xuICAgICAgLy8gQXNzdW1lIGlmIG5vdCBhIGN1c3RvbSBpY29uXG4gICAgICAvLyBpcyBNYXRlcmlhbCBJY29uIGZvbnRcbiAgICB9IGVsc2UgY2hpbGRyZW4ucHVzaChpY29uTmFtZSk7XG5cbiAgICBkYXRhLmF0dHJzID0gZGF0YS5hdHRycyB8fCB7fTtcbiAgICBpZiAoISgnYXJpYS1oaWRkZW4nIGluIGRhdGEuYXR0cnMpKSB7XG4gICAgICBkYXRhLmF0dHJzWydhcmlhLWhpZGRlbiddID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgJ2ljb24tLWRpc2FibGVkJzogcHJvcHMuZGlzYWJsZWQsXG4gICAgICAnaWNvbi0tbGVmdCc6IHByb3BzLmxlZnQsXG4gICAgICAnaWNvbi0tcmlnaHQnOiBwcm9wcy5yaWdodCxcbiAgICAgICd0aGVtZS0tZGFyayc6IHByb3BzLmRhcmssXG4gICAgICAndGhlbWUtLWxpZ2h0JzogcHJvcHMubGlnaHRcbiAgICB9LCBwcm9wcy5jb2xvciA/IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm1ldGhvZHMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MuY2FsbChwcm9wcywge30sIHByb3BzLmNvbG9yKSA6IHt9KTtcblxuICAgIC8vIE9yZGVyIGNsYXNzZXNcbiAgICAvLyAqIENvbXBvbmVudCBjbGFzc1xuICAgIC8vICogVnVldGlmeSBjbGFzc2VzXG4gICAgLy8gKiBJY29uIENsYXNzZXNcbiAgICBkYXRhLnN0YXRpY0NsYXNzID0gWydpY29uJywgZGF0YS5zdGF0aWNDbGFzcywgT2JqZWN0LmtleXMoY2xhc3NlcykuZmlsdGVyKGZ1bmN0aW9uIChrKSB7XG4gICAgICByZXR1cm4gY2xhc3Nlc1trXTtcbiAgICB9KS5qb2luKCcgJyksIGljb25UeXBlLCBpc0N1c3RvbUljb24gPyBpY29uTmFtZSA6IG51bGxdLnJlZHVjZShmdW5jdGlvbiAocHJldiwgY3Vycikge1xuICAgICAgcmV0dXJuIGN1cnIgPyBwcmV2ICsgJyAnICsgY3VyciA6IHByZXY7XG4gICAgfSkudHJpbSgpO1xuXG4gICAgcmV0dXJuIGgoJ2knLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDkzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogOTQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19hdmF0YXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXZhdGFyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2F2YXRhcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtYXZhdGFyJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiA0OFxuICAgIH0sXG4gICAgdGlsZTogQm9vbGVhblxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBjaGlsZHJlbiA9IF9yZWYuY2hpbGRyZW47XG5cbiAgICBkYXRhLnN0YXRpY0NsYXNzID0gKCdhdmF0YXIgJyArIChkYXRhLnN0YXRpY0NsYXNzIHx8ICcnKSkudHJpbSgpO1xuICAgIGRhdGEuc3R5bGUgPSBkYXRhLnN0eWxlIHx8IHt9O1xuXG4gICAgaWYgKHByb3BzLnRpbGUpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBhdmF0YXItLXRpbGUnO1xuXG4gICAgdmFyIHNpemUgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2hlbHBlcnNfX1tcImJcIiAvKiBjb252ZXJ0VG9Vbml0ICovXSkocHJvcHMuc2l6ZSk7XG4gICAgZGF0YS5zdHlsZS5oZWlnaHQgPSBzaXplO1xuICAgIGRhdGEuc3R5bGUud2lkdGggPSBzaXplO1xuICAgIGRhdGEuY2xhc3MgPSBbZGF0YS5jbGFzcywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubWV0aG9kcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcy5jYWxsKHByb3BzLCB7fSwgcHJvcHMuY29sb3IpXTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDk1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogOTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQmFkZ2VfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTcpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCYWRnZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJhZGdlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQmFkZ2VfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJhZGdlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDk3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190cmFuc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNCk7XG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJhZGdlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX19bXCJiXCIgLyogZmFjdG9yeSAqL10pKFsnbGVmdCcsICdib3R0b20nXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RyYW5zaXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgb3ZlcmxhcDogQm9vbGVhbixcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZmFiLXRyYW5zaXRpb24nXG4gICAgfSxcbiAgICB2YWx1ZToge1xuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnYmFkZ2UtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAnYmFkZ2UtLWxlZnQnOiB0aGlzLmxlZnQsXG4gICAgICAgICdiYWRnZS0tb3ZlcmxhcCc6IHRoaXMub3ZlcmxhcFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBiYWRnZSA9IHRoaXMuJHNsb3RzLmJhZGdlID8gW2goJ3NwYW4nLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JhZGdlX19iYWRnZScsXG4gICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICBhdHRyczogdGhpcy5hdHRycyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dXG4gICAgfSwgdGhpcy4kc2xvdHMuYmFkZ2UpXSA6IG51bGw7XG5cbiAgICByZXR1cm4gaCgnc3BhbicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnYmFkZ2UnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHQsIGgoJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLnRyYW5zaXRpb24sXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZVxuICAgICAgfVxuICAgIH0sIGJhZGdlKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDk5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbU5hdl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDApO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbU5hdl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fbmF2c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fbmF2c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2JvdHRvbV9uYXZzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19idXR0b25fZ3JvdXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8vIFN0eWxlc1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtYm90dG9tLW5hdicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnYm90dG9tJywgWydoZWlnaHQnLCAndmFsdWUnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2J1dHRvbl9ncm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBhY3RpdmU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgaGVpZ2h0OiB7XG4gICAgICBkZWZhdWx0OiA1NixcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hpZnQ6IEJvb2xlYW4sXG4gICAgdmFsdWU6IHsgcmVxdWlyZWQ6IGZhbHNlIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGFjdGl2ZTogZnVuY3Rpb24gYWN0aXZlKCkge1xuICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2JvdHRvbS1uYXYtLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ2JvdHRvbS1uYXYtLWZpeGVkJzogIXRoaXMuYWJzb2x1dGUgJiYgKHRoaXMuYXBwIHx8IHRoaXMuZml4ZWQpLFxuICAgICAgICAnYm90dG9tLW5hdi0tc2hpZnQnOiB0aGlzLnNoaWZ0LFxuICAgICAgICAnYm90dG9tLW5hdi0tYWN0aXZlJzogdGhpcy52YWx1ZVxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkSGVpZ2h0OiBmdW5jdGlvbiBjb21wdXRlZEhlaWdodCgpIHtcbiAgICAgIHJldHVybiBwYXJzZUludCh0aGlzLmhlaWdodCk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBpc1NlbGVjdGVkOiBmdW5jdGlvbiBpc1NlbGVjdGVkKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIHJldHVybiB0aGlzLmFjdGl2ZSA9PT0gaXRlbTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBhcHBsaWNhdGlvbiBsYXlvdXRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICB1cGRhdGVBcHBsaWNhdGlvbjogZnVuY3Rpb24gdXBkYXRlQXBwbGljYXRpb24oKSB7XG4gICAgICByZXR1cm4gIXRoaXMudmFsdWUgPyAwIDogdGhpcy5jb21wdXRlZEhlaWdodDtcbiAgICB9LFxuICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiB1cGRhdGVWYWx1ZShpKSB7XG4gICAgICB2YXIgaXRlbSA9IHRoaXMuZ2V0VmFsdWUoaSk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTphY3RpdmUnLCBpdGVtKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JvdHRvbS1uYXYnLFxuICAgICAgY2xhc3M6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3ModGhpcy5jbGFzc2VzKSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGhlaWdodDogcGFyc2VJbnQodGhpcy5jb21wdXRlZEhlaWdodCkgKyAncHgnXG4gICAgICB9LFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTAxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTAyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbVNoZWV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMyk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbVNoZWV0X19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQm90dG9tU2hlZXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21TaGVldF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQm90dG9tU2hlZXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTAzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYm90dG9tX3NoZWV0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fc2hlZXRzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYm90dG9tX3NoZWV0c19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRpYWxvZ19WRGlhbG9nX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM2KTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJvdHRvbS1zaGVldCcsXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBmdWxsV2lkdGg6IEJvb2xlYW4sXG4gICAgaGlkZU92ZXJsYXk6IEJvb2xlYW4sXG4gICAgaW5zZXQ6IEJvb2xlYW4sXG4gICAgbGF6eTogQm9vbGVhbixcbiAgICBtYXhXaWR0aDoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgcGVyc2lzdGVudDogQm9vbGVhbixcbiAgICB2YWx1ZTogbnVsbFxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgYWN0aXZhdG9yID0gaCgndGVtcGxhdGUnLCB7XG4gICAgICBzbG90OiAnYWN0aXZhdG9yJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmFjdGl2YXRvcik7XG5cbiAgICB2YXIgY29udGVudENsYXNzID0gWydib3R0b20tc2hlZXQnLCB0aGlzLmluc2V0ID8gJ2JvdHRvbS1zaGVldC0taW5zZXQnIDogJyddLmpvaW4oJyAnKTtcblxuICAgIHJldHVybiBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRpYWxvZ19WRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgIGF0dHJzOiBfZXh0ZW5kcyh7fSwgdGhpcy4kcHJvcHMpLFxuICAgICAgb246IF9leHRlbmRzKHt9LCB0aGlzLiRsaXN0ZW5lcnMpLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgY29udGVudENsYXNzOiBjb250ZW50Q2xhc3MsXG4gICAgICAgIHRyYW5zaXRpb246ICdib3R0b20tc2hlZXQtdHJhbnNpdGlvbicsXG4gICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlXG4gICAgICB9XG4gICAgfSwgW2FjdGl2YXRvciwgdGhpcy4kc2xvdHMuZGVmYXVsdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMDQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnJlYWRjcnVtYnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTA4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCcmVhZGNydW1ic0l0ZW1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEwKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZCcmVhZGNydW1icyAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkJyZWFkY3J1bWJzSXRlbSAqL1xuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCcmVhZGNydW1ic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJyZWFkY3J1bWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnJlYWRjcnVtYnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnJlYWRjcnVtYnNJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnJlYWRjcnVtYnNJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCcmVhZGNydW1ic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19icmVhZGNydW1ic19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19icmVhZGNydW1ic19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2JyZWFkY3J1bWJzX3N0eWxfXyk7XG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJyZWFkY3J1bWJzJyxcblxuICBwcm9wczoge1xuICAgIGRpdmlkZXI6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICcvJ1xuICAgIH0sXG4gICAgbGFyZ2U6IEJvb2xlYW4sXG4gICAganVzdGlmeUNlbnRlcjogQm9vbGVhbixcbiAgICBqdXN0aWZ5RW5kOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2JyZWFkY3J1bWJzLS1sYXJnZSc6IHRoaXMubGFyZ2VcbiAgICAgIH07XG4gICAgfSxcbiAgICBjb21wdXRlZERpdmlkZXI6IGZ1bmN0aW9uIGNvbXB1dGVkRGl2aWRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzbG90cy5kaXZpZGVyID8gdGhpcy4kc2xvdHMuZGl2aWRlciA6IHRoaXMuZGl2aWRlcjtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgdmFyIGp1c3RpZnkgPSB0aGlzLmp1c3RpZnlDZW50ZXIgPyAnY2VudGVyJyA6IHRoaXMuanVzdGlmeUVuZCA/ICdmbGV4LWVuZCcgOiAnZmxleC1zdGFydCc7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgICdqdXN0aWZ5LWNvbnRlbnQnOiBqdXN0aWZ5XG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLyoqXG4gICAgICogQWRkIGRpdmlkZXJzIGJldHdlZW5cbiAgICAgKiB2LWJyZWFkY3J1bWJzLWl0ZW1cbiAgICAgKlxuICAgICAqIEByZXR1cm4ge2FycmF5fVxuICAgICAqL1xuICAgIGdlbkNoaWxkcmVuOiBmdW5jdGlvbiBnZW5DaGlsZHJlbigpIHtcbiAgICAgIGlmICghdGhpcy4kc2xvdHMuZGVmYXVsdCkgcmV0dXJuIG51bGw7XG5cbiAgICAgIHZhciBoID0gdGhpcy4kY3JlYXRlRWxlbWVudDtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgdmFyIGRpdmlkZXJEYXRhID0geyBzdGF0aWNDbGFzczogJ2JyZWFkY3J1bWJzX19kaXZpZGVyJyB9O1xuXG4gICAgICB2YXIgY3JlYXRlRGl2aWRlcnMgPSBmYWxzZTtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy4kc2xvdHMuZGVmYXVsdC5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgZWxtID0gdGhpcy4kc2xvdHMuZGVmYXVsdFtpXTtcblxuICAgICAgICBpZiAoIWVsbS5jb21wb25lbnRPcHRpb25zIHx8IGVsbS5jb21wb25lbnRPcHRpb25zLkN0b3Iub3B0aW9ucy5uYW1lICE9PSAndi1icmVhZGNydW1icy1pdGVtJykge1xuICAgICAgICAgIGNoaWxkcmVuLnB1c2goZWxtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoY3JlYXRlRGl2aWRlcnMpIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goaCgnbGknLCBkaXZpZGVyRGF0YSwgdGhpcy5jb21wdXRlZERpdmlkZXIpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY2hpbGRyZW4ucHVzaChlbG0pO1xuICAgICAgICAgIGNyZWF0ZURpdmlkZXJzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2hpbGRyZW47XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgndWwnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JyZWFkY3J1bWJzJyxcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlc1xuICAgIH0sIHRoaXMuZ2VuQ2hpbGRyZW4oKSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEwOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yb3V0YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJyZWFkY3J1bWJzLWl0ZW0nLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgLy8gSW4gYSBicmVhZGNydW1iLCB0aGUgY3VycmVudGx5XG4gICAgLy8gYWN0aXZlIGl0ZW0gc2hvdWxkIGJlIGRpbW1lZFxuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnJlYWRjcnVtYnNfX2l0ZW0tLWRpc2FibGVkJ1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gX2RlZmluZVByb3BlcnR5KHtcbiAgICAgICAgJ2JyZWFkY3J1bWJzX19pdGVtJzogdHJ1ZVxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5kaXNhYmxlZCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICByZXR1cm4gaCgnbGknLCBbaCh0YWcsIGRhdGEsIHRoaXMuJHNsb3RzLmRlZmF1bHQpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2J1dHRvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMTIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2J1dHRvbnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZQcm9ncmVzc0NpcmN1bGFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yb3V0YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbi8vIFN0eWxlc1xuXG5cbi8vIENvbXBvbmVudHNcblxuXG4vLyBNaXhpbnNcblxuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJ0bicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImJcIiAvKiBmYWN0b3J5ICovXSkoJ2lucHV0VmFsdWUnKSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ2J1dHRvbkdyb3VwJyldLFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdidG4tLWFjdGl2ZSdcbiAgICB9LFxuICAgIGJsb2NrOiBCb29sZWFuLFxuICAgIGRlcHJlc3NlZDogQm9vbGVhbixcbiAgICBmYWI6IEJvb2xlYW4sXG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBpY29uOiBCb29sZWFuLFxuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIGxvYWRpbmc6IEJvb2xlYW4sXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICByaXBwbGU6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgcm91bmQ6IEJvb2xlYW4sXG4gICAgc21hbGw6IEJvb2xlYW4sXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnV0dG9uJ1xuICAgIH0sXG4gICAgdHlwZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2J1dHRvbidcbiAgICB9LFxuICAgIHZhbHVlOiBudWxsXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIF9leHRlbmRzMjtcblxuICAgICAgdmFyIGNsYXNzZXMgPSBfZXh0ZW5kcygoX2V4dGVuZHMyID0ge1xuICAgICAgICAnYnRuJzogdHJ1ZVxuICAgICAgfSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWFic29sdXRlJywgdGhpcy5hYnNvbHV0ZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWJsb2NrJywgdGhpcy5ibG9jayksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWJvdHRvbScsIHRoaXMuYm90dG9tKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tZmxhdCcsIHRoaXMuZmxhdCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWZsb2F0aW5nJywgdGhpcy5mYWIpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1maXhlZCcsIHRoaXMuZml4ZWQpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1ob3ZlcicsIHRoaXMuaG92ZXIpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1pY29uJywgdGhpcy5pY29uKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tbGFyZ2UnLCB0aGlzLmxhcmdlKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tbGVmdCcsIHRoaXMubGVmdCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWxvYWRlcicsIHRoaXMubG9hZGluZyksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLW91dGxpbmUnLCB0aGlzLm91dGxpbmUpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1kZXByZXNzZWQnLCB0aGlzLmRlcHJlc3NlZCAmJiAhdGhpcy5mbGF0IHx8IHRoaXMub3V0bGluZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJpZ2h0JywgdGhpcy5yaWdodCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJvdW5kJywgdGhpcy5yb3VuZCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJvdXRlcicsIHRoaXMudG8pLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1zbWFsbCcsIHRoaXMuc21hbGwpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS10b3AnLCB0aGlzLnRvcCksIF9leHRlbmRzMiksIHRoaXMudGhlbWVDbGFzc2VzKTtcblxuICAgICAgcmV0dXJuICF0aGlzLm91dGxpbmUgJiYgIXRoaXMuZmxhdCA/IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcykgOiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLy8gUHJldmVudCBmb2N1cyB0byBtYXRjaCBtZCBzcGVjXG4gICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICF0aGlzLmZhYiAmJiBlLmRldGFpbCAmJiB0aGlzLiRlbC5ibHVyKCk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2NsaWNrJywgZSk7XG4gICAgfSxcbiAgICBnZW5Db250ZW50OiBmdW5jdGlvbiBnZW5Db250ZW50KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHsgJ2NsYXNzJzogJ2J0bl9fY29udGVudCcgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgICB9LFxuICAgIGdlbkxvYWRlcjogZnVuY3Rpb24gZ2VuTG9hZGVyKCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGlmICghdGhpcy4kc2xvdHMubG9hZGVyKSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaW5kZXRlcm1pbmF0ZTogdHJ1ZSxcbiAgICAgICAgICAgIHNpemU6IDIzLFxuICAgICAgICAgICAgd2lkdGg6IDJcbiAgICAgICAgICB9XG4gICAgICAgIH0pKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kc2xvdHMubG9hZGVyKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3NwYW4nLCB7ICdjbGFzcyc6ICdidG5fX2xvYWRpbmcnIH0sIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICBpZiAodGhpcy5idXR0b25Hcm91cCkge1xuICAgICAgdGhpcy5idXR0b25Hcm91cC5yZWdpc3Rlcih0aGlzKTtcbiAgICB9XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuYnV0dG9uR3JvdXApIHtcbiAgICAgIHRoaXMuYnV0dG9uR3JvdXAudW5yZWdpc3Rlcih0aGlzKTtcbiAgICB9XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbdGhpcy5nZW5Db250ZW50KCldO1xuXG4gICAgdGFnID09PSAnYnV0dG9uJyAmJiAoZGF0YS5hdHRycy50eXBlID0gdGhpcy50eXBlKTtcbiAgICB0aGlzLmxvYWRpbmcgJiYgY2hpbGRyZW4ucHVzaCh0aGlzLmdlbkxvYWRlcigpKTtcblxuICAgIGRhdGEuYXR0cnMudmFsdWUgPSBbJ3N0cmluZycsICdudW1iZXInXS5pbmNsdWRlcyhfdHlwZW9mKHRoaXMudmFsdWUpKSA/IHRoaXMudmFsdWUgOiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKTtcblxuICAgIHJldHVybiBoKHRhZywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMTIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19jaXJjdWxhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19jaXJjdWxhcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3Byb2dyZXNzX2NpcmN1bGFyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcHJvZ3Jlc3MtY2lyY3VsYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGJ1dHRvbjogQm9vbGVhbixcblxuICAgIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW4sXG5cbiAgICByb3RhdGU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuXG4gICAgc2l6ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDMyXG4gICAgfSxcblxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiA0XG4gICAgfSxcblxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZFNpemU6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRTaXplKCkge1xuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLnNpemUpICsgKHRoaXMuYnV0dG9uID8gOCA6IDApO1xuICAgIH0sXG4gICAgY2lyY3VtZmVyZW5jZTogZnVuY3Rpb24gY2lyY3VtZmVyZW5jZSgpIHtcbiAgICAgIHJldHVybiAyICogTWF0aC5QSSAqIHRoaXMucmFkaXVzO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKHtcbiAgICAgICAgJ3Byb2dyZXNzLWNpcmN1bGFyJzogdHJ1ZSxcbiAgICAgICAgJ3Byb2dyZXNzLWNpcmN1bGFyLS1pbmRldGVybWluYXRlJzogdGhpcy5pbmRldGVybWluYXRlLFxuICAgICAgICAncHJvZ3Jlc3MtY2lyY3VsYXItLWJ1dHRvbic6IHRoaXMuYnV0dG9uXG4gICAgICB9KTtcbiAgICB9LFxuICAgIG5vcm1hbGl6ZWRWYWx1ZTogZnVuY3Rpb24gbm9ybWFsaXplZFZhbHVlKCkge1xuICAgICAgaWYgKHRoaXMudmFsdWUgPCAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy52YWx1ZSA+IDEwMCkge1xuICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgICB9LFxuICAgIHJhZGl1czogZnVuY3Rpb24gcmFkaXVzKCkge1xuICAgICAgcmV0dXJuIDIwO1xuICAgIH0sXG4gICAgc3Ryb2tlRGFzaEFycmF5OiBmdW5jdGlvbiBzdHJva2VEYXNoQXJyYXkoKSB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLmNpcmN1bWZlcmVuY2UgKiAxMDAwKSAvIDEwMDA7XG4gICAgfSxcbiAgICBzdHJva2VEYXNoT2Zmc2V0OiBmdW5jdGlvbiBzdHJva2VEYXNoT2Zmc2V0KCkge1xuICAgICAgcmV0dXJuICgxMDAgLSB0aGlzLm5vcm1hbGl6ZWRWYWx1ZSkgLyAxMDAgKiB0aGlzLmNpcmN1bWZlcmVuY2UgKyAncHgnO1xuICAgIH0sXG4gICAgc3Ryb2tlV2lkdGg6IGZ1bmN0aW9uIHN0cm9rZVdpZHRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMud2lkdGggLyB0aGlzLnNpemUgKiB0aGlzLnZpZXdCb3hTaXplICogMjtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmNhbGN1bGF0ZWRTaXplICsgJ3B4JyxcbiAgICAgICAgd2lkdGg6IHRoaXMuY2FsY3VsYXRlZFNpemUgKyAncHgnXG4gICAgICB9O1xuICAgIH0sXG4gICAgc3ZnU3R5bGVzOiBmdW5jdGlvbiBzdmdTdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2Zvcm06ICdyb3RhdGUoJyArIHRoaXMucm90YXRlICsgJ2RlZyknXG4gICAgICB9O1xuICAgIH0sXG4gICAgdmlld0JveFNpemU6IGZ1bmN0aW9uIHZpZXdCb3hTaXplKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmFkaXVzIC8gKDEgLSB0aGlzLndpZHRoIC8gdGhpcy5zaXplKTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkNpcmNsZTogZnVuY3Rpb24gZ2VuQ2lyY2xlKGgsIG5hbWUsIG9mZnNldCkge1xuICAgICAgcmV0dXJuIGgoJ2NpcmNsZScsIHtcbiAgICAgICAgY2xhc3M6ICdwcm9ncmVzcy1jaXJjdWxhcl9fJyArIG5hbWUsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcbiAgICAgICAgICBjeDogMiAqIHRoaXMudmlld0JveFNpemUsXG4gICAgICAgICAgY3k6IDIgKiB0aGlzLnZpZXdCb3hTaXplLFxuICAgICAgICAgIHI6IHRoaXMucmFkaXVzLFxuICAgICAgICAgICdzdHJva2Utd2lkdGgnOiB0aGlzLnN0cm9rZVdpZHRoLFxuICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogdGhpcy5zdHJva2VEYXNoQXJyYXksXG4gICAgICAgICAgJ3N0cm9rZS1kYXNob2Zmc2V0Jzogb2Zmc2V0XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuU3ZnOiBmdW5jdGlvbiBnZW5TdmcoaCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW3RoaXMuaW5kZXRlcm1pbmF0ZSB8fCB0aGlzLmdlbkNpcmNsZShoLCAndW5kZXJsYXknLCAwKSwgdGhpcy5nZW5DaXJjbGUoaCwgJ292ZXJsYXknLCB0aGlzLnN0cm9rZURhc2hPZmZzZXQpXTtcblxuICAgICAgcmV0dXJuIGgoJ3N2ZycsIHtcbiAgICAgICAgc3R5bGU6IHRoaXMuc3ZnU3R5bGVzLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHhtbG5zOiAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnLFxuICAgICAgICAgIHZpZXdCb3g6IHRoaXMudmlld0JveFNpemUgKyAnICcgKyB0aGlzLnZpZXdCb3hTaXplICsgJyAnICsgMiAqIHRoaXMudmlld0JveFNpemUgKyAnICcgKyAyICogdGhpcy52aWV3Qm94U2l6ZVxuICAgICAgICB9XG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgaW5mbyA9IGgoJ2RpdicsIHsgY2xhc3M6ICdwcm9ncmVzcy1jaXJjdWxhcl9faW5mbycgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgICB2YXIgc3ZnID0gdGhpcy5nZW5TdmcoaCk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9LCBbc3ZnLCBpbmZvXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCdG5Ub2dnbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTE2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCdG5Ub2dnbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTE2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uX3RvZ2dsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19idXR0b25fdG9nZ2xlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uX3RvZ2dsZV9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2J1dHRvbl9ncm91cF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJ0bi10b2dnbGUnLFxuXG4gIG1vZGVsOiB7XG4gICAgcHJvcDogJ2lucHV0VmFsdWUnLFxuICAgIGV2ZW50OiAnY2hhbmdlJ1xuICB9LFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2J1dHRvbl9ncm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBpbnB1dFZhbHVlOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9LFxuICAgIG1hbmRhdG9yeTogQm9vbGVhbixcbiAgICBtdWx0aXBsZTogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdidG4tdG9nZ2xlJzogdHJ1ZSxcbiAgICAgICAgJ2J0bi10b2dnbGUtLXNlbGVjdGVkJzogdGhpcy5oYXNWYWx1ZSxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFya1xuICAgICAgfTtcbiAgICB9LFxuICAgIGhhc1ZhbHVlOiBmdW5jdGlvbiBoYXNWYWx1ZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGxlICYmIHRoaXMuaW5wdXRWYWx1ZS5sZW5ndGggfHwgIXRoaXMubXVsdGlwbGUgJiYgdGhpcy5pbnB1dFZhbHVlICE9PSBudWxsICYmIHR5cGVvZiB0aGlzLmlucHV0VmFsdWUgIT09ICd1bmRlZmluZWQnO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlucHV0VmFsdWU6IHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uIGhhbmRsZXIoKSB7XG4gICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICB9LFxuXG4gICAgICBkZWVwOiB0cnVlXG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBpc1NlbGVjdGVkOiBmdW5jdGlvbiBpc1NlbGVjdGVkKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlID09PSBpdGVtO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlLmluY2x1ZGVzKGl0ZW0pO1xuICAgIH0sXG4gICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIHVwZGF0ZVZhbHVlKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgICBpZiAodGhpcy5tYW5kYXRvcnkgJiYgdGhpcy5pbnB1dFZhbHVlID09PSBpdGVtKSByZXR1cm47XG4gICAgICAgIHJldHVybiB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLmlucHV0VmFsdWUgPT09IGl0ZW0gPyBudWxsIDogaXRlbSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBpdGVtcyA9IHRoaXMuaW5wdXRWYWx1ZS5zbGljZSgpO1xuXG4gICAgICB2YXIgaW5kZXggPSBpdGVtcy5pbmRleE9mKGl0ZW0pO1xuICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgaWYgKHRoaXMubWFuZGF0b3J5ICYmIGl0ZW1zLmxlbmd0aCA9PT0gMSkgcmV0dXJuO1xuICAgICAgICBpdGVtcy5sZW5ndGggPj0gMSAmJiBpdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgaXRlbXMpO1xuICAgIH0sXG4gICAgdXBkYXRlQWxsVmFsdWVzOiBmdW5jdGlvbiB1cGRhdGVBbGxWYWx1ZXMoKSB7XG4gICAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHJldHVybjtcblxuICAgICAgdmFyIGl0ZW1zID0gW107XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5idXR0b25zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5pbnB1dFZhbHVlLmluZGV4T2YoaXRlbSk7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIGl0ZW1zKTtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSAmJiAhQXJyYXkuaXNBcnJheSh0aGlzLmlucHV0VmFsdWUpKSB7XG4gICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdNb2RlbCBtdXN0IGJlIGJvdW5kIHRvIGFuIGFycmF5IGlmIHRoZSBtdWx0aXBsZSBwcm9wZXJ0eSBpcyB0cnVlLicsIHRoaXMpO1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7IGNsYXNzOiB0aGlzLmNsYXNzZXMgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NhcmRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTE5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NhcmRzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2FyZHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJkJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBoZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgaG92ZXI6IEJvb2xlYW4sXG4gICAgaW1nOiBTdHJpbmcsXG4gICAgcmFpc2VkOiBCb29sZWFuLFxuICAgIHRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2RpdidcbiAgICB9LFxuICAgIHRpbGU6IEJvb2xlYW4sXG4gICAgd2lkdGg6IFtTdHJpbmcsIE51bWJlcl1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICdjYXJkJzogdHJ1ZSxcbiAgICAgICAgJ2NhcmQtLWZsYXQnOiB0aGlzLmZsYXQsXG4gICAgICAgICdjYXJkLS1ob3Jpem9udGFsJzogdGhpcy5ob3Jpem9udGFsLFxuICAgICAgICAnY2FyZC0taG92ZXInOiB0aGlzLmhvdmVyLFxuICAgICAgICAnY2FyZC0tcmFpc2VkJzogdGhpcy5yYWlzZWQsXG4gICAgICAgICdjYXJkLS10aWxlJzogdGhpcy50aWxlLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrXG4gICAgICB9KTtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgdmFyIHN0eWxlID0ge1xuICAgICAgICBoZWlnaHQ6IGlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0IDogdGhpcy5oZWlnaHQgKyAncHgnXG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5pbWcpIHtcbiAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9ICd1cmwoXCInICsgdGhpcy5pbWcgKyAnXCIpIGNlbnRlciBjZW50ZXIgLyBjb3ZlciBuby1yZXBlYXQnO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy53aWR0aCkge1xuICAgICAgICBzdHlsZS53aWR0aCA9IGlzTmFOKHRoaXMud2lkdGgpID8gdGhpcy53aWR0aCA6IHRoaXMud2lkdGggKyAncHgnO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gc3R5bGU7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICBkYXRhLnN0eWxlID0gdGhpcy5zdHlsZXM7XG5cbiAgICByZXR1cm4gaCh0YWcsIGRhdGEsIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMTkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtY2FyZC1tZWRpYScsXG5cbiAgcHJvcHM6IHtcbiAgICBjb250YWluOiBCb29sZWFuLFxuICAgIGhlaWdodDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgc3JjOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgJ2NsYXNzJzogJ2NhcmRfX21lZGlhJyxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGhlaWdodDogIWlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0ICsgJ3B4JyA6IHRoaXMuaGVpZ2h0XG4gICAgICB9LFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIGlmICh0aGlzLnNyYykge1xuICAgICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdjYXJkX19tZWRpYV9fYmFja2dyb3VuZCcsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJ3VybChcIicgKyB0aGlzLnNyYyArICdcIikgY2VudGVyIGNlbnRlciAvICcgKyAodGhpcy5jb250YWluID8gJ2NvbnRhaW4nIDogJ2NvdmVyJykgKyAnIG5vLXJlcGVhdCdcbiAgICAgICAgfVxuICAgICAgfSkpO1xuICAgIH1cblxuICAgIGNoaWxkcmVuLnB1c2goaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogJ2NhcmRfX21lZGlhX19jb250ZW50J1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJkLXRpdGxlJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIHByb3BzOiB7XG4gICAgcHJpbWFyeVRpdGxlOiBCb29sZWFuXG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgX3JlZikge1xuICAgIHZhciBkYXRhID0gX3JlZi5kYXRhLFxuICAgICAgICBwcm9wcyA9IF9yZWYucHJvcHMsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbjtcblxuICAgIGRhdGEuc3RhdGljQ2xhc3MgPSAoJ2NhcmRfX3RpdGxlICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIGlmIChwcm9wcy5wcmltYXJ5VGl0bGUpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBjYXJkX190aXRsZS0tcHJpbWFyeSc7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2Fyb3VzZWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDYXJvdXNlbEl0ZW1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTI1KTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJvdXNlbCAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNhcm91c2VsSXRlbSAqL1xuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDYXJvdXNlbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNhcm91c2VsX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2Fyb3VzZWxfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2Fyb3VzZWxJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2Fyb3VzZWxJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDYXJvdXNlbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMjMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jYXJvdXNlbF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jYXJvdXNlbF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Nhcm91c2VsX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJvdXNlbCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgnY2Fyb3VzZWwnKV0sXG5cbiAgZGlyZWN0aXZlczogeyBUb3VjaDogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpbnB1dFZhbHVlOiBudWxsLFxuICAgICAgaXRlbXM6IFtdLFxuICAgICAgc2xpZGVUaW1lb3V0OiBudWxsLFxuICAgICAgcmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjeWNsZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGRlbGltaXRlckljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdmaWJlcl9tYW51YWxfcmVjb3JkJ1xuICAgIH0sXG4gICAgaGlkZUNvbnRyb2xzOiBCb29sZWFuLFxuICAgIGhpZGVEZWxpbWl0ZXJzOiBCb29sZWFuLFxuICAgIGludGVydmFsOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNjAwMCxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA+IDA7XG4gICAgICB9XG4gICAgfSxcbiAgICBuZXh0SWNvbjoge1xuICAgICAgdHlwZTogW0Jvb2xlYW4sIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICB2YWx1ZTogTnVtYmVyXG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXMoKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dFZhbHVlID49IHRoaXMuaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGlucHV0VmFsdWU6IGZ1bmN0aW9uIGlucHV0VmFsdWUoKSB7XG4gICAgICAvLyBFdmFsdWF0ZXMgaXRlbXMgd2hlbiBpbnB1dFZhbHVlIGNoYW5nZXMgdG9cbiAgICAgIC8vIGFjY291bnQgZm9yIGR5bmFtaWMgY2hhbmdpbmcgb2YgY2hpbGRyZW5cblxuICAgICAgdmFyIHVpZCA9ICh0aGlzLml0ZW1zW3RoaXMuaW5wdXRWYWx1ZV0gfHwge30pLnVpZDtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5pdGVtcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5pdGVtc1tpbmRleF0ub3Blbih1aWQsIHRoaXMucmV2ZXJzZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMucmVzdGFydFRpbWVvdXQoKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHZhbDtcbiAgICB9LFxuICAgIGludGVydmFsOiBmdW5jdGlvbiBpbnRlcnZhbCgpIHtcbiAgICAgIHRoaXMucmVzdGFydFRpbWVvdXQoKTtcbiAgICB9LFxuICAgIGN5Y2xlOiBmdW5jdGlvbiBjeWNsZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgdGhpcy5yZXN0YXJ0VGltZW91dCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2xpZGVUaW1lb3V0KTtcbiAgICAgICAgdGhpcy5zbGlkZVRpbWVvdXQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkRlbGltaXRlcnM6IGZ1bmN0aW9uIGdlbkRlbGltaXRlcnMoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2Nhcm91c2VsX19jb250cm9scydcbiAgICAgIH0sIHRoaXMuZ2VuSXRlbXMoKSk7XG4gICAgfSxcbiAgICBnZW5JY29uOiBmdW5jdGlvbiBnZW5JY29uKGRpcmVjdGlvbiwgaWNvbiwgZm4pIHtcbiAgICAgIGlmICghaWNvbikgcmV0dXJuIG51bGw7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnY2Fyb3VzZWxfXycgKyBkaXJlY3Rpb25cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmsgfHwgIXRoaXMubGlnaHQsXG4gICAgICAgICAgbGlnaHQ6IHRoaXMubGlnaHRcbiAgICAgICAgfSxcbiAgICAgICAgb246IHsgY2xpY2s6IGZuIH1cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczogeyAnc2l6ZSc6ICc0NnB4JyB9XG4gICAgICB9LCBpY29uKV0pXSk7XG4gICAgfSxcbiAgICBnZW5JdGVtczogZnVuY3Rpb24gZ2VuSXRlbXMoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7XG4gICAgICAgIHJldHVybiBfdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAnY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVtJzogdHJ1ZSxcbiAgICAgICAgICAgICdjYXJvdXNlbF9fY29udHJvbHNfX2l0ZW0tLWFjdGl2ZSc6IGluZGV4ID09PSBfdGhpcy5pbnB1dFZhbHVlXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICAgIHNtYWxsOiB0cnVlLFxuICAgICAgICAgICAgZGFyazogX3RoaXMuZGFyayB8fCAhX3RoaXMubGlnaHQsXG4gICAgICAgICAgICBsaWdodDogX3RoaXMubGlnaHRcbiAgICAgICAgICB9LFxuICAgICAgICAgIGtleTogaW5kZXgsXG4gICAgICAgICAgb246IHsgY2xpY2s6IF90aGlzLnNlbGVjdC5iaW5kKF90aGlzLCBpbmRleCkgfVxuICAgICAgICB9LCBbX3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgICAgcHJvcHM6IHsgc2l6ZTogJzE4cHgnIH1cbiAgICAgICAgfSwgX3RoaXMuZGVsaW1pdGVySWNvbildKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgcmVzdGFydFRpbWVvdXQ6IGZ1bmN0aW9uIHJlc3RhcnRUaW1lb3V0KCkge1xuICAgICAgdGhpcy5zbGlkZVRpbWVvdXQgJiYgY2xlYXJUaW1lb3V0KHRoaXMuc2xpZGVUaW1lb3V0KTtcbiAgICAgIHRoaXMuc2xpZGVUaW1lb3V0ID0gbnVsbDtcblxuICAgICAgdmFyIHJhZiA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSB8fCBzZXRUaW1lb3V0O1xuICAgICAgcmFmKHRoaXMuc3RhcnRUaW1lb3V0KTtcbiAgICB9LFxuICAgIGluaXQ6IGZ1bmN0aW9uIGluaXQoKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnZhbHVlIHx8IDA7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgdGhpcy5yZXZlcnNlID0gZmFsc2U7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSAodGhpcy5pbnB1dFZhbHVlICsgMSkgJSB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIHByZXY6IGZ1bmN0aW9uIHByZXYoKSB7XG4gICAgICB0aGlzLnJldmVyc2UgPSB0cnVlO1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gKHRoaXMuaW5wdXRWYWx1ZSArIHRoaXMuaXRlbXMubGVuZ3RoIC0gMSkgJSB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIHNlbGVjdDogZnVuY3Rpb24gc2VsZWN0KGluZGV4KSB7XG4gICAgICB0aGlzLnJldmVyc2UgPSBpbmRleCA8IHRoaXMuaW5wdXRWYWx1ZTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGluZGV4O1xuICAgIH0sXG4gICAgc3RhcnRUaW1lb3V0OiBmdW5jdGlvbiBzdGFydFRpbWVvdXQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmN5Y2xlKSByZXR1cm47XG5cbiAgICAgIHRoaXMuc2xpZGVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIubmV4dCgpO1xuICAgICAgfSwgdGhpcy5pbnRlcnZhbCA+IDAgPyB0aGlzLmludGVydmFsIDogNjAwMCk7XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCBvcGVuKSB7XG4gICAgICB0aGlzLml0ZW1zLnB1c2goeyB1aWQ6IHVpZCwgb3Blbjogb3BlbiB9KTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodWlkKSB7XG4gICAgICB0aGlzLml0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIGkudWlkICE9PSB1aWQ7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2Nhcm91c2VsJyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICd0b3VjaCcsXG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgbGVmdDogdGhpcy5uZXh0LFxuICAgICAgICAgIHJpZ2h0OiB0aGlzLnByZXZcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9LCBbdGhpcy5oaWRlQ29udHJvbHMgPyBudWxsIDogdGhpcy5nZW5JY29uKCdsZWZ0JywgdGhpcy5wcmV2SWNvbiwgdGhpcy5wcmV2KSwgdGhpcy5oaWRlQ29udHJvbHMgPyBudWxsIDogdGhpcy5nZW5JY29uKCdyaWdodCcsIHRoaXMubmV4dEljb24sIHRoaXMubmV4dCksIHRoaXMuaGlkZURlbGltaXRlcnMgPyBudWxsIDogdGhpcy5nZW5EZWxpbWl0ZXJzKCksIHRoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTI0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTI1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWNhcm91c2VsLWl0ZW0nLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCdjYXJvdXNlbCcsICd2LWNhcm91c2VsLWl0ZW0nLCAndi1jYXJvdXNlbCcpXSxcblxuICBpbmhlcml0QXR0cnM6IGZhbHNlLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGl2ZTogZmFsc2UsXG4gICAgICByZXZlcnNlOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICd0YWItdHJhbnNpdGlvbidcbiAgICB9LFxuICAgIHJldmVyc2VUcmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGFiLXJldmVyc2UtdHJhbnNpdGlvbidcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLnJldmVyc2UgPyB0aGlzLnJldmVyc2VUcmFuc2l0aW9uIDogdGhpcy50cmFuc2l0aW9uO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgb3BlbjogZnVuY3Rpb24gb3BlbihpZCwgcmV2ZXJzZSkge1xuICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLl91aWQgPT09IGlkO1xuICAgICAgdGhpcy5yZXZlcnNlID0gcmV2ZXJzZTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmNhcm91c2VsLnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy5vcGVuKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLmNhcm91c2VsLnVucmVnaXN0ZXIodGhpcy5fdWlkLCB0aGlzLm9wZW4pO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGl0ZW0gPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICBwcm9wczogX2V4dGVuZHMoe30sIHRoaXMuJGF0dHJzLCB7XG4gICAgICAgIGhlaWdodDogJzEwMCUnXG4gICAgICB9KSxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnMsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgIHZhbHVlOiB0aGlzLmFjdGl2ZVxuICAgICAgfV1cbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgeyBwcm9wczogeyBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbiB9IH0sIFtpdGVtXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2p1bWJvdHJvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfanVtYm90cm9uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2p1bWJvdHJvbnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG4vLyBNaXhpbnNcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWp1bWJvdHJvbicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGdyYWRpZW50OiBTdHJpbmcsXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogJzQwMHB4J1xuICAgIH0sXG4gICAgc3JjOiBTdHJpbmcsXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZGl2J1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGJhY2tncm91bmRTdHlsZXM6IGZ1bmN0aW9uIGJhY2tncm91bmRTdHlsZXMoKSB7XG4gICAgICB2YXIgc3R5bGVzID0ge307XG5cbiAgICAgIGlmICh0aGlzLmdyYWRpZW50KSB7XG4gICAgICAgIHN0eWxlcy5iYWNrZ3JvdW5kID0gJ2xpbmVhci1ncmFkaWVudCgnICsgdGhpcy5ncmFkaWVudCArICcpJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9LFxuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndGhlbWUtLWRhcmsnOiB0aGlzLmRhcmssXG4gICAgICAgICd0aGVtZS0tbGlnaHQnOiB0aGlzLmxpZ2h0XG4gICAgICB9O1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0XG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQmFja2dyb3VuZDogZnVuY3Rpb24gZ2VuQmFja2dyb3VuZCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnanVtYm90cm9uX19iYWNrZ3JvdW5kJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpLFxuICAgICAgICBzdHlsZTogdGhpcy5iYWNrZ3JvdW5kU3R5bGVzXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2p1bWJvdHJvbl9fY29udGVudCdcbiAgICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICAgIH0sXG4gICAgZ2VuSW1hZ2U6IGZ1bmN0aW9uIGdlbkltYWdlKCkge1xuICAgICAgaWYgKCF0aGlzLnNyYykgcmV0dXJuIG51bGw7XG4gICAgICBpZiAodGhpcy4kc2xvdHMuaW1nKSByZXR1cm4gdGhpcy4kc2xvdHMuaW1nKHsgc3JjOiB0aGlzLnNyYyB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2ltZycsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdqdW1ib3Ryb25fX2ltYWdlJyxcbiAgICAgICAgYXR0cnM6IHsgc3JjOiB0aGlzLnNyYyB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbldyYXBwZXI6IGZ1bmN0aW9uIGdlbldyYXBwZXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2p1bWJvdHJvbl9fd3JhcHBlcidcbiAgICAgIH0sIFt0aGlzLmdlbkltYWdlKCksIHRoaXMuZ2VuQmFja2dyb3VuZCgpLCB0aGlzLmdlbkNvbnRlbnQoKV0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF9nZW5lcmF0ZVJvdXRlTGluayA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKSxcbiAgICAgICAgdGFnID0gX2dlbmVyYXRlUm91dGVMaW5rLnRhZyxcbiAgICAgICAgZGF0YSA9IF9nZW5lcmF0ZVJvdXRlTGluay5kYXRhO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICdqdW1ib3Ryb24nO1xuICAgIGRhdGEuc3R5bGUgPSB0aGlzLnN0eWxlcztcblxuICAgIHJldHVybiBoKHRhZywgZGF0YSwgW3RoaXMuZ2VuV3JhcHBlcigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDEyOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3JpcHBsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3NlbGVjdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDIpO1xuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jaGVja2JveCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zZWxlY3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0SW5kZXRlcm1pbmF0ZTogdGhpcy5pbmRldGVybWluYXRlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgaW5kZXRlcm1pbmF0ZTogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnY2hlY2tib3gnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcbiAgICAgICAgY2xhc3Nlc1snZXJyb3ItLXRleHQnXSA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBpY29uOiBmdW5jdGlvbiBpY29uKCkge1xuICAgICAgaWYgKHRoaXMuaW5wdXRJbmRldGVybWluYXRlKSB7XG4gICAgICAgIHJldHVybiAnaW5kZXRlcm1pbmF0ZV9jaGVja19ib3gnO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgIHJldHVybiAnY2hlY2tfYm94JztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnY2hlY2tfYm94X291dGxpbmVfYmxhbmsnO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ3JvdXBGb2N1czogZnVuY3Rpb24gZ3JvdXBGb2N1cyhlKSB7XG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gICAgICB0aGlzLiRlbWl0KCdmb2N1cycsIGUpO1xuICAgIH0sXG4gICAgZ3JvdXBCbHVyOiBmdW5jdGlvbiBncm91cEJsdXIoZSkge1xuICAgICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMudGFiRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy4kZW1pdCgnYmx1cicsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgdHJhbnNpdGlvbiA9IGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX190cmFuc2l0aW9uc19fW1wiYlwiIC8qIFZGYWRlVHJhbnNpdGlvbiAqL10sIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdpY29uLS1zZWxlY3Rpb24tY29udHJvbCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdpY29uLS1jaGVja2JveCc6IHRoaXMuaWNvbiA9PT0gJ2NoZWNrX2JveCdcbiAgICAgIH0sXG4gICAgICBrZXk6IHRoaXMuaWNvbixcbiAgICAgIG9uOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgY2xpY2s6IHRoaXMudG9nZ2xlXG4gICAgICB9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgdGhpcy5pY29uKV0pO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBhdHRyczoge1xuICAgICAgICB0YWJpbmRleDogdGhpcy5kaXNhYmxlZCA/IC0xIDogdGhpcy5pbnRlcm5hbFRhYkluZGV4IHx8IHRoaXMudGFiaW5kZXgsXG4gICAgICAgIHJvbGU6ICdjaGVja2JveCcsXG4gICAgICAgICdhcmlhLWNoZWNrZWQnOiB0aGlzLmlucHV0SW5kZXRlcm1pbmF0ZSA/ICdtaXhlZCcgOiB0aGlzLmlzQWN0aXZlID8gJ3RydWUnIDogJ2ZhbHNlJyxcbiAgICAgICAgJ2FyaWEtbGFiZWwnOiB0aGlzLmxhYmVsXG4gICAgICB9XG4gICAgfTtcblxuICAgIHZhciByaXBwbGUgPSB0aGlzLnJpcHBsZSA/IHRoaXMuZ2VuUmlwcGxlKCkgOiBudWxsO1xuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbdHJhbnNpdGlvbiwgcmlwcGxlXSwgZGF0YSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3Byb2dyZXNzX2xpbmVhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19saW5lYXJfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19saW5lYXJfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1wcm9ncmVzcy1saW5lYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGJhY2tncm91bmRDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgYmFja2dyb3VuZE9wYWNpdHk6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBidWZmZXJWYWx1ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDEwMFxuICAgIH0sXG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogN1xuICAgIH0sXG4gICAgaW5kZXRlcm1pbmF0ZTogQm9vbGVhbixcbiAgICBxdWVyeTogQm9vbGVhbixcbiAgICB2YWx1ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7fTtcblxuICAgICAgaWYgKCF0aGlzLmFjdGl2ZSkge1xuICAgICAgICBzdHlsZXMuaGVpZ2h0ID0gMDtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmluZGV0ZXJtaW5hdGUgJiYgcGFyc2VJbnQodGhpcy5idWZmZXJWYWx1ZSwgMTApICE9PSAxMDApIHtcbiAgICAgICAgc3R5bGVzLndpZHRoID0gdGhpcy5idWZmZXJWYWx1ZSArICclJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9LFxuICAgIGVmZmVjdGl2ZVdpZHRoOiBmdW5jdGlvbiBlZmZlY3RpdmVXaWR0aCgpIHtcbiAgICAgIGlmICghdGhpcy5idWZmZXJWYWx1ZSkge1xuICAgICAgICByZXR1cm4gMDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMudmFsdWUgKiAxMDAgLyB0aGlzLmJ1ZmZlclZhbHVlO1xuICAgIH0sXG4gICAgYmFja2dyb3VuZFN0eWxlOiBmdW5jdGlvbiBiYWNrZ3JvdW5kU3R5bGUoKSB7XG4gICAgICB2YXIgYmFja2dyb3VuZE9wYWNpdHkgPSB0aGlzLmJhY2tncm91bmRPcGFjaXR5ID09IG51bGwgPyB0aGlzLmJhY2tncm91bmRDb2xvciA/IDEgOiAwLjMgOiBwYXJzZUZsb2F0KHRoaXMuYmFja2dyb3VuZE9wYWNpdHkpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHRoaXMuYWN0aXZlID8gdGhpcy5oZWlnaHQgKyAncHgnIDogMCxcbiAgICAgICAgb3BhY2l0eTogYmFja2dyb3VuZE9wYWNpdHksXG4gICAgICAgIHdpZHRoOiB0aGlzLmJ1ZmZlclZhbHVlICsgJyUnXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuRGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGdlbkRldGVybWluYXRlKGgpIHtcbiAgICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICAgIHJlZjogJ2Zyb250JyxcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXJfX2Jhcl9fZGV0ZXJtaW5hdGUnLFxuICAgICAgICBjbGFzczogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIHdpZHRoOiB0aGlzLmVmZmVjdGl2ZVdpZHRoICsgJyUnXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuQmFyOiBmdW5jdGlvbiBnZW5CYXIoaCwgbmFtZSkge1xuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZScsXG4gICAgICAgIGNsYXNzOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKF9kZWZpbmVQcm9wZXJ0eSh7fSwgbmFtZSwgdHJ1ZSkpXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGdlbkluZGV0ZXJtaW5hdGUoaCkge1xuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgcmVmOiAnZnJvbnQnLFxuICAgICAgICBzdGF0aWNDbGFzczogJ3Byb2dyZXNzLWxpbmVhcl9fYmFyX19pbmRldGVybWluYXRlJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAncHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSc6IHRoaXMuYWN0aXZlXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLmdlbkJhcihoLCAnbG9uZycpLCB0aGlzLmdlbkJhcihoLCAnc2hvcnQnKV0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGZhZGUgPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdHJhbnNpdGlvbnNfX1tcImJcIiAvKiBWRmFkZVRyYW5zaXRpb24gKi9dLCBbdGhpcy5pbmRldGVybWluYXRlICYmIHRoaXMuZ2VuSW5kZXRlcm1pbmF0ZShoKV0pO1xuICAgIHZhciBzbGlkZSA9IGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190cmFuc2l0aW9uc19fW1wiZFwiIC8qIFZTbGlkZVhUcmFuc2l0aW9uICovXSwgWyF0aGlzLmluZGV0ZXJtaW5hdGUgJiYgdGhpcy5nZW5EZXRlcm1pbmF0ZShoKV0pO1xuXG4gICAgdmFyIGJhciA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncHJvZ3Jlc3MtbGluZWFyX19iYXInLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzXG4gICAgfSwgW2ZhZGUsIHNsaWRlXSk7XG4gICAgdmFyIGJhY2tncm91bmQgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3Byb2dyZXNzLWxpbmVhcl9fYmFja2dyb3VuZCcsXG4gICAgICBjbGFzczogW3RoaXMuYmFja2dyb3VuZENvbG9yIHx8IHRoaXMuY29sb3JdLFxuICAgICAgc3R5bGU6IHRoaXMuYmFja2dyb3VuZFN0eWxlXG4gICAgfSk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXInLFxuICAgICAgY2xhc3M6IHtcbiAgICAgICAgJ3Byb2dyZXNzLWxpbmVhci0tcXVlcnknOiB0aGlzLnF1ZXJ5XG4gICAgICB9LFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodCArICdweCdcbiAgICAgIH0sXG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2JhY2tncm91bmQsIGJhcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3ZhbGlkYXRhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBlcnJvckJ1Y2tldDogW10sXG4gICAgICBoYXNGb2N1c2VkOiBmYWxzZSxcbiAgICAgIGhhc0lucHV0OiBmYWxzZSxcbiAgICAgIHNob3VsZFZhbGlkYXRlOiBmYWxzZSxcbiAgICAgIHZhbGlkOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGVycm9yOiB7XG4gICAgICB0eXBlOiBCb29sZWFuXG4gICAgfSxcbiAgICBlcnJvck1lc3NhZ2VzOiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBBcnJheV0sXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdCgpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfVxuICAgIH0sXG4gICAgcnVsZXM6IHtcbiAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbGlkYXRlT25CbHVyOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICB2YWxpZGF0aW9uczogZnVuY3Rpb24gdmFsaWRhdGlvbnMoKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodGhpcy5lcnJvck1lc3NhZ2VzKSkge1xuICAgICAgICByZXR1cm4gW3RoaXMuZXJyb3JNZXNzYWdlc107XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZXJyb3JNZXNzYWdlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2hvdWxkVmFsaWRhdGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JCdWNrZXQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBoYXNFcnJvcjogZnVuY3Rpb24gaGFzRXJyb3IoKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWxpZGF0aW9ucy5sZW5ndGggPiAwIHx8IHRoaXMuZXJyb3JNZXNzYWdlcy5sZW5ndGggPiAwIHx8IHRoaXMuZXJyb3I7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgcnVsZXM6IHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uIGhhbmRsZXIobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgICAgLy8gVE9ETzogVGhpcyBoYW5kbGVyIHNlZW1zIHRvIHRyaWdnZXIgd2hlbiBpbnB1dCBjaGFuZ2VzLCBldmVuIHRob3VnaFxuICAgICAgICAvLyBydWxlcyBhcnJheSBzdGF5cyB0aGUgc2FtZT8gU29sdmVkIGl0IGxpa2UgdGhpcyBmb3Igbm93XG4gICAgICAgIGlmIChuZXdWYWwubGVuZ3RoID09PSBvbGRWYWwubGVuZ3RoKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgICAgfSxcblxuICAgICAgZGVlcDogdHJ1ZVxuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIC8vIElmIGl0J3MgdGhlIGZpcnN0IHRpbWUgd2UncmUgc2V0dGluZyBpbnB1dCxcbiAgICAgIC8vIG1hcmsgaXQgd2l0aCBoYXNJbnB1dFxuICAgICAgaWYgKCEhdmFsICYmICF0aGlzLmhhc0lucHV0KSB0aGlzLmhhc0lucHV0ID0gdHJ1ZTtcblxuICAgICAgaWYgKHRoaXMuaGFzSW5wdXQgJiYgIXRoaXMudmFsaWRhdGVPbkJsdXIpIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuICAgIH0sXG4gICAgaXNGb2N1c2VkOiBmdW5jdGlvbiBpc0ZvY3VzZWQodmFsKSB7XG4gICAgICAvLyBJZiB3ZSdyZSBub3QgZm9jdXNlZCwgYW5kIGl0J3MgdGhlIGZpcnN0IHRpbWVcbiAgICAgIC8vIHdlJ3JlIGRlZm9jdXNpbmcsIHNldCBzaG91bGRWYWxpZGF0ZSB0byB0cnVlXG4gICAgICBpZiAoIXZhbCAmJiAhdGhpcy5oYXNGb2N1c2VkKSB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXNlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTplcnJvcicsIHRoaXMuZXJyb3JCdWNrZXQubGVuZ3RoID4gMCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBoYXNFcnJvcjogZnVuY3Rpb24gaGFzRXJyb3IodmFsKSB7XG4gICAgICBpZiAodGhpcy5zaG91bGRWYWxpZGF0ZSkge1xuICAgICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6ZXJyb3InLCB2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZXJyb3I6IGZ1bmN0aW9uIGVycm9yKHZhbCkge1xuICAgICAgdGhpcy5zaG91bGRWYWxpZGF0ZSA9ICEhdmFsO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSAhIXRoaXMuZXJyb3I7XG4gICAgdGhpcy52YWxpZGF0ZSgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIC8vIFRPRE86IERvIHRoaXMgYW5vdGhlciB3YXkhXG4gICAgICAvLyBUaGlzIGlzIHNvIHRoYXQgd2UgY2FuIHJlc2V0IGFsbCB0eXBlcyBvZiBpbnB1dHNcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pc011bHRpcGxlID8gW10gOiBudWxsKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIG51bGwpO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLnNob3VsZFZhbGlkYXRlID0gZmFsc2U7XG4gICAgICAgIF90aGlzLmhhc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgX3RoaXMudmFsaWRhdGUoKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgdmFsaWRhdGU6IGZ1bmN0aW9uIHZhbGlkYXRlKCkge1xuICAgICAgdmFyIGZvcmNlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBmYWxzZTtcbiAgICAgIHZhciB2YWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogdGhpcy5pbnB1dFZhbHVlO1xuXG4gICAgICBpZiAoZm9yY2UpIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuXG4gICAgICB0aGlzLmVycm9yQnVja2V0ID0gW107XG5cbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLnJ1bGVzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgcnVsZSA9IHRoaXMucnVsZXNbaW5kZXhdO1xuICAgICAgICB2YXIgdmFsaWQgPSB0eXBlb2YgcnVsZSA9PT0gJ2Z1bmN0aW9uJyA/IHJ1bGUodmFsdWUpIDogcnVsZTtcblxuICAgICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHR5cGVvZiB2YWxpZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICB0aGlzLmVycm9yQnVja2V0LnB1c2godmFsaWQpO1xuICAgICAgICB9IGVsc2UgaWYgKHZhbGlkICE9PSB0cnVlKSB7XG4gICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX19bXCJhXCIgLyogY29uc29sZUVycm9yICovXSkoJ1J1bGVzIHNob3VsZCByZXR1cm4gYSBzdHJpbmcgb3IgYm9vbGVhbiwgcmVjZWl2ZWQgXFwnJyArICh0eXBlb2YgdmFsaWQgPT09ICd1bmRlZmluZWQnID8gJ3VuZGVmaW5lZCcgOiBfdHlwZW9mKHZhbGlkKSkgKyAnXFwnIGluc3RlYWQnLCB0aGlzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLnZhbGlkID0gdGhpcy5lcnJvckJ1Y2tldC5sZW5ndGggPT09IDA7XG5cbiAgICAgIHJldHVybiB0aGlzLnZhbGlkO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTMyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2hpcHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2hpcHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jaGlwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtY2hpcCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgY2xvc2U6IEJvb2xlYW4sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgbGFiZWw6IEJvb2xlYW4sXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICAvLyBVc2VkIGZvciBzZWxlY3RzL3RhZ2dpbmdcbiAgICBzZWxlY3RlZDogQm9vbGVhbixcbiAgICBzbWFsbDogQm9vbGVhbixcbiAgICB0ZXh0Q29sb3I6IFN0cmluZyxcbiAgICB2YWx1ZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHtcbiAgICAgICAgJ2NoaXAtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgJ2NoaXAtLXNlbGVjdGVkJzogdGhpcy5zZWxlY3RlZCxcbiAgICAgICAgJ2NoaXAtLWxhYmVsJzogdGhpcy5sYWJlbCxcbiAgICAgICAgJ2NoaXAtLW91dGxpbmUnOiB0aGlzLm91dGxpbmUsXG4gICAgICAgICdjaGlwLS1zbWFsbCc6IHRoaXMuc21hbGwsXG4gICAgICAgICdjaGlwLS1yZW1vdmFibGUnOiB0aGlzLmNsb3NlLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMudGV4dENvbG9yIHx8IHRoaXMub3V0bGluZSA/IHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcywgdGhpcy50ZXh0Q29sb3IgfHwgdGhpcy5jb2xvcikgOiBjbGFzc2VzO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQ2xvc2U6IGZ1bmN0aW9uIGdlbkNsb3NlKGgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2NoaXBfX2Nsb3NlJyxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2lucHV0JywgZmFsc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIGgoJ2RpdicsIGRhdGEsIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgJ2NhbmNlbCcpXSk7XG4gICAgfSxcbiAgICBnZW5Db250ZW50OiBmdW5jdGlvbiBnZW5Db250ZW50KGgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFt0aGlzLiRzbG90cy5kZWZhdWx0XTtcblxuICAgICAgdGhpcy5jbG9zZSAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuQ2xvc2UoaCkpO1xuXG4gICAgICByZXR1cm4gaCgnc3BhbicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdjaGlwX19jb250ZW50J1xuICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2NoaXAnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgYXR0cnM6IHsgdGFiaW5kZXg6IHRoaXMuZGlzYWJsZWQgPyAtMSA6IDAgfSxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dLFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICByZXR1cm4gaCgnc3BhbicsIGRhdGEsIFt0aGlzLmdlbkNvbnRlbnQoaCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTMzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTM0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzUpO1xuXG5cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0YUl0ZXJhdG9yX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDEzNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGFfaXRlcmF0b3Jfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV9pdGVyYXRvcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGFfaXRlcmF0b3Jfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kYXRhX2l0ZXJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ2KTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGEtaXRlcmF0b3InLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2RhdGFfaXRlcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBwcm9wczoge1xuICAgIGNvbnRlbnRUYWc6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdkaXYnXG4gICAgfSxcbiAgICBjb250ZW50UHJvcHM6IHtcbiAgICAgIHR5cGU6IE9iamVjdCxcbiAgICAgIHJlcXVpcmVkOiBmYWxzZVxuICAgIH0sXG4gICAgY29udGVudENsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2RhdGEtaXRlcmF0b3InOiB0cnVlLFxuICAgICAgICAnZGF0YS1pdGVyYXRvci0tc2VsZWN0LWFsbCc6IHRoaXMuc2VsZWN0QWxsICE9PSBmYWxzZSxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLmdlbkl0ZW1zKCk7XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmNvbnRlbnRDbGFzcyxcbiAgICAgICAgYXR0cnM6IHRoaXMuJGF0dHJzLFxuICAgICAgICBvbjogdGhpcy4kbGlzdGVuZXJzLFxuICAgICAgICBwcm9wczogdGhpcy5jb250ZW50UHJvcHNcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KHRoaXMuY29udGVudFRhZywgZGF0YSwgY2hpbGRyZW4pO1xuICAgIH0sXG4gICAgZ2VuRW1wdHlJdGVtczogZnVuY3Rpb24gZ2VuRW1wdHlJdGVtcyhjb250ZW50KSB7XG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ3RleHQteHMtY2VudGVyJyxcbiAgICAgICAgc3R5bGU6ICd3aWR0aDogMTAwJSdcbiAgICAgIH0sIGNvbnRlbnQpXTtcbiAgICB9LFxuICAgIGdlbkZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGdlbkZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNjb3BlZFNsb3RzLml0ZW0pIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciBpdGVtcyA9IFtdO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW4gPSB0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoOyBpbmRleCA8IGxlbjsgKytpbmRleCkge1xuICAgICAgICB2YXIgaXRlbSA9IHRoaXMuZmlsdGVyZWRJdGVtc1tpbmRleF07XG4gICAgICAgIHZhciBwcm9wcyA9IHRoaXMuY3JlYXRlUHJvcHMoaXRlbSwgaW5kZXgpO1xuICAgICAgICBpdGVtcy5wdXNoKHRoaXMuJHNjb3BlZFNsb3RzLml0ZW0ocHJvcHMpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH0sXG4gICAgZ2VuRm9vdGVyOiBmdW5jdGlvbiBnZW5Gb290ZXIoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgICAgaWYgKHRoaXMuJHNsb3RzLmZvb3Rlcikge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuJHNsb3RzLmZvb3Rlcik7XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5oaWRlQWN0aW9ucykge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuQWN0aW9ucygpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGgpIHJldHVybiBudWxsO1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICB0aGlzLmluaXRQYWdpbmF0aW9uKCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW3RoaXMuZ2VuQ29udGVudCgpLCB0aGlzLmdlbkZvb3RlcigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDEzNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RleHRfZmllbGRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGV4dF9maWVsZHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190ZXh0X2ZpZWxkc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0X3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0X3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX2RlcGVuZGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfZmlsdGVyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfaW5wdXRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21hc2thYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX21peGluc19zb2xvYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfc2VsZWN0X2F1dG9jb21wbGV0ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX21peGluc19zZWxlY3RfY29tcHV0ZWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19taXhpbnNfc2VsZWN0X2V2ZW50c19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX21peGluc19zZWxlY3RfZ2VuZXJhdG9yc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTNfX21peGluc19zZWxlY3RfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX21peGluc19zZWxlY3RfbWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX21peGluc19zZWxlY3RfcHJvcHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19taXhpbnNfc2VsZWN0X3dhdGNoZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xN19fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuLy8gU3R5bGVzXG5cblxuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cblxuXG4vLyBDb21wb25lbnQgbGV2ZWwgbWl4aW5zXG5cblxuXG5cblxuXG5cblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXNlbGVjdCcsXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE3X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fbWl4aW5zX3NlbGVjdF9hdXRvY29tcGxldGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19taXhpbnNfc2VsZWN0X2V2ZW50c19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19maWx0ZXJhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX21peGluc19zZWxlY3RfZ2VuZXJhdG9yc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19taXhpbnNfc2VsZWN0X2hlbHBlcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfaW5wdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfbWFza2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fbWl4aW5zX3NlbGVjdF9tZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX21peGluc19zZWxlY3RfcHJvcHNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfc29sb2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNl9fbWl4aW5zX3NlbGVjdF93YXRjaGVyc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLFxuICAvLyBJbnB1dCBhbmQgQ29tcHV0ZWQgYm90aFxuICAvLyBjb250YWluIGlzRGlydHkgcHJvcHNcbiAgLy8gbGFzdCBnZXRzIG1lcmdlZCBpblxuICBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19taXhpbnNfc2VsZWN0X2NvbXB1dGVkX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNhY2hlZEl0ZW1zOiB0aGlzLmNhY2hlSXRlbXMgPyB0aGlzLml0ZW1zIDogW10sXG4gICAgICBjb250ZW50OiB7fSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknLFxuICAgICAgaW5wdXRWYWx1ZTogKHRoaXMubXVsdGlwbGUgfHwgdGhpcy50YWdzKSAmJiAhdGhpcy52YWx1ZSA/IFtdIDogdGhpcy52YWx1ZSxcbiAgICAgIGlzQm9vdGVkOiBmYWxzZSxcbiAgICAgIGxhc3RJdGVtOiAyMCxcbiAgICAgIGxhenlTZWFyY2g6IG51bGwsXG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICBtZW51SXNBY3RpdmU6IGZhbHNlLFxuICAgICAgc2VsZWN0ZWRJbmRleDogLTEsXG4gICAgICBzZWxlY3RlZEl0ZW1zOiBbXSxcbiAgICAgIHNob3VsZEJyZWFrOiBmYWxzZVxuICAgIH07XG4gIH0sXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgLy8gSWYgaW5zdGFuY2UgaXMgYmVpbmcgZGVzdHJveWVkXG4gICAgLy8gZG8gbm90IHJ1biBtb3VudGVkIGZ1bmN0aW9uc1xuICAgIGlmICh0aGlzLl9pc0Rlc3Ryb3llZCkgcmV0dXJuO1xuXG4gICAgLy8gRXZhbHVhdGUgdGhlIHNlbGVjdGVkIGl0ZW1zIGltbWVkaWF0ZWx5XG4gICAgLy8gdG8gYXZvaWQgYSB1bm5lY2Vzc2FyeSBsYWJlbCB0cmFuc2l0aW9uXG4gICAgdGhpcy5nZW5TZWxlY3RlZEl0ZW1zKCk7XG5cbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLiRyZWZzLm1lbnUuJHJlZnMuY29udGVudDtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5pc0Jvb3RlZCkge1xuICAgICAgaWYgKHRoaXMuY29udGVudCkge1xuICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5vblNjcm9sbCwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBuZWVkc1RpbGU6IGZ1bmN0aW9uIG5lZWRzVGlsZSh0aWxlKSB7XG4gICAgICAvLyBUT0RPOiB1c2UgdGhlIGNvbXBvbmVudCBuYW1lIGluc3RlYWQgb2YgdGFnXG4gICAgICByZXR1cm4gdGlsZS5jb21wb25lbnRPcHRpb25zID09IG51bGwgfHwgdGlsZS5jb21wb25lbnRPcHRpb25zLnRhZyAhPT0gJ3YtbGlzdC10aWxlJztcbiAgICB9LFxuICAgIGNoYW5nZVNlbGVjdGVkSW5kZXg6IGZ1bmN0aW9uIGNoYW5nZVNlbGVjdGVkSW5kZXgoa2V5Q29kZSkge1xuICAgICAgLy8gYmFja3NwYWNlLCBsZWZ0LCByaWdodCwgZGVsZXRlXG4gICAgICBpZiAoIVs4LCAzNywgMzksIDQ2XS5pbmNsdWRlcyhrZXlDb2RlKSkgcmV0dXJuO1xuXG4gICAgICB2YXIgaW5kZXhlcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggLSAxO1xuXG4gICAgICBpZiAoa2V5Q29kZSA9PT0gMzcpIHtcbiAgICAgICAgLy8gTGVmdCBhcnJvd1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXggPT09IC0xID8gaW5kZXhlcyA6IHRoaXMuc2VsZWN0ZWRJbmRleCAtIDE7XG4gICAgICB9IGVsc2UgaWYgKGtleUNvZGUgPT09IDM5KSB7XG4gICAgICAgIC8vIFJpZ2h0IGFycm93XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuc2VsZWN0ZWRJbmRleCA+PSBpbmRleGVzID8gLTEgOiB0aGlzLnNlbGVjdGVkSW5kZXggKyAxO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPT09IC0xKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IGluZGV4ZXM7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gYmFja3NwYWNlL2RlbGV0ZVxuICAgICAgaWYgKFs4LCA0Nl0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcbiAgICAgICAgdmFyIG5ld0luZGV4ID0gdGhpcy5zZWxlY3RlZEluZGV4ID09PSBpbmRleGVzID8gdGhpcy5zZWxlY3RlZEluZGV4IC0gMSA6IHRoaXMuc2VsZWN0ZWRJdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXggKyAxXSA/IHRoaXMuc2VsZWN0ZWRJbmRleCA6IC0xO1xuXG4gICAgICAgIHRoaXMuY29tYm9ib3ggPyB0aGlzLmlucHV0VmFsdWUgPSBudWxsIDogdGhpcy5zZWxlY3RJdGVtKHRoaXMuc2VsZWN0ZWRJdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gbmV3SW5kZXg7XG4gICAgICB9XG4gICAgfSxcbiAgICBjbG9zZUNvbmRpdGlvbmFsOiBmdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQWN0aXZlICYmICEhdGhpcy5jb250ZW50ICYmICF0aGlzLmNvbnRlbnQuY29udGFpbnMoZS50YXJnZXQpICYmICEhdGhpcy4kZWwgJiYgIXRoaXMuJGVsLmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICB9LFxuICAgIGZpbHRlckR1cGxpY2F0ZXM6IGZ1bmN0aW9uIGZpbHRlckR1cGxpY2F0ZXMoYXJyKSB7XG4gICAgICB2YXIgdW5pcXVlVmFsdWVzID0gbmV3IE1hcCgpO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IGFyci5sZW5ndGg7ICsraW5kZXgpIHtcbiAgICAgICAgdmFyIGl0ZW0gPSBhcnJbaW5kZXhdO1xuICAgICAgICB2YXIgdmFsID0gdGhpcy5nZXRWYWx1ZShpdGVtKTtcblxuICAgICAgICAhdW5pcXVlVmFsdWVzLmhhcyh2YWwpICYmIHVuaXF1ZVZhbHVlcy5zZXQodmFsLCBpdGVtKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBBcnJheS5mcm9tKHVuaXF1ZVZhbHVlcy52YWx1ZXMoKSk7XG4gICAgfSxcbiAgICBnZW5EaXJlY3RpdmVzOiBmdW5jdGlvbiBnZW5EaXJlY3RpdmVzKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgY2xvc2VDb25kaXRpb25hbDogdGhpcy5jbG9zZUNvbmRpdGlvbmFsXG4gICAgICAgIH1cbiAgICAgIH1dO1xuICAgIH0sXG4gICAgZ2VuU2VsZWN0ZWRJdGVtczogZnVuY3Rpb24gZ2VuU2VsZWN0ZWRJdGVtcygpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB2YXIgdmFsID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB0aGlzLmlucHV0VmFsdWU7XG5cbiAgICAgIC8vIElmIHdlIGFyZSB1c2luZyB0YWdzLCBkb24ndCBmaWx0ZXIgcmVzdWx0c1xuICAgICAgaWYgKHRoaXMudGFncykgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHZhbDtcblxuICAgICAgLy8gQ29tYm9ib3ggaXMgdGhlIHNpbmdsZSB2ZXJzaW9uXG4gICAgICAvLyBvZiBhIHRhZ2dhYmxlIHNlbGVjdCBlbGVtZW50XG4gICAgICBpZiAodGhpcy5jb21ib2JveCkgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHZhbCAhPSBudWxsID8gW3ZhbF0gOiBbXTtcblxuICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSB0aGlzLmNvbXB1dGVkSXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIGlmICghX3RoaXMyLmlzTXVsdGlwbGUpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMyLmdldFZhbHVlKGkpID09PSBfdGhpczIuZ2V0VmFsdWUodmFsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBBbHdheXMgcmV0dXJuIEJvb2xlYW5cbiAgICAgICAgICByZXR1cm4gX3RoaXMyLmZpbmRFeGlzdGluZ0luZGV4KGkpID4gLTE7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIXNlbGVjdGVkSXRlbXMubGVuZ3RoICYmIHZhbCAhPSBudWxsICYmIHRoaXMudGFncykge1xuICAgICAgICBzZWxlY3RlZEl0ZW1zID0gQXJyYXkuaXNBcnJheSh2YWwpID8gdmFsIDogW3ZhbF07XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHNlbGVjdGVkSXRlbXM7XG4gICAgfSxcbiAgICBjbGVhcmFibGVDYWxsYmFjazogZnVuY3Rpb24gY2xlYXJhYmxlQ2FsbGJhY2soKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgdmFyIGlucHV0VmFsdWUgPSB0aGlzLmlzTXVsdGlwbGUgPyBbXSA6IG51bGw7XG5cbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWU7XG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCBpbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMuZ2VuU2VsZWN0ZWRJdGVtcygpO1xuXG4gICAgICAvLyBXaGVuIGlucHV0IGlzIGNsZWFyZWRcbiAgICAgIC8vIHJlc2V0IHNlYXJjaCB2YWx1ZSBhbmRcbiAgICAgIC8vIHJlLWZvY3VzIHRoZSBpbnB1dFxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMy5zZWFyY2hWYWx1ZSA9IG51bGw7XG4gICAgICAgIF90aGlzMy5mb2N1c0lucHV0KCk7XG4gICAgICB9LCAwKTtcblxuICAgICAgaWYgKHRoaXMub3Blbk9uQ2xlYXIpIHtcbiAgICAgICAgc2V0VGltZW91dCh0aGlzLnNob3dNZW51LCA1MCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBvblNjcm9sbDogZnVuY3Rpb24gb25TY3JvbGwoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzNC5jb250ZW50LnNjcm9sbFRvcCA9IDA7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMubGFzdEl0ZW0gPj0gdGhpcy5jb21wdXRlZEl0ZW1zLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgICAgIHZhciBzaG93TW9yZUl0ZW1zID0gdGhpcy5jb250ZW50LnNjcm9sbEhlaWdodCAtICh0aGlzLmNvbnRlbnQuc2Nyb2xsVG9wICsgdGhpcy5jb250ZW50LmNsaWVudEhlaWdodCkgPCAyMDA7XG5cbiAgICAgICAgaWYgKHNob3dNb3JlSXRlbXMpIHtcbiAgICAgICAgICB0aGlzLmxhc3RJdGVtICs9IDIwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBmaW5kRXhpc3RpbmdJdGVtOiBmdW5jdGlvbiBmaW5kRXhpc3RpbmdJdGVtKHZhbCkge1xuICAgICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICAgIHZhciBpdGVtVmFsdWUgPSB0aGlzLmdldFZhbHVlKHZhbCk7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczUudmFsdWVDb21wYXJhdG9yKF90aGlzNS5nZXRWYWx1ZShpKSwgaXRlbVZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZmluZEV4aXN0aW5nSW5kZXg6IGZ1bmN0aW9uIGZpbmRFeGlzdGluZ0luZGV4KGl0ZW0pIHtcbiAgICAgIHZhciBfdGhpczYgPSB0aGlzO1xuXG4gICAgICB2YXIgaXRlbVZhbHVlID0gdGhpcy5nZXRWYWx1ZShpdGVtKTtcbiAgICAgIHJldHVybiB0aGlzLmlucHV0VmFsdWUuZmluZEluZGV4KGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczYudmFsdWVDb21wYXJhdG9yKF90aGlzNi5nZXRWYWx1ZShpKSwgaXRlbVZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgc2VsZWN0SXRlbTogZnVuY3Rpb24gc2VsZWN0SXRlbShpdGVtKSB7XG4gICAgICB2YXIgX3RoaXM3ID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmlzTXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5yZXR1cm5PYmplY3QgPyBpdGVtIDogdGhpcy5nZXRWYWx1ZShpdGVtKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1dO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdmFyIGlucHV0VmFsdWUgPSB0aGlzLmlucHV0VmFsdWUuc2xpY2UoKTtcbiAgICAgICAgdmFyIGkgPSB0aGlzLmZpbmRFeGlzdGluZ0luZGV4KGl0ZW0pO1xuXG4gICAgICAgIGkgIT09IC0xID8gaW5wdXRWYWx1ZS5zcGxpY2UoaSwgMSkgOiBpbnB1dFZhbHVlLnB1c2goaXRlbSk7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWUubWFwKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKGkpO1xuICAgICAgICAgIHJldHVybiBfdGhpczcucmV0dXJuT2JqZWN0ID8gaSA6IF90aGlzNy5nZXRWYWx1ZShpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRJdGVtcztcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gLTE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VhcmNoVmFsdWUgPSAhdGhpcy5pc011bHRpcGxlICYmICF0aGlzLmNoaXBzICYmICF0aGlzLiRzY29wZWRTbG90cy5zZWxlY3Rpb24gPyB0aGlzLmdldFRleHQodGhpcy5zZWxlY3RlZEl0ZW0pIDogbnVsbDtcblxuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5pbnB1dFZhbHVlKTtcblxuICAgICAgLy8gTGlzdCB0aWxlIHdpbGwgcmUtcmVuZGVyLCByZXNldCBpbmRleCB0b1xuICAgICAgLy8gbWFpbnRhaW4gaGlnaGxpZ2h0aW5nXG4gICAgICB2YXIgc2F2ZWRJbmRleCA9IHRoaXMuZ2V0TWVudUluZGV4KCk7XG4gICAgICB0aGlzLnJlc2V0TWVudUluZGV4KCk7XG5cbiAgICAgIC8vIEFmdGVyIHNlbGVjdGluZyBhbiBpdGVtXG4gICAgICAvLyByZWZvY3VzIHRoZSBpbnB1dCBhbmRcbiAgICAgIC8vIHJlc2V0IHRoZSBjYXJldCBwb3NcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM3LmZvY3VzSW5wdXQoKTtcbiAgICAgICAgX3RoaXM3LnNldENhcmV0UG9zaXRpb24oX3RoaXM3LmN1cnJlbnRSYW5nZSk7XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBpZiAoc2F2ZWRJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICBfdGhpczcuc2V0TWVudUluZGV4KHNhdmVkSW5kZXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczggPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBhdHRyczogX2V4dGVuZHMoe1xuICAgICAgICB0YWJpbmRleDogdGhpcy5pc0F1dG9jb21wbGV0ZSB8fCB0aGlzLmRpc2FibGVkID8gLTEgOiB0aGlzLnRhYmluZGV4LFxuICAgICAgICAnZGF0YS11aWQnOiB0aGlzLl91aWRcbiAgICAgIH0sIHRoaXMuaXNBdXRvY29tcGxldGUgPyBudWxsIDogdGhpcy4kYXR0cnMsIHtcbiAgICAgICAgcm9sZTogdGhpcy5pc0F1dG9jb21wbGV0ZSA/IG51bGwgOiAnY29tYm9ib3gnXG4gICAgICB9KVxuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUpIHtcbiAgICAgIGRhdGEub24gPSB0aGlzLmdlbkxpc3RlbmVycygpO1xuICAgICAgZGF0YS5kaXJlY3RpdmVzID0gdGhpcy5nZW5EaXJlY3RpdmVzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGEub24gPSB7XG4gICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICBpZiAoX3RoaXM4LmRpc2FibGVkIHx8IF90aGlzOC5yZWFkb25seSB8fCBfdGhpczguaXNGb2N1c2VkKSByZXR1cm47XG5cbiAgICAgICAgICAvLyBJZiB0aGUgaW5wdXQgaXMgZGlydHksXG4gICAgICAgICAgLy8gdGhlIGlucHV0IGlzIG5vdCB0YXJnZXRhYmxlXG4gICAgICAgICAgLy8gc28gd2UgbXVzdCBtYW51YWxseSBmb2N1c1xuICAgICAgICAgIGlmIChfdGhpczguaXNEaXJ0eSkge1xuICAgICAgICAgICAgX3RoaXM4LmZvY3VzKCk7XG4gICAgICAgICAgICBfdGhpczguJG5leHRUaWNrKF90aGlzOC5mb2N1c0lucHV0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbdGhpcy5nZW5TZWxlY3Rpb25zQW5kU2VhcmNoKCksIHRoaXMuZ2VuTWVudSgpXSwgZGF0YSwgdGhpcy50b2dnbGVNZW51KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTM4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTM5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IGRlZmF1bHREZWxpbWl0ZXJzICovXG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGlzTWFza0RlbGltaXRlcjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIG1hc2tUZXh0OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJjXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gdW5tYXNrVGV4dDsgfSk7XG4vKipcbiAqIERlZmF1bHQgZGVsaW1pdGVyIFJlZ0V4cFxuICpcbiAqIEB0eXBlIHtSZWdFeHB9XG4gKi9cbnZhciBkZWZhdWx0RGVsaW1pdGVycyA9IC9bLSEkJV4mKigpXyt8fj1ge31bXFxdOlwiOyc8Pj8sLi9cXFxcIF0vO1xuXG4vKipcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gY2hhclxuICpcbiAqIEByZXR1cm4ge0Jvb2xlYW59XG4gKi9cbnZhciBpc01hc2tEZWxpbWl0ZXIgPSBmdW5jdGlvbiBpc01hc2tEZWxpbWl0ZXIoY2hhcikge1xuICByZXR1cm4gY2hhciAmJiBkZWZhdWx0RGVsaW1pdGVycy50ZXN0KGNoYXIpO1xufTtcblxuLyoqXG4gKiBNYXNrIGtleXNcbiAqXG4gKiBAdHlwZSB7T2JqZWN0fVxuICovXG52YXIgYWxsb3dlZE1hc2tzID0ge1xuICAnIyc6IHtcbiAgICB0ZXN0OiBmdW5jdGlvbiB0ZXN0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLm1hdGNoKC9bMC05XS8pO1xuICAgIH1cbiAgfSxcbiAgJ0EnOiB7XG4gICAgdGVzdDogZnVuY3Rpb24gdGVzdChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci5tYXRjaCgvW0EtWl0vaSk7XG4gICAgfSxcbiAgICBjb252ZXJ0OiBmdW5jdGlvbiBjb252ZXJ0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuICB9LFxuICAnYSc6IHtcbiAgICB0ZXN0OiBmdW5jdGlvbiB0ZXN0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLm1hdGNoKC9bYS16XS9pKTtcbiAgICB9LFxuICAgIGNvbnZlcnQ6IGZ1bmN0aW9uIGNvbnZlcnQoY2hhcikge1xuICAgICAgcmV0dXJuIGNoYXIudG9Mb3dlckNhc2UoKTtcbiAgICB9XG4gIH0sXG4gICdOJzoge1xuICAgIHRlc3Q6IGZ1bmN0aW9uIHRlc3QoY2hhcikge1xuICAgICAgcmV0dXJuIGNoYXIubWF0Y2goL1swLTlBLVpdL2kpO1xuICAgIH0sXG4gICAgY29udmVydDogZnVuY3Rpb24gY29udmVydChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci50b1VwcGVyQ2FzZSgpO1xuICAgIH1cbiAgfSxcbiAgJ24nOiB7XG4gICAgdGVzdDogZnVuY3Rpb24gdGVzdChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci5tYXRjaCgvWzAtOWEtel0vaSk7XG4gICAgfSxcbiAgICBjb252ZXJ0OiBmdW5jdGlvbiBjb252ZXJ0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxuICB9LFxuICAnWCc6IHtcbiAgICB0ZXN0OiBpc01hc2tEZWxpbWl0ZXJcbiAgfVxuXG4gIC8qKlxuICAgKiBJcyBDaGFyYWN0ZXIgbWFza1xuICAgKlxuICAgKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAgICpcbiAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICovXG59O3ZhciBpc01hc2sgPSBmdW5jdGlvbiBpc01hc2soY2hhcikge1xuICByZXR1cm4gYWxsb3dlZE1hc2tzLmhhc093blByb3BlcnR5KGNoYXIpO1xufTtcblxuLyoqXG4gKiBBdXRvbWF0aWNhbGx5IGNvbnZlcnQgY2hhciBjYXNlXG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSBtYXNrXG4gKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAqXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKi9cbnZhciBjb252ZXJ0ID0gZnVuY3Rpb24gY29udmVydChtYXNrLCBjaGFyKSB7XG4gIHJldHVybiBhbGxvd2VkTWFza3NbbWFza10uY29udmVydCA/IGFsbG93ZWRNYXNrc1ttYXNrXS5jb252ZXJ0KGNoYXIpIDogY2hhcjtcbn07XG5cbi8qKlxuICogTWFzayBWYWxpZGF0aW9uXG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSBtYXNrXG4gKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAqXG4gKiBAcmV0dXJuIHtCb29sZWFufVxuICovXG52YXIgbWFza1ZhbGlkYXRlcyA9IGZ1bmN0aW9uIG1hc2tWYWxpZGF0ZXMobWFzaywgY2hhcikge1xuICBpZiAoY2hhciA9PSBudWxsIHx8ICFpc01hc2sobWFzaykpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIGFsbG93ZWRNYXNrc1ttYXNrXS50ZXN0KGNoYXIpO1xufTtcblxuLyoqXG4gKiBNYXNrIFRleHRcbiAqXG4gKiBUYWtlcyBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBjaGFyYWN0ZXJzXG4gKiBhbmQgcmV0dXJucyBhIG1hc2tlZCBzdHJpbmdcbiAqXG4gKiBAcGFyYW0geyp9IHRleHRcbiAqIEBwYXJhbSB7QXJyYXl8U3RyaW5nfSBtYXNrZWRcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW2RvbnRGaWxsTWFza0JsYW5rc11cbiAqXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKi9cbnZhciBtYXNrVGV4dCA9IGZ1bmN0aW9uIG1hc2tUZXh0KHRleHQsIG1hc2tlZCwgZG9udEZpbGxNYXNrQmxhbmtzKSB7XG4gIGlmICh0ZXh0ID09IG51bGwpIHJldHVybiAnJztcbiAgdGV4dCA9IFN0cmluZyh0ZXh0KTtcbiAgaWYgKCFtYXNrZWQubGVuZ3RoIHx8ICF0ZXh0Lmxlbmd0aCkgcmV0dXJuIHRleHQ7XG4gIGlmICghQXJyYXkuaXNBcnJheShtYXNrZWQpKSBtYXNrZWQgPSBtYXNrZWQuc3BsaXQoJycpO1xuXG4gIHZhciB0ZXh0SW5kZXggPSAwO1xuICB2YXIgbWFza0luZGV4ID0gMDtcbiAgdmFyIG5ld1RleHQgPSAnJztcblxuICB3aGlsZSAobWFza0luZGV4IDwgbWFza2VkLmxlbmd0aCkge1xuICAgIHZhciBtYXNrID0gbWFza2VkW21hc2tJbmRleF07XG5cbiAgICAvLyBBc3NpZ24gdGhlIG5leHQgY2hhcmFjdGVyXG4gICAgdmFyIGNoYXIgPSB0ZXh0W3RleHRJbmRleF07XG5cbiAgICAvLyBDaGVjayBpZiBtYXNrIGlzIGRlbGltaXRlclxuICAgIC8vIGFuZCBjdXJyZW50IGNoYXIgbWF0Y2hlc1xuICAgIGlmICghaXNNYXNrKG1hc2spICYmIGNoYXIgPT09IG1hc2spIHtcbiAgICAgIG5ld1RleHQgKz0gbWFzaztcbiAgICAgIHRleHRJbmRleCsrO1xuICAgICAgLy8gQ2hlY2sgaWYgbm90IG1hc2tcbiAgICB9IGVsc2UgaWYgKCFpc01hc2sobWFzaykgJiYgIWRvbnRGaWxsTWFza0JsYW5rcykge1xuICAgICAgbmV3VGV4dCArPSBtYXNrO1xuICAgICAgLy8gQ2hlY2sgaWYgaXMgbWFzayBhbmQgdmFsaWRhdGVzXG4gICAgfSBlbHNlIGlmIChtYXNrVmFsaWRhdGVzKG1hc2ssIGNoYXIpKSB7XG4gICAgICBuZXdUZXh0ICs9IGNvbnZlcnQobWFzaywgY2hhcik7XG4gICAgICB0ZXh0SW5kZXgrKztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ld1RleHQ7XG4gICAgfVxuXG4gICAgbWFza0luZGV4Kys7XG4gIH1cblxuICByZXR1cm4gbmV3VGV4dDtcbn07XG5cbi8qKlxuICogVW5tYXNrIFRleHRcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdGV4dFxuICpcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqL1xudmFyIHVubWFza1RleHQgPSBmdW5jdGlvbiB1bm1hc2tUZXh0KHRleHQpIHtcbiAgcmV0dXJuIHRleHQgPyBTdHJpbmcodGV4dCkucmVwbGFjZShuZXcgUmVnRXhwKGRlZmF1bHREZWxpbWl0ZXJzLCAnZycpLCAnJykgOiB0ZXh0O1xufTtcblxuLyoqKi8gfSksXG4vKiAxNDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuLyoqXG4gKiBTZWxlY3QgYXV0b2NvbXBsZXRlXG4gKlxuICogQG1peGluXG4gKlxuICogSGFuZGxlcyBsb2dpYyB3aGVuIHVzaW5nIHRoZSBcImF1dG9jb21wbGV0ZVwiIHByb3BcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgZmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW0sIHF1ZXJ5VGV4dCwgaXRlbVRleHQpIHtcbiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZnVuY3Rpb24gaGFzVmFsdWUodmFsKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbCAhPSBudWxsID8gdmFsIDogJyc7XG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHRleHQgPSBoYXNWYWx1ZShpdGVtVGV4dCk7XG4gICAgICAgIHZhciBxdWVyeSA9IGhhc1ZhbHVlKHF1ZXJ5VGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHRleHQudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YocXVlcnkudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpKSA+IC0xO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZmlsdGVyU2VhcmNoOiBmdW5jdGlvbiBmaWx0ZXJTZWFyY2goKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUpIHJldHVybiB0aGlzLmNvbXB1dGVkSXRlbXM7XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkSXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy5maWx0ZXIoaSwgX3RoaXMuc2VhcmNoVmFsdWUsIF90aGlzLmdldFRleHQoaSkpO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5GaWx0ZXJlZDogZnVuY3Rpb24gZ2VuRmlsdGVyZWQodGV4dCkge1xuICAgICAgdGV4dCA9ICh0ZXh0IHx8ICcnKS50b1N0cmluZygpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUgfHwgIXRoaXMuc2VhcmNoVmFsdWUgfHwgdGhpcy5maWx0ZXJlZEl0ZW1zLmxlbmd0aCA8IDEpIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImdcIiAvKiBlc2NhcGVIVE1MICovXSkodGV4dCk7XG5cbiAgICAgIHZhciBfZ2V0TWFza2VkQ2hhcmFjdGVycyA9IHRoaXMuZ2V0TWFza2VkQ2hhcmFjdGVycyh0ZXh0KSxcbiAgICAgICAgICBzdGFydCA9IF9nZXRNYXNrZWRDaGFyYWN0ZXJzLnN0YXJ0LFxuICAgICAgICAgIG1pZGRsZSA9IF9nZXRNYXNrZWRDaGFyYWN0ZXJzLm1pZGRsZSxcbiAgICAgICAgICBlbmQgPSBfZ2V0TWFza2VkQ2hhcmFjdGVycy5lbmQ7XG5cbiAgICAgIHJldHVybiAnJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZ1wiIC8qIGVzY2FwZUhUTUwgKi9dKShzdGFydCkgKyB0aGlzLmdlbkhpZ2hsaWdodChtaWRkbGUpICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJnXCIgLyogZXNjYXBlSFRNTCAqL10pKGVuZCk7XG4gICAgfSxcbiAgICBnZW5IaWdobGlnaHQ6IGZ1bmN0aW9uIGdlbkhpZ2hsaWdodCh0ZXh0KSB7XG4gICAgICBpZiAodGhpcy5pc05vdEZpbHRlcmluZykgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZ1wiIC8qIGVzY2FwZUhUTUwgKi9dKSh0ZXh0KTtcblxuICAgICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cImxpc3RfX3RpbGVfX21hc2tcIj4nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJnXCIgLyogZXNjYXBlSFRNTCAqL10pKHRleHQpICsgJzwvc3Bhbj4nO1xuICAgIH0sXG4gICAgZ2V0TWFza2VkQ2hhcmFjdGVyczogZnVuY3Rpb24gZ2V0TWFza2VkQ2hhcmFjdGVycyh0ZXh0KSB7XG4gICAgICB2YXIgc2VhcmNoVmFsdWUgPSAodGhpcy5zZWFyY2hWYWx1ZSB8fCAnJykudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgdmFyIGluZGV4ID0gdGV4dC50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc2VhcmNoVmFsdWUpO1xuXG4gICAgICBpZiAoaW5kZXggPCAwKSByZXR1cm4geyBzdGFydDogJycsIG1pZGRsZTogdGV4dCwgZW5kOiAnJyB9O1xuXG4gICAgICB2YXIgc3RhcnQgPSB0ZXh0LnNsaWNlKDAsIGluZGV4KTtcbiAgICAgIHZhciBtaWRkbGUgPSB0ZXh0LnNsaWNlKGluZGV4LCBpbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aCk7XG4gICAgICB2YXIgZW5kID0gdGV4dC5zbGljZShpbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aCk7XG4gICAgICByZXR1cm4geyBzdGFydDogc3RhcnQsIG1pZGRsZTogbWlkZGxlLCBlbmQ6IGVuZCB9O1xuICAgIH0sXG4gICAgZ2V0Q3VycmVudFRhZzogZnVuY3Rpb24gZ2V0Q3VycmVudFRhZygpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzTWVudUl0ZW1TZWxlY3RlZCgpID8gdGhpcy5maWx0ZXJlZEl0ZW1zW3RoaXMuZ2V0TWVudUluZGV4KCldIDogdGhpcy5pc0FueVZhbHVlQWxsb3dlZCA/IHRoaXMuc2VhcmNoVmFsdWUgOiBudWxsO1xuICAgIH0sXG4gICAgdGFiT3V0OiBmdW5jdGlvbiB0YWJPdXQoKSB7XG4gICAgICB0aGlzLmJsdXIoKTtcbiAgICB9LFxuICAgIG9uVGFiRG93bjogZnVuY3Rpb24gb25UYWJEb3duKGUpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICAvLyBJZiB0YWJiaW5nIHRocm91Z2ggaW5wdXRzIGFuZFxuICAgICAgLy8gYW5kIHRoZXJlIGlzIG5vIG5lZWQgZm9yIGFuXG4gICAgICAvLyB1cGRhdGUsIGJsdXIgdGhlIHYtc2VsZWN0XG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUgfHwgIXRoaXMuZ2V0Q3VycmVudFRhZygpIHx8IHRoaXMuY29tYm9ib3gpIHJldHVybiB0aGlzLnRhYk91dCgpO1xuXG4gICAgICB2YXIgbWVudUluZGV4ID0gdGhpcy5nZXRNZW51SW5kZXgoKTtcblxuICAgICAgLy8gV2hlbiBhZGRpbmcgdGFncywgaWYgc2VhcmNoaW5nIGFuZFxuICAgICAgLy8gdGhlcmUgaXMgbm90IGEgZmlsdGVyZWQgb3B0aW9ucyxcbiAgICAgIC8vIGFkZCB0aGUgdmFsdWUgdG8gdGhlIHRhZ3MgbGlzdFxuICAgICAgaWYgKHRoaXMudGFncyAmJiB0aGlzLnNlYXJjaFZhbHVlICYmIG1lbnVJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZVRhZ3ModGhpcy5zZWFyY2hWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEFuIGl0ZW0gdGhhdCBpcyBzZWxlY3RlZCBieVxuICAgICAgLy8gbWVudS1pbmRleCBzaG91bGQgdG9nZ2xlZFxuICAgICAgaWYgKHRoaXMubWVudUlzQWN0aXZlKSB7XG4gICAgICAgIC8vIFJlc2V0IHRoZSBsaXN0IGluZGV4IGlmIHNlYXJjaGluZ1xuICAgICAgICB0aGlzLnNlYXJjaFZhbHVlICYmIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gc2V0VGltZW91dChfdGhpczIucmVzZXRNZW51SW5kZXgsIDApO1xuICAgICAgICB9KTtcblxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuc2VsZWN0TGlzdFRpbGUobWVudUluZGV4KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uRW50ZXJEb3duOiBmdW5jdGlvbiBvbkVudGVyRG93bigpIHtcbiAgICAgIHRoaXMudXBkYXRlVGFncyh0aGlzLmdldEN1cnJlbnRUYWcoKSk7XG4gICAgfSxcbiAgICBvbkVzY0Rvd246IGZ1bmN0aW9uIG9uRXNjRG93bihlKSB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH0sXG4gICAgb25LZXlEb3duOiBmdW5jdGlvbiBvbktleURvd24oZSkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIC8vIElmIGVudGVyLCBzcGFjZSwgdXAsIG9yIGRvd24gaXMgcHJlc3NlZCwgb3BlbiBtZW51XG4gICAgICBpZiAoIXRoaXMubWVudUlzQWN0aXZlICYmIFsxMywgMzIsIDM4LCA0MF0uaW5jbHVkZXMoZS5rZXlDb2RlKSkge1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dNZW51KCk7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIGVzY2FwZSBkZWFjdGl2YXRlIHRoZSBtZW51XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAyNykgcmV0dXJuIHRoaXMub25Fc2NEb3duKGUpO1xuXG4gICAgICAvLyBJZiB0YWIgLSBzZWxlY3QgaXRlbSBvciBjbG9zZSBtZW51XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSA5KSByZXR1cm4gdGhpcy5vblRhYkRvd24oZSk7XG5cbiAgICAgIGlmICghdGhpcy5pc0F1dG9jb21wbGV0ZSB8fCAhWzMyXS5pbmNsdWRlcyhlLmtleUNvZGUpIC8vIHNwYWNlXG4gICAgICApIHRoaXMuJHJlZnMubWVudS5jaGFuZ2VMaXN0SW5kZXgoZSk7XG5cbiAgICAgIC8vIFVwIG9yIGRvd25cbiAgICAgIGlmIChbMzgsIDQwXS5pbmNsdWRlcyhlLmtleUNvZGUpKSB0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcblxuICAgICAgaWYgKHRoaXMuaXNBdXRvY29tcGxldGUgJiYgIXRoaXMuaGlkZVNlbGVjdGlvbnMgJiYgIXRoaXMuc2VhcmNoVmFsdWUpIHRoaXMuY2hhbmdlU2VsZWN0ZWRJbmRleChlLmtleUNvZGUpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBbnlWYWx1ZUFsbG93ZWQgfHwgIXRoaXMuc2VhcmNoVmFsdWUpIHJldHVybjtcblxuICAgICAgLy8gRW50ZXJcbiAgICAgIGlmIChlLmtleUNvZGUgPT09IDEzKSByZXR1cm4gdGhpcy5vbkVudGVyRG93bigpO1xuXG4gICAgICAvLyBMZWZ0IGFycm93XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzNyAmJiB0aGlzLiRyZWZzLmlucHV0LnNlbGVjdGlvblN0YXJ0ID09PSAwICYmIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVUYWdzKHRoaXMuc2VhcmNoVmFsdWUpO1xuICAgICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMzLnNlbGVjdGVkSW5kZXggPSBNYXRoLm1heChfdGhpczMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggLSAyLCAwKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJpZ2h0IGFycm93XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzOSAmJiB0aGlzLiRyZWZzLmlucHV0LnNlbGVjdGlvbkVuZCA9PT0gdGhpcy5zZWFyY2hWYWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5yZXNldE1lbnVJbmRleCgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2VsZWN0TGlzdFRpbGU6IGZ1bmN0aW9uIHNlbGVjdExpc3RUaWxlKGluZGV4KSB7XG4gICAgICBpZiAoIXRoaXMuJHJlZnMubWVudS50aWxlc1tpbmRleF0pIHJldHVybjtcblxuICAgICAgdGhpcy4kcmVmcy5tZW51LnRpbGVzW2luZGV4XS5jbGljaygpO1xuICAgIH0sXG4gICAgdXBkYXRlVGFnczogZnVuY3Rpb24gdXBkYXRlVGFncyhjb250ZW50KSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgLy8gQXZvaWQgZGlyZWN0IG11dGF0aW9uXG4gICAgICAvLyBmb3IgdnVleCBzdHJpY3QgbW9kZVxuICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuc2xpY2UoKTtcblxuICAgICAgLy8gSWYgYSBkdXBsaWNhdGUgaXRlbVxuICAgICAgLy8gZXhpc3RzLCByZW1vdmUgaXRcbiAgICAgIGlmIChzZWxlY3RlZEl0ZW1zLmluY2x1ZGVzKGNvbnRlbnQpKSB7XG4gICAgICAgIHRoaXMuJGRlbGV0ZShzZWxlY3RlZEl0ZW1zLCBzZWxlY3RlZEl0ZW1zLmluZGV4T2YoY29udGVudCkpO1xuICAgICAgfVxuXG4gICAgICAvLyBXaGVuIHVwZGF0aW5nIHRhZ3MgZW5zdXJlXG4gICAgICAvLyB0aGF0IHRoYXQgdGhlIHNlYXJjaCB0ZXh0XG4gICAgICAvLyBpcyBwb3B1bGF0ZWQgaWYgbmVlZGVkXG4gICAgICB2YXIgc2VhcmNoVmFsdWUgPSBudWxsO1xuICAgICAgaWYgKHRoaXMuY29tYm9ib3gpIHtcbiAgICAgICAgc2VsZWN0ZWRJdGVtcyA9IFtjb250ZW50XTtcbiAgICAgICAgc2VhcmNoVmFsdWUgPSB0aGlzLmNoaXBzID8gbnVsbCA6IGNvbnRlbnQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZWxlY3RlZEl0ZW1zLnB1c2goY29udGVudCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHNlbGVjdGVkSXRlbXM7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM0LnNlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWU7XG4gICAgICAgIF90aGlzNC4kZW1pdCgnaW5wdXQnLCBfdGhpczQuY29tYm9ib3ggPyBjb250ZW50IDogX3RoaXM0LnNlbGVjdGVkSXRlbXMpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG4vKipcbiAqIFNlbGVjdCBjb21wdXRlZCBwcm9wZXJ0aWVzXG4gKlxuICogQG1peGluXG4gKlxuICogQ29tcHV0ZWQgcHJvcGVydGllcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0gX2V4dGVuZHMoe30sIHRoaXMuZ2VuU29sb0NsYXNzZXMoKSwge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQtZ3JvdXAtLXNlbGVjdCc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYXV0byc6IHRoaXMuYXV0byxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1vdmVyZmxvdyc6IHRoaXMub3ZlcmZsb3csXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VnbWVudGVkJzogdGhpcy5zZWdtZW50ZWQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZWRpdGFibGUnOiB0aGlzLmVkaXRhYmxlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWF1dG9jb21wbGV0ZSc6IHRoaXMuaXNBdXRvY29tcGxldGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUnOiB0aGlzLnNpbmdsZUxpbmUgfHwgdGhpcy5pc0Ryb3Bkb3duLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW11bHRpLWxpbmUnOiB0aGlzLm11bHRpTGluZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1jaGlwcyc6IHRoaXMuY2hpcHMsXG4gICAgICAgICdpbnB1dC1ncm91cC0tbXVsdGlwbGUnOiB0aGlzLm11bHRpcGxlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW9wZW4nOiB0aGlzLm1lbnVJc1Zpc2libGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0LS1zZWxlY3RpbmctaW5kZXgnOiB0aGlzLnNlbGVjdGVkSW5kZXggPiAtMVxuICAgICAgfSk7XG5cbiAgICAgIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICAgIGNsYXNzZXNbJ2Vycm9yLS10ZXh0J10gPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgY29tcHV0ZWRDb250ZW50Q2xhc3M6IGZ1bmN0aW9uIGNvbXB1dGVkQ29udGVudENsYXNzKCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gWydtZW51X19jb250ZW50LS1zZWxlY3QnLCB0aGlzLmF1dG8gPyAnbWVudV9fY29udGVudC0tYXV0bycgOiAnJywgdGhpcy5pc0Ryb3Bkb3duID8gJ21lbnVfX2NvbnRlbnQtLWRyb3Bkb3duJyA6ICcnLCB0aGlzLmlzQXV0b2NvbXBsZXRlID8gJ21lbnVfX2NvbnRlbnQtLWF1dG9jb21wbGV0ZScgOiAnJywgdGhpcy5jb250ZW50Q2xhc3MgfHwgJyddO1xuXG4gICAgICByZXR1cm4gY2hpbGRyZW4uam9pbignICcpO1xuICAgIH0sXG4gICAgY29tcHV0ZWRJdGVtczogZnVuY3Rpb24gY29tcHV0ZWRJdGVtcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlckR1cGxpY2F0ZXModGhpcy5jYWNoZWRJdGVtcy5jb25jYXQodGhpcy5pdGVtcykpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgcmFuZ2Ugb2YgdGhlIGN1cnJlbnQgaW5wdXQgdGV4dFxuICAgICAqXG4gICAgICogQHJldHVybiB7TnVtYmVyfVxuICAgICAqL1xuICAgIGN1cnJlbnRSYW5nZTogZnVuY3Rpb24gY3VycmVudFJhbmdlKCkge1xuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtID09IG51bGwpIHJldHVybiAwO1xuXG4gICAgICByZXR1cm4gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKS50b1N0cmluZygpLmxlbmd0aDtcbiAgICB9LFxuICAgIGZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICAvLyBJZiB3ZSBhcmUgbm90IGFjdGl2ZWx5IGZpbHRlcmluZ1xuICAgICAgLy8gU2hvdyBhbGwgYXZhaWxhYmxlIGl0ZW1zXG4gICAgICB2YXIgaXRlbXMgPSB0aGlzLmlzTm90RmlsdGVyaW5nID8gdGhpcy5jb21wdXRlZEl0ZW1zIDogdGhpcy5maWx0ZXJTZWFyY2goKTtcblxuICAgICAgcmV0dXJuICF0aGlzLmF1dG8gPyBpdGVtcy5zbGljZSgwLCB0aGlzLmxhc3RJdGVtKSA6IGl0ZW1zO1xuICAgIH0sXG4gICAgaGlkZVNlbGVjdGlvbnM6IGZ1bmN0aW9uIGhpZGVTZWxlY3Rpb25zKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgIXRoaXMuaXNNdWx0aXBsZSAmJiB0aGlzLmlzRm9jdXNlZCAmJiAhdGhpcy5jaGlwcyAmJiAhdGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uO1xuICAgIH0sXG4gICAgaXNOb3RGaWx0ZXJpbmc6IGZ1bmN0aW9uIGlzTm90RmlsdGVyaW5nKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5pc0RpcnR5ICYmIHRoaXMuc2VhcmNoVmFsdWUgPT09IHRoaXMuZ2V0VGV4dCh0aGlzLnNlbGVjdGVkSXRlbSk7XG4gICAgfSxcbiAgICBpc0hpZGluZ1NlbGVjdGVkOiBmdW5jdGlvbiBpc0hpZGluZ1NlbGVjdGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaGlkZVNlbGVjdGVkICYmIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5pc011bHRpcGxlO1xuICAgIH0sXG4gICAgaXNBdXRvY29tcGxldGU6IGZ1bmN0aW9uIGlzQXV0b2NvbXBsZXRlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYXV0b2NvbXBsZXRlIHx8IHRoaXMuZWRpdGFibGUgfHwgdGhpcy50YWdzIHx8IHRoaXMuY29tYm9ib3g7XG4gICAgfSxcbiAgICBpc0RpcnR5OiBmdW5jdGlvbiBpc0RpcnR5KCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwIHx8IHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5zZWFyY2hWYWx1ZTtcbiAgICB9LFxuICAgIGlzRHJvcGRvd246IGZ1bmN0aW9uIGlzRHJvcGRvd24oKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZWdtZW50ZWQgfHwgdGhpcy5vdmVyZmxvdyB8fCB0aGlzLmVkaXRhYmxlIHx8IHRoaXMuaXNTb2xvO1xuICAgIH0sXG4gICAgaXNNdWx0aXBsZTogZnVuY3Rpb24gaXNNdWx0aXBsZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGxlIHx8IHRoaXMudGFncztcbiAgICB9LFxuICAgIGlzQW55VmFsdWVBbGxvd2VkOiBmdW5jdGlvbiBpc0FueVZhbHVlQWxsb3dlZCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRhZ3MgfHwgdGhpcy5jb21ib2JveDtcbiAgICB9LFxuICAgIG1lbnVJc1Zpc2libGU6IGZ1bmN0aW9uIG1lbnVJc1Zpc2libGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZW51SXNBY3RpdmUgJiYgdGhpcy5jb21wdXRlZEl0ZW1zLmxlbmd0aCA+IDAgJiYgKCF0aGlzLmlzQW55VmFsdWVBbGxvd2VkIHx8IHRoaXMuZmlsdGVyZWRJdGVtcy5sZW5ndGggPiAwKTtcbiAgICB9LFxuICAgIG1lbnVJdGVtczogZnVuY3Rpb24gbWVudUl0ZW1zKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuaXNIaWRpbmdTZWxlY3RlZCA/IHRoaXMuZmlsdGVyZWRJdGVtcy5maWx0ZXIoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgcmV0dXJuIChfdGhpcy5zZWxlY3RlZEl0ZW1zIHx8IFtdKS5pbmRleE9mKG8pID09PSAtMTtcbiAgICAgIH0pIDogdGhpcy5maWx0ZXJlZEl0ZW1zO1xuICAgIH0sXG4gICAgbnVkZ2VUb3A6IGZ1bmN0aW9uIG51ZGdlVG9wKCkge1xuICAgICAgdmFyIG51ZGdlVG9wID0gLTE4O1xuXG4gICAgICBpZiAodGhpcy5pc1NvbG8pIG51ZGdlVG9wID0gMDtlbHNlIGlmICh0aGlzLnNob3VsZE9mZnNldCkge1xuICAgICAgICBudWRnZVRvcCArPSA0NDtcblxuICAgICAgICBudWRnZVRvcCArPSB0aGlzLmhpZGVEZXRhaWxzID8gLTI0IDogMDtcbiAgICAgICAgbnVkZ2VUb3AgKz0gdGhpcy5pc0F1dG9jb21wbGV0ZSAmJiAhdGhpcy5pc0Ryb3Bkb3duID8gLTIgOiAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVkZ2VUb3A7XG4gICAgfSxcblxuICAgIHNlYXJjaFZhbHVlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGF6eVNlYXJjaDtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzQXV0b2NvbXBsZXRlIHx8ICF0aGlzLm11bHRpcGxlICYmIHRoaXMuc2VsZWN0ZWRJbmRleCA+IC0xKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5sYXp5U2VhcmNoID0gdmFsO1xuXG4gICAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTpzZWFyY2hJbnB1dCcsIHZhbCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBzZWxlY3RlZEl0ZW06IGZ1bmN0aW9uIHNlbGVjdGVkSXRlbSgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICBpZiAodGhpcy5pc011bHRpcGxlKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuZ2V0VmFsdWUoaSkgPT09IF90aGlzMi5nZXRWYWx1ZShfdGhpczIuaW5wdXRWYWx1ZSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHNob3VsZE9mZnNldDogZnVuY3Rpb24gc2hvdWxkT2Zmc2V0KCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgfHwgdGhpcy5pc0Ryb3Bkb3duO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTQyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuLyoqXG4gKiBTZWxlY3QgZXZlbnRzXG4gKlxuICogQG1peGluXG4gKlxuICogRXZlbnQgYmFzZWQgbWV0aG9kcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBibHVyOiBmdW5jdGlvbiBibHVyKCkge1xuICAgICAgdGhpcy5kZWFjdGl2YXRlSW5wdXQoKTtcbiAgICAgIHRoaXMubWVudUlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLiRlbWl0KCdibHVyJyk7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoKSB7XG4gICAgICB0aGlzLnNob3dNZW51KCk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2ZvY3VzJyk7XG4gICAgfSxcbiAgICBmb2N1c0lucHV0OiBmdW5jdGlvbiBmb2N1c0lucHV0KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuJHJlZnMuaW5wdXQgJiYgdGhpcy5pc0F1dG9jb21wbGV0ZSkge1xuICAgICAgICB0aGlzLiRyZWZzLmlucHV0LmZvY3VzKCk7XG5cbiAgICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLiRyZWZzLmlucHV0LnNlbGVjdCgpO1xuICAgICAgICAgIF90aGlzLnNob3VsZEJyZWFrICYmIChfdGhpcy4kcmVmcy5pbnB1dC5zY3JvbGxMZWZ0ID0gX3RoaXMuJHJlZnMuaW5wdXQuc2Nyb2xsV2lkdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgICF0aGlzLmlzRm9jdXNlZCAmJiB0aGlzLiRlbC5mb2N1cygpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2VuTGlzdGVuZXJzOiBmdW5jdGlvbiBnZW5MaXN0ZW5lcnMoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGxpc3RlbmVycyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuJGxpc3RlbmVycyk7XG4gICAgICBkZWxldGUgbGlzdGVuZXJzLmlucHV0O1xuXG4gICAgICByZXR1cm4gX2V4dGVuZHMoe30sIGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgaWYgKF90aGlzMi5kaXNhYmxlZCB8fCBfdGhpczIucmVhZG9ubHkpIHJldHVybjtcblxuICAgICAgICAgIGlmIChfdGhpczIuaXNGb2N1c2VkICYmICFfdGhpczIubWVudUlzVmlzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMi5zaG93TWVudUl0ZW1zKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgX3RoaXMyLnNlbGVjdGVkSW5kZXggPiAtMSA/IF90aGlzMi5zZWxlY3RlZEluZGV4ID0gLTEgOiBfdGhpczIuZm9jdXMoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZm9jdXM6IGZ1bmN0aW9uIGZvY3VzKGUpIHtcbiAgICAgICAgICBpZiAoX3RoaXMyLmRpc2FibGVkIHx8IF90aGlzMi5yZWFkb25seSB8fCBfdGhpczIuaXNGb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgX3RoaXMyLmFjdGl2YXRlSW5wdXQoKTtcbiAgICAgICAgICBfdGhpczIuJG5leHRUaWNrKF90aGlzMi5mb2N1c0lucHV0KTtcbiAgICAgICAgfSxcbiAgICAgICAga2V5ZG93bjogdGhpcy5vbktleURvd24gLy8gTG9jYXRlZCBpbiBtaXhpbnMvc2VsZWN0LWF1dG9jb21wbGV0ZS5qc1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZDaGVja2JveF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQ2hpcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19WRGl2aWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19WTWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19WU3ViaGVhZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX1ZMaXN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU2KTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbmZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyBmb3IgKHZhciBpID0gMCwgYXJyMiA9IEFycmF5KGFyci5sZW5ndGgpOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7IGFycjJbaV0gPSBhcnJbaV07IH0gcmV0dXJuIGFycjI7IH0gZWxzZSB7IHJldHVybiBBcnJheS5mcm9tKGFycik7IH0gfVxuXG5cblxuXG4vLyBDb21wb25lbnRzXG5cblxuXG5cblxuXG5cblxuXG4vKipcbiAqIFNlbGVjdCBnZW5lcmF0b3JzXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCBmb3IgY3JlYXRpbmcgdGhlIERPTSBlbGVtZW50cyBmb3IgVlNlbGVjdFxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGdlbk1lbnU6IGZ1bmN0aW9uIGdlbk1lbnUoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgcmVmOiAnbWVudScsXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYWN0aXZhdG9yOiB0aGlzLiRlbCxcbiAgICAgICAgICBhdXRvOiB0aGlzLmF1dG8sXG4gICAgICAgICAgYXR0YWNoOiB0aGlzLmF0dGFjaCAmJiAnW2RhdGEtdWlkPVwiJyArIHRoaXMuX3VpZCArICdcIl0nLFxuICAgICAgICAgIGNsb3NlT25DbGljazogZmFsc2UsXG4gICAgICAgICAgY2xvc2VPbkNvbnRlbnRDbGljazogIXRoaXMuaXNNdWx0aXBsZSxcbiAgICAgICAgICBjb250ZW50Q2xhc3M6IHRoaXMuY29tcHV0ZWRDb250ZW50Q2xhc3MsXG4gICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAgIGxpZ2h0OiB0aGlzLmxpZ2h0LFxuICAgICAgICAgIG1heEhlaWdodDogdGhpcy5tYXhIZWlnaHQsXG4gICAgICAgICAgbnVkZ2VUb3A6IHRoaXMubnVkZ2VUb3AsXG4gICAgICAgICAgb2Zmc2V0WTogdGhpcy5zaG91bGRPZmZzZXQsXG4gICAgICAgICAgb2Zmc2V0T3ZlcmZsb3c6IHRoaXMuaXNBdXRvY29tcGxldGUsXG4gICAgICAgICAgb3Blbk9uQ2xpY2s6IGZhbHNlLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLm1lbnVJc1Zpc2libGUsXG4gICAgICAgICAgekluZGV4OiB0aGlzLm1lbnVaSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gaW5wdXQodmFsKSB7XG4gICAgICAgICAgICBpZiAoIXZhbCkge1xuICAgICAgICAgICAgICBfdGhpcy5tZW51SXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSBkYXRhLnByb3BzLnRyYW5zaXRpb24gPSBmYWxzZTtcblxuICAgICAgdGhpcy5taW5XaWR0aCAmJiAoZGF0YS5wcm9wcy5taW5XaWR0aCA9IHRoaXMubWluV2lkdGgpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIGRhdGEsIFt0aGlzLmdlbkxpc3QoKV0pO1xuICAgIH0sXG4gICAgZ2V0TWVudUluZGV4OiBmdW5jdGlvbiBnZXRNZW51SW5kZXgoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kcmVmcy5tZW51ID8gdGhpcy4kcmVmcy5tZW51Lmxpc3RJbmRleCA6IC0xO1xuICAgIH0sXG4gICAgc2V0TWVudUluZGV4OiBmdW5jdGlvbiBzZXRNZW51SW5kZXgoaW5kZXgpIHtcbiAgICAgIHRoaXMuJHJlZnMubWVudSAmJiAodGhpcy4kcmVmcy5tZW51Lmxpc3RJbmRleCA9IGluZGV4KTtcbiAgICB9LFxuICAgIHJlc2V0TWVudUluZGV4OiBmdW5jdGlvbiByZXNldE1lbnVJbmRleCgpIHtcbiAgICAgIHRoaXMuc2V0TWVudUluZGV4KC0xKTtcbiAgICB9LFxuICAgIGlzTWVudUl0ZW1TZWxlY3RlZDogZnVuY3Rpb24gaXNNZW51SXRlbVNlbGVjdGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVudUlzQWN0aXZlICYmIHRoaXMubWVudUl0ZW1zLmxlbmd0aCAmJiB0aGlzLmdldE1lbnVJbmRleCgpID4gLTE7XG4gICAgfSxcbiAgICBnZW5TZWxlY3Rpb25zQW5kU2VhcmNoOiBmdW5jdGlvbiBnZW5TZWxlY3Rpb25zQW5kU2VhcmNoKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2lucHV0LWdyb3VwX19zZWxlY3Rpb25zJyxcbiAgICAgICAgc3R5bGU6IHsgJ292ZXJmbG93JzogJ2hpZGRlbicgfSxcbiAgICAgICAgcmVmOiAnYWN0aXZhdG9yJ1xuICAgICAgfSwgW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdlblNlbGVjdGlvbnMoKSksIFt0aGlzLmdlblNlYXJjaCgpXSkpO1xuICAgIH0sXG4gICAgZ2VuU2VsZWN0aW9uczogZnVuY3Rpb24gZ2VuU2VsZWN0aW9ucygpIHtcbiAgICAgIGlmICh0aGlzLmhpZGVTZWxlY3Rpb25zKSByZXR1cm4gW107XG5cbiAgICAgIHZhciBsZW5ndGggPSB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoO1xuICAgICAgdmFyIGNoaWxkcmVuID0gbmV3IEFycmF5KGxlbmd0aCk7XG5cbiAgICAgIHZhciBnZW5TZWxlY3Rpb24gPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uKSB7XG4gICAgICAgIGdlblNlbGVjdGlvbiA9IHRoaXMuZ2VuU2xvdFNlbGVjdGlvbjtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5jaGlwcykge1xuICAgICAgICBnZW5TZWxlY3Rpb24gPSB0aGlzLmdlbkNoaXBTZWxlY3Rpb247XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2VnbWVudGVkKSB7XG4gICAgICAgIGdlblNlbGVjdGlvbiA9IHRoaXMuZ2VuU2VnbWVudGVkQnRuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZ2VuU2VsZWN0aW9uID0gdGhpcy5nZW5Db21tYVNlbGVjdGlvbjtcbiAgICAgIH1cblxuICAgICAgd2hpbGUgKGxlbmd0aC0tKSB7XG4gICAgICAgIGNoaWxkcmVuW2xlbmd0aF0gPSBnZW5TZWxlY3Rpb24odGhpcy5zZWxlY3RlZEl0ZW1zW2xlbmd0aF0sIGxlbmd0aCwgbGVuZ3RoID09PSBjaGlsZHJlbi5sZW5ndGggLSAxKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuO1xuICAgIH0sXG4gICAgZ2VuU2VhcmNoOiBmdW5jdGlvbiBnZW5TZWFyY2goKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGRhdGEgPSB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaW5wdXQtZ3JvdXAtLXNlbGVjdF9fYXV0b2NvbXBsZXRlJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGUtLWluZGV4JzogdGhpcy5zZWxlY3RlZEluZGV4ID4gLTFcbiAgICAgICAgfSxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICBmbGV4OiB0aGlzLnNob3VsZEJyZWFrID8gJzEgMCAxMDAlJyA6IG51bGxcbiAgICAgICAgfSxcbiAgICAgICAgYXR0cnM6IF9leHRlbmRzKHt9LCB0aGlzLiRhdHRycywge1xuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmlzQXV0b2NvbXBsZXRlLFxuICAgICAgICAgIHJlYWRvbmx5OiB0aGlzLnJlYWRvbmx5LFxuICAgICAgICAgIHRhYmluZGV4OiB0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmlzQXV0b2NvbXBsZXRlID8gLTEgOiB0aGlzLnRhYmluZGV4XG4gICAgICAgIH0pLFxuICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgIHZhbHVlOiB0aGlzLm1hc2tUZXh0KHRoaXMubGF6eVNlYXJjaCB8fCAnJylcbiAgICAgICAgfSxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBdXRvY29tcGxldGUgfHwgdGhpcy5wbGFjZWhvbGRlciAmJiAhdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aFxuICAgICAgICB9XSxcbiAgICAgICAgcmVmOiAnaW5wdXQnLFxuICAgICAgICBrZXk6ICdpbnB1dCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSB7XG4gICAgICAgIGRhdGEuYXR0cnMucm9sZSA9ICdjb21ib2JveCc7XG4gICAgICAgIGRhdGEuZG9tUHJvcHMuYXV0b2NvbXBsZXRlID0gdGhpcy5icm93c2VyQXV0b2NvbXBsZXRlO1xuXG4gICAgICAgIGRhdGEub24gPSBfZXh0ZW5kcyh7fSwgdGhpcy5nZW5MaXN0ZW5lcnMoKSwge1xuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dChlKSB7XG4gICAgICAgICAgICBpZiAoX3RoaXMyLnNlbGVjdGVkSW5kZXggPiAtMSkgcmV0dXJuO1xuXG4gICAgICAgICAgICBfdGhpczIuc2VhcmNoVmFsdWUgPSBfdGhpczIudW5tYXNrVGV4dChlLnRhcmdldC52YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBkYXRhLmRpcmVjdGl2ZXMgPSBkYXRhLmRpcmVjdGl2ZXMuY29uY2F0KHRoaXMuZ2VuRGlyZWN0aXZlcygpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIGRhdGEuZG9tUHJvcHMucGxhY2Vob2xkZXIgPSB0aGlzLnBsYWNlaG9sZGVyO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnaW5wdXQnLCBkYXRhKTtcbiAgICB9LFxuICAgIGdlblNlZ21lbnRlZEJ0bjogZnVuY3Rpb24gZ2VuU2VnbWVudGVkQnRuKGl0ZW0pIHtcbiAgICAgIGlmICghaXRlbS50ZXh0IHx8ICFpdGVtLmNhbGxiYWNrKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1doZW4gdXNpbmcgXFwnc2VnbWVudGVkXFwnIHByb3Agd2l0aG91dCBhIHNlbGVjdGlvbiBzbG90LCBpdGVtcyBtdXN0IGNvbnRhaW4gYm90aCBhIHRleHQgYW5kIGNhbGxiYWNrIHByb3BlcnR5JywgdGhpcyk7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGZsYXQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGl0ZW0uY2FsbGJhY2soZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCBbaXRlbS50ZXh0XSk7XG4gICAgfSxcbiAgICBnZW5TbG90U2VsZWN0aW9uOiBmdW5jdGlvbiBnZW5TbG90U2VsZWN0aW9uKGl0ZW0sIGluZGV4KSB7XG4gICAgICByZXR1cm4gdGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uKHtcbiAgICAgICAgcGFyZW50OiB0aGlzLFxuICAgICAgICBpdGVtOiBpdGVtLFxuICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgIHNlbGVjdGVkOiBpbmRleCA9PT0gdGhpcy5zZWxlY3RlZEluZGV4LFxuICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkNoaXBTZWxlY3Rpb246IGZ1bmN0aW9uIGdlbkNoaXBTZWxlY3Rpb24oaXRlbSwgaW5kZXgpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB2YXIgaXNEaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seTtcbiAgICAgIHZhciBjbGljayA9IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgaWYgKGlzRGlzYWJsZWQpIHJldHVybjtcblxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBfdGhpczMuZm9jdXNJbnB1dCgpO1xuICAgICAgICBfdGhpczMuc2VsZWN0ZWRJbmRleCA9IGluZGV4O1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQ2hpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnY2hpcC0tc2VsZWN0LW11bHRpJyxcbiAgICAgICAgYXR0cnM6IHsgdGFiaW5kZXg6ICctMScgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBjbG9zZTogdGhpcy5kZWxldGFibGVDaGlwcyAmJiAhaXNEaXNhYmxlZCxcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmssXG4gICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQsXG4gICAgICAgICAgc2VsZWN0ZWQ6IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogY2xpY2ssXG4gICAgICAgICAgZm9jdXM6IGNsaWNrLFxuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCgpIHtcbiAgICAgICAgICAgIGlmIChfdGhpczMuaXNNdWx0aXBsZSkgX3RoaXMzLnNlbGVjdEl0ZW0oaXRlbSk7ZWxzZSBfdGhpczMuaW5wdXRWYWx1ZSA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBrZXk6IHRoaXMuZ2V0VmFsdWUoaXRlbSlcbiAgICAgIH0sIHRoaXMuZ2V0VGV4dChpdGVtKSk7XG4gICAgfSxcbiAgICBnZW5Db21tYVNlbGVjdGlvbjogZnVuY3Rpb24gZ2VuQ29tbWFTZWxlY3Rpb24oaXRlbSwgaW5kZXgsIGxhc3QpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEtLWFjdGl2ZSc6IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAga2V5OiBKU09OLnN0cmluZ2lmeSh0aGlzLmdldFZhbHVlKGl0ZW0pKSAvLyBJdGVtIG1heSBiZSBhbiBvYmplY3RcbiAgICAgIH0sICcnICsgdGhpcy5nZXRUZXh0KGl0ZW0pICsgKGxhc3QgPyAnJyA6ICcsICcpKTtcbiAgICB9LFxuICAgIGdlbkxpc3Q6IGZ1bmN0aW9uIGdlbkxpc3QoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5tZW51SXRlbXMubWFwKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgIGlmIChvLmhlYWRlcikgcmV0dXJuIF90aGlzNC5nZW5IZWFkZXIobyk7XG4gICAgICAgIGlmIChvLmRpdmlkZXIpIHJldHVybiBfdGhpczQuZ2VuRGl2aWRlcihvKTtlbHNlIHJldHVybiBfdGhpczQuZ2VuVGlsZShvKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIWNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICB2YXIgbm9EYXRhID0gdGhpcy4kc2xvdHNbJ25vLWRhdGEnXTtcbiAgICAgICAgaWYgKG5vRGF0YSkge1xuICAgICAgICAgIGNoaWxkcmVuLnB1c2gobm9EYXRhKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuVGlsZSh0aGlzLm5vRGF0YVRleHQsIHRydWUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImFcIiAvKiBWTGlzdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBkZW5zZTogdGhpcy5kZW5zZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICdsaXN0J1xuICAgICAgfSwgY2hpbGRyZW4pXSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXI6IGZ1bmN0aW9uIGdlbkhlYWRlcihpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX1ZTdWJoZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczogaXRlbVxuICAgICAgfSwgaXRlbS5oZWFkZXIpO1xuICAgIH0sXG4gICAgZ2VuRGl2aWRlcjogZnVuY3Rpb24gZ2VuRGl2aWRlcihpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IGl0ZW1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuTGFiZWw6IGZ1bmN0aW9uIGdlbkxhYmVsKCkge1xuICAgICAgdmFyIHNpbmdsZUxpbmUgPSB0aGlzLnNpbmdsZUxpbmUgfHwgdGhpcy5pc0Ryb3Bkb3duO1xuXG4gICAgICBpZiAoc2luZ2xlTGluZSAmJiAodGhpcy5pc0RpcnR5IHx8IHRoaXMuaXNGb2N1c2VkICYmIHRoaXMuc2VhcmNoVmFsdWUpKSByZXR1cm4gbnVsbDtcblxuICAgICAgdmFyIGRhdGEgPSB7fTtcblxuICAgICAgaWYgKHRoaXMuaWQpIGRhdGEuYXR0cnMgPSB7IGZvcjogdGhpcy5pZCB9O1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnbGFiZWwnLCBkYXRhLCB0aGlzLiRzbG90cy5sYWJlbCB8fCB0aGlzLmxhYmVsKTtcbiAgICB9LFxuICAgIGdlblRpbGU6IGZ1bmN0aW9uIGdlblRpbGUoaXRlbSwgZGlzYWJsZWQpIHtcbiAgICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgICB2YXIgYWN0aXZlID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmluZGV4T2YoaXRlbSkgIT09IC0xO1xuXG4gICAgICBpZiAodHlwZW9mIGRpc2FibGVkID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBkaXNhYmxlZCA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoaXRlbSwgdGhpcy5pdGVtRGlzYWJsZWQpO1xuICAgICAgfVxuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgaWYgKGRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgICAgICAgIF90aGlzNS5zZWxlY3RJdGVtKGl0ZW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhdmF0YXI6IGl0ZW0gPT09IE9iamVjdChpdGVtKSAmJiB0aGlzLml0ZW1BdmF0YXIgaW4gaXRlbSxcbiAgICAgICAgICByaXBwbGU6IHRydWUsXG4gICAgICAgICAgdmFsdWU6IGFjdGl2ZVxuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgZGF0YS5wcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuICAgICAgfVxuXG4gICAgICBkYXRhLnByb3BzLmFjdGl2ZUNsYXNzID0gT2JqZWN0LmtleXModGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcygpKS5qb2luKCcgJyk7XG5cbiAgICAgIGlmICh0aGlzLiRzY29wZWRTbG90cy5pdGVtKSB7XG4gICAgICAgIHZhciB0aWxlID0gdGhpcy4kc2NvcGVkU2xvdHMuaXRlbSh7IHBhcmVudDogdGhpcywgaXRlbTogaXRlbSwgdGlsZTogZGF0YSB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMubmVlZHNUaWxlKHRpbGUpID8gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX1ZMaXN0X19bXCJiXCIgLyogVkxpc3RUaWxlICovXSwgZGF0YSwgW3RpbGVdKSA6IHRpbGU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImJcIiAvKiBWTGlzdFRpbGUgKi9dLCBkYXRhLCBbdGhpcy5nZW5BY3Rpb24oaXRlbSwgYWN0aXZlKSwgdGhpcy5nZW5Db250ZW50KGl0ZW0pXSk7XG4gICAgfSxcbiAgICBnZW5BY3Rpb246IGZ1bmN0aW9uIGdlbkFjdGlvbihpdGVtLCBhY3RpdmUpIHtcbiAgICAgIHZhciBfdGhpczYgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuaXNNdWx0aXBsZSB8fCB0aGlzLmlzSGlkaW5nU2VsZWN0ZWQpIHJldHVybiBudWxsO1xuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X190aWxlX19hY3Rpb24tLXNlbGVjdC1tdWx0aScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBfdGhpczYuc2VsZWN0SXRlbShpdGVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImNcIiAvKiBWTGlzdFRpbGVBY3Rpb24gKi9dLCBkYXRhLCBbdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMuY29tcHV0ZWRDb2xvcixcbiAgICAgICAgICBpbnB1dFZhbHVlOiBhY3RpdmVcbiAgICAgICAgfVxuICAgICAgfSldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoaXRlbSkge1xuICAgICAgdmFyIHRleHQgPSB0aGlzLmdldFRleHQoaXRlbSk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImRcIiAvKiBWTGlzdFRpbGVDb250ZW50ICovXSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WTGlzdF9fW1wiZVwiIC8qIFZMaXN0VGlsZVRpdGxlICovXSwge1xuICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgIGlubmVySFRNTDogdGhpcy5nZW5GaWx0ZXJlZCh0ZXh0KVxuICAgICAgICB9XG4gICAgICB9KV0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTQ0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGl2aWRlcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGl2aWRlcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kaXZpZGVyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRpdmlkZXInLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaW5zZXQ6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIHByb3BzID0gX3JlZi5wcm9wcyxcbiAgICAgICAgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgY2hpbGRyZW4gPSBfcmVmLmNoaWxkcmVuO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnZGl2aWRlciAnICsgKGRhdGEuc3RhdGljQ2xhc3MgfHwgJycpKS50cmltKCk7XG5cbiAgICBpZiAocHJvcHMuaW5zZXQpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBkaXZpZGVyLS1pbnNldCc7XG4gICAgaWYgKHByb3BzLmxpZ2h0KSBkYXRhLnN0YXRpY0NsYXNzICs9ICcgdGhlbWUtLWxpZ2h0JztcbiAgICBpZiAocHJvcHMuZGFyaykgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHRoZW1lLS1kYXJrJztcblxuICAgIHJldHVybiBoKCdocicsIGRhdGEpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19tZW51c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19tZW51c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX21lbnVzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGVsYXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19kZXBlbmRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RldGFjaGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX21lbnVhYmxlX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19yZXR1cm5hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21lbnVfYWN0aXZhdG9yX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfbWVudV9nZW5lcmF0b3JzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfbWVudV9rZXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMF9fbWl4aW5zX21lbnVfcG9zaXRpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMl9fZGlyZWN0aXZlc19yZXNpemVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cblxuXG4vLyBDb21wb25lbnQgbGV2ZWwgbWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LW1lbnUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21lbnVfYWN0aXZhdG9yX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kZWxheWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfZGV0YWNoYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX21peGluc19tZW51X2dlbmVyYXRvcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfbWVudV9rZXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX21lbnVhYmxlX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX21peGluc19tZW51X3Bvc2l0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3JldHVybmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBSZXNpemU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0T2Zmc2V0OiA4LFxuICAgICAgbWF4SGVpZ2h0QXV0b0RlZmF1bHQ6ICcyMDBweCcsXG4gICAgICBzdGFydEluZGV4OiAzLFxuICAgICAgc3RvcEluZGV4OiAwLFxuICAgICAgaGFzSnVzdEZvY3VzZWQ6IGZhbHNlLFxuICAgICAgcmVzaXplVGltZW91dDogbnVsbFxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGF1dG86IEJvb2xlYW4sXG4gICAgY2xvc2VPbkNsaWNrOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgY2xvc2VPbkNvbnRlbnRDbGljazoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZ1bGxXaWR0aDogQm9vbGVhbixcbiAgICBtYXhIZWlnaHQ6IHsgZGVmYXVsdDogJ2F1dG8nIH0sXG4gICAgb2Zmc2V0WDogQm9vbGVhbixcbiAgICBvZmZzZXRZOiBCb29sZWFuLFxuICAgIG9wZW5PbkNsaWNrOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgb3Blbk9uSG92ZXI6IEJvb2xlYW4sXG4gICAgb3JpZ2luOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndG9wIGxlZnQnXG4gICAgfSxcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdtZW51LXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZExlZnQ6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRMZWZ0KCkge1xuICAgICAgaWYgKCF0aGlzLmF1dG8pIHJldHVybiB0aGlzLmNhbGNMZWZ0KCk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNYT3ZlcmZsb3codGhpcy5jYWxjTGVmdEF1dG8oKSkgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZE1heEhlaWdodDogZnVuY3Rpb24gY2FsY3VsYXRlZE1heEhlaWdodCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmF1dG8gPyAnMjAwcHgnIDogaXNOYU4odGhpcy5tYXhIZWlnaHQpID8gdGhpcy5tYXhIZWlnaHQgOiB0aGlzLm1heEhlaWdodCArICdweCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkTWF4V2lkdGg6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRNYXhXaWR0aCgpIHtcbiAgICAgIHJldHVybiBpc05hTih0aGlzLm1heFdpZHRoKSA/IHRoaXMubWF4V2lkdGggOiB0aGlzLm1heFdpZHRoICsgJ3B4JztcbiAgICB9LFxuICAgIGNhbGN1bGF0ZWRNaW5XaWR0aDogZnVuY3Rpb24gY2FsY3VsYXRlZE1pbldpZHRoKCkge1xuICAgICAgaWYgKHRoaXMubWluV2lkdGgpIHtcbiAgICAgICAgcmV0dXJuIGlzTmFOKHRoaXMubWluV2lkdGgpID8gdGhpcy5taW5XaWR0aCA6IHRoaXMubWluV2lkdGggKyAncHgnO1xuICAgICAgfVxuXG4gICAgICB2YXIgbWluV2lkdGggPSB0aGlzLmRpbWVuc2lvbnMuYWN0aXZhdG9yLndpZHRoICsgdGhpcy5udWRnZVdpZHRoICsgKHRoaXMuYXV0byA/IDE2IDogMCk7XG5cbiAgICAgIHZhciBjYWxjdWxhdGVkTWF4V2lkdGggPSBpc05hTihwYXJzZUludCh0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCkpID8gbWluV2lkdGggOiBwYXJzZUludCh0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCk7XG5cbiAgICAgIHJldHVybiBNYXRoLm1pbihjYWxjdWxhdGVkTWF4V2lkdGgsIG1pbldpZHRoKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkVG9wOiBmdW5jdGlvbiBjYWxjdWxhdGVkVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmF1dG8gfHwgdGhpcy5pc0F0dGFjaGVkKSByZXR1cm4gdGhpcy5jYWxjVG9wKCk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNZT3ZlcmZsb3codGhpcy5jYWxjVG9wQXV0bygpKSArICdweCc7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1heEhlaWdodDogdGhpcy5jYWxjdWxhdGVkTWF4SGVpZ2h0LFxuICAgICAgICBtaW5XaWR0aDogdGhpcy5jYWxjdWxhdGVkTWluV2lkdGgsXG4gICAgICAgIG1heFdpZHRoOiB0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCxcbiAgICAgICAgdG9wOiB0aGlzLmNhbGN1bGF0ZWRUb3AsXG4gICAgICAgIGxlZnQ6IHRoaXMuY2FsY3VsYXRlZExlZnQsXG4gICAgICAgIHRyYW5zZm9ybU9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIHpJbmRleDogdGhpcy56SW5kZXggfHwgdGhpcy5hY3RpdmVaSW5kZXhcbiAgICAgIH07XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgYWN0aXZhdG9yOiBmdW5jdGlvbiBhY3RpdmF0b3IobmV3QWN0aXZhdG9yLCBvbGRBY3RpdmF0b3IpIHtcbiAgICAgIHRoaXMucmVtb3ZlQWN0aXZhdG9yRXZlbnRzKG9sZEFjdGl2YXRvcik7XG4gICAgICB0aGlzLmFkZEFjdGl2YXRvckV2ZW50cyhuZXdBY3RpdmF0b3IpO1xuICAgIH0sXG4gICAgaXNDb250ZW50QWN0aXZlOiBmdW5jdGlvbiBpc0NvbnRlbnRBY3RpdmUodmFsKSB7XG4gICAgICB0aGlzLmhhc0p1c3RGb2N1c2VkID0gdmFsO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgYWN0aXZhdGU6IGZ1bmN0aW9uIGFjdGl2YXRlKCkge1xuICAgICAgLy8gVGhpcyBleGlzdHMgcHJpbWFyaWx5IGZvciB2LXNlbGVjdFxuICAgICAgLy8gaGVscHMgZGV0ZXJtaW5lIHdoaWNoIHRpbGVzIHRvIGFjdGl2YXRlXG4gICAgICB0aGlzLmdldFRpbGVzKCk7XG4gICAgICAvLyBVcGRhdGUgY29vcmRpbmF0ZXMgYW5kIGRpbWVuc2lvbnMgb2YgbWVudVxuICAgICAgLy8gYW5kIGl0cyBhY3RpdmF0b3JcbiAgICAgIHRoaXMudXBkYXRlRGltZW5zaW9ucygpO1xuICAgICAgLy8gU3RhcnQgdGhlIHRyYW5zaXRpb25cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSh0aGlzLnN0YXJ0VHJhbnNpdGlvbik7XG4gICAgICAvLyBPbmNlIHRyYW5zaXRpb25pbmcsIGNhbGN1bGF0ZSBzY3JvbGwgcG9zaXRpb25cbiAgICAgIHNldFRpbWVvdXQodGhpcy5jYWxjdWxhdGVTY3JvbGwsIDUwKTtcbiAgICB9LFxuICAgIGNsb3NlQ29uZGl0aW9uYWw6IGZ1bmN0aW9uIGNsb3NlQ29uZGl0aW9uYWwoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLmNsb3NlT25DbGljaztcbiAgICB9LFxuICAgIG9uUmVzaXplOiBmdW5jdGlvbiBvblJlc2l6ZSgpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSkgcmV0dXJuO1xuXG4gICAgICAvLyBBY2NvdW50IGZvciBzY3JlZW4gcmVzaXplXG4gICAgICAvLyBhbmQgb3JpZW50YXRpb24gY2hhbmdlXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgICB0aGlzLiRyZWZzLmNvbnRlbnQub2Zmc2V0V2lkdGg7XG4gICAgICB0aGlzLnVwZGF0ZURpbWVuc2lvbnMoKTtcblxuICAgICAgLy8gV2hlbiByZXNpemluZyB0byBhIHNtYWxsZXIgd2lkdGhcbiAgICAgIC8vIGNvbnRlbnQgd2lkdGggaXMgZXZhbHVhdGVkIGJlZm9yZVxuICAgICAgLy8gdGhlIG5ldyBhY3RpdmF0b3Igd2lkdGggaGFzIGJlZW5cbiAgICAgIC8vIHNldCwgY2F1c2luZyBpdCB0byBub3Qgc2l6ZSBwcm9wZXJseVxuICAgICAgLy8gaGFja3kgYnV0IHdpbGwgcmV2aXNpdCBpbiB0aGUgZnV0dXJlXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lb3V0KTtcbiAgICAgIHRoaXMucmVzaXplVGltZW91dCA9IHNldFRpbWVvdXQodGhpcy51cGRhdGVEaW1lbnNpb25zLCAxMDApO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ21lbnUnLFxuICAgICAgY2xhc3M6IHtcbiAgICAgICAgJ21lbnUtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRoaXMuZnVsbFdpZHRoID8gJ2Jsb2NrJyA6ICdpbmxpbmUtYmxvY2snXG4gICAgICB9LFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgYXJnOiA1MDAsXG4gICAgICAgIG5hbWU6ICdyZXNpemUnLFxuICAgICAgICB2YWx1ZTogdGhpcy5vblJlc2l6ZVxuICAgICAgfV0sXG4gICAgICBvbjoge1xuICAgICAgICBrZXlkb3duOiB0aGlzLmNoYW5nZUxpc3RJbmRleFxuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgW3RoaXMuZ2VuQWN0aXZhdG9yKCksIHRoaXMuZ2VuVHJhbnNpdGlvbigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE0OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogTWVudSBhY3RpdmF0b3JcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBIYW5kbGVzIHRoZSBjbGljayBhbmQgaG92ZXIgYWN0aXZhdGlvblxuICogU3VwcG9ydHMgc2xvdHRlZCBhbmQgZGV0YWNoZWQgYWN0aXZhdG9yc1xuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGFjdGl2YXRvckNsaWNrSGFuZGxlcjogZnVuY3Rpb24gYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKGUpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgICBpZiAodGhpcy5vcGVuT25DbGljayAmJiAhdGhpcy5pc0FjdGl2ZSkge1xuICAgICAgICB0aGlzLmdldEFjdGl2YXRvcigpLmZvY3VzKCk7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmFic29sdXRlWCA9IGUuY2xpZW50WDtcbiAgICAgICAgdGhpcy5hYnNvbHV0ZVkgPSBlLmNsaWVudFk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuY2xvc2VPbkNsaWNrICYmIHRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgdGhpcy5nZXRBY3RpdmF0b3IoKS5ibHVyKCk7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG1vdXNlRW50ZXJIYW5kbGVyOiBmdW5jdGlvbiBtb3VzZUVudGVySGFuZGxlcihlKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB0aGlzLnJ1bkRlbGF5KCdvcGVuJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoX3RoaXMuaGFzSnVzdEZvY3VzZWQpIHJldHVybjtcblxuICAgICAgICBfdGhpcy5oYXNKdXN0Rm9jdXNlZCA9IHRydWU7XG4gICAgICAgIF90aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgbW91c2VMZWF2ZUhhbmRsZXI6IGZ1bmN0aW9uIG1vdXNlTGVhdmVIYW5kbGVyKGUpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICAvLyBQcmV2ZW50IGFjY2lkZW50YWwgcmUtYWN0aXZhdGlvblxuICAgICAgdGhpcy5ydW5EZWxheSgnY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpczIuJHJlZnMuY29udGVudC5jb250YWlucyhlLnJlbGF0ZWRUYXJnZXQpKSByZXR1cm47XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBfdGhpczIuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICBfdGhpczIuY2FsbERlYWN0aXZhdGUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGFkZEFjdGl2YXRvckV2ZW50czogZnVuY3Rpb24gYWRkQWN0aXZhdG9yRXZlbnRzKCkge1xuICAgICAgdmFyIGFjdGl2YXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblxuICAgICAgaWYgKCFhY3RpdmF0b3IpIHJldHVybjtcbiAgICAgIGFjdGl2YXRvci5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKTtcbiAgICB9LFxuICAgIHJlbW92ZUFjdGl2YXRvckV2ZW50czogZnVuY3Rpb24gcmVtb3ZlQWN0aXZhdG9yRXZlbnRzKCkge1xuICAgICAgdmFyIGFjdGl2YXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblxuICAgICAgaWYgKCFhY3RpdmF0b3IpIHJldHVybjtcbiAgICAgIGFjdGl2YXRvci5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbmZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyBmb3IgKHZhciBpID0gMCwgYXJyMiA9IEFycmF5KGFyci5sZW5ndGgpOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7IGFycjJbaV0gPSBhcnJbaV07IH0gcmV0dXJuIGFycjI7IH0gZWxzZSB7IHJldHVybiBBcnJheS5mcm9tKGFycik7IH0gfVxuXG4vKipcbiAqIE1lbnUgZ2VuZXJhdG9yc1xuICpcbiAqIEBtaXhpblxuICpcbiAqIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBET00gZWxlbWVudHMgZm9yIFZNZW51XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgZ2VuQWN0aXZhdG9yOiBmdW5jdGlvbiBnZW5BY3RpdmF0b3IoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNsb3RzLmFjdGl2YXRvcikgcmV0dXJuIG51bGw7XG5cbiAgICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ21lbnVfX2FjdGl2YXRvcicsXG4gICAgICAgICdjbGFzcyc6IHtcbiAgICAgICAgICAnbWVudV9fYWN0aXZhdG9yLS1hY3RpdmUnOiB0aGlzLmhhc0p1c3RGb2N1c2VkIHx8IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAnYWN0aXZhdG9yJyxcbiAgICAgICAgb246IHt9XG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5vcGVuT25Ib3Zlcikge1xuICAgICAgICBvcHRpb25zLm9uWydtb3VzZWVudGVyJ10gPSB0aGlzLm1vdXNlRW50ZXJIYW5kbGVyO1xuICAgICAgICBvcHRpb25zLm9uWydtb3VzZWxlYXZlJ10gPSB0aGlzLm1vdXNlTGVhdmVIYW5kbGVyO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLm9wZW5PbkNsaWNrKSB7XG4gICAgICAgIG9wdGlvbnMub25bJ2NsaWNrJ10gPSB0aGlzLmFjdGl2YXRvckNsaWNrSGFuZGxlcjtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIG9wdGlvbnMsIHRoaXMuJHNsb3RzLmFjdGl2YXRvcik7XG4gICAgfSxcbiAgICBnZW5UcmFuc2l0aW9uOiBmdW5jdGlvbiBnZW5UcmFuc2l0aW9uKCkge1xuICAgICAgaWYgKCF0aGlzLnRyYW5zaXRpb24pIHJldHVybiB0aGlzLmdlbkNvbnRlbnQoKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy50cmFuc2l0aW9uXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLmdlbkNvbnRlbnQoKV0pO1xuICAgIH0sXG4gICAgZ2VuRGlyZWN0aXZlczogZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIC8vIERvIG5vdCBhZGQgY2xpY2sgb3V0c2lkZSBmb3IgaG92ZXIgbWVudVxuICAgICAgdmFyIGRpcmVjdGl2ZXMgPSAhdGhpcy5vcGVuT25Ib3ZlciA/IFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgY2xvc2VDb25kaXRpb25hbDogdGhpcy5jbG9zZUNvbmRpdGlvbmFsLFxuICAgICAgICAgIGluY2x1ZGU6IGZ1bmN0aW9uIGluY2x1ZGUoKSB7XG4gICAgICAgICAgICByZXR1cm4gW190aGlzLiRlbF0uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheShfdGhpcy5nZXRPcGVuRGVwZW5kZW50RWxlbWVudHMoKSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfV0gOiBbXTtcblxuICAgICAgZGlyZWN0aXZlcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0NvbnRlbnRBY3RpdmVcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZGlyZWN0aXZlcztcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgX2NsYXNzLFxuICAgICAgICAgIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ21lbnVfX2NvbnRlbnQnLFxuICAgICAgICAnY2xhc3MnOiAoX2NsYXNzID0ge30sIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsIHRoaXMuY29udGVudENsYXNzLnRyaW0oKSwgdHJ1ZSksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdtZW51YWJsZV9fY29udGVudF9fYWN0aXZlJywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICd0aGVtZS0tZGFyaycsIHRoaXMuZGFyayksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICd0aGVtZS0tbGlnaHQnLCB0aGlzLmxpZ2h0KSwgX2NsYXNzKSxcbiAgICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgICBkaXJlY3RpdmVzOiB0aGlzLmdlbkRpcmVjdGl2ZXMoKSxcbiAgICAgICAgcmVmOiAnY29udGVudCcsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBpZiAoZS50YXJnZXQuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpKSByZXR1cm47XG4gICAgICAgICAgICBpZiAoX3RoaXMyLmNsb3NlT25Db250ZW50Q2xpY2spIF90aGlzMi5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5vcGVuT25Ib3ZlciAmJiAob3B0aW9ucy5vbi5tb3VzZWVudGVyID0gdGhpcy5tb3VzZUVudGVySGFuZGxlcik7XG4gICAgICB0aGlzLm9wZW5PbkhvdmVyICYmIChvcHRpb25zLm9uLm1vdXNlbGVhdmUgPSB0aGlzLm1vdXNlTGVhdmVIYW5kbGVyKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIG9wdGlvbnMsIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogTWVudSBrZXlhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogUHJpbWFyaWx5IHVzZWQgdG8gc3VwcG9ydCBWU2VsZWN0XG4gKiBIYW5kbGVzIG9wZW5pbmcgYW5kIGNsb3Npbmcgb2YgVk1lbnUgZnJvbSBrZXlzdHJva2VzXG4gKiBXaWxsIGNvbmRpdGlvbmFsbHkgaGlnaGxpZ2h0IFZMaXN0VGlsZXMgZm9yIFZTZWxlY3RcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxpc3RJbmRleDogLTEsXG4gICAgICB0aWxlczogW11cbiAgICB9O1xuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKCF2YWwpIHRoaXMubGlzdEluZGV4ID0gLTE7XG4gICAgfSxcbiAgICBsaXN0SW5kZXg6IGZ1bmN0aW9uIGxpc3RJbmRleChuZXh0LCBwcmV2KSB7XG4gICAgICAvLyBGb3IgaW5maW5pdGUgc2Nyb2xsIGFuZCBhdXRvY29tcGxldGUsIHJlLWV2YWx1YXRlIGNoaWxkcmVuXG4gICAgICB0aGlzLmdldFRpbGVzKCk7XG5cbiAgICAgIGlmIChuZXh0IGluIHRoaXMudGlsZXMpIHtcbiAgICAgICAgdmFyIHRpbGUgPSB0aGlzLnRpbGVzW25leHRdO1xuICAgICAgICB0aWxlLmNsYXNzTGlzdC5hZGQoJ2xpc3RfX3RpbGUtLWhpZ2hsaWdodGVkJyk7XG4gICAgICAgIHRoaXMuJHJlZnMuY29udGVudC5zY3JvbGxUb3AgPSB0aWxlLm9mZnNldFRvcCAtIHRpbGUuY2xpZW50SGVpZ2h0O1xuICAgICAgfVxuXG4gICAgICBwcmV2IGluIHRoaXMudGlsZXMgJiYgdGhpcy50aWxlc1twcmV2XS5jbGFzc0xpc3QucmVtb3ZlKCdsaXN0X190aWxlLS1oaWdobGlnaHRlZCcpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2hhbmdlTGlzdEluZGV4OiBmdW5jdGlvbiBjaGFuZ2VMaXN0SW5kZXgoZSkge1xuICAgICAgLy8gVXAsIERvd24sIEVudGVyLCBTcGFjZVxuICAgICAgaWYgKFs0MCwgMzgsIDEzXS5pbmNsdWRlcyhlLmtleUNvZGUpIHx8IGUua2V5Q29kZSA9PT0gMzIgJiYgIXRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuXG4gICAgICAvLyBFc2MsIFRhYlxuICAgICAgaWYgKFsyNywgOV0uaW5jbHVkZXMoZS5rZXlDb2RlKSkgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtlbHNlIGlmICghdGhpcy5pc0FjdGl2ZSAmJlxuICAgICAgLy8gRW50ZXIsIFNwYWNlXG4gICAgICBbMTMsIDMyXS5pbmNsdWRlcyhlLmtleUNvZGUpICYmIHRoaXMub3Blbk9uQ2xpY2spIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBEb3duXG4gICAgICBpZiAoZS5rZXlDb2RlID09PSA0MCAmJiB0aGlzLmxpc3RJbmRleCA8IHRoaXMudGlsZXMubGVuZ3RoIC0gMSkge1xuICAgICAgICB0aGlzLmxpc3RJbmRleCsrO1xuICAgICAgICAvLyBVcFxuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDM4ICYmIHRoaXMubGlzdEluZGV4ID4gMCkge1xuICAgICAgICB0aGlzLmxpc3RJbmRleC0tO1xuICAgICAgICAvLyBFbnRlclxuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDEzICYmIHRoaXMubGlzdEluZGV4ICE9PSAtMSkge1xuICAgICAgICB0aGlzLnRpbGVzW3RoaXMubGlzdEluZGV4XS5jbGljaygpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2V0VGlsZXM6IGZ1bmN0aW9uIGdldFRpbGVzKCkge1xuICAgICAgdGhpcy50aWxlcyA9IHRoaXMuJHJlZnMuY29udGVudC5xdWVyeVNlbGVjdG9yQWxsKCcubGlzdF9fdGlsZScpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTUxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBNZW51IHBvc2l0aW9uXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCBmb3IgY2FsY3VsYXRpbmcgYW4gYXV0b21hdGljIHBvc2l0aW9uICh1c2VkIGZvciBWU2VsZWN0KVxuICogV2lsbCBwb3NpdGlvbiB0aGUgVk1lbnUgY29udGVudCBwcm9wZXJseSBvdmVyIHRoZSBWU2VsZWN0XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgLy8gUmV2aXNpdCB0aGlzXG4gICAgY2FsY3VsYXRlU2Nyb2xsOiBmdW5jdGlvbiBjYWxjdWxhdGVTY3JvbGwoKSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSBudWxsKSByZXR1cm47XG5cbiAgICAgIHZhciBzY3JvbGxUb3AgPSAwO1xuXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID49IHRoaXMuc3RvcEluZGV4KSB7XG4gICAgICAgIHNjcm9sbFRvcCA9IHRoaXMuJHJlZnMuY29udGVudC5zY3JvbGxIZWlnaHQ7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWRJbmRleCA+IHRoaXMuc3RhcnRJbmRleCkge1xuICAgICAgICBzY3JvbGxUb3AgPSB0aGlzLnNlbGVjdGVkSW5kZXggKiAodGhpcy5kZWZhdWx0T2Zmc2V0ICogNikgLSB0aGlzLmRlZmF1bHRPZmZzZXQgKiA3O1xuICAgICAgfVxuXG4gICAgICB0aGlzLiRyZWZzLmNvbnRlbnQuc2Nyb2xsVG9wID0gc2Nyb2xsVG9wO1xuICAgIH0sXG4gICAgY2FsY0xlZnRBdXRvOiBmdW5jdGlvbiBjYWxjTGVmdEF1dG8oKSB7XG4gICAgICBpZiAodGhpcy5pc0F0dGFjaGVkKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHBhcnNlSW50KHRoaXMuZGltZW5zaW9ucy5hY3RpdmF0b3IubGVmdCAtIHRoaXMuZGVmYXVsdE9mZnNldCAqIDIpO1xuICAgIH0sXG4gICAgY2FsY1RvcEF1dG86IGZ1bmN0aW9uIGNhbGNUb3BBdXRvKCkge1xuICAgICAgdmFyIHNlbGVjdGVkSW5kZXggPSBBcnJheS5mcm9tKHRoaXMudGlsZXMpLmZpbmRJbmRleChmdW5jdGlvbiAobikge1xuICAgICAgICByZXR1cm4gbi5jbGFzc0xpc3QuY29udGFpbnMoJ2xpc3RfX3RpbGUtLWFjdGl2ZScpO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChzZWxlY3RlZEluZGV4ID09PSAtMSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkVG9wO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBzZWxlY3RlZEluZGV4O1xuICAgICAgdmFyIGFjdGluZ0luZGV4ID0gc2VsZWN0ZWRJbmRleDtcblxuICAgICAgdmFyIG9mZnNldFBhZGRpbmcgPSAtKHRoaXMuZGVmYXVsdE9mZnNldCAqIDIpO1xuICAgICAgLy8gIzcwOCBTdG9wIGluZGV4IHNob3VsZCB2YXJ5IGJ5IHRpbGUgbGVuZ3RoXG4gICAgICB0aGlzLnN0b3BJbmRleCA9IHRoaXMudGlsZXMubGVuZ3RoID4gNCA/IHRoaXMudGlsZXMubGVuZ3RoIC0gNCA6IHRoaXMudGlsZXMubGVuZ3RoO1xuXG4gICAgICBpZiAoc2VsZWN0ZWRJbmRleCA+IHRoaXMuc3RhcnRJbmRleCAmJiBzZWxlY3RlZEluZGV4IDwgdGhpcy5zdG9wSW5kZXgpIHtcbiAgICAgICAgYWN0aW5nSW5kZXggPSAyO1xuICAgICAgICBvZmZzZXRQYWRkaW5nID0gdGhpcy5kZWZhdWx0T2Zmc2V0ICogMztcbiAgICAgIH0gZWxzZSBpZiAoc2VsZWN0ZWRJbmRleCA+PSB0aGlzLnN0b3BJbmRleCkge1xuICAgICAgICBvZmZzZXRQYWRkaW5nID0gLXRoaXMuZGVmYXVsdE9mZnNldDtcbiAgICAgICAgYWN0aW5nSW5kZXggPSBzZWxlY3RlZEluZGV4IC0gdGhpcy5zdG9wSW5kZXg7XG4gICAgICB9XG5cbiAgICAgIC8vIElzIGFsd2F5cyBvZmYgYnkgMSBwaXhlbCwgc2VuZCBoZWxwICjilJvgsqBf4LKgKeKUm+W9oeKUu+KUgeKUu1xuICAgICAgb2Zmc2V0UGFkZGluZy0tO1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZFRvcCArIG9mZnNldFBhZGRpbmcgLSBhY3RpbmdJbmRleCAqICh0aGlzLmRlZmF1bHRPZmZzZXQgKiA2KTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N1YmhlYWRlcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3ViaGVhZGVyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N1YmhlYWRlcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdWJoZWFkZXInLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaW5zZXQ6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnc3ViaGVhZGVyICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIGlmIChwcm9wcy5pbnNldCkgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHN1YmhlYWRlci0taW5zZXQnO1xuICAgIGlmIChwcm9wcy5saWdodCkgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHRoZW1lLS1saWdodCc7XG4gICAgaWYgKHByb3BzLmRhcmspIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyB0aGVtZS0tZGFyayc7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNTQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19saXN0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19saXN0c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2xpc3RzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtbGlzdCcsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJiXCIgLyogcHJvdmlkZSAqL10pKCdsaXN0JyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm92aWRlOiBmdW5jdGlvbiBwcm92aWRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnbGlzdENsaWNrJzogdGhpcy5saXN0Q2xpY2tcbiAgICB9O1xuICB9LFxuXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZ3JvdXBzOiBbXVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBleHBhbmQ6IEJvb2xlYW4sXG4gICAgc3ViaGVhZGVyOiBCb29sZWFuLFxuICAgIHRocmVlTGluZTogQm9vbGVhbixcbiAgICB0d29MaW5lOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2xpc3QtLWRlbnNlJzogdGhpcy5kZW5zZSxcbiAgICAgICAgJ2xpc3QtLXN1YmhlYWRlcic6IHRoaXMuc3ViaGVhZGVyLFxuICAgICAgICAnbGlzdC0tdHdvLWxpbmUnOiB0aGlzLnR3b0xpbmUsXG4gICAgICAgICdsaXN0LS10aHJlZS1saW5lJzogdGhpcy50aHJlZUxpbmUsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH07XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCBjYikge1xuICAgICAgdGhpcy5ncm91cHMucHVzaCh7IHVpZDogdWlkLCBjYjogY2IgfSk7XG4gICAgfSxcbiAgICB1bnJlZ2lzdGVyOiBmdW5jdGlvbiB1bnJlZ2lzdGVyKHVpZCkge1xuICAgICAgdmFyIGluZGV4ID0gdGhpcy5ncm91cHMuZmluZEluZGV4KGZ1bmN0aW9uIChnKSB7XG4gICAgICAgIHJldHVybiBnLnVpZCA9PT0gdWlkO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBsaXN0Q2xpY2s6IGZ1bmN0aW9uIGxpc3RDbGljayh1aWQsIGlzQm9vdGVkKSB7XG4gICAgICBpZiAodGhpcy5leHBhbmQpIHJldHVybjtcblxuICAgICAgZm9yICh2YXIgaSA9IHRoaXMuZ3JvdXBzLmxlbmd0aDsgaS0tOykge1xuICAgICAgICB0aGlzLmdyb3Vwc1tpXS5jYih1aWQpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2xpc3QnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbdGhpcy4kc2xvdHMuZGVmYXVsdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdHJhbnNpdGlvbnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cbi8vIFRyYW5zaXRpb25zXG5cblxuLyoqXG4gKiBMaXN0IGdyb3VwXG4gKlxuICogQGNvbXBvbmVudFxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtbGlzdC1ncm91cCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ2xpc3QnLCAndi1saXN0LWdyb3VwJywgJ3YtbGlzdCcpLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGluamVjdDogWydsaXN0Q2xpY2snXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBncm91cHM6IFtdXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAncHJpbWFyeS0tdGV4dCdcbiAgICB9LFxuICAgIGFwcGVuZEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdrZXlib2FyZF9hcnJvd19kb3duJ1xuICAgIH0sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgZ3JvdXA6IFN0cmluZyxcbiAgICBub0FjdGlvbjogQm9vbGVhbixcbiAgICBwcmVwZW5kSWNvbjogU3RyaW5nLFxuICAgIHN1Ykdyb3VwOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBncm91cENsYXNzZXM6IGZ1bmN0aW9uIGdyb3VwQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdsaXN0X19ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ2xpc3RfX2dyb3VwLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgIH07XG4gICAgfSxcbiAgICBoZWFkZXJDbGFzc2VzOiBmdW5jdGlvbiBoZWFkZXJDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2xpc3RfX2dyb3VwX19oZWFkZXItLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdsaXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXAnOiB0aGlzLnN1Ykdyb3VwXG4gICAgICB9O1xuICAgIH0sXG4gICAgaXRlbXNDbGFzc2VzOiBmdW5jdGlvbiBpdGVtc0NsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnbGlzdF9fZ3JvdXBfX2l0ZW1zLS1uby1hY3Rpb24nOiB0aGlzLm5vQWN0aW9uXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIGlmICghdGhpcy5zdWJHcm91cCAmJiB2YWwpIHtcbiAgICAgICAgdGhpcy5saXN0Q2xpY2sodGhpcy5fdWlkKTtcbiAgICAgIH1cbiAgICB9LFxuICAgICRyb3V0ZTogZnVuY3Rpb24gJHJvdXRlKHRvKSB7XG4gICAgICB2YXIgaXNBY3RpdmUgPSB0aGlzLm1hdGNoUm91dGUodG8ucGF0aCk7XG5cbiAgICAgIGlmICh0aGlzLmdyb3VwKSB7XG4gICAgICAgIGlmIChpc0FjdGl2ZSAmJiB0aGlzLmlzQWN0aXZlICE9PSBpc0FjdGl2ZSkge1xuICAgICAgICAgIHRoaXMubGlzdENsaWNrKHRoaXMuX3VpZCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzQWN0aXZlID0gaXNBY3RpdmU7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5saXN0LnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy50b2dnbGUpO1xuXG4gICAgaWYgKHRoaXMuZ3JvdXAgJiYgdGhpcy4kcm91dGUgJiYgdGhpcy52YWx1ZSA9PSBudWxsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gdGhpcy5tYXRjaFJvdXRlKHRoaXMuJHJvdXRlLnBhdGgpO1xuICAgIH1cbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLmxpc3QudW5yZWdpc3Rlcih0aGlzLl91aWQpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaWNvbikge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIGljb24pO1xuICAgIH0sXG4gICAgZ2VuQXBwZW5kSWNvbjogZnVuY3Rpb24gZ2VuQXBwZW5kSWNvbigpIHtcbiAgICAgIHZhciBpY29uID0gIXRoaXMuc3ViR3JvdXAgPyB0aGlzLmFwcGVuZEljb24gOiBmYWxzZTtcblxuICAgICAgaWYgKCFpY29uICYmICF0aGlzLiRzbG90cy5hcHBlbmRJY29uKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cF9faGVhZGVyX19hcHBlbmQtaWNvbidcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5hcHBlbmRJY29uIHx8IHRoaXMuZ2VuSWNvbihpY29uKV0pO1xuICAgIH0sXG4gICAgZ2VuR3JvdXA6IGZ1bmN0aW9uIGdlbkdyb3VwKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cF9faGVhZGVyJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5oZWFkZXJDbGFzc2VzLFxuICAgICAgICBvbjogT2JqZWN0LmFzc2lnbih7fSwge1xuICAgICAgICAgIGNsaWNrOiB0aGlzLmNsaWNrXG4gICAgICAgIH0sIHRoaXMuJGxpc3RlbmVycyksXG4gICAgICAgIHJlZjogJ2l0ZW0nXG4gICAgICB9LCBbdGhpcy5nZW5QcmVwZW5kSWNvbigpLCB0aGlzLiRzbG90cy5hY3RpdmF0b3IsIHRoaXMuZ2VuQXBwZW5kSWNvbigpXSk7XG4gICAgfSxcbiAgICBnZW5JdGVtczogZnVuY3Rpb24gZ2VuSXRlbXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2xpc3RfX2dyb3VwX19pdGVtcycsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuaXRlbXNDbGFzc2VzLFxuICAgICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgICB2YWx1ZTogdGhpcy5pc0FjdGl2ZVxuICAgICAgICB9XSxcbiAgICAgICAgcmVmOiAnZ3JvdXAnXG4gICAgICB9LCB0aGlzLnNob3dMYXp5Q29udGVudCh0aGlzLiRzbG90cy5kZWZhdWx0KSk7XG4gICAgfSxcbiAgICBnZW5QcmVwZW5kSWNvbjogZnVuY3Rpb24gZ2VuUHJlcGVuZEljb24oKSB7XG4gICAgICB2YXIgaWNvbiA9IHRoaXMucHJlcGVuZEljb24gPyB0aGlzLnByZXBlbmRJY29uIDogdGhpcy5zdWJHcm91cCA/ICdhcnJvd19kcm9wX2Rvd24nIDogZmFsc2U7XG5cbiAgICAgIGlmICghaWNvbiAmJiAhdGhpcy4kc2xvdHMucHJlcGVuZEljb24pIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2xpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbicsXG4gICAgICAgICdjbGFzcyc6IF9kZWZpbmVQcm9wZXJ0eSh7fSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSlcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5wcmVwZW5kSWNvbiB8fCB0aGlzLmdlbkljb24oaWNvbildKTtcbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHVpZCkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMuX3VpZCA9PT0gdWlkO1xuICAgIH0sXG4gICAgbWF0Y2hSb3V0ZTogZnVuY3Rpb24gbWF0Y2hSb3V0ZSh0bykge1xuICAgICAgaWYgKCF0aGlzLmdyb3VwKSByZXR1cm4gZmFsc2U7XG4gICAgICByZXR1cm4gdG8ubWF0Y2godGhpcy5ncm91cCkgIT09IG51bGw7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmdyb3VwQ2xhc3Nlc1xuICAgIH0sIFt0aGlzLmdlbkdyb3VwKCksIGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190cmFuc2l0aW9uc19fW1wiYVwiIC8qIFZFeHBhbmRUcmFuc2l0aW9uICovXSwgW3RoaXMuZ2VuSXRlbXMoKV0pXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG4vLyBNaXhpbnNcblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1saXN0LXRpbGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yb3V0YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHtcbiAgICBSaXBwbGU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZGlyZWN0aXZlc19yaXBwbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIGluaGVyaXRBdHRyczogZmFsc2UsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHJveHlDbGFzczogJ2xpc3RfX3RpbGUtLWFjdGl2ZSdcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5LS10ZXh0J1xuICAgIH0sXG4gICAgYXZhdGFyOiBCb29sZWFuLFxuICAgIGluYWN0aXZlOiBCb29sZWFuLFxuICAgIHRhZzogU3RyaW5nXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBsaXN0Q2xhc3NlczogZnVuY3Rpb24gbGlzdENsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCA/ICd0ZXh0LS1kaXNhYmxlZCcgOiB0aGlzLmNvbG9yID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcygpIDogdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfSxcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIF9kZWZpbmVQcm9wZXJ0eSh7XG4gICAgICAgICdsaXN0X190aWxlJzogdHJ1ZSxcbiAgICAgICAgJ2xpc3RfX3RpbGUtLWxpbmsnOiB0aGlzLmlzTGluayAmJiAhdGhpcy5pbmFjdGl2ZSxcbiAgICAgICAgJ2xpc3RfX3RpbGUtLWF2YXRhcic6IHRoaXMuYXZhdGFyLFxuICAgICAgICAnbGlzdF9fdGlsZS0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnbGlzdF9fdGlsZS0tYWN0aXZlJzogIXRoaXMudG8gJiYgdGhpcy5pc0FjdGl2ZVxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSk7XG4gICAgfSxcbiAgICBpc0xpbms6IGZ1bmN0aW9uIGlzTGluaygpIHtcbiAgICAgIHJldHVybiB0aGlzLmhyZWYgfHwgdGhpcy50byB8fCB0aGlzLiRsaXN0ZW5lcnMgJiYgKHRoaXMuJGxpc3RlbmVycy5jbGljayB8fCB0aGlzLiRsaXN0ZW5lcnNbJyFjbGljayddKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBpc1JvdXRlTGluayA9ICF0aGlzLmluYWN0aXZlICYmIHRoaXMuaXNMaW5rO1xuXG4gICAgdmFyIF9yZWYyID0gaXNSb3V0ZUxpbmsgPyB0aGlzLmdlbmVyYXRlUm91dGVMaW5rKCkgOiB7XG4gICAgICB0YWc6IHRoaXMudGFnIHx8ICdkaXYnLFxuICAgICAgZGF0YToge1xuICAgICAgICBjbGFzczogdGhpcy5jbGFzc2VzXG4gICAgICB9XG4gICAgfSxcbiAgICAgICAgdGFnID0gX3JlZjIudGFnLFxuICAgICAgICBkYXRhID0gX3JlZjIuZGF0YTtcblxuICAgIGRhdGEuYXR0cnMgPSBPYmplY3QuYXNzaWduKHt9LCBkYXRhLmF0dHJzLCB0aGlzLiRhdHRycyk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5saXN0Q2xhc3NlcyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkXG4gICAgICB9LFxuICAgICAgb246IF9leHRlbmRzKHt9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgW2godGFnLCBkYXRhLCB0aGlzLiRzbG90cy5kZWZhdWx0KV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICBuYW1lOiAndi1saXN0LXRpbGUtYWN0aW9uJyxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbjtcblxuICAgIGRhdGEuc3RhdGljQ2xhc3MgPSBkYXRhLnN0YXRpY0NsYXNzID8gJ2xpc3RfX3RpbGVfX2FjdGlvbiAnICsgZGF0YS5zdGF0aWNDbGFzcyA6ICdsaXN0X190aWxlX19hY3Rpb24nO1xuICAgIGlmICgoY2hpbGRyZW4gfHwgW10pLmxlbmd0aCA+IDEpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBsaXN0X190aWxlX19hY3Rpb24tLXN0YWNrJztcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBdmF0YXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzQpO1xuLy8gQ29tcG9uZW50c1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIG5hbWU6ICd2LWxpc3QtdGlsZS1hdmF0YXInLFxuXG4gIHByb3BzOiB7XG4gICAgY29sb3I6IFN0cmluZyxcbiAgICBzaXplOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNDBcbiAgICB9LFxuICAgIHRpbGU6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnbGlzdF9fdGlsZV9fYXZhdGFyICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIHZhciBhdmF0YXIgPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBjb2xvcjogcHJvcHMuY29sb3IsXG4gICAgICAgIHNpemU6IHByb3BzLnNpemUsXG4gICAgICAgIHRpbGU6IHByb3BzLnRpbGVcbiAgICAgIH1cbiAgICB9LCBbY2hpbGRyZW5dKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbYXZhdGFyXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8vIEhlbHBlcnNcblxuXG4vKipcbiAqIFNlbGVjdCBoZWxwZXJzXG4gKlxuICogQG1peGluXG4gKlxuICogSGVscGVyIG1ldGhvZHMgZm9yIHRoZVxuICogdi1zZWxlY3QgY29tcG9uZW50XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgZ2V0VGV4dDogZnVuY3Rpb24gZ2V0VGV4dChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQcm9wZXJ0eUZyb21JdGVtKGl0ZW0sIHRoaXMuaXRlbVRleHQpO1xuICAgIH0sXG4gICAgZ2V0VmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKGl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFByb3BlcnR5RnJvbUl0ZW0oaXRlbSwgdGhpcy5pdGVtVmFsdWUpO1xuICAgIH0sXG4gICAgZ2V0UHJvcGVydHlGcm9tSXRlbTogZnVuY3Rpb24gZ2V0UHJvcGVydHlGcm9tSXRlbShpdGVtLCBmaWVsZCkge1xuICAgICAgaWYgKGl0ZW0gIT09IE9iamVjdChpdGVtKSkgcmV0dXJuIGl0ZW07XG5cbiAgICAgIHZhciB2YWx1ZSA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoaXRlbSwgZmllbGQpO1xuXG4gICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyA/IGl0ZW0gOiB2YWx1ZTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogU2VsZWN0IG1lbnUgbWV0aG9kc1xuICpcbiAqIEBtaXhpblxuICpcbiAqIE1lbnUgYmFzZWQgbWV0aG9kcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBhY3RpdmF0ZUlucHV0OiBmdW5jdGlvbiBhY3RpdmF0ZUlucHV0KCkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRydWU7XG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gICAgfSxcbiAgICBkZWFjdGl2YXRlSW5wdXQ6IGZ1bmN0aW9uIGRlYWN0aXZhdGVJbnB1dCgpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcbiAgICB9LFxuICAgIGhpZGVNZW51OiBmdW5jdGlvbiBoaWRlTWVudSgpIHtcbiAgICAgIHRoaXMubWVudUlzQWN0aXZlID0gZmFsc2U7XG4gICAgfSxcbiAgICBzaG93TWVudTogZnVuY3Rpb24gc2hvd01lbnUoKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlSW5wdXQoKTtcbiAgICAgIHRoaXMuc2hvd01lbnVJdGVtcygpO1xuICAgICAgdGhpcy5pc011bHRpcGxlICYmIHRoaXMucmVzZXRNZW51SW5kZXgoKTtcbiAgICB9LFxuICAgIHNob3dNZW51SXRlbXM6IGZ1bmN0aW9uIHNob3dNZW51SXRlbXMoKSB7XG4gICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IHRydWU7XG4gICAgfSxcbiAgICB0b2dnbGVNZW51OiBmdW5jdGlvbiB0b2dnbGVNZW51KCkge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSB8fCB0aGlzLm1lbnVJc1Zpc2libGUpIHJldHVybiB0aGlzLmhpZGVNZW51KCk7XG5cbiAgICAgIHRoaXMuc2hvd01lbnUoKTtcbiAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTYyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgYXBwZW5kSWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2Fycm93X2Ryb3BfZG93bidcbiAgICB9LFxuICAgIGFwcGVuZEljb25DYjogRnVuY3Rpb24sXG4gICAgYXR0YWNoOiBCb29sZWFuLFxuICAgIGF1dG86IEJvb2xlYW4sXG4gICAgYXV0b2NvbXBsZXRlOiBCb29sZWFuLFxuICAgIGJyb3dzZXJBdXRvY29tcGxldGU6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdvZmYnXG4gICAgfSxcbiAgICBjYWNoZUl0ZW1zOiBCb29sZWFuLFxuICAgIGNoaXBzOiBCb29sZWFuLFxuICAgIGNsZWFyYWJsZTogQm9vbGVhbixcbiAgICBjb21ib2JveDogQm9vbGVhbixcbiAgICBjb250ZW50Q2xhc3M6IFN0cmluZyxcbiAgICBkZWxldGFibGVDaGlwczogQm9vbGVhbixcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBlZGl0YWJsZTogQm9vbGVhbixcbiAgICBoaWRlU2VsZWN0ZWQ6IEJvb2xlYW4sXG4gICAgaXRlbXM6IHtcbiAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGl0ZW1BdmF0YXI6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdhdmF0YXInXG4gICAgfSxcbiAgICBpdGVtRGlzYWJsZWQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdkaXNhYmxlZCdcbiAgICB9LFxuICAgIGl0ZW1UZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9LFxuICAgIGl0ZW1WYWx1ZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3ZhbHVlJ1xuICAgIH0sXG4gICAgbWF4SGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMzAwXG4gICAgfSxcbiAgICBtaW5XaWR0aDoge1xuICAgICAgdHlwZTogW0Jvb2xlYW4sIE51bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfSxcbiAgICBtdWx0aXBsZTogQm9vbGVhbixcbiAgICBtdWx0aUxpbmU6IEJvb2xlYW4sXG4gICAgb3Blbk9uQ2xlYXI6IEJvb2xlYW4sXG4gICAgb3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgcmV0dXJuT2JqZWN0OiBCb29sZWFuLFxuICAgIHNlYXJjaElucHV0OiB7XG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBzZWdtZW50ZWQ6IEJvb2xlYW4sXG4gICAgc2luZ2xlTGluZTogQm9vbGVhbixcbiAgICB0YWdzOiBCb29sZWFuLFxuICAgIHZhbHVlQ29tcGFyYXRvcjoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdChhLCBiKSB7XG4gICAgICAgIGlmIChhICE9PSBPYmplY3QoYSkpIHJldHVybiBhID09PSBiO1xuICAgICAgICB2YXIgYVByb3BzID0gT2JqZWN0LmtleXMoYSk7XG4gICAgICAgIHZhciBiUHJvcHMgPSBPYmplY3Qua2V5cyhiKTtcbiAgICAgICAgcmV0dXJuIGFQcm9wcy5sZW5ndGggPT09IGJQcm9wcy5sZW5ndGggJiYgYVByb3BzLmV2ZXJ5KGZ1bmN0aW9uIChwcm9wTmFtZSkge1xuICAgICAgICAgIHJldHVybiBhW3Byb3BOYW1lXSA9PT0gYltwcm9wTmFtZV07XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTYzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBTZWxlY3Qgd2F0Y2hlcnNcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBXYXRjaGVycyBmb3IgdGhlXG4gKiB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHdhdGNoOiB7XG4gICAgZmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIHRoaXMuJHJlZnMubWVudSAmJiB0aGlzLiRyZWZzLm1lbnUudXBkYXRlRGltZW5zaW9ucygpO1xuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIC8vIFNlYXJjaCBmb3IgYW4gZXhpc3RpbmcgaXRlbSB3aGVuIGFcbiAgICAgIC8vIHZhbHVlIHdhcyBzZWxlY3RlZCBmcm9tIHRoZSBtZW51XG4gICAgICBpZiAodGhpcy5jb21ib2JveCAmJiB0aGlzLmlzTm90RmlsdGVyaW5nKSB7XG4gICAgICAgIHZhbCA9IHRoaXMuZmluZEV4aXN0aW5nSXRlbSh2YWwpO1xuICAgICAgfVxuXG4gICAgICAvLyBQb3B1bGF0ZSBzZWxlY3RlZCBpdGVtc1xuICAgICAgdGhpcy5nZW5TZWxlY3RlZEl0ZW1zKHZhbCk7XG5cbiAgICAgIC8vIE9ubHkgZmlyZSBhbiB1cGRhdGVcbiAgICAgIC8vIGlmIHZhbHVlcyBkbyBub3RcbiAgICAgIC8vIG1hdGNoXG4gICAgICB2YWwgIT09IHRoaXMudmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWwpO1xuXG4gICAgICAvLyBXaGVuIGlucHV0VmFsdWUgaXMgY2hhbmdlZFxuICAgICAgLy8gYW5kIGNvbWJvYm94IGlzIHRydWUgc2V0XG4gICAgICAvLyBtZW51IHByb3BlcnR5IHRvIGZhbHNlXG4gICAgICBpZiAodGhpcy5jb21ib2JveCkgdGhpcy5tZW51SXNBY3RpdmUgPSBmYWxzZTtcbiAgICB9LFxuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNoaXBzICYmICF0aGlzLiRzY29wZWRTbG90cy5zZWxlY3Rpb24pIHtcbiAgICAgICAgICB0aGlzLnNlYXJjaFZhbHVlID0gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuYmx1cigpO1xuXG4gICAgICBpZiAodGhpcy50YWdzICYmIHRoaXMuc2VhcmNoVmFsdWUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVUYWdzKHRoaXMuc2VhcmNoVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jb21ib2JveCAmJiB0aGlzLmxhenlTZWFyY2ggJiYgIXRoaXMuaXNOb3RGaWx0ZXJpbmcpIHtcbiAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5sYXp5U2VhcmNoO1xuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IHNldCBzZWFyY2ggdmFsdWUgaWZcbiAgICAgIC8vIHRoZXJlIGlzIGEgdmFsdWUgdG8gc2V0XG4gICAgICB0aGlzLnNlYXJjaFZhbHVlICYmICh0aGlzLnNlYXJjaFZhbHVlID0gbnVsbCk7XG4gICAgfSxcbiAgICBpc0Jvb3RlZDogZnVuY3Rpb24gaXNCb290ZWQoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpcy5jb250ZW50ICYmIF90aGlzLmNvbnRlbnQuYWRkRXZlbnRMaXN0ZW5lcikge1xuICAgICAgICAgIF90aGlzLmNvbnRlbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgX3RoaXMub25TY3JvbGwsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXModmFsKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuY2FjaGVJdGVtcykge1xuICAgICAgICB0aGlzLmNhY2hlZEl0ZW1zID0gdGhpcy5maWx0ZXJEdXBsaWNhdGVzKHRoaXMuY2FjaGVkSXRlbXMuY29uY2F0KHZhbCkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnJlc2V0TWVudUluZGV4KCk7XG5cbiAgICAgIC8vIFRhZ3MgYW5kIGNvbWJvYm94IHNob3VsZCBub3RcbiAgICAgIC8vIHByZS1zZWxlY3QgdGhlIGZpcnN0IGVudHJ5XG4gICAgICBpZiAodGhpcy5zZWFyY2hWYWx1ZSAmJiAhdGhpcy5pc0FueVZhbHVlQWxsb3dlZCkge1xuICAgICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMi5zZXRNZW51SW5kZXgoMCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmdlblNlbGVjdGVkSXRlbXMoKTtcbiAgICB9LFxuICAgIG1lbnVJc0FjdGl2ZTogZnVuY3Rpb24gbWVudUlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKCF2YWwpIHJldHVybjtcblxuICAgICAgdGhpcy5pc0Jvb3RlZCA9IHRydWU7XG4gICAgfSxcbiAgICBpc011bHRpcGxlOiBmdW5jdGlvbiBpc011bHRpcGxlKHZhbCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdmFsID8gW10gOiBudWxsO1xuICAgIH0sXG4gICAgc2VhcmNoSW5wdXQ6IGZ1bmN0aW9uIHNlYXJjaElucHV0KHZhbCkge1xuICAgICAgdGhpcy5zZWFyY2hWYWx1ZSA9IHZhbDtcbiAgICB9LFxuICAgIHNlYXJjaFZhbHVlOiBmdW5jdGlvbiBzZWFyY2hWYWx1ZSh2YWwsIHByZXYpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICAvLyBXcmFwIGlucHV0IHRvIG5leHQgbGluZSBpZiBvdmVyZmxvd2luZ1xuICAgICAgaWYgKHRoaXMuJHJlZnMuaW5wdXQuc2Nyb2xsV2lkdGggPiB0aGlzLiRyZWZzLmlucHV0LmNsaWVudFdpZHRoKSB7XG4gICAgICAgIHRoaXMuc2hvdWxkQnJlYWsgPSB0cnVlO1xuICAgICAgICB0aGlzLiRuZXh0VGljayh0aGlzLiRyZWZzLm1lbnUudXBkYXRlRGltZW5zaW9ucyk7XG4gICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICB0aGlzLnNob3VsZEJyZWFrID0gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIC8vIEFjdGl2YXRlIG1lbnUgaWYgaW5hY3RpdmUgYW5kIHNlYXJjaGluZ1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUgJiYgIXRoaXMubWVudUlzQWN0aXZlICYmIHZhbCAhPT0gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKSkge1xuICAgICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgcmVzZXQgbGlzdCBpbmRleFxuICAgICAgLy8gaWYgdHlwaW5nIGluIHNlYXJjaFxuICAgICAgIXZhbCAmJiBwcmV2ICYmIHRoaXMucmVzZXRNZW51SW5kZXgoKTtcblxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAodmFsICYmICFfdGhpczMuaXNBbnlWYWx1ZUFsbG93ZWQpIHtcbiAgICAgICAgICBfdGhpczMuc2V0TWVudUluZGV4KDApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWwgIT09IG51bGwgJiYgX3RoaXMzLnNlbGVjdGVkSW5kZXggPiAtMSkge1xuICAgICAgICAgIF90aGlzMy5zZWxlY3RlZEluZGV4ID0gLTE7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgc2VsZWN0ZWRJdGVtczogZnVuY3Rpb24gc2VsZWN0ZWRJdGVtcygpIHtcbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSB7XG4gICAgICAgIHRoaXMuJG5leHRUaWNrKHRoaXMuJHJlZnMubWVudS51cGRhdGVEaW1lbnNpb25zKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHZhbDtcbiAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWVGFibGVPdmVyZmxvdyAqL1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGFUYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkVkaXREaWFsb2dfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTcyKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRhVGFibGUgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZFZGl0RGlhbG9nICovXG5cblxuXG5cblxudmFyIFZUYWJsZU92ZXJmbG93ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0YWJsZV9fb3ZlcmZsb3cnKTtcblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRWRpdERpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkVkaXREaWFsb2dfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVlRhYmxlT3ZlcmZsb3cubmFtZSwgVlRhYmxlT3ZlcmZsb3cpO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTY1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGFibGVzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYmxlc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYmxlc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV90YWJsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19kYXRhX3RhYmxlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV90YWJsZV9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RhdGFfaXRlcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2hlYWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19ib2R5X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfZm9vdF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3Byb2dyZXNzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBJbXBvcnRpbmcgZG9lcyBub3Qgd29yayBwcm9wZXJseVxudmFyIFZUYWJsZU92ZXJmbG93ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0YWJsZV9fb3ZlcmZsb3cnKTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGEtdGFibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGlvbnNDbGFzc2VzOiAnZGF0YXRhYmxlX19hY3Rpb25zJyxcbiAgICAgIGFjdGlvbnNSYW5nZUNvbnRyb2xzQ2xhc3NlczogJ2RhdGF0YWJsZV9fYWN0aW9uc19fcmFuZ2UtY29udHJvbHMnLFxuICAgICAgYWN0aW9uc1NlbGVjdENsYXNzZXM6ICdkYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCcsXG4gICAgICBhY3Rpb25zUGFnaW5hdGlvbkNsYXNzZXM6ICdkYXRhdGFibGVfX2FjdGlvbnNfX3BhZ2luYXRpb24nXG4gICAgfTtcbiAgfSxcblxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RhdGFfaXRlcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfaGVhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19ib2R5X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX2Zvb3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfcHJvZ3Jlc3NfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBoZWFkZXJUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9LFxuICAgIGhpZGVIZWFkZXJzOiBCb29sZWFuLFxuICAgIHJvd3NQZXJQYWdlVGV4dDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ1Jvd3MgcGVyIHBhZ2U6J1xuICAgIH0sXG4gICAgY3VzdG9tRmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBzZWFyY2gsIGZpbHRlciwgaGVhZGVycykge1xuICAgICAgICBzZWFyY2ggPSBzZWFyY2gudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBpZiAoc2VhcmNoLnRyaW0oKSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgICAgICB2YXIgcHJvcHMgPSBoZWFkZXJzLm1hcChmdW5jdGlvbiAoaCkge1xuICAgICAgICAgIHJldHVybiBoLnZhbHVlO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgcmV0dXJuIHByb3BzLnNvbWUoZnVuY3Rpb24gKHByb3ApIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXIoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShpdGVtLCBwcm9wKSwgc2VhcmNoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdkYXRhdGFibGUgdGFibGUnOiB0cnVlLFxuICAgICAgICAnZGF0YXRhYmxlLS1zZWxlY3QtYWxsJzogdGhpcy5zZWxlY3RBbGwgIT09IGZhbHNlLFxuICAgICAgICAndGhlbWUtLWRhcmsnOiB0aGlzLmRhcmssXG4gICAgICAgICd0aGVtZS0tbGlnaHQnOiB0aGlzLmxpZ2h0XG4gICAgICB9O1xuICAgIH0sXG4gICAgZmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlcmVkSXRlbXNJbXBsKHRoaXMuaGVhZGVycyk7XG4gICAgfSxcbiAgICBoZWFkZXJDb2x1bW5zOiBmdW5jdGlvbiBoZWFkZXJDb2x1bW5zKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaGVhZGVycy5sZW5ndGggKyAodGhpcy5zZWxlY3RBbGwgIT09IGZhbHNlKTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGhhc1RhZzogZnVuY3Rpb24gaGFzVGFnKGVsZW1lbnRzLCB0YWcpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGVsZW1lbnRzKSAmJiBlbGVtZW50cy5maW5kKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIHJldHVybiBlLnRhZyA9PT0gdGFnO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5UUjogZnVuY3Rpb24gZ2VuVFIoY2hpbGRyZW4pIHtcbiAgICAgIHZhciBkYXRhID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiB7fTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyJywgZGF0YSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgfSxcblxuICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgIHZhciBmaXJzdFNvcnRhYmxlID0gdGhpcy5oZWFkZXJzLmZpbmQoZnVuY3Rpb24gKGgpIHtcbiAgICAgIHJldHVybiAhKCdzb3J0YWJsZScgaW4gaCkgfHwgaC5zb3J0YWJsZTtcbiAgICB9KTtcblxuICAgIHRoaXMuZGVmYXVsdFBhZ2luYXRpb24uc29ydEJ5ID0gIXRoaXMuZGlzYWJsZUluaXRpYWxTb3J0ICYmIGZpcnN0U29ydGFibGUgPyBmaXJzdFNvcnRhYmxlLnZhbHVlIDogbnVsbDtcblxuICAgIHRoaXMuaW5pdFBhZ2luYXRpb24oKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciB0YWJsZU92ZXJmbG93ID0gaChWVGFibGVPdmVyZmxvdywge30sIFtoKCd0YWJsZScsIHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgIH0sIFt0aGlzLmdlblRIZWFkKCksIHRoaXMuZ2VuVEJvZHkoKSwgdGhpcy5nZW5URm9vdCgpXSldKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBbdGFibGVPdmVyZmxvdywgdGhpcy5nZW5BY3Rpb25zRm9vdGVyKCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTY2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTY3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTY4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNoZWNrYm94X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgcHJvcHM6IHtcbiAgICBzb3J0SWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2Fycm93X3Vwd2FyZCdcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblRIZWFkOiBmdW5jdGlvbiBnZW5USGVhZCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICh0aGlzLmhpZGVIZWFkZXJzKSByZXR1cm47IC8vIEV4aXQgRWFybHkgc2luY2Ugbm8gaGVhZGVycyBhcmUgbmVlZGVkLlxuXG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgICAgaWYgKHRoaXMuJHNjb3BlZFNsb3RzLmhlYWRlcnMpIHtcbiAgICAgICAgdmFyIHJvdyA9IHRoaXMuJHNjb3BlZFNsb3RzLmhlYWRlcnMoe1xuICAgICAgICAgIGhlYWRlcnM6IHRoaXMuaGVhZGVycyxcbiAgICAgICAgICBpbmRldGVybWluYXRlOiB0aGlzLmluZGV0ZXJtaW5hdGUsXG4gICAgICAgICAgYWxsOiB0aGlzLmV2ZXJ5SXRlbVxuICAgICAgICB9KTtcblxuICAgICAgICBjaGlsZHJlbiA9IFt0aGlzLmhhc1RhZyhyb3csICd0aCcpID8gdGhpcy5nZW5UUihyb3cpIDogcm93LCB0aGlzLmdlblRQcm9ncmVzcygpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBfcm93ID0gdGhpcy5oZWFkZXJzLm1hcChmdW5jdGlvbiAobykge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5nZW5IZWFkZXIobyk7XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgY2hlY2tib3ggPSB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNoZWNrYm94X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgICAgbGlnaHQ6IHRoaXMubGlnaHQsXG4gICAgICAgICAgICBjb2xvcjogdGhpcy5zZWxlY3RBbGwgPT09IHRydWUgPyAnJyA6IHRoaXMuc2VsZWN0QWxsLFxuICAgICAgICAgICAgaGlkZURldGFpbHM6IHRydWUsXG4gICAgICAgICAgICBpbnB1dFZhbHVlOiB0aGlzLmV2ZXJ5SXRlbSxcbiAgICAgICAgICAgIGluZGV0ZXJtaW5hdGU6IHRoaXMuaW5kZXRlcm1pbmF0ZVxuICAgICAgICAgIH0sXG4gICAgICAgICAgb246IHsgY2hhbmdlOiB0aGlzLnRvZ2dsZSB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaGFzU2VsZWN0QWxsICYmIF9yb3cudW5zaGlmdCh0aGlzLiRjcmVhdGVFbGVtZW50KCd0aCcsIFtjaGVja2JveF0pKTtcblxuICAgICAgICBjaGlsZHJlbiA9IFt0aGlzLmdlblRSKF9yb3cpLCB0aGlzLmdlblRQcm9ncmVzcygpXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RoZWFkJywgW2NoaWxkcmVuXSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXI6IGZ1bmN0aW9uIGdlbkhlYWRlcihoZWFkZXIpIHtcbiAgICAgIHZhciBhcnJheSA9IFt0aGlzLiRzY29wZWRTbG90cy5oZWFkZXJDZWxsID8gdGhpcy4kc2NvcGVkU2xvdHMuaGVhZGVyQ2VsbCh7IGhlYWRlcjogaGVhZGVyIH0pIDogaGVhZGVyW3RoaXMuaGVhZGVyVGV4dF1dO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudC5hcHBseSh0aGlzLCBbJ3RoJ10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdlbkhlYWRlckRhdGEoaGVhZGVyLCBhcnJheSkpKSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXJEYXRhOiBmdW5jdGlvbiBnZW5IZWFkZXJEYXRhKGhlYWRlciwgY2hpbGRyZW4pIHtcbiAgICAgIHZhciBjbGFzc2VzID0gWydjb2x1bW4nXTtcbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBrZXk6IGhlYWRlclt0aGlzLmhlYWRlclRleHRdLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHJvbGU6ICdjb2x1bW5oZWFkZXInLFxuICAgICAgICAgIHNjb3BlOiAnY29sJyxcbiAgICAgICAgICB3aWR0aDogaGVhZGVyLndpZHRoIHx8IG51bGwsXG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiBoZWFkZXJbdGhpcy5oZWFkZXJUZXh0XSB8fCAnJyxcbiAgICAgICAgICAnYXJpYS1zb3J0JzogJ25vbmUnXG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmIChoZWFkZXIuc29ydGFibGUgPT0gbnVsbCB8fCBoZWFkZXIuc29ydGFibGUpIHtcbiAgICAgICAgdGhpcy5nZW5IZWFkZXJTb3J0aW5nRGF0YShoZWFkZXIsIGNoaWxkcmVuLCBkYXRhLCBjbGFzc2VzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRhdGEuYXR0cnNbJ2FyaWEtbGFiZWwnXSArPSAnOiBOb3Qgc29ydGVkLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgfVxuXG4gICAgICBjbGFzc2VzLnB1c2goJ3RleHQteHMtJyArIChoZWFkZXIuYWxpZ24gfHwgJ2xlZnQnKSk7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXIuY2xhc3MpKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaC5hcHBseShjbGFzc2VzLCBfdG9Db25zdW1hYmxlQXJyYXkoaGVhZGVyLmNsYXNzKSk7XG4gICAgICB9IGVsc2UgaWYgKGhlYWRlci5jbGFzcykge1xuICAgICAgICBjbGFzc2VzLnB1c2goaGVhZGVyLmNsYXNzKTtcbiAgICAgIH1cbiAgICAgIGRhdGEuY2xhc3MgPSBjbGFzc2VzO1xuXG4gICAgICByZXR1cm4gW2RhdGEsIGNoaWxkcmVuXTtcbiAgICB9LFxuICAgIGdlbkhlYWRlclNvcnRpbmdEYXRhOiBmdW5jdGlvbiBnZW5IZWFkZXJTb3J0aW5nRGF0YShoZWFkZXIsIGNoaWxkcmVuLCBkYXRhLCBjbGFzc2VzKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKCEoJ3ZhbHVlJyBpbiBoZWFkZXIpKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ0hlYWRlcnMgbXVzdCBoYXZlIGEgdmFsdWUgcHJvcGVydHkgdGhhdCBjb3JyZXNwb25kcyB0byBhIHZhbHVlIGluIHRoZSB2LW1vZGVsIGFycmF5JywgdGhpcyk7XG4gICAgICB9XG5cbiAgICAgIGRhdGEuYXR0cnMudGFiSW5kZXggPSAwO1xuICAgICAgZGF0YS5vbiA9IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgIF90aGlzMi5leHBhbmRlZCA9IHt9O1xuICAgICAgICAgIF90aGlzMi5zb3J0KGhlYWRlci52YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGtleWRvd246IGZ1bmN0aW9uIGtleWRvd24oZSkge1xuICAgICAgICAgIC8vIGNoZWNrIGZvciBzcGFjZVxuICAgICAgICAgIGlmIChlLmtleUNvZGUgPT09IDMyKSB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBfdGhpczIuc29ydChoZWFkZXIudmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY2xhc3Nlcy5wdXNoKCdzb3J0YWJsZScpO1xuICAgICAgdmFyIGljb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIHNtYWxsOiB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuc29ydEljb24pO1xuICAgICAgaWYgKCFoZWFkZXIuYWxpZ24gfHwgaGVhZGVyLmFsaWduID09PSAnbGVmdCcpIHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaChpY29uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnVuc2hpZnQoaWNvbik7XG4gICAgICB9XG5cbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5jb21wdXRlZFBhZ2luYXRpb247XG4gICAgICB2YXIgYmVpbmdTb3J0ZWQgPSBwYWdpbmF0aW9uLnNvcnRCeSA9PT0gaGVhZGVyLnZhbHVlO1xuICAgICAgaWYgKGJlaW5nU29ydGVkKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaCgnYWN0aXZlJyk7XG4gICAgICAgIGlmIChwYWdpbmF0aW9uLmRlc2NlbmRpbmcpIHtcbiAgICAgICAgICBjbGFzc2VzLnB1c2goJ2Rlc2MnKTtcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLXNvcnQnXSA9ICdkZXNjZW5kaW5nJztcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogU29ydGVkIGRlc2NlbmRpbmcuIEFjdGl2YXRlIHRvIHJlbW92ZSBzb3J0aW5nLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNsYXNzZXMucHVzaCgnYXNjJyk7XG4gICAgICAgICAgZGF0YS5hdHRyc1snYXJpYS1zb3J0J10gPSAnYXNjZW5kaW5nJztcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogU29ydGVkIGFzY2VuZGluZy4gQWN0aXZhdGUgdG8gc29ydCBkZXNjZW5kaW5nLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogTm90IHNvcnRlZC4gQWN0aXZhdGUgdG8gc29ydCBhc2NlbmRpbmcuJzsgLy8gVE9ETzogTG9jYWxpemF0aW9uXG4gICAgICB9XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19leHBhbmRfdHJhbnNpdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MSk7XG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UQm9keTogZnVuY3Rpb24gZ2VuVEJvZHkoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLmdlbkl0ZW1zKCk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0Ym9keScsIGNoaWxkcmVuKTtcbiAgICB9LFxuICAgIGdlbkV4cGFuZGVkUm93OiBmdW5jdGlvbiBnZW5FeHBhbmRlZFJvdyhwcm9wcykge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGlmICh0aGlzLmlzRXhwYW5kZWQocHJvcHMuaXRlbSkpIHtcbiAgICAgICAgdmFyIGV4cGFuZCA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgICBjbGFzczogJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbnRlbnQnLFxuICAgICAgICAgIGtleTogcHJvcHMuaXRlbVt0aGlzLml0ZW1LZXldXG4gICAgICAgIH0sIHRoaXMuJHNjb3BlZFNsb3RzLmV4cGFuZChwcm9wcykpO1xuXG4gICAgICAgIGNoaWxkcmVuLnB1c2goZXhwYW5kKTtcbiAgICAgIH1cblxuICAgICAgdmFyIHRyYW5zaXRpb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uLWdyb3VwJywge1xuICAgICAgICBjbGFzczogJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbCcsXG4gICAgICAgIGF0dHJzOiB7IGNvbHNwYW46IHRoaXMuaGVhZGVyQ29sdW1ucyB9LFxuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIHRhZzogJ3RkJ1xuICAgICAgICB9LFxuICAgICAgICBvbjogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdHJhbnNpdGlvbnNfZXhwYW5kX3RyYW5zaXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSkoJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWQnKVxuICAgICAgfSwgY2hpbGRyZW4pO1xuXG4gICAgICByZXR1cm4gdGhpcy5nZW5UUihbdHJhbnNpdGlvbl0sIHsgY2xhc3M6ICdkYXRhdGFibGVfX2V4cGFuZC1yb3cnIH0pO1xuICAgIH0sXG4gICAgZ2VuRmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZ2VuRmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIGlmICghdGhpcy4kc2NvcGVkU2xvdHMuaXRlbXMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciByb3dzID0gW107XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDAsIGxlbiA9IHRoaXMuZmlsdGVyZWRJdGVtcy5sZW5ndGg7IGluZGV4IDwgbGVuOyArK2luZGV4KSB7XG4gICAgICAgIHZhciBpdGVtID0gdGhpcy5maWx0ZXJlZEl0ZW1zW2luZGV4XTtcbiAgICAgICAgdmFyIHByb3BzID0gdGhpcy5jcmVhdGVQcm9wcyhpdGVtLCBpbmRleCk7XG4gICAgICAgIHZhciByb3cgPSB0aGlzLiRzY29wZWRTbG90cy5pdGVtcyhwcm9wcyk7XG5cbiAgICAgICAgcm93cy5wdXNoKHRoaXMuaGFzVGFnKHJvdywgJ3RkJykgPyB0aGlzLmdlblRSKHJvdywge1xuICAgICAgICAgIGtleTogaW5kZXgsXG4gICAgICAgICAgYXR0cnM6IHsgYWN0aXZlOiB0aGlzLmlzU2VsZWN0ZWQoaXRlbSkgfVxuICAgICAgICB9KSA6IHJvdyk7XG5cbiAgICAgICAgaWYgKHRoaXMuJHNjb3BlZFNsb3RzLmV4cGFuZCkge1xuICAgICAgICAgIHZhciBleHBhbmRSb3cgPSB0aGlzLmdlbkV4cGFuZGVkUm93KHByb3BzKTtcbiAgICAgICAgICByb3dzLnB1c2goZXhwYW5kUm93KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcm93cztcbiAgICB9LFxuICAgIGdlbkVtcHR5SXRlbXM6IGZ1bmN0aW9uIGdlbkVtcHR5SXRlbXMoY29udGVudCkge1xuICAgICAgaWYgKHRoaXMuaGFzVGFnKGNvbnRlbnQsICd0cicpKSB7XG4gICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmhhc1RhZyhjb250ZW50LCAndGQnKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZW5UUihjb250ZW50KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdlblRSKFt0aGlzLiRjcmVhdGVFbGVtZW50KCd0ZCcsIHtcbiAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgJ3RleHQteHMtY2VudGVyJzogdHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBhdHRyczogeyBjb2xzcGFuOiB0aGlzLmhlYWRlckNvbHVtbnMgfVxuICAgICAgICB9LCBjb250ZW50KV0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5URm9vdDogZnVuY3Rpb24gZ2VuVEZvb3QoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNsb3RzLmZvb3Rlcikge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgdmFyIGZvb3RlciA9IHRoaXMuJHNsb3RzLmZvb3RlcjtcbiAgICAgIHZhciByb3cgPSB0aGlzLmhhc1RhZyhmb290ZXIsICd0ZCcpID8gdGhpcy5nZW5UUihmb290ZXIpIDogZm9vdGVyO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgndGZvb3QnLCBbcm93XSk7XG4gICAgfSxcbiAgICBnZW5BY3Rpb25zRm9vdGVyOiBmdW5jdGlvbiBnZW5BY3Rpb25zRm9vdGVyKCkge1xuICAgICAgaWYgKHRoaXMuaGlkZUFjdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgICAgfSwgdGhpcy5nZW5BY3Rpb25zKCkpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UUHJvZ3Jlc3M6IGZ1bmN0aW9uIGdlblRQcm9ncmVzcygpIHtcbiAgICAgIHZhciBjb2wgPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0aCcsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdjb2x1bW4nLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIGNvbHNwYW46IHRoaXMuaGVhZGVyQ29sdW1uc1xuICAgICAgICB9XG4gICAgICB9LCBbdGhpcy5nZW5Qcm9ncmVzcygpXSk7XG5cbiAgICAgIHJldHVybiB0aGlzLmdlblRSKFtjb2xdLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnZGF0YXRhYmxlX19wcm9ncmVzcydcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc21hbGxfZGlhbG9nX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTczKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NtYWxsX2RpYWxvZ19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NtYWxsX2RpYWxvZ19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3JldHVybmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkJ0bl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WTWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMCk7XG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWVkaXQtZGlhbG9nJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZXR1cm5hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZSxcbiAgICAgIGlzU2F2aW5nOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGNhbmNlbFRleHQ6IHtcbiAgICAgIGRlZmF1bHQ6ICdDYW5jZWwnXG4gICAgfSxcbiAgICBsYXJnZTogQm9vbGVhbixcbiAgICBsYXp5OiBCb29sZWFuLFxuICAgIHBlcnNpc3RlbnQ6IEJvb2xlYW4sXG4gICAgc2F2ZVRleHQ6IHtcbiAgICAgIGRlZmF1bHQ6ICdTYXZlJ1xuICAgIH0sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3NsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uJ1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIHZhbCAmJiBzZXRUaW1lb3V0KHRoaXMuZm9jdXMsIDUwKTsgLy8gR2l2ZSBET00gdGltZSB0byBwYWludFxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2FuY2VsOiBmdW5jdGlvbiBjYW5jZWwoKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoKSB7XG4gICAgICB2YXIgaW5wdXQgPSB0aGlzLiRyZWZzLmNvbnRlbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICAgIGlucHV0ICYmIGlucHV0LmZvY3VzKCk7XG4gICAgfSxcbiAgICBnZW5CdXR0b246IGZ1bmN0aW9uIGdlbkJ1dHRvbihmbiwgdGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgICAgICAgbGlnaHQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHsgY2xpY2s6IGZuIH1cbiAgICAgIH0sIHRleHQpO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdzbWFsbC1kaWFsb2dfX2FjdGlvbnMnXG4gICAgICB9LCBbdGhpcy5nZW5CdXR0b24odGhpcy5jYW5jZWwsIHRoaXMuY2FuY2VsVGV4dCksIHRoaXMuZ2VuQnV0dG9uKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLnNhdmUoX3RoaXMucmV0dXJuVmFsdWUpO1xuICAgICAgfSwgdGhpcy5zYXZlVGV4dCldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAgIHZhciBpbnB1dCA9IF90aGlzMi4kcmVmcy5jb250ZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XG4gICAgICAgICAgICBlLmtleUNvZGUgPT09IDI3ICYmIF90aGlzMi5jYW5jZWwoKTtcbiAgICAgICAgICAgIGUua2V5Q29kZSA9PT0gMTMgJiYgaW5wdXQgJiYgX3RoaXMyLnNhdmUoaW5wdXQudmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAnY29udGVudCdcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5pbnB1dF0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICdjbGFzcyc6ICdzbWFsbC1kaWFsb2cnLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgY29udGVudENsYXNzOiAnc21hbGwtZGlhbG9nX19jb250ZW50JyxcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy50cmFuc2l0aW9uLFxuICAgICAgICBvcmlnaW46ICd0b3AgcmlnaHQnLFxuICAgICAgICByaWdodDogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgIGNsb3NlT25DbGljazogIXRoaXMucGVyc2lzdGVudCxcbiAgICAgICAgY2xvc2VPbkNvbnRlbnRDbGljazogZmFsc2UsXG4gICAgICAgIGxhenk6IHRoaXMubGF6eVxuICAgICAgfSxcbiAgICAgIG9uOiB7XG4gICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCh2YWwpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMzLmlzQWN0aXZlID0gdmFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgW2goJ2EnLCB7XG4gICAgICBzbG90OiAnYWN0aXZhdG9yJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpLCB0aGlzLmdlbkNvbnRlbnQoKSwgdGhpcy5sYXJnZSA/IHRoaXMuZ2VuQWN0aW9ucygpIDogbnVsbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNzMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNzQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0ZVBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGVQaWNrZXJUaXRsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlckhlYWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRGF0ZVBpY2tlckRhdGVUYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlck1vbnRoVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fVkRhdGVQaWNrZXJZZWFyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRGF0ZVBpY2tlciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkRhdGVQaWNrZXJUaXRsZSAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkRhdGVQaWNrZXJIZWFkZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRlUGlja2VyRGF0ZVRhYmxlICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRGF0ZVBpY2tlck1vbnRoVGFibGUgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRlUGlja2VyWWVhcnMgKi9cblxuXG5cblxuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0ZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGVQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlclRpdGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlclRpdGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkRhdGVQaWNrZXJIZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZEYXRlUGlja2VySGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJEYXRlVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZEYXRlUGlja2VyRGF0ZVRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkRhdGVQaWNrZXJNb250aFRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlck1vbnRoVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE3NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyVGl0bGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGVQaWNrZXJIZWFkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkRhdGVQaWNrZXJEYXRlVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJNb250aFRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZEYXRlUGlja2VyWWVhcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3BpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX3V0aWxfaXNEYXRlQWxsb3dlZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2Mik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8vIENvbXBvbmVudHNcblxuXG5cblxuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZGF0ZS1waWNrZXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3BpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgbm93ID0gbmV3IERhdGUoKTtcbiAgICByZXR1cm4ge1xuICAgICAgYWN0aXZlUGlja2VyOiB0aGlzLnR5cGUudG9VcHBlckNhc2UoKSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpbnB1dERheTogbnVsbCxcbiAgICAgIGlucHV0TW9udGg6IG51bGwsXG4gICAgICBpbnB1dFllYXI6IG51bGwsXG4gICAgICBpc1JldmVyc2luZzogZmFsc2UsXG4gICAgICBub3c6IG5vdyxcbiAgICAgIC8vIHRhYmxlRGF0ZSBpcyBhIHN0cmluZyBpbiAnWVlZWScgLyAnWVlZWS1NJyBmb3JtYXQgKGxlYWRpbmcgemVybyBmb3IgbW9udGggaXMgbm90IHJlcXVpcmVkKVxuICAgICAgdGFibGVEYXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpcy5waWNrZXJEYXRlKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLnBpY2tlckRhdGU7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZGF0ZSA9IF90aGlzLnZhbHVlIHx8IG5vdy5nZXRGdWxsWWVhcigpICsgJy0nICsgKG5vdy5nZXRNb250aCgpICsgMSk7XG4gICAgICAgIHZhciB0eXBlID0gX3RoaXMudHlwZSA9PT0gJ2RhdGUnID8gJ21vbnRoJyA6ICd5ZWFyJztcbiAgICAgICAgcmV0dXJuIF90aGlzLnNhbml0aXplRGF0ZVN0cmluZyhkYXRlLCB0eXBlKTtcbiAgICAgIH0oKVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFsbG93ZWREYXRlczogRnVuY3Rpb24sXG4gICAgLy8gRnVuY3Rpb24gZm9ybWF0dGluZyB0aGUgZGF5IGluIGRhdGUgcGlja2VyIHRhYmxlXG4gICAgZGF5Rm9ybWF0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIGV2ZW50czoge1xuICAgICAgdHlwZTogW0FycmF5LCBPYmplY3QsIEZ1bmN0aW9uXSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGV2ZW50Q29sb3I6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIEZ1bmN0aW9uLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogJ3dhcm5pbmcnXG4gICAgfSxcbiAgICBmaXJzdERheU9mV2Vlazoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIC8vIEZ1bmN0aW9uIGZvcm1hdHRpbmcgdGhlIHRhYmxlRGF0ZSBpbiB0aGUgZGF5L21vbnRoIHRhYmxlIGhlYWRlclxuICAgIGhlYWRlckRhdGVGb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBtaW46IFN0cmluZyxcbiAgICAvLyBGdW5jdGlvbiBmb3JtYXR0aW5nIG1vbnRoIGluIHRoZSBtb250aHMgdGFibGVcbiAgICBtb250aEZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBuZXh0SWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2NoZXZyb25fcmlnaHQnXG4gICAgfSxcbiAgICBwaWNrZXJEYXRlOiBTdHJpbmcsXG4gICAgcHJldkljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICByZWFjdGl2ZTogQm9vbGVhbixcbiAgICByZWFkb25seTogQm9vbGVhbixcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHNob3dDdXJyZW50OiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIC8vIEZ1bmN0aW9uIGZvcm1hdHRpbmcgY3VycmVudGx5IHNlbGVjdGVkIGRhdGUgaW4gdGhlIHBpY2tlciB0aXRsZVxuICAgIHRpdGxlRGF0ZUZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZGF0ZScsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih0eXBlKSB7XG4gICAgICAgIHJldHVybiBbJ2RhdGUnLCAnbW9udGgnXS5pbmNsdWRlcyh0eXBlKTtcbiAgICAgIH0gLy8gVE9ETzogeWVhclxuICAgIH0sXG4gICAgdmFsdWU6IFN0cmluZyxcbiAgICAvLyBGdW5jdGlvbiBmb3JtYXR0aW5nIHRoZSB5ZWFyIGluIHRhYmxlIGhlYWRlciBhbmQgcGlja3VwIHRpdGxlXG4gICAgeWVhckZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB5ZWFySWNvbjogU3RyaW5nXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjdXJyZW50OiBmdW5jdGlvbiBjdXJyZW50KCkge1xuICAgICAgaWYgKHRoaXMuc2hvd0N1cnJlbnQgPT09IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubm93LmdldEZ1bGxZZWFyKCkgKyAnLScgKyAodGhpcy5ub3cuZ2V0TW9udGgoKSArIDEpICsgJy0nICsgdGhpcy5ub3cuZ2V0RGF0ZSgpLCB0aGlzLnR5cGUpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5zaG93Q3VycmVudCB8fCBudWxsO1xuICAgIH0sXG4gICAgaW5wdXREYXRlOiBmdW5jdGlvbiBpbnB1dERhdGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy50eXBlID09PSAnZGF0ZScgPyB0aGlzLmlucHV0WWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmlucHV0TW9udGggKyAxKSArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmlucHV0RGF5KSA6IHRoaXMuaW5wdXRZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKHRoaXMuaW5wdXRNb250aCArIDEpO1xuICAgIH0sXG4gICAgdGFibGVNb250aDogZnVuY3Rpb24gdGFibGVNb250aCgpIHtcbiAgICAgIHJldHVybiAodGhpcy5waWNrZXJEYXRlIHx8IHRoaXMudGFibGVEYXRlKS5zcGxpdCgnLScpWzFdIC0gMTtcbiAgICB9LFxuICAgIHRhYmxlWWVhcjogZnVuY3Rpb24gdGFibGVZZWFyKCkge1xuICAgICAgcmV0dXJuICh0aGlzLnBpY2tlckRhdGUgfHwgdGhpcy50YWJsZURhdGUpLnNwbGl0KCctJylbMF0gKiAxO1xuICAgIH0sXG4gICAgbWluTW9udGg6IGZ1bmN0aW9uIG1pbk1vbnRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluID8gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy5taW4sICdtb250aCcpIDogbnVsbDtcbiAgICB9LFxuICAgIG1heE1vbnRoOiBmdW5jdGlvbiBtYXhNb250aCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCA/IHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubWF4LCAnbW9udGgnKSA6IG51bGw7XG4gICAgfSxcbiAgICBtaW5ZZWFyOiBmdW5jdGlvbiBtaW5ZZWFyKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluID8gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy5taW4sICd5ZWFyJykgOiBudWxsO1xuICAgIH0sXG4gICAgbWF4WWVhcjogZnVuY3Rpb24gbWF4WWVhcigpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCA/IHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubWF4LCAneWVhcicpIDogbnVsbDtcbiAgICB9LFxuICAgIGZvcm1hdHRlcnM6IGZ1bmN0aW9uIGZvcm1hdHRlcnMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB5ZWFyOiB0aGlzLnllYXJGb3JtYXQgfHwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiYVwiIC8qIGNyZWF0ZU5hdGl2ZUxvY2FsZUZvcm1hdHRlciAqL10pKHRoaXMubG9jYWxlLCB7IHllYXI6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sIHsgbGVuZ3RoOiA0IH0pLFxuICAgICAgICB0aXRsZURhdGU6IHRoaXMudGl0bGVEYXRlRm9ybWF0IHx8IHRoaXMuZGVmYXVsdFRpdGxlRGF0ZUZvcm1hdHRlclxuICAgICAgfTtcbiAgICB9LFxuICAgIGRlZmF1bHRUaXRsZURhdGVGb3JtYXR0ZXI6IGZ1bmN0aW9uIGRlZmF1bHRUaXRsZURhdGVGb3JtYXR0ZXIoKSB7XG4gICAgICB2YXIgdGl0bGVGb3JtYXRzID0ge1xuICAgICAgICB5ZWFyOiB7IHllYXI6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sXG4gICAgICAgIG1vbnRoOiB7IG1vbnRoOiAnbG9uZycsIHRpbWVab25lOiAnVVRDJyB9LFxuICAgICAgICBkYXRlOiB7IHdlZWtkYXk6ICdzaG9ydCcsIG1vbnRoOiAnc2hvcnQnLCBkYXk6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH1cbiAgICAgIH07XG5cbiAgICAgIHZhciB0aXRsZURhdGVGb3JtYXR0ZXIgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHRpdGxlRm9ybWF0c1t0aGlzLnR5cGVdLCB7XG4gICAgICAgIHN0YXJ0OiAwLFxuICAgICAgICBsZW5ndGg6IHsgZGF0ZTogMTAsIG1vbnRoOiA3LCB5ZWFyOiA0IH1bdGhpcy50eXBlXVxuICAgICAgfSk7XG5cbiAgICAgIHZhciBsYW5kc2NhcGVGb3JtYXR0ZXIgPSBmdW5jdGlvbiBsYW5kc2NhcGVGb3JtYXR0ZXIoZGF0ZSkge1xuICAgICAgICByZXR1cm4gdGl0bGVEYXRlRm9ybWF0dGVyKGRhdGUpLnJlcGxhY2UoLyhbXlxcZFxcc10pKFtcXGRdKS9nLCBmdW5jdGlvbiAobWF0Y2gsIG5vbkRpZ2l0LCBkaWdpdCkge1xuICAgICAgICAgIHJldHVybiBub25EaWdpdCArICcgJyArIGRpZ2l0O1xuICAgICAgICB9KS5yZXBsYWNlKCcsICcsICcsPGJyPicpO1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMubGFuZHNjYXBlID8gbGFuZHNjYXBlRm9ybWF0dGVyIDogdGl0bGVEYXRlRm9ybWF0dGVyO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIHRhYmxlRGF0ZTogZnVuY3Rpb24gdGFibGVEYXRlKHZhbCwgcHJldikge1xuICAgICAgLy8gTWFrZSBhIElTTyA4NjAxIHN0cmluZ3MgZnJvbSB2YWwgYW5kIHByZXYgZm9yIGNvbXBhcmlzaW9uLCBvdGhlcndpc2UgaXQgd2lsbCBpbmNvcnJlY3RseVxuICAgICAgLy8gY29tcGFyZSBmb3IgZXhhbXBsZSAnMjAwMC05JyBhbmQgJzIwMDAtMTAnXG4gICAgICB2YXIgc2FuaXRpemVUeXBlID0gdGhpcy50eXBlID09PSAnbW9udGgnID8gJ3llYXInIDogJ21vbnRoJztcbiAgICAgIHRoaXMuaXNSZXZlcnNpbmcgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh2YWwsIHNhbml0aXplVHlwZSkgPCB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyhwcmV2LCBzYW5pdGl6ZVR5cGUpO1xuICAgICAgdGhpcy4kZW1pdCgndXBkYXRlOnBpY2tlckRhdGUnLCB2YWwpO1xuICAgIH0sXG4gICAgcGlja2VyRGF0ZTogZnVuY3Rpb24gcGlja2VyRGF0ZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB2YWw7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLnZhbHVlLCAnbW9udGgnKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLnZhbHVlLCAneWVhcicpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgdGhpcy5zZXRJbnB1dERhdGUoKTtcbiAgICAgIGlmICh0aGlzLnZhbHVlICYmICF0aGlzLnBpY2tlckRhdGUpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLmlucHV0RGF0ZSwgdGhpcy50eXBlID09PSAnbW9udGgnID8gJ3llYXInIDogJ21vbnRoJyk7XG4gICAgICB9XG4gICAgfSxcbiAgICB0eXBlOiBmdW5jdGlvbiB0eXBlKF90eXBlKSB7XG4gICAgICB0aGlzLmFjdGl2ZVBpY2tlciA9IF90eXBlLnRvVXBwZXJDYXNlKCk7XG5cbiAgICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICAgIHZhciBkYXRlID0gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy52YWx1ZSwgX3R5cGUpO1xuICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuaXNEYXRlQWxsb3dlZChkYXRlKSA/IGRhdGUgOiBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGlzRGF0ZUFsbG93ZWQ6IGZ1bmN0aW9uIGlzRGF0ZUFsbG93ZWQodmFsdWUpIHtcbiAgICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2lzRGF0ZUFsbG93ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSkodmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCwgdGhpcy5hbGxvd2VkRGF0ZXMpO1xuICAgIH0sXG4gICAgeWVhckNsaWNrOiBmdW5jdGlvbiB5ZWFyQ2xpY2sodmFsdWUpIHtcbiAgICAgIHRoaXMuaW5wdXRZZWFyID0gdmFsdWU7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAnbW9udGgnKSB7XG4gICAgICAgIHRoaXMudGFibGVEYXRlID0gJycgKyB2YWx1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudGFibGVEYXRlID0gdmFsdWUgKyAnLScgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX19bXCJjXCIgLyogcGFkICovXSkodGhpcy50YWJsZU1vbnRoICsgMSk7XG4gICAgICB9XG4gICAgICB0aGlzLmFjdGl2ZVBpY2tlciA9ICdNT05USCc7XG4gICAgICB0aGlzLnJlYWN0aXZlICYmIHRoaXMuaXNEYXRlQWxsb3dlZCh0aGlzLmlucHV0RGF0ZSkgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmlucHV0RGF0ZSk7XG4gICAgfSxcbiAgICBtb250aENsaWNrOiBmdW5jdGlvbiBtb250aENsaWNrKHZhbHVlKSB7XG4gICAgICB0aGlzLmlucHV0WWVhciA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMF0sIDEwKTtcbiAgICAgIHRoaXMuaW5wdXRNb250aCA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMV0sIDEwKSAtIDE7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5hY3RpdmVQaWNrZXIgPSAnREFURSc7XG4gICAgICAgIHRoaXMucmVhY3RpdmUgJiYgdGhpcy5pc0RhdGVBbGxvd2VkKHRoaXMuaW5wdXREYXRlKSAmJiB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuaW5wdXREYXRlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dERhdGUpO1xuICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLmlucHV0RGF0ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBkYXRlQ2xpY2s6IGZ1bmN0aW9uIGRhdGVDbGljayh2YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dFllYXIgPSBwYXJzZUludCh2YWx1ZS5zcGxpdCgnLScpWzBdLCAxMCk7XG4gICAgICB0aGlzLmlucHV0TW9udGggPSBwYXJzZUludCh2YWx1ZS5zcGxpdCgnLScpWzFdLCAxMCkgLSAxO1xuICAgICAgdGhpcy5pbnB1dERheSA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMl0sIDEwKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dERhdGUpO1xuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5pbnB1dERhdGUpO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGF0ZTogdGhpcy52YWx1ZSA/IHRoaXMuZm9ybWF0dGVycy50aXRsZURhdGUodGhpcy52YWx1ZSkgOiAnJyxcbiAgICAgICAgICBzZWxlY3RpbmdZZWFyOiB0aGlzLmFjdGl2ZVBpY2tlciA9PT0gJ1lFQVInLFxuICAgICAgICAgIHllYXI6IHRoaXMuZm9ybWF0dGVycy55ZWFyKCcnICsgdGhpcy5pbnB1dFllYXIpLFxuICAgICAgICAgIHllYXJJY29uOiB0aGlzLnllYXJJY29uLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlXG4gICAgICAgIH0sXG4gICAgICAgIHNsb3Q6ICd0aXRsZScsXG4gICAgICAgIHN0eWxlOiB0aGlzLnJlYWRvbmx5ID8ge1xuICAgICAgICAgICdwb2ludGVyLWV2ZW50cyc6ICdub25lJ1xuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBvbjoge1xuICAgICAgICAgICd1cGRhdGU6c2VsZWN0aW5nWWVhcic6IGZ1bmN0aW9uIHVwZGF0ZVNlbGVjdGluZ1llYXIodmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczIuYWN0aXZlUGlja2VyID0gdmFsdWUgPyAnWUVBUicgOiBfdGhpczIudHlwZS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5UYWJsZUhlYWRlcjogZnVuY3Rpb24gZ2VuVGFibGVIZWFkZXIoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlckhlYWRlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmV4dEljb246IHRoaXMubmV4dEljb24sXG4gICAgICAgICAgY29sb3I6IHRoaXMuY29sb3IsXG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgZm9ybWF0OiB0aGlzLmhlYWRlckRhdGVGb3JtYXQsXG4gICAgICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgICAgICBtaW46IHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLm1pbk1vbnRoIDogdGhpcy5taW5ZZWFyLFxuICAgICAgICAgIG1heDogdGhpcy5hY3RpdmVQaWNrZXIgPT09ICdEQVRFJyA/IHRoaXMubWF4TW9udGggOiB0aGlzLm1heFllYXIsXG4gICAgICAgICAgcHJldkljb246IHRoaXMucHJldkljb24sXG4gICAgICAgICAgdmFsdWU6IHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLnRhYmxlWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLnRhYmxlTW9udGggKyAxKSA6ICcnICsgdGhpcy50YWJsZVllYXJcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSgpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczMuYWN0aXZlUGlja2VyID0gX3RoaXMzLmFjdGl2ZVBpY2tlciA9PT0gJ0RBVEUnID8gJ01PTlRIJyA6ICdZRUFSJztcbiAgICAgICAgICB9LFxuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMy50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuRGF0ZVRhYmxlOiBmdW5jdGlvbiBnZW5EYXRlVGFibGUoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlckRhdGVUYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYWxsb3dlZERhdGVzOiB0aGlzLmFsbG93ZWREYXRlcyxcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBjdXJyZW50OiB0aGlzLmN1cnJlbnQsXG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgZXZlbnRzOiB0aGlzLmV2ZW50cyxcbiAgICAgICAgICBldmVudENvbG9yOiB0aGlzLmV2ZW50Q29sb3IsXG4gICAgICAgICAgZmlyc3REYXlPZldlZWs6IHRoaXMuZmlyc3REYXlPZldlZWssXG4gICAgICAgICAgZm9ybWF0OiB0aGlzLmRheUZvcm1hdCxcbiAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgIG1pbjogdGhpcy5taW4sXG4gICAgICAgICAgbWF4OiB0aGlzLm1heCxcbiAgICAgICAgICB0YWJsZURhdGU6IHRoaXMudGFibGVZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKHRoaXMudGFibGVNb250aCArIDEpLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICd0YWJsZScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMuZGF0ZUNsaWNrLFxuICAgICAgICAgIHRhYmxlRGF0ZTogZnVuY3Rpb24gdGFibGVEYXRlKHZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXM0LnRhYmxlRGF0ZSA9IHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5Nb250aFRhYmxlOiBmdW5jdGlvbiBnZW5Nb250aFRhYmxlKCkge1xuICAgICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJNb250aFRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhbGxvd2VkRGF0ZXM6IHRoaXMudHlwZSA9PT0gJ21vbnRoJyA/IHRoaXMuYWxsb3dlZERhdGVzIDogbnVsbCxcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBjdXJyZW50OiB0aGlzLmN1cnJlbnQgPyB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLmN1cnJlbnQsICdtb250aCcpIDogbnVsbCxcbiAgICAgICAgICBkaXNhYmxlZDogdGhpcy5yZWFkb25seSxcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMubW9udGhGb3JtYXQsXG4gICAgICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgICAgICBtaW46IHRoaXMubWluTW9udGgsXG4gICAgICAgICAgbWF4OiB0aGlzLm1heE1vbnRoLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICB2YWx1ZTogIXRoaXMudmFsdWUgfHwgdGhpcy50eXBlID09PSAnbW9udGgnID8gdGhpcy52YWx1ZSA6IHRoaXMudmFsdWUuc3Vic3RyKDAsIDcpLFxuICAgICAgICAgIHRhYmxlRGF0ZTogJycgKyB0aGlzLnRhYmxlWWVhclxuICAgICAgICB9LFxuICAgICAgICByZWY6ICd0YWJsZScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMubW9udGhDbGljayxcbiAgICAgICAgICB0YWJsZURhdGU6IGZ1bmN0aW9uIHRhYmxlRGF0ZSh2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzNS50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuWWVhcnM6IGZ1bmN0aW9uIGdlblllYXJzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMueWVhckZvcm1hdCxcbiAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgIG1pbjogdGhpcy5taW5ZZWFyLFxuICAgICAgICAgIG1heDogdGhpcy5tYXhZZWFyLFxuICAgICAgICAgIHZhbHVlOiAnJyArIHRoaXMudGFibGVZZWFyXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMueWVhckNsaWNrXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IHRoaXMuYWN0aXZlUGlja2VyID09PSAnWUVBUicgPyBbdGhpcy5nZW5ZZWFycygpXSA6IFt0aGlzLmdlblRhYmxlSGVhZGVyKCksIHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLmdlbkRhdGVUYWJsZSgpIDogdGhpcy5nZW5Nb250aFRhYmxlKCldO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBrZXk6IHRoaXMuYWN0aXZlUGlja2VyLFxuICAgICAgICBzdHlsZTogdGhpcy5yZWFkb25seSA/IHtcbiAgICAgICAgICAncG9pbnRlci1ldmVudHMnOiAnbm9uZSdcbiAgICAgICAgfSA6IHVuZGVmaW5lZFxuICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH0sXG5cbiAgICAvLyBBZGRzIGxlYWRpbmcgemVybyB0byBtb250aC9kYXkgaWYgbmVjZXNzYXJ5LCByZXR1cm5zICdZWVlZJyBpZiB0eXBlID0gJ3llYXInLFxuICAgIC8vICdZWVlZLU1NJyBpZiAnbW9udGgnIGFuZCAnWVlZWS1NTS1ERCcgaWYgJ2RhdGUnXG4gICAgc2FuaXRpemVEYXRlU3RyaW5nOiBmdW5jdGlvbiBzYW5pdGl6ZURhdGVTdHJpbmcoZGF0ZVN0cmluZywgdHlwZSkge1xuICAgICAgdmFyIF9kYXRlU3RyaW5nJHNwbGl0ID0gZGF0ZVN0cmluZy5zcGxpdCgnLScpLFxuICAgICAgICAgIF9kYXRlU3RyaW5nJHNwbGl0MiA9IF9zbGljZWRUb0FycmF5KF9kYXRlU3RyaW5nJHNwbGl0LCAzKSxcbiAgICAgICAgICB5ZWFyID0gX2RhdGVTdHJpbmckc3BsaXQyWzBdLFxuICAgICAgICAgIF9kYXRlU3RyaW5nJHNwbGl0MiQgPSBfZGF0ZVN0cmluZyRzcGxpdDJbMV0sXG4gICAgICAgICAgbW9udGggPSBfZGF0ZVN0cmluZyRzcGxpdDIkID09PSB1bmRlZmluZWQgPyAxIDogX2RhdGVTdHJpbmckc3BsaXQyJCxcbiAgICAgICAgICBfZGF0ZVN0cmluZyRzcGxpdDIkMiA9IF9kYXRlU3RyaW5nJHNwbGl0MlsyXSxcbiAgICAgICAgICBkYXRlID0gX2RhdGVTdHJpbmckc3BsaXQyJDIgPT09IHVuZGVmaW5lZCA/IDEgOiBfZGF0ZVN0cmluZyRzcGxpdDIkMjtcblxuICAgICAgcmV0dXJuICh5ZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKG1vbnRoKSArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKShkYXRlKSkuc3Vic3RyKDAsIHsgZGF0ZTogMTAsIG1vbnRoOiA3LCB5ZWFyOiA0IH1bdHlwZV0pO1xuICAgIH0sXG4gICAgc2V0SW5wdXREYXRlOiBmdW5jdGlvbiBzZXRJbnB1dERhdGUoKSB7XG4gICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICB2YXIgYXJyYXkgPSB0aGlzLnZhbHVlLnNwbGl0KCctJyk7XG4gICAgICAgIHRoaXMuaW5wdXRZZWFyID0gcGFyc2VJbnQoYXJyYXlbMF0sIDEwKTtcbiAgICAgICAgdGhpcy5pbnB1dE1vbnRoID0gcGFyc2VJbnQoYXJyYXlbMV0sIDEwKSAtIDE7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgICAgIHRoaXMuaW5wdXREYXkgPSBwYXJzZUludChhcnJheVsyXSwgMTApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlucHV0WWVhciA9IHRoaXMuaW5wdXRZZWFyIHx8IHRoaXMubm93LmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMuaW5wdXRNb250aCA9IHRoaXMuaW5wdXRNb250aCA9PSBudWxsID8gdGhpcy5pbnB1dE1vbnRoIDogdGhpcy5ub3cuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5pbnB1dERheSA9IHRoaXMuaW5wdXREYXkgfHwgdGhpcy5ub3cuZ2V0RGF0ZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgIGlmICh0aGlzLnBpY2tlckRhdGUgIT09IHRoaXMudGFibGVEYXRlKSB7XG4gICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6cGlja2VyRGF0ZScsIHRoaXMudGFibGVEYXRlKTtcbiAgICB9XG4gICAgdGhpcy5zZXRJbnB1dERhdGUoKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblBpY2tlcigncGlja2VyLS1kYXRlJyk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE3NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE3NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE3OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZ1bmN0aW9uIChsb2NhbGUsIG9wdGlvbnMpIHtcbiAgdmFyIF9yZWYgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6IHsgc3RhcnQ6IDAsIGxlbmd0aDogMCB9LFxuICAgICAgc3RhcnQgPSBfcmVmLnN0YXJ0LFxuICAgICAgbGVuZ3RoID0gX3JlZi5sZW5ndGg7XG5cbiAgdmFyIG1ha2VJc29TdHJpbmcgPSBmdW5jdGlvbiBtYWtlSXNvU3RyaW5nKGRhdGVTdHJpbmcpIHtcbiAgICB2YXIgX2RhdGVTdHJpbmckdHJpbSRzcGxpID0gZGF0ZVN0cmluZy50cmltKCkuc3BsaXQoJyAnKVswXS5zcGxpdCgnLScpLFxuICAgICAgICBfZGF0ZVN0cmluZyR0cmltJHNwbGkyID0gX3NsaWNlZFRvQXJyYXkoX2RhdGVTdHJpbmckdHJpbSRzcGxpLCAzKSxcbiAgICAgICAgeWVhciA9IF9kYXRlU3RyaW5nJHRyaW0kc3BsaTJbMF0sXG4gICAgICAgIG1vbnRoID0gX2RhdGVTdHJpbmckdHJpbSRzcGxpMlsxXSxcbiAgICAgICAgZGF0ZSA9IF9kYXRlU3RyaW5nJHRyaW0kc3BsaTJbMl07XG5cbiAgICByZXR1cm4gW3llYXIsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShtb250aCB8fCAxKSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcGFkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKGRhdGUgfHwgMSldLmpvaW4oJy0nKTtcbiAgfTtcblxuICB0cnkge1xuICAgIHZhciBpbnRsRm9ybWF0dGVyID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQobG9jYWxlIHx8IHVuZGVmaW5lZCwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChkYXRlU3RyaW5nKSB7XG4gICAgICByZXR1cm4gaW50bEZvcm1hdHRlci5mb3JtYXQobmV3IERhdGUobWFrZUlzb1N0cmluZyhkYXRlU3RyaW5nKSArICdUMDA6MDA6MDArMDA6MDAnKSk7XG4gICAgfTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBzdGFydCB8fCBsZW5ndGggPyBmdW5jdGlvbiAoZGF0ZVN0cmluZykge1xuICAgICAgcmV0dXJuIG1ha2VJc29TdHJpbmcoZGF0ZVN0cmluZykuc3Vic3RyKHN0YXJ0LCBsZW5ndGgpO1xuICAgIH0gOiBudWxsO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNzkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19wYWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIpO1xudmFyIF9zbGljZWRUb0FycmF5ID0gZnVuY3Rpb24gKCkgeyBmdW5jdGlvbiBzbGljZUl0ZXJhdG9yKGFyciwgaSkgeyB2YXIgX2FyciA9IFtdOyB2YXIgX24gPSB0cnVlOyB2YXIgX2QgPSBmYWxzZTsgdmFyIF9lID0gdW5kZWZpbmVkOyB0cnkgeyBmb3IgKHZhciBfaSA9IGFycltTeW1ib2wuaXRlcmF0b3JdKCksIF9zOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7IF9hcnIucHVzaChfcy52YWx1ZSk7IGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsgfSB9IGNhdGNoIChlcnIpIHsgX2QgPSB0cnVlOyBfZSA9IGVycjsgfSBmaW5hbGx5IHsgdHJ5IHsgaWYgKCFfbiAmJiBfaVtcInJldHVyblwiXSkgX2lbXCJyZXR1cm5cIl0oKTsgfSBmaW5hbGx5IHsgaWYgKF9kKSB0aHJvdyBfZTsgfSB9IHJldHVybiBfYXJyOyB9IHJldHVybiBmdW5jdGlvbiAoYXJyLCBpKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgcmV0dXJuIGFycjsgfSBlbHNlIGlmIChTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGFycikpIHsgcmV0dXJuIHNsaWNlSXRlcmF0b3IoYXJyLCBpKTsgfSBlbHNlIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2VcIik7IH0gfTsgfSgpO1xuXG5cblxuLyoqXG4gKiBAcGFyYW0ge1N0cmluZ30gdmFsdWUgWVlZWS1NTSBmb3JtYXRcbiAqIEBwYXJhbSB7TnVtYmVyfSBzaWduIC0xIG9yICsxXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoZnVuY3Rpb24gKHZhbHVlLCBzaWduKSB7XG4gIHZhciBfdmFsdWUkc3BsaXQkbWFwID0gdmFsdWUuc3BsaXQoJy0nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICByZXR1cm4gMSAqIHY7XG4gIH0pLFxuICAgICAgX3ZhbHVlJHNwbGl0JG1hcDIgPSBfc2xpY2VkVG9BcnJheShfdmFsdWUkc3BsaXQkbWFwLCAyKSxcbiAgICAgIHllYXIgPSBfdmFsdWUkc3BsaXQkbWFwMlswXSxcbiAgICAgIG1vbnRoID0gX3ZhbHVlJHNwbGl0JG1hcDJbMV07XG5cbiAgaWYgKG1vbnRoICsgc2lnbiA9PT0gMCkge1xuICAgIHJldHVybiB5ZWFyIC0gMSArICctMTInO1xuICB9IGVsc2UgaWYgKG1vbnRoICsgc2lnbiA9PT0gMTMpIHtcbiAgICByZXR1cm4geWVhciArIDEgKyAnLTAxJztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4geWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShtb250aCArIHNpZ24pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxODAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19waWNrZXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BpY2tlcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19waWNrZXJzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcGlja2VyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgZnVsbFdpZHRoOiBCb29sZWFuLFxuICAgIGxhbmRzY2FwZTogQm9vbGVhbixcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZmFkZS10cmFuc2l0aW9uJ1xuICAgIH0sXG4gICAgd2lkdGg6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyOTAsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2YWx1ZSkge1xuICAgICAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKSA+IDA7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRUaXRsZUNvbG9yOiBmdW5jdGlvbiBjb21wdXRlZFRpdGxlQ29sb3IoKSB7XG4gICAgICB2YXIgZGFya1RoZW1lID0gdGhpcy5kYXJrIHx8ICF0aGlzLmxpZ2h0ICYmIHRoaXMuJHZ1ZXRpZnkuZGFyaztcbiAgICAgIHZhciBkZWZhdWx0VGl0bGVDb2xvciA9IGRhcmtUaGVtZSA/IG51bGwgOiB0aGlzLmNvbXB1dGVkQ29sb3I7XG4gICAgICByZXR1cm4gdGhpcy5jb2xvciB8fCBkZWZhdWx0VGl0bGVDb2xvcjtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblRpdGxlOiBmdW5jdGlvbiBnZW5UaXRsZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGlja2VyX190aXRsZScsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe1xuICAgICAgICAgICdwaWNrZXJfX3RpdGxlLS1sYW5kc2NhcGUnOiB0aGlzLmxhbmRzY2FwZVxuICAgICAgICB9LCB0aGlzLmNvbXB1dGVkVGl0bGVDb2xvcilcbiAgICAgIH0sIHRoaXMuJHNsb3RzLnRpdGxlKTtcbiAgICB9LFxuICAgIGdlbkJvZHlUcmFuc2l0aW9uOiBmdW5jdGlvbiBnZW5Cb2R5VHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIG5hbWU6IHRoaXMudHJhbnNpdGlvblxuICAgICAgICB9XG4gICAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgICB9LFxuICAgIGdlbkJvZHk6IGZ1bmN0aW9uIGdlbkJvZHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3BpY2tlcl9fYm9keScsXG4gICAgICAgIHN0eWxlOiB0aGlzLmZ1bGxXaWR0aCA/IHVuZGVmaW5lZCA6IHtcbiAgICAgICAgICB3aWR0aDogdGhpcy53aWR0aCArICdweCdcbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuZ2VuQm9keVRyYW5zaXRpb24oKV0pO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGlja2VyX19hY3Rpb25zIGNhcmRfX2FjdGlvbnMnXG4gICAgICB9LCB0aGlzLiRzbG90cy5hY3Rpb25zKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwaWNrZXInLFxuICAgICAgJ2NsYXNzJzogX2V4dGVuZHMoe1xuICAgICAgICAncGlja2VyLS1sYW5kc2NhcGUnOiB0aGlzLmxhbmRzY2FwZVxuICAgICAgfSwgdGhpcy50aGVtZUNsYXNzZXMpXG4gICAgfSwgW3RoaXMuJHNsb3RzLnRpdGxlID8gdGhpcy5nZW5UaXRsZSgpIDogbnVsbCwgdGhpcy5nZW5Cb2R5KCksIHRoaXMuJHNsb3RzLmFjdGlvbnMgPyB0aGlzLmdlbkFjdGlvbnMoKSA6IG51bGxdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTgzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTg0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE4NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZFeHBhbnNpb25QYW5lbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkV4cGFuc2lvblBhbmVsQ29udGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODgpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkV4cGFuc2lvblBhbmVsICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRXhwYW5zaW9uUGFuZWxDb250ZW50ICovXG5cblxuXG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRXhwYW5zaW9uUGFuZWxfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZFeHBhbnNpb25QYW5lbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZFeHBhbnNpb25QYW5lbENvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZFeHBhbnNpb25QYW5lbENvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE4NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2V4cGFuc2lvbl9wYW5lbF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19leHBhbnNpb25fcGFuZWxfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19leHBhbnNpb25fcGFuZWxfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWV4cGFuc2lvbi1wYW5lbCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgnZXhwYW5zaW9uUGFuZWwnKV0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGFuZWxDbGljazogdGhpcy5wYW5lbENsaWNrLFxuICAgICAgZm9jdXNhYmxlOiB0aGlzLmZvY3VzYWJsZVxuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGl0ZW1zOiBbXVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGV4cGFuZDogQm9vbGVhbixcbiAgICBmb2N1c2FibGU6IEJvb2xlYW4sXG4gICAgaW5zZXQ6IEJvb2xlYW4sXG4gICAgcG9wb3V0OiBCb29sZWFuXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHBhbmVsQ2xpY2s6IGZ1bmN0aW9uIHBhbmVsQ2xpY2sodWlkKSB7XG4gICAgICBpZiAoIXRoaXMuZXhwYW5kKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIHRoaXMuaXRlbXNbaV0udG9nZ2xlKHVpZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgdGhpcy5pdGVtcy5sZW5ndGg7IF9pKyspIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXNbX2ldLnVpZCA9PT0gdWlkKSB7XG4gICAgICAgICAgdGhpcy5pdGVtc1tfaV0udG9nZ2xlKHVpZCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCB0b2dnbGUpIHtcbiAgICAgIHRoaXMuaXRlbXMucHVzaCh7IHVpZDogdWlkLCB0b2dnbGU6IHRvZ2dsZSB9KTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodWlkKSB7XG4gICAgICB0aGlzLml0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIGkudWlkICE9PSB1aWQ7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCd1bCcsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZXhwYW5zaW9uLXBhbmVsJyxcbiAgICAgICdjbGFzcyc6IF9leHRlbmRzKHtcbiAgICAgICAgJ2V4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlJzogdGhpcy5mb2N1c2FibGUsXG4gICAgICAgICdleHBhbnNpb24tcGFuZWwtLXBvcG91dCc6IHRoaXMucG9wb3V0LFxuICAgICAgICAnZXhwYW5zaW9uLXBhbmVsLS1pbnNldCc6IHRoaXMuaW5zZXRcbiAgICAgIH0sIHRoaXMudGhlbWVDbGFzc2VzKVxuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxODcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19ib290YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19yaXBwbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1leHBhbnNpb24tcGFuZWwtY29udGVudCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19yaXBwbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCdleHBhbnNpb25QYW5lbCcsICd2LWV4cGFuc2lvbi1wYW5lbCcsICd2LWV4cGFuc2lvbi1wYW5lbC1jb250ZW50JyldLFxuXG4gIGRpcmVjdGl2ZXM6IHtcbiAgICBDbGlja091dHNpZGU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBpbmplY3Q6IFsnZm9jdXNhYmxlJywgJ3BhbmVsQ2xpY2snXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWlnaHQ6ICdhdXRvJ1xuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGV4cGFuZEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdrZXlib2FyZF9hcnJvd19kb3duJ1xuICAgIH0sXG4gICAgaGlkZUFjdGlvbnM6IEJvb2xlYW4sXG4gICAgcmlwcGxlOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Cb2R5OiBmdW5jdGlvbiBnZW5Cb2R5KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgcmVmOiAnYm9keScsXG4gICAgICAgIGNsYXNzOiAnZXhwYW5zaW9uLXBhbmVsX19ib2R5JyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfV1cbiAgICAgIH0sIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcbiAgICB9LFxuICAgIGdlbkhlYWRlcjogZnVuY3Rpb24gZ2VuSGVhZGVyKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdleHBhbnNpb24tcGFuZWxfX2hlYWRlcicsXG4gICAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgICAgbmFtZTogJ3JpcHBsZScsXG4gICAgICAgICAgdmFsdWU6IHRoaXMucmlwcGxlXG4gICAgICAgIH1dLFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy5wYW5lbENsaWNrKF90aGlzLl91aWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmhlYWRlciwgdGhpcy5nZW5JY29uKCldKTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaCkge1xuICAgICAgaWYgKHRoaXMuaGlkZUFjdGlvbnMpIHJldHVybiBudWxsO1xuXG4gICAgICB2YXIgaWNvbiA9IHRoaXMuJHNsb3RzLmFjdGlvbnMgfHwgdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHRoaXMuZXhwYW5kSWNvbik7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaGVhZGVyX19pY29uJ1xuICAgICAgfSwgW2ljb25dKTtcbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHVpZCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBpc0FjdGl2ZSA9IHRoaXMuX3VpZCA9PT0gdWlkICYmICF0aGlzLmlzQWN0aXZlO1xuXG4gICAgICBpZiAoaXNBY3RpdmUpIHRoaXMuaXNCb290ZWQgPSB0cnVlO1xuXG4gICAgICAvLyBXZSB0cmVhdCBib290YWJsZSBkaWZmZXJlbnRseVxuICAgICAgLy8gTmVlZHMgdGltZSB0byBjYWxjIGhlaWdodFxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzQWN0aXZlID0gaXNBY3RpdmU7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmV4cGFuc2lvblBhbmVsLnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy50b2dnbGUpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMuZXhwYW5zaW9uUGFuZWwudW5yZWdpc3Rlcih0aGlzLl91aWQpO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIHRoaXMuJHNsb3RzLmhlYWRlciAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuSGVhZGVyKCkpO1xuICAgIGNoaWxkcmVuLnB1c2goaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJhXCIgLyogVkV4cGFuZFRyYW5zaXRpb24gKi9dLCBbdGhpcy5nZW5Cb2R5KCldKSk7XG5cbiAgICByZXR1cm4gaCgnbGknLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2V4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyJyxcbiAgICAgICdjbGFzcyc6IHtcbiAgICAgICAgJ2V4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLS1hY3RpdmUnOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9LFxuICAgICAgYXR0cnM6IHtcbiAgICAgICAgdGFiaW5kZXg6IDBcbiAgICAgIH0sXG4gICAgICBvbjoge1xuICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAvLyBFbnN1cmUgZWxlbWVudCBpcyBmb2N1c2FibGUgYW5kIHRoZSBhY3RpdmVFbGVtZW50XG4gICAgICAgICAgaWYgKF90aGlzMy5mb2N1c2FibGUgJiYgX3RoaXMzLiRlbCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiBlLmtleUNvZGUgPT09IDEzKSBfdGhpczMucGFuZWxDbGljayhfdGhpczMuX3VpZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE4OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb290ZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkwKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb290ZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTkwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZm9vdGVyX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Zvb3Rlcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Zvb3Rlcl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8vIFN0eWxlc1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZm9vdGVyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdmb290ZXInLCBbJ2hlaWdodCddKSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGhlaWdodDoge1xuICAgICAgZGVmYXVsdDogMzIsXG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddXG4gICAgfSxcbiAgICBpbnNldDogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRNYXJnaW5Cb3R0b206IGZ1bmN0aW9uIGNvbXB1dGVkTWFyZ2luQm90dG9tKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuO1xuXG4gICAgICByZXR1cm4gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5ib3R0b207XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdMZWZ0OiBmdW5jdGlvbiBjb21wdXRlZFBhZGRpbmdMZWZ0KCkge1xuICAgICAgcmV0dXJuICF0aGlzLmFwcCB8fCAhdGhpcy5pbnNldCA/IDAgOiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmxlZnQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdSaWdodDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nUmlnaHQoKSB7XG4gICAgICByZXR1cm4gIXRoaXMuYXBwID8gMCA6IHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQ7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7XG4gICAgICAgIGhlaWdodDogaXNOYU4odGhpcy5oZWlnaHQpID8gdGhpcy5oZWlnaHQgOiB0aGlzLmhlaWdodCArICdweCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmNvbXB1dGVkUGFkZGluZ0xlZnQpIHtcbiAgICAgICAgc3R5bGVzLnBhZGRpbmdMZWZ0ID0gdGhpcy5jb21wdXRlZFBhZGRpbmdMZWZ0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQpIHtcbiAgICAgICAgc3R5bGVzLnBhZGRpbmdSaWdodCA9IHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQgKyAncHgnO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jb21wdXRlZE1hcmdpbkJvdHRvbSkge1xuICAgICAgICBzdHlsZXMubWFyZ2luQm90dG9tID0gdGhpcy5jb21wdXRlZE1hcmdpbkJvdHRvbSArICdweCc7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdHlsZXM7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIGFwcGxpY2F0aW9uIGxheW91dFxuICAgICAqXG4gICAgICogQHJldHVybiB7bnVtYmVyfVxuICAgICAqL1xuICAgIHVwZGF0ZUFwcGxpY2F0aW9uOiBmdW5jdGlvbiB1cGRhdGVBcHBsaWNhdGlvbigpIHtcbiAgICAgIHJldHVybiBpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLiRlbCA/IHRoaXMuJGVsLmNsaWVudEhlaWdodCA6IDAgOiB0aGlzLmhlaWdodDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICdmb290ZXInLFxuICAgICAgJ2NsYXNzJzogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICdmb290ZXItLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ2Zvb3Rlci0tZml4ZWQnOiAhdGhpcy5hYnNvbHV0ZSAmJiAodGhpcy5hcHAgfHwgdGhpcy5maXhlZCksXG4gICAgICAgICdmb290ZXItLWluc2V0JzogdGhpcy5pbnNldCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfSksXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICByZWY6ICdjb250ZW50J1xuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZm9vdGVyJywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE5MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE5MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb3JtX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5Myk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkZvcm1fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb3JtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9ybV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9ybV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxOTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZm9ybScsXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpbnB1dHM6IFtdLFxuICAgICAgZXJyb3JCYWc6IHt9XG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgdmFsdWU6IEJvb2xlYW4sXG4gICAgbGF6eVZhbGlkYXRpb246IEJvb2xlYW5cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGVycm9yQmFnOiB7XG4gICAgICBoYW5kbGVyOiBmdW5jdGlvbiBoYW5kbGVyKCkge1xuICAgICAgICB2YXIgZXJyb3JzID0gT2JqZWN0LnZhbHVlcyh0aGlzLmVycm9yQmFnKS5pbmNsdWRlcyh0cnVlKTtcblxuICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsICFlcnJvcnMpO1xuXG4gICAgICAgIHJldHVybiAhZXJyb3JzO1xuICAgICAgfSxcblxuICAgICAgZGVlcDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2V0SW5wdXRzOiBmdW5jdGlvbiBnZXRJbnB1dHMoKSB7XG4gICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuXG4gICAgICB2YXIgc2VhcmNoID0gZnVuY3Rpb24gc2VhcmNoKGNoaWxkcmVuKSB7XG4gICAgICAgIHZhciBkZXB0aCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogMDtcblxuICAgICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgY2hpbGRyZW4ubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgdmFyIGNoaWxkID0gY2hpbGRyZW5baW5kZXhdO1xuICAgICAgICAgIGlmIChjaGlsZC5lcnJvckJ1Y2tldCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXN1bHRzLnB1c2goY2hpbGQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZWFyY2goY2hpbGQuJGNoaWxkcmVuLCBkZXB0aCArIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoZGVwdGggPT09IDApIHJldHVybiByZXN1bHRzO1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHNlYXJjaCh0aGlzLiRjaGlsZHJlbik7XG4gICAgfSxcbiAgICB3YXRjaElucHV0czogZnVuY3Rpb24gd2F0Y2hJbnB1dHMoKSB7XG4gICAgICB2YXIgaW5wdXRzID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB0aGlzLmdldElucHV0cygpO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgaW5wdXRzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgY2hpbGQgPSBpbnB1dHNbaW5kZXhdO1xuICAgICAgICBpZiAodGhpcy5pbnB1dHMuaW5jbHVkZXMoY2hpbGQpKSB7XG4gICAgICAgICAgY29udGludWU7IC8vIFdlIGFscmVhZHkga25vdyBhYm91dCB0aGlzIGlucHV0XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlucHV0cy5wdXNoKGNoaWxkKTtcbiAgICAgICAgdGhpcy53YXRjaENoaWxkKGNoaWxkKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHdhdGNoQ2hpbGQ6IGZ1bmN0aW9uIHdhdGNoQ2hpbGQoY2hpbGQpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciB3YXRjaGVyID0gZnVuY3Rpb24gd2F0Y2hlcihjaGlsZCkge1xuICAgICAgICBjaGlsZC4kd2F0Y2goJ3ZhbGlkJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgIF90aGlzLiRzZXQoX3RoaXMuZXJyb3JCYWcsIGNoaWxkLl91aWQsICF2YWwpO1xuICAgICAgICB9LCB7IGltbWVkaWF0ZTogdHJ1ZSB9KTtcbiAgICAgIH07XG5cbiAgICAgIGlmICghdGhpcy5sYXp5VmFsaWRhdGlvbikgcmV0dXJuIHdhdGNoZXIoY2hpbGQpO1xuXG4gICAgICAvLyBPbmx5IHN0YXJ0IHdhdGNoaW5nIGlucHV0cyBpZiB3ZSBuZWVkIHRvXG4gICAgICBjaGlsZC4kd2F0Y2goJ3Nob3VsZFZhbGlkYXRlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICBpZiAoIXZhbCkgcmV0dXJuO1xuXG4gICAgICAgIC8vIE9ubHkgd2F0Y2ggaWYgd2UncmUgbm90IGFscmVhZHkgZG9pbmcgaXRcbiAgICAgICAgaWYgKF90aGlzLmVycm9yQmFnLmhhc093blByb3BlcnR5KGNoaWxkLl91aWQpKSByZXR1cm47XG5cbiAgICAgICAgd2F0Y2hlcihjaGlsZCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHZhbGlkYXRlOiBmdW5jdGlvbiB2YWxpZGF0ZSgpIHtcbiAgICAgIHZhciBlcnJvcnMgPSB0aGlzLmlucHV0cy5maWx0ZXIoZnVuY3Rpb24gKGlucHV0KSB7XG4gICAgICAgIHJldHVybiAhaW5wdXQudmFsaWRhdGUodHJ1ZSk7XG4gICAgICB9KS5sZW5ndGg7XG4gICAgICByZXR1cm4gIWVycm9ycztcbiAgICB9LFxuICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLmlucHV0cy5sZW5ndGg7IGktLTspIHtcbiAgICAgICAgdGhpcy5pbnB1dHNbaV0ucmVzZXQoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmxhenlWYWxpZGF0aW9uKSB0aGlzLmVycm9yQmFnID0ge307XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy53YXRjaElucHV0cygpO1xuICB9LFxuICB1cGRhdGVkOiBmdW5jdGlvbiB1cGRhdGVkKCkge1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmdldElucHV0cygpO1xuXG4gICAgaWYgKGlucHV0cy5sZW5ndGggPCB0aGlzLmlucHV0cy5sZW5ndGgpIHtcbiAgICAgIC8vIFNvbWV0aGluZyB3YXMgcmVtb3ZlZCwgd2UgZG9uJ3Qgd2FudCBpdCBpbiB0aGUgZXJyb3JCYWcgYW55IG1vcmVcbiAgICAgIHZhciByZW1vdmVkID0gdGhpcy5pbnB1dHMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiAhaW5wdXRzLmluY2x1ZGVzKGkpO1xuICAgICAgfSk7XG5cbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCByZW1vdmVkLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgaW5wdXQgPSByZW1vdmVkW2luZGV4XTtcbiAgICAgICAgdGhpcy4kZGVsZXRlKHRoaXMuZXJyb3JCYWcsIGlucHV0Ll91aWQpO1xuICAgICAgICB0aGlzLiRkZWxldGUodGhpcy5pbnB1dHMsIHRoaXMuaW5wdXRzLmluZGV4T2YoaW5wdXQpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLndhdGNoSW5wdXRzKGlucHV0cyk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHJldHVybiBoKCdmb3JtJywge1xuICAgICAgYXR0cnM6IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICBub3ZhbGlkYXRlOiB0cnVlXG4gICAgICB9LCB0aGlzLiRhdHRycyksXG4gICAgICBvbjoge1xuICAgICAgICBzdWJtaXQ6IGZ1bmN0aW9uIHN1Ym1pdChlKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMi4kZW1pdCgnc3VibWl0JywgZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTk0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZTcGFjZXIgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDb250ZW50X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQ29udGFpbmVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRmxleF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkxheW91dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTkpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNvbnRhaW5lciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNvbnRlbnQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZGbGV4ICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWTGF5b3V0ICovXG5cblxuXG5cblxuXG52YXIgVlNwYWNlciA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3BhY2VyJyk7XG5cblxuXG52YXIgVkdyaWQgPSB7fTtcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblZHcmlkLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDb250ZW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNvbnRhaW5lcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNvbnRhaW5lcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZGbGV4X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRmxleF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMYXlvdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMYXlvdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVlNwYWNlci5uYW1lLCBWU3BhY2VyKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoVkdyaWQpO1xuXG4vKioqLyB9KSxcbi8qIDE5NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NvbnRlbnRfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY29udGVudF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NvbnRlbnRfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19zc3JfYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWNvbnRlbnQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3Nzcl9ib290YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIHRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ21haW4nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICB2YXIgXyR2dWV0aWZ5JGFwcGxpY2F0aW9uID0gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbixcbiAgICAgICAgICBiYXIgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24uYmFyLFxuICAgICAgICAgIHRvcCA9IF8kdnVldGlmeSRhcHBsaWNhdGlvbi50b3AsXG4gICAgICAgICAgcmlnaHQgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24ucmlnaHQsXG4gICAgICAgICAgZm9vdGVyID0gXyR2dWV0aWZ5JGFwcGxpY2F0aW9uLmZvb3RlcixcbiAgICAgICAgICBib3R0b20gPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24uYm90dG9tLFxuICAgICAgICAgIGxlZnQgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24ubGVmdDtcblxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWRkaW5nVG9wOiB0b3AgKyBiYXIgKyAncHgnLFxuICAgICAgICBwYWRkaW5nUmlnaHQ6IHJpZ2h0ICsgJ3B4JyxcbiAgICAgICAgcGFkZGluZ0JvdHRvbTogZm9vdGVyICsgYm90dG9tICsgJ3B4JyxcbiAgICAgICAgcGFkZGluZ0xlZnQ6IGxlZnQgKyAncHgnXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2NvbnRlbnQnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGgodGhpcy50YWcsIGRhdGEsIFtoKCdkaXYnLCB7IHN0YXRpY0NsYXNzOiAnY29udGVudC0td3JhcCcgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTk2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTk3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMyKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdjb250YWluZXInKSk7XG5cbi8qKiovIH0pLFxuLyogMTk4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMyKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdmbGV4JykpO1xuXG4vKioqLyB9KSxcbi8qIDE5OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZ3JpZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMik7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZ3JpZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnbGF5b3V0JykpO1xuXG4vKioqLyB9KSxcbi8qIDIwMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZOYXZpZ2F0aW9uRHJhd2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk5hdmlnYXRpb25EcmF3ZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZOYXZpZ2F0aW9uRHJhd2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTmF2aWdhdGlvbkRyYXdlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTmF2aWdhdGlvbkRyYXdlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyMDEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19uYXZpZ2F0aW9uX2RyYXdlcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19uYXZpZ2F0aW9uX2RyYXdlcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX25hdmlnYXRpb25fZHJhd2VyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19vdmVybGF5YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfc3NyX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LW5hdmlnYXRpb24tZHJhd2VyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKG51bGwsIFsnbWluaVZhcmlhbnQnLCAncmlnaHQnLCAnd2lkdGgnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX292ZXJsYXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Nzcl9ib290YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIENsaWNrT3V0c2lkZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBSZXNpemU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19yZXNpemVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBUb3VjaDogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICB0b3VjaEFyZWE6IHtcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgcmlnaHQ6IDBcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgY2xpcHBlZDogQm9vbGVhbixcbiAgICBkaXNhYmxlUm91dGVXYXRjaGVyOiBCb29sZWFuLFxuICAgIGRpc2FibGVSZXNpemVXYXRjaGVyOiBCb29sZWFuLFxuICAgIGhlaWdodDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICcxMDAlJ1xuICAgIH0sXG4gICAgZmxvYXRpbmc6IEJvb2xlYW4sXG4gICAgbWluaVZhcmlhbnQ6IEJvb2xlYW4sXG4gICAgbWluaVZhcmlhbnRXaWR0aDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDgwXG4gICAgfSxcbiAgICBtb2JpbGVCcmVha1BvaW50OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMTI2NFxuICAgIH0sXG4gICAgcGVybWFuZW50OiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHN0YXRlbGVzczogQm9vbGVhbixcbiAgICB0ZW1wb3Jhcnk6IEJvb2xlYW4sXG4gICAgdG91Y2hsZXNzOiBCb29sZWFuLFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMzAwXG4gICAgfSxcbiAgICB2YWx1ZTogeyByZXF1aXJlZDogZmFsc2UgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgLyoqXG4gICAgICogVXNlZCBmb3Igc2V0dGluZyBhbiBhcHBcbiAgICAgKiB2YWx1ZSBmcm9tIGEgZHluYW1pY1xuICAgICAqIHByb3BlcnR5LiBDYWxsZWQgZnJvbVxuICAgICAqIGFwcGxpY2F0aW9uYWJsZS5qc1xuICAgICAqXG4gICAgICogQHJldHVybiB7c3RyaW5nfVxuICAgICAqL1xuICAgIGFwcGxpY2F0aW9uUHJvcGVydHk6IGZ1bmN0aW9uIGFwcGxpY2F0aW9uUHJvcGVydHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yaWdodCA/ICdyaWdodCcgOiAnbGVmdCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkSGVpZ2h0OiBmdW5jdGlvbiBjYWxjdWxhdGVkSGVpZ2h0KCkge1xuICAgICAgcmV0dXJuIGlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0IDogdGhpcy5oZWlnaHQgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZFRyYW5zZm9ybTogZnVuY3Rpb24gY2FsY3VsYXRlZFRyYW5zZm9ybSgpIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHRoaXMucmlnaHQgPyB0aGlzLmNhbGN1bGF0ZWRXaWR0aCA6IC10aGlzLmNhbGN1bGF0ZWRXaWR0aDtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZWRXaWR0aDogZnVuY3Rpb24gY2FsY3VsYXRlZFdpZHRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluaVZhcmlhbnQgPyB0aGlzLm1pbmlWYXJpYW50V2lkdGggOiB0aGlzLndpZHRoO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlcic6IHRydWUsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLWNsaXBwZWQnOiB0aGlzLmNsaXBwZWQsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0tY2xvc2UnOiAhdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1maXhlZCc6ICF0aGlzLmFic29sdXRlICYmICh0aGlzLmFwcCB8fCB0aGlzLmZpeGVkKSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZyc6IHRoaXMuZmxvYXRpbmcsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0taXMtbW9iaWxlJzogdGhpcy5pc01vYmlsZSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQnOiB0aGlzLm1pbmlWYXJpYW50LFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLW9wZW4nOiB0aGlzLmlzQWN0aXZlLFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS10ZW1wb3JhcnknOiB0aGlzLnRlbXBvcmFyeSxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9LFxuICAgIGlzTW9iaWxlOiBmdW5jdGlvbiBpc01vYmlsZSgpIHtcbiAgICAgIHJldHVybiAhdGhpcy5zdGF0ZWxlc3MgJiYgIXRoaXMucGVybWFuZW50ICYmICF0aGlzLnRlbXBvcmFyeSAmJiB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQud2lkdGggPCBwYXJzZUludCh0aGlzLm1vYmlsZUJyZWFrUG9pbnQsIDEwKTtcbiAgICB9LFxuICAgIG1hcmdpblRvcDogZnVuY3Rpb24gbWFyZ2luVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuIDA7XG4gICAgICB2YXIgbWFyZ2luVG9wID0gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5iYXI7XG5cbiAgICAgIG1hcmdpblRvcCArPSB0aGlzLmNsaXBwZWQgPyB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnRvcCA6IDA7XG5cbiAgICAgIHJldHVybiBtYXJnaW5Ub3A7XG4gICAgfSxcbiAgICBtYXhIZWlnaHQ6IGZ1bmN0aW9uIG1heEhlaWdodCgpIHtcbiAgICAgIGlmICghdGhpcy5hcHApIHJldHVybiAnMTAwJSc7XG5cbiAgICAgIHJldHVybiB0aGlzLmNsaXBwZWQgPyB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnRvcCArIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24uYm90dG9tIDogdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5ib3R0b207XG4gICAgfSxcbiAgICByZWFjdHNUb0NsaWNrOiBmdW5jdGlvbiByZWFjdHNUb0NsaWNrKCkge1xuICAgICAgcmV0dXJuICF0aGlzLnN0YXRlbGVzcyAmJiAhdGhpcy5wZXJtYW5lbnQgJiYgKHRoaXMuaXNNb2JpbGUgfHwgdGhpcy50ZW1wb3JhcnkpO1xuICAgIH0sXG4gICAgcmVhY3RzVG9Nb2JpbGU6IGZ1bmN0aW9uIHJlYWN0c1RvTW9iaWxlKCkge1xuICAgICAgcmV0dXJuICF0aGlzLmRpc2FibGVSZXNpemVXYXRjaGVyICYmICF0aGlzLnN0YXRlbGVzcyAmJiAhdGhpcy5wZXJtYW5lbnQgJiYgIXRoaXMudGVtcG9yYXJ5O1xuICAgIH0sXG4gICAgcmVhY3RzVG9Sb3V0ZTogZnVuY3Rpb24gcmVhY3RzVG9Sb3V0ZSgpIHtcbiAgICAgIHJldHVybiAhdGhpcy5kaXNhYmxlUm91dGVXYXRjaGVyICYmICF0aGlzLnN0YXRlbGVzcyAmJiAodGhpcy50ZW1wb3JhcnkgfHwgdGhpcy5pc01vYmlsZSk7XG4gICAgfSxcbiAgICByZXNpemVJc0Rpc2FibGVkOiBmdW5jdGlvbiByZXNpemVJc0Rpc2FibGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZVJlc2l6ZVdhdGNoZXIgfHwgdGhpcy5zdGF0ZWxlc3M7XG4gICAgfSxcbiAgICBzaG93T3ZlcmxheTogZnVuY3Rpb24gc2hvd092ZXJsYXkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiAodGhpcy5pc01vYmlsZSB8fCB0aGlzLnRlbXBvcmFyeSk7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7XG4gICAgICAgIGhlaWdodDogdGhpcy5jYWxjdWxhdGVkSGVpZ2h0LFxuICAgICAgICBtYXJnaW5Ub3A6IHRoaXMubWFyZ2luVG9wICsgJ3B4JyxcbiAgICAgICAgbWF4SGVpZ2h0OiAnY2FsYygxMDAlIC0gJyArIHRoaXMubWF4SGVpZ2h0ICsgJ3B4KScsXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoJyArIHRoaXMuY2FsY3VsYXRlZFRyYW5zZm9ybSArICdweCknLFxuICAgICAgICB3aWR0aDogdGhpcy5jYWxjdWxhdGVkV2lkdGggKyAncHgnXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gc3R5bGVzO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgICRyb3V0ZTogZnVuY3Rpb24gJHJvdXRlKCkge1xuICAgICAgaWYgKHRoaXMucmVhY3RzVG9Sb3V0ZSAmJiB0aGlzLmNsb3NlQ29uZGl0aW9uYWwoKSkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbCk7XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb2JpbGUgY2hhbmdlcywgYWRqdXN0XG4gICAgICogdGhlIGFjdGl2ZSBzdGF0ZSBvbmx5IHdoZW5cbiAgICAgKiB0aGVyZSBoYXMgYmVlbiBhIHByZXZpb3VzXG4gICAgICogdmFsdWVcbiAgICAgKi9cbiAgICBpc01vYmlsZTogZnVuY3Rpb24gaXNNb2JpbGUodmFsLCBwcmV2KSB7XG4gICAgICAhdmFsICYmIHRoaXMuaXNBY3RpdmUgJiYgIXRoaXMudGVtcG9yYXJ5ICYmIHRoaXMucmVtb3ZlT3ZlcmxheSgpO1xuXG4gICAgICBpZiAocHJldiA9PSBudWxsIHx8IHRoaXMucmVzaXplSXNEaXNhYmxlZCB8fCAhdGhpcy5yZWFjdHNUb01vYmlsZSkgcmV0dXJuO1xuXG4gICAgICB0aGlzLmlzQWN0aXZlID0gIXZhbDtcbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpO1xuICAgIH0sXG4gICAgcGVybWFuZW50OiBmdW5jdGlvbiBwZXJtYW5lbnQodmFsKSB7XG4gICAgICAvLyBJZiBlbmFibGluZyBwcm9wXG4gICAgICAvLyBlbmFibGUgdGhlIGRyYXdlclxuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpO1xuICAgIH0sXG4gICAgc2hvd092ZXJsYXk6IGZ1bmN0aW9uIHNob3dPdmVybGF5KHZhbCkge1xuICAgICAgaWYgKHZhbCkgdGhpcy5nZW5PdmVybGF5KCk7ZWxzZSB0aGlzLnJlbW92ZU92ZXJsYXkoKTtcbiAgICB9LFxuICAgIHRlbXBvcmFyeTogZnVuY3Rpb24gdGVtcG9yYXJ5KCkge1xuICAgICAgdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgfSxcbiAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUodmFsKSB7XG4gICAgICBpZiAodGhpcy5wZXJtYW5lbnQpIHJldHVybjtcblxuICAgICAgaWYgKHZhbCA9PSBudWxsKSByZXR1cm4gdGhpcy5pbml0KCk7XG5cbiAgICAgIGlmICh2YWwgIT09IHRoaXMuaXNBY3RpdmUpIHRoaXMuaXNBY3RpdmUgPSB2YWw7XG4gICAgfVxuICB9LFxuXG4gIGJlZm9yZU1vdW50OiBmdW5jdGlvbiBiZWZvcmVNb3VudCgpIHtcbiAgICB0aGlzLmluaXQoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjYWxjdWxhdGVUb3VjaEFyZWE6IGZ1bmN0aW9uIGNhbGN1bGF0ZVRvdWNoQXJlYSgpIHtcbiAgICAgIGlmICghdGhpcy4kZWwucGFyZW50Tm9kZSkgcmV0dXJuO1xuICAgICAgdmFyIHBhcmVudFJlY3QgPSB0aGlzLiRlbC5wYXJlbnROb2RlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICB0aGlzLnRvdWNoQXJlYSA9IHtcbiAgICAgICAgbGVmdDogcGFyZW50UmVjdC5sZWZ0ICsgNTAsXG4gICAgICAgIHJpZ2h0OiBwYXJlbnRSZWN0LnJpZ2h0IC0gNTBcbiAgICAgIH07XG4gICAgfSxcbiAgICBjbG9zZUNvbmRpdGlvbmFsOiBmdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgJiYgdGhpcy5yZWFjdHNUb0NsaWNrO1xuICAgIH0sXG4gICAgZ2VuRGlyZWN0aXZlczogZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBkaXJlY3RpdmVzID0gW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICBjbG9zZUNvbmRpdGlvbmFsOiB0aGlzLmNsb3NlQ29uZGl0aW9uYWxcbiAgICAgICAgfVxuICAgICAgfV07XG5cbiAgICAgICF0aGlzLnRvdWNobGVzcyAmJiBkaXJlY3RpdmVzLnB1c2goe1xuICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIHBhcmVudDogdHJ1ZSxcbiAgICAgICAgICBsZWZ0OiB0aGlzLnN3aXBlTGVmdCxcbiAgICAgICAgICByaWdodDogdGhpcy5zd2lwZVJpZ2h0XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZGlyZWN0aXZlcztcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogU2V0cyBzdGF0ZSBiZWZvcmUgbW91bnQgdG8gYXZvaWRcbiAgICAgKiBlbnRyeSB0cmFuc2l0aW9ucyBpbiBTU1JcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgaW5pdDogZnVuY3Rpb24gaW5pdCgpIHtcbiAgICAgIGlmICh0aGlzLnBlcm1hbmVudCkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0ZWxlc3MgfHwgdGhpcy52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0aGlzLnZhbHVlO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy50ZW1wb3JhcnkpIHtcbiAgICAgICAgdGhpcy5pc0FjdGl2ZSA9ICF0aGlzLmlzTW9iaWxlO1xuICAgICAgfVxuICAgIH0sXG4gICAgc3dpcGVSaWdodDogZnVuY3Rpb24gc3dpcGVSaWdodChlKSB7XG4gICAgICBpZiAodGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5yaWdodCkgcmV0dXJuO1xuICAgICAgdGhpcy5jYWxjdWxhdGVUb3VjaEFyZWEoKTtcblxuICAgICAgaWYgKE1hdGguYWJzKGUudG91Y2hlbmRYIC0gZS50b3VjaHN0YXJ0WCkgPCAxMDApIHJldHVybjtcbiAgICAgIGlmICghdGhpcy5yaWdodCAmJiBlLnRvdWNoc3RhcnRYIDw9IHRoaXMudG91Y2hBcmVhLmxlZnQpIHRoaXMuaXNBY3RpdmUgPSB0cnVlO2Vsc2UgaWYgKHRoaXMucmlnaHQgJiYgdGhpcy5pc0FjdGl2ZSkgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH0sXG4gICAgc3dpcGVMZWZ0OiBmdW5jdGlvbiBzd2lwZUxlZnQoZSkge1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUgJiYgdGhpcy5yaWdodCkgcmV0dXJuO1xuICAgICAgdGhpcy5jYWxjdWxhdGVUb3VjaEFyZWEoKTtcblxuICAgICAgaWYgKE1hdGguYWJzKGUudG91Y2hlbmRYIC0gZS50b3VjaHN0YXJ0WCkgPCAxMDApIHJldHVybjtcbiAgICAgIGlmICh0aGlzLnJpZ2h0ICYmIGUudG91Y2hzdGFydFggPj0gdGhpcy50b3VjaEFyZWEucmlnaHQpIHRoaXMuaXNBY3RpdmUgPSB0cnVlO2Vsc2UgaWYgKCF0aGlzLnJpZ2h0ICYmIHRoaXMuaXNBY3RpdmUpIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBhcHBsaWNhdGlvbiBsYXlvdXRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICB1cGRhdGVBcHBsaWNhdGlvbjogZnVuY3Rpb24gdXBkYXRlQXBwbGljYXRpb24oKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNBY3RpdmUgfHwgdGhpcy50ZW1wb3JhcnkgfHwgdGhpcy5pc01vYmlsZSA/IDAgOiB0aGlzLmNhbGN1bGF0ZWRXaWR0aDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICBkaXJlY3RpdmVzOiB0aGlzLmdlbkRpcmVjdGl2ZXMoKSxcbiAgICAgIG9uOiB7XG4gICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICBpZiAoIV90aGlzMi5taW5pVmFyaWFudCkgcmV0dXJuO1xuXG4gICAgICAgICAgX3RoaXMyLiRlbWl0KCd1cGRhdGU6bWluaVZhcmlhbnQnLCBmYWxzZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYW5zaXRpb25lbmQ6IGZ1bmN0aW9uIHRyYW5zaXRpb25lbmQoZSkge1xuICAgICAgICAgIF90aGlzMi4kZW1pdCgndHJhbnNpdGlvbmVuZCcsIGUpO1xuICAgICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgncmVzaXplJykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIHJldHVybiBoKCdhc2lkZScsIGRhdGEsIFt0aGlzLiRzbG90cy5kZWZhdWx0LCBoKCdkaXYnLCB7ICdjbGFzcyc6ICduYXZpZ2F0aW9uLWRyYXdlcl9fYm9yZGVyJyB9KV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMDIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFnaW5hdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDQpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYWdpbmF0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFnaW5hdGlvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhZ2luYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhZ2luYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjA0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFnaW5hdGlvbl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wYWdpbmF0aW9uX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFnaW5hdGlvbl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cblxuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcGFnaW5hdGlvbicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBtYXhCdXR0b25zOiAwLFxuICAgICAgZGVmYXVsdENvbG9yOiAncHJpbWFyeSdcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjaXJjbGU6IEJvb2xlYW4sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgbGVuZ3RoOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiB2YWwgJSAxID09PSAwO1xuICAgICAgfVxuICAgIH0sXG4gICAgdG90YWxWaXNpYmxlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgdmFsdWU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3BhZ2luYXRpb24nOiB0cnVlLFxuICAgICAgICAncGFnaW5hdGlvbi0tY2lyY2xlJzogdGhpcy5jaXJjbGUsXG4gICAgICAgICdwYWdpbmF0aW9uLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgIH07XG4gICAgfSxcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXMoKSB7XG4gICAgICB2YXIgbWF4TGVuZ3RoID0gdGhpcy50b3RhbFZpc2libGUgfHwgdGhpcy5tYXhCdXR0b25zO1xuICAgICAgaWYgKHRoaXMubGVuZ3RoIDw9IG1heExlbmd0aCkge1xuICAgICAgICByZXR1cm4gdGhpcy5yYW5nZSgxLCB0aGlzLmxlbmd0aCk7XG4gICAgICB9XG5cbiAgICAgIHZhciBldmVuID0gbWF4TGVuZ3RoICUgMiA9PT0gMCA/IDEgOiAwO1xuICAgICAgdmFyIGxlZnQgPSBNYXRoLmZsb29yKG1heExlbmd0aCAvIDIpO1xuICAgICAgdmFyIHJpZ2h0ID0gdGhpcy5sZW5ndGggLSBsZWZ0ICsgMSArIGV2ZW47XG5cbiAgICAgIGlmICh0aGlzLnZhbHVlID49IGxlZnQgJiYgdGhpcy52YWx1ZSA8PSByaWdodCkge1xuICAgICAgICB2YXIgc3RhcnQgPSB0aGlzLnZhbHVlIC0gbGVmdCArIDI7XG4gICAgICAgIHZhciBlbmQgPSB0aGlzLnZhbHVlICsgbGVmdCAtIDIgLSBldmVuO1xuXG4gICAgICAgIHJldHVybiBbMSwgJy4uLiddLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGhpcy5yYW5nZShzdGFydCwgZW5kKSksIFsnLi4uJywgdGhpcy5sZW5ndGhdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KHRoaXMucmFuZ2UoMSwgbGVmdCkpLCBbJy4uLiddLCBfdG9Db25zdW1hYmxlQXJyYXkodGhpcy5yYW5nZSh0aGlzLmxlbmd0aCAtIGxlZnQgKyAxICsgZXZlbiwgdGhpcy5sZW5ndGgpKSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgdGhpcy5pbml0KCk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5pbml0KCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgaW5pdDogZnVuY3Rpb24gaW5pdCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBudWxsO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayh0aGlzLm9uUmVzaXplKTtcbiAgICAgIC8vIFRPRE86IENoYW5nZSB0aGlzIChmNzVkZWUzYSwgY2JkZjdjYWEpXG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLnNlbGVjdGVkID0gX3RoaXMudmFsdWU7XG4gICAgICB9LCAxMDApO1xuICAgIH0sXG4gICAgb25SZXNpemU6IGZ1bmN0aW9uIG9uUmVzaXplKCkge1xuICAgICAgdmFyIHdpZHRoID0gdGhpcy4kZWwgJiYgdGhpcy4kZWwucGFyZW50Tm9kZSA/IHRoaXMuJGVsLnBhcmVudE5vZGUuY2xpZW50V2lkdGggOiB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgdGhpcy5tYXhCdXR0b25zID0gTWF0aC5mbG9vcigod2lkdGggLSA5NikgLyA0Mik7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy52YWx1ZSArIDEpO1xuICAgICAgdGhpcy4kZW1pdCgnbmV4dCcpO1xuICAgIH0sXG4gICAgcHJldmlvdXM6IGZ1bmN0aW9uIHByZXZpb3VzKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy52YWx1ZSAtIDEpO1xuICAgICAgdGhpcy4kZW1pdCgncHJldmlvdXMnKTtcbiAgICB9LFxuICAgIHJhbmdlOiBmdW5jdGlvbiByYW5nZShmcm9tLCB0bykge1xuICAgICAgdmFyIHJhbmdlID0gW107XG5cbiAgICAgIGZyb20gPSBmcm9tID4gMCA/IGZyb20gOiAxO1xuXG4gICAgICBmb3IgKHZhciBpID0gZnJvbTsgaSA8PSB0bzsgaSsrKSB7XG4gICAgICAgIHJhbmdlLnB1c2goaSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByYW5nZTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaCwgaWNvbiwgZGlzYWJsZWQsIGZuKSB7XG4gICAgICByZXR1cm4gaCgnbGknLCBbaCgnYnV0dG9uJywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3BhZ2luYXRpb25fX25hdmlnYXRpb24nLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICdwYWdpbmF0aW9uX19uYXZpZ2F0aW9uLS1kaXNhYmxlZCc6IGRpc2FibGVkXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiBkaXNhYmxlZCA/IHt9IDogeyBjbGljazogZm4gfVxuICAgICAgfSwgW2goX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBbaWNvbl0pXSldKTtcbiAgICB9LFxuICAgIGdlbkl0ZW06IGZ1bmN0aW9uIGdlbkl0ZW0oaCwgaSkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiBoKCdidXR0b24nLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGFnaW5hdGlvbl9faXRlbScsXG4gICAgICAgIGNsYXNzOiBpID09PSB0aGlzLnZhbHVlID8gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICAgJ3BhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSc6IHRydWVcbiAgICAgICAgfSkgOiB7fSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMyLiRlbWl0KCdpbnB1dCcsIGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW2ldKTtcbiAgICB9LFxuICAgIGdlbkl0ZW1zOiBmdW5jdGlvbiBnZW5JdGVtcyhoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKGZ1bmN0aW9uIChpLCBpbmRleCkge1xuICAgICAgICByZXR1cm4gaCgnbGknLCB7IGtleTogaW5kZXggfSwgW2lzTmFOKGkpID8gaCgnc3BhbicsIHsgY2xhc3M6ICdwYWdpbmF0aW9uX19tb3JlJyB9LCBbaV0pIDogX3RoaXMzLmdlbkl0ZW0oaCwgaSldKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGNoaWxkcmVuID0gW3RoaXMuZ2VuSWNvbihoLCB0aGlzLnByZXZJY29uLCB0aGlzLnZhbHVlIDw9IDEsIHRoaXMucHJldmlvdXMpLCB0aGlzLmdlbkl0ZW1zKGgpLCB0aGlzLmdlbkljb24oaCwgdGhpcy5uZXh0SWNvbiwgdGhpcy52YWx1ZSA+PSB0aGlzLmxlbmd0aCwgdGhpcy5uZXh0KV07XG5cbiAgICByZXR1cm4gaCgndWwnLCB7XG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBtb2RpZmllcnM6IHsgcXVpZXQ6IHRydWUgfSxcbiAgICAgICAgbmFtZTogJ3Jlc2l6ZScsXG4gICAgICAgIHZhbHVlOiB0aGlzLm9uUmVzaXplXG4gICAgICB9XSxcbiAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXNcbiAgICB9LCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIwNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDIwNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYXJhbGxheF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDcpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYXJhbGxheF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhcmFsbGF4X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFyYWxsYXhfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhcmFsbGF4X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIwNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BhcmFsbGF4X3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjA4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BhcmFsbGF4X3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFyYWxsYXhfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190cmFuc2xhdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjA5KTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXBhcmFsbGF4JyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190cmFuc2xhdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNCb290ZWQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYWx0OiBTdHJpbmcsXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBOdW1iZXJdLFxuICAgICAgZGVmYXVsdDogNTAwXG4gICAgfSxcbiAgICBzcmM6IFN0cmluZ1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICBvcGFjaXR5OiB0aGlzLmlzQm9vdGVkID8gMSA6IDAsXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZSgtNTAlLCAnICsgdGhpcy5wYXJhbGxheCArICdweCknXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIHBhcmFsbGF4OiBmdW5jdGlvbiBwYXJhbGxheCgpIHtcbiAgICAgIHRoaXMuaXNCb290ZWQgPSB0cnVlO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGluaXQ6IGZ1bmN0aW9uIGluaXQoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuJHJlZnMuaW1nKSByZXR1cm47XG5cbiAgICAgIGlmICh0aGlzLiRyZWZzLmltZy5jb21wbGV0ZSkge1xuICAgICAgICB0aGlzLnRyYW5zbGF0ZSgpO1xuICAgICAgICB0aGlzLmxpc3RlbmVycygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4kcmVmcy5pbWcuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBfdGhpcy50cmFuc2xhdGUoKTtcbiAgICAgICAgICBfdGhpcy5saXN0ZW5lcnMoKTtcbiAgICAgICAgfSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb2JqSGVpZ2h0OiBmdW5jdGlvbiBvYmpIZWlnaHQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kcmVmcy5pbWcubmF0dXJhbEhlaWdodDtcbiAgICB9LFxuICAgIGVsT2Zmc2V0VG9wOiBmdW5jdGlvbiBlbE9mZnNldFRvcCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRlbC5vZmZzZXRUb3A7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgaW1nRGF0YSA9IHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncGFyYWxsYXhfX2ltYWdlJyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHNyYzogdGhpcy5zcmNcbiAgICAgIH0sXG4gICAgICByZWY6ICdpbWcnXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmFsdCkgaW1nRGF0YS5hdHRycy5hbHQgPSB0aGlzLmFsdDtcblxuICAgIHZhciBjb250YWluZXIgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3BhcmFsbGF4X19pbWFnZS1jb250YWluZXInXG4gICAgfSwgW2goJ2ltZycsIGltZ0RhdGEpXSk7XG5cbiAgICB2YXIgY29udGVudCA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncGFyYWxsYXhfX2NvbnRlbnQnXG4gICAgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwYXJhbGxheCcsXG4gICAgICBzdHlsZToge1xuICAgICAgICBoZWlnaHQ6IHRoaXMubm9ybWFsaXplZEhlaWdodCArICdweCdcbiAgICAgIH0sXG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2NvbnRhaW5lciwgY29udGVudF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3RyYW5zbGF0YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGFyYWxsYXg6IG51bGwsXG4gICAgICBwYXJhbGxheERpc3Q6IG51bGwsXG4gICAgICBwZXJjZW50U2Nyb2xsZWQ6IG51bGwsXG4gICAgICBzY3JvbGxUb3A6IG51bGwsXG4gICAgICB3aW5kb3dIZWlnaHQ6IG51bGwsXG4gICAgICB3aW5kb3dCb3R0b206IG51bGxcbiAgICB9O1xuICB9LFxuXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBub3JtYWxpemVkSGVpZ2h0OiBmdW5jdGlvbiBub3JtYWxpemVkSGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMuanVtYm90cm9uKSB7XG4gICAgICAgIHJldHVybiBpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLmhlaWdodCA6IHRoaXMuaGVpZ2h0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLmhlaWdodC50b1N0cmluZygpLnJlcGxhY2UoLyheWzAtOV0qJCkvLCAnJDEnKSk7XG4gICAgfSxcbiAgICBpbWdIZWlnaHQ6IGZ1bmN0aW9uIGltZ0hlaWdodCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm9iakhlaWdodCgpO1xuICAgIH1cbiAgfSxcblxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnRyYW5zbGF0ZSwgZmFsc2UpO1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCB0aGlzLnRyYW5zbGF0ZSwgZmFsc2UpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGxpc3RlbmVyczogZnVuY3Rpb24gbGlzdGVuZXJzKCkge1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMudHJhbnNsYXRlLCBmYWxzZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgdGhpcy50cmFuc2xhdGUsIGZhbHNlKTtcbiAgICB9LFxuICAgIHRyYW5zbGF0ZTogZnVuY3Rpb24gdHJhbnNsYXRlKCkge1xuICAgICAgdGhpcy5jYWxjRGltZW5zaW9ucygpO1xuXG4gICAgICB0aGlzLnBlcmNlbnRTY3JvbGxlZCA9ICh0aGlzLndpbmRvd0JvdHRvbSAtIHRoaXMuZWxPZmZzZXRUb3ApIC8gKHRoaXMubm9ybWFsaXplZEhlaWdodCArIHRoaXMud2luZG93SGVpZ2h0KTtcblxuICAgICAgdGhpcy5wYXJhbGxheCA9IE1hdGgucm91bmQodGhpcy5wYXJhbGxheERpc3QgKiB0aGlzLnBlcmNlbnRTY3JvbGxlZCk7XG5cbiAgICAgIGlmICh0aGlzLnRyYW5zbGF0ZWQpIHtcbiAgICAgICAgdGhpcy50cmFuc2xhdGVkKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBjYWxjRGltZW5zaW9uczogZnVuY3Rpb24gY2FsY0RpbWVuc2lvbnMoKSB7XG4gICAgICB2YXIgb2Zmc2V0ID0gdGhpcy4kZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgIHRoaXMuc2Nyb2xsVG9wID0gd2luZG93LnBhZ2VZT2Zmc2V0O1xuICAgICAgdGhpcy5wYXJhbGxheERpc3QgPSB0aGlzLmltZ0hlaWdodCAtIHRoaXMubm9ybWFsaXplZEhlaWdodDtcbiAgICAgIHRoaXMuZWxPZmZzZXRUb3AgPSBvZmZzZXQudG9wICsgdGhpcy5zY3JvbGxUb3A7XG4gICAgICB0aGlzLndpbmRvd0hlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgIHRoaXMud2luZG93Qm90dG9tID0gdGhpcy5zY3JvbGxUb3AgKyB0aGlzLndpbmRvd0hlaWdodDtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIxMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZSYWRpb0dyb3VwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WUmFkaW9fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEzKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZSYWRpb0dyb3VwICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWUmFkaW8gKi9cblxuXG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUmFkaW9Hcm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlJhZGlvR3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZSYWRpb0dyb3VwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlJhZGlvX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WUmFkaW9fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlJhZGlvR3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3JhZGlvX2dyb3VwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3JhZGlvX2dyb3VwX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfcmFkaW9fZ3JvdXBfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vLyBTdHlsZXNcblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcmFkaW8tZ3JvdXAnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2lucHV0X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgncmFkaW8nKV0sXG5cbiAgbW9kZWw6IHtcbiAgICBwcm9wOiAnaW5wdXRWYWx1ZScsXG4gICAgZXZlbnQ6ICdjaGFuZ2UnXG4gIH0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGlzTWFuZGF0b3J5OiBmdW5jdGlvbiBpc01hbmRhdG9yeSgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLm1hbmRhdG9yeTtcbiAgICAgIH0sXG4gICAgICBuYW1lOiBmdW5jdGlvbiBuYW1lKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMubmFtZTtcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW50ZXJuYWxUYWJJbmRleDogLTEsXG4gICAgICByYWRpb3M6IFtdXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGNvbHVtbjoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGlucHV0VmFsdWU6IG51bGwsXG4gICAgbWFuZGF0b3J5OiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgbmFtZTogU3RyaW5nLFxuICAgIHJvdzogQm9vbGVhblxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaGFzRXJyb3I6IGZ1bmN0aW9uIGhhc0Vycm9yKHZhbCkge1xuICAgICAgZm9yICh2YXIgaW5kZXggPSB0aGlzLnJhZGlvcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5yYWRpb3NbaW5kZXhdLnBhcmVudEVycm9yID0gdmFsO1xuICAgICAgfVxuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5yYWRpb3MubGVuZ3RoOyAtLWluZGV4ID49IDA7KSB7XG4gICAgICAgIHZhciByYWRpbyA9IHRoaXMucmFkaW9zW2luZGV4XTtcbiAgICAgICAgcmFkaW8uaXNBY3RpdmUgPSB2YWwgPT09IHJhZGlvLnZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAncmFkaW8tZ3JvdXAnOiB0cnVlLFxuICAgICAgICAncmFkaW8tZ3JvdXAtLWNvbHVtbic6IHRoaXMuY29sdW1uICYmICF0aGlzLnJvdyxcbiAgICAgICAgJ3JhZGlvLWdyb3VwLS1yb3cnOiB0aGlzLnJvdyxcbiAgICAgICAgJ2Vycm9yLS10ZXh0JzogdGhpcy5oYXNFcnJvclxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHRvZ2dsZVJhZGlvOiBmdW5jdGlvbiB0b2dnbGVSYWRpbyh2YWx1ZSkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zaG91bGRWYWxpZGF0ZSA9IHRydWU7XG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB2YWx1ZSk7XG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIudmFsaWRhdGUoKTtcbiAgICAgIH0pO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMucmFkaW9zLmxlbmd0aDsgLS1pbmRleCA+PSAwOykge1xuICAgICAgICB2YXIgcmFkaW8gPSB0aGlzLnJhZGlvc1tpbmRleF07XG4gICAgICAgIGlmIChyYWRpby52YWx1ZSAhPT0gdmFsdWUpIHJhZGlvLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICByYWRpb0JsdXI6IGZ1bmN0aW9uIHJhZGlvQmx1cihlKSB7XG4gICAgICBpZiAoIWUucmVsYXRlZFRhcmdldCB8fCAhZS5yZWxhdGVkVGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygncmFkaW8nKSkge1xuICAgICAgICB0aGlzLnNob3VsZFZhbGlkYXRlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy4kZW1pdCgnYmx1cicsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIocmFkaW8pIHtcbiAgICAgIHJhZGlvLmlzQWN0aXZlID0gdGhpcy5pbnB1dFZhbHVlID09PSByYWRpby52YWx1ZTtcbiAgICAgIHJhZGlvLiRlbC50YWJJbmRleCA9IHJhZGlvLiRlbC50YWJJbmRleCA+IDAgPyByYWRpby4kZWwudGFiSW5kZXggOiAwO1xuICAgICAgcmFkaW8uJG9uKCdjaGFuZ2UnLCB0aGlzLnRvZ2dsZVJhZGlvKTtcbiAgICAgIHJhZGlvLiRvbignYmx1cicsIHRoaXMucmFkaW9CbHVyKTtcbiAgICAgIHJhZGlvLiRvbignZm9jdXMnLCB0aGlzLnJhZGlvRm9jdXMpO1xuICAgICAgdGhpcy5yYWRpb3MucHVzaChyYWRpbyk7XG4gICAgfSxcbiAgICB1bnJlZ2lzdGVyOiBmdW5jdGlvbiB1bnJlZ2lzdGVyKHJhZGlvKSB7XG4gICAgICByYWRpby4kb2ZmKCdjaGFuZ2UnLCB0aGlzLnRvZ2dsZVJhZGlvKTtcbiAgICAgIHJhZGlvLiRvZmYoJ2JsdXInLCB0aGlzLnJhZGlvQmx1cik7XG4gICAgICByYWRpby4kb2ZmKCdmb2N1cycsIHRoaXMucmFkaW9Gb2N1cyk7XG5cbiAgICAgIHZhciBpbmRleCA9IHRoaXMucmFkaW9zLmZpbmRJbmRleChmdW5jdGlvbiAocikge1xuICAgICAgICByZXR1cm4gciA9PT0gcmFkaW87XG4gICAgICB9KTtcblxuICAgICAgaWYgKGluZGV4ID4gLTEpIHRoaXMucmFkaW9zLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHJvbGU6ICdyYWRpb2dyb3VwJ1xuICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cCh0aGlzLiRzbG90cy5kZWZhdWx0LCBkYXRhKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjEzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdHJhbnNpdGlvbnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGFiX2ZvY3VzYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbnZhciBfdHlwZW9mID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIgPyBmdW5jdGlvbiAob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9IDogZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gb2JqICYmIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvYmogIT09IFN5bWJvbC5wcm90b3R5cGUgPyBcInN5bWJvbFwiIDogdHlwZW9mIG9iajsgfTtcblxuLy8gQ29tcG9uZW50c1xuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcmFkaW8nLFxuXG4gIGluaGVyaXRBdHRyczogZmFsc2UsXG5cbiAgaW5qZWN0OiBbJ2lzTWFuZGF0b3J5JywgJ25hbWUnXSxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfcmVnaXN0cmFibGVfX1tcImFcIiAvKiBpbmplY3QgKi9dKSgncmFkaW8nLCAndi1yYWRpbycsICd2LXJhZGlvLWdyb3VwJyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RhYl9mb2N1c2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICBwYXJlbnRFcnJvcjogZmFsc2VcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgdmFsdWU6IG51bGwsXG4gICAgbGFiZWw6IFN0cmluZ1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGFiLWZvY3VzZWQnOiB0aGlzLnRhYkZvY3VzZWQsXG4gICAgICAgICdyYWRpbyc6IHRydWUsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH07XG5cbiAgICAgIGlmICghdGhpcy5wYXJlbnRFcnJvcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBpY29uOiBmdW5jdGlvbiBpY29uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPyAncmFkaW9fYnV0dG9uX2NoZWNrZWQnIDogJ3JhZGlvX2J1dHRvbl91bmNoZWNrZWQnO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuSW5wdXQ6IGZ1bmN0aW9uIGdlbklucHV0KHJhZGlvKSB7XG4gICAgICB2YXIgdmFsdWUgPSBbJ3N0cmluZycsICdudW1iZXInXS5pbmNsdWRlcyhfdHlwZW9mKHRoaXMudmFsdWUpKSA/IHRoaXMudmFsdWUgOiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKTtcbiAgICAgIHZhciBpbnB1dCA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2lucHV0Jywge1xuICAgICAgICByZWY6ICdpbnB1dCcsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgZGlzcGxheTogJ25vbmUnXG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUgJiYgdGhpcy5uYW1lKCksXG4gICAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgICAgdHlwZTogJ3JhZGlvJyxcbiAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSwgdGhpcy4kYXR0cnMpXG4gICAgICB9LCBbdmFsdWVdKTtcblxuICAgICAgcmFkaW8ucHVzaChpbnB1dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIGNsYXNzOiAnaW5wdXQtZ3JvdXBfX2lucHV0J1xuICAgICAgfSwgcmFkaW8pO1xuICAgIH0sXG4gICAgZ2VuV3JhcHBlcjogZnVuY3Rpb24gZ2VuV3JhcHBlcihyYWRpbykge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5MYWJlbCgpKTtcbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5JbnB1dChyYWRpbykpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHJvbGU6ICdyYWRpbycsXG4gICAgICAgICAgJ2FyaWEtY2hlY2tlZCc6IHRoaXMuaXNBY3RpdmUgPyAndHJ1ZScgOiAnZmFsc2UnLFxuICAgICAgICAgICdhcmlhLWxhYmVsJzogdGhpcy5sYWJlbFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGtleWRvd246IGZ1bmN0aW9uIGtleWRvd24oZSkge1xuICAgICAgICAgICAgaWYgKFsxMywgMzJdLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIGJsdXI6IGZ1bmN0aW9uIGJsdXIoZSkge1xuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2JsdXInLCBlKTtcbiAgICAgICAgICAgIF90aGlzLnRhYkZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGNoaWxkcmVuKTtcbiAgICB9LFxuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogdGhpcy50b2dnbGVcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy4kc2xvdHMubGFiZWwgfHwgdGhpcy5sYWJlbCk7XG4gICAgfSxcbiAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSgpIHtcbiAgICAgIHZhciBtYW5kYXRvcnkgPSAhIXRoaXMuaXNNYW5kYXRvcnkgJiYgdGhpcy5pc01hbmRhdG9yeSgpO1xuXG4gICAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgKCF0aGlzLmlzQWN0aXZlIHx8ICFtYW5kYXRvcnkpKSB7XG4gICAgICAgIHRoaXMuJHJlZnMuaW5wdXQuY2hlY2tlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnJhZGlvLnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMucmFkaW8udW5yZWdpc3Rlcih0aGlzKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciB0cmFuc2l0aW9uID0gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJiXCIgLyogVkZhZGVUcmFuc2l0aW9uICovXSwge30sIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdpY29uLS1zZWxlY3Rpb24tY29udHJvbCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdpY29uLS1yYWRpbyc6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH0sXG4gICAgICBrZXk6IHRoaXMuaWNvbixcbiAgICAgIG9uOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgY2xpY2s6IHRoaXMudG9nZ2xlXG4gICAgICB9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgdGhpcy5pY29uKV0pO1xuXG4gICAgdmFyIHJpcHBsZSA9IHRoaXMucmlwcGxlID8gdGhpcy5nZW5SaXBwbGUoKSA6IG51bGw7XG5cbiAgICByZXR1cm4gdGhpcy5nZW5XcmFwcGVyKFt0cmFuc2l0aW9uLCByaXBwbGVdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd0YWItZm9jdXNhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0YWJGb2N1c2VkOiBmYWxzZVxuICAgIH07XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbGlkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjE2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjE2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc2xpZGVyc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19zbGlkZXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc2xpZGVyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXNsaWRlcicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2lucHV0X19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX2RpcmVjdGl2ZXNfY2xpY2tfb3V0c2lkZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXBwOiB7fSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknLFxuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAga2V5UHJlc3NlZDogMFxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIG1pbjoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIG1heDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDEwMFxuICAgIH0sXG4gICAgc3RlcDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDFcbiAgICB9LFxuICAgIHRpY2tzOiBCb29sZWFuLFxuICAgIHRodW1iQ29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHRodW1iTGFiZWw6IEJvb2xlYW4sXG4gICAgdHJhY2tDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgdmFsdWU6IFtOdW1iZXIsIFN0cmluZ11cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNsaWRlcic6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXJ0eSc6IHRoaXMuaW5wdXRXaWR0aCA+IDAsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXRpY2tzJzogIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5zdGVwTnVtZXJpYyAmJiB0aGlzLnRpY2tzXG4gICAgICB9O1xuICAgIH0sXG4gICAgY29tcHV0ZWRDb2xvcjogZnVuY3Rpb24gY29tcHV0ZWRDb2xvcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gbnVsbCA6IHRoaXMuY29sb3IgfHwgdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYWNrQ29sb3I6IGZ1bmN0aW9uIGNvbXB1dGVkVHJhY2tDb2xvcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gbnVsbCA6IHRoaXMudHJhY2tDb2xvciB8fCBudWxsO1xuICAgIH0sXG4gICAgY29tcHV0ZWRUaHVtYkNvbG9yOiBmdW5jdGlvbiBjb21wdXRlZFRodW1iQ29sb3IoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5pbnB1dFdpZHRoID8gbnVsbCA6IHRoaXMudGh1bWJDb2xvciB8fCB0aGlzLmNvbG9yIHx8IHRoaXMuZGVmYXVsdENvbG9yO1xuICAgIH0sXG4gICAgc3RlcE51bWVyaWM6IGZ1bmN0aW9uIHN0ZXBOdW1lcmljKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RlcCA+IDAgPyBwYXJzZUZsb2F0KHRoaXMuc3RlcCkgOiAwO1xuICAgIH0sXG5cbiAgICBpbnB1dFZhbHVlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgICB9LFxuICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsKSB7XG4gICAgICAgIHZhciBtaW4gPSB0aGlzLm1pbixcbiAgICAgICAgICAgIG1heCA9IHRoaXMubWF4O1xuXG4gICAgICAgIHZhbCA9IE1hdGgubWluKE1hdGgubWF4KHZhbCwgbWluKSwgbWF4KTtcblxuICAgICAgICAvLyBSb3VuZCB2YWx1ZSB0byBlbnN1cmUgdGhlXG4gICAgICAgIC8vIGVudGlyZSBzbGlkZXIgcmFuZ2UgY2FuXG4gICAgICAgIC8vIGJlIHNlbGVjdGVkIHdpdGggc3RlcFxuICAgICAgICB2YXIgdmFsdWUgPSB0aGlzLnJvdW5kVmFsdWUodmFsKTtcbiAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWx1ZTtcblxuICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMudmFsdWUpIHtcbiAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgaW50ZXJ2YWw6IGZ1bmN0aW9uIGludGVydmFsKCkge1xuICAgICAgcmV0dXJuIDEwMCAvICh0aGlzLm1heCAtIHRoaXMubWluKSAqIHRoaXMuc3RlcE51bWVyaWM7XG4gICAgfSxcbiAgICB0aHVtYlN0eWxlczogZnVuY3Rpb24gdGh1bWJTdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2l0aW9uOiB0aGlzLmtleVByZXNzZWQgPj0gMiA/ICdub25lJyA6ICcnLFxuICAgICAgICBsZWZ0OiB0aGlzLmlucHV0V2lkdGggKyAnJSdcbiAgICAgIH07XG4gICAgfSxcbiAgICB0aWNrQ29udGFpbmVyU3R5bGVzOiBmdW5jdGlvbiB0aWNrQ29udGFpbmVyU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKDAsIC01MCUpJ1xuICAgICAgfTtcbiAgICB9LFxuICAgIHRyYWNrUGFkZGluZzogZnVuY3Rpb24gdHJhY2tQYWRkaW5nKCkge1xuICAgICAgaWYgKHRoaXMudGh1bWJMYWJlbCAmJiB0aGlzLmlzQWN0aXZlKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIDYgKyAodGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5kaXNhYmxlZCA/IDMgOiAwKTtcbiAgICB9LFxuICAgIHRyYWNrU3R5bGVzOiBmdW5jdGlvbiB0cmFja1N0eWxlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRoaXMua2V5UHJlc3NlZCA+PSAyID8gJ25vbmUnIDogJycsXG4gICAgICAgIGxlZnQ6ICdjYWxjKCcgKyB0aGlzLmlucHV0V2lkdGggKyAnJSArICcgKyB0aGlzLnRyYWNrUGFkZGluZyArICdweCknLFxuICAgICAgICB3aWR0aDogJ2NhbGMoJyArICgxMDAgLSB0aGlzLmlucHV0V2lkdGgpICsgJyUgLSAnICsgdGhpcy50cmFja1BhZGRpbmcgKyAncHgpJ1xuICAgICAgfTtcbiAgICB9LFxuICAgIHRyYWNrRmlsbFN0eWxlczogZnVuY3Rpb24gdHJhY2tGaWxsU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy5rZXlQcmVzc2VkID49IDIgPyAnbm9uZScgOiAnJyxcbiAgICAgICAgd2lkdGg6ICdjYWxjKCcgKyB0aGlzLmlucHV0V2lkdGggKyAnJSAtICcgKyB0aGlzLnRyYWNrUGFkZGluZyArICdweCknXG4gICAgICB9O1xuICAgIH0sXG4gICAgbnVtVGlja3M6IGZ1bmN0aW9uIG51bVRpY2tzKCkge1xuICAgICAgcmV0dXJuIE1hdGguY2VpbCgodGhpcy5tYXggLSB0aGlzLm1pbikgLyB0aGlzLnN0ZXBOdW1lcmljKTtcbiAgICB9LFxuICAgIGlucHV0V2lkdGg6IGZ1bmN0aW9uIGlucHV0V2lkdGgoKSB7XG4gICAgICByZXR1cm4gKHRoaXMucm91bmRWYWx1ZSh0aGlzLmlucHV0VmFsdWUpIC0gdGhpcy5taW4pIC8gKHRoaXMubWF4IC0gdGhpcy5taW4pICogMTAwO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdmFsO1xuICAgIH0sXG4gICAgbWluOiBmdW5jdGlvbiBtaW4odmFsKSB7XG4gICAgICB2YWwgPiB0aGlzLmlucHV0VmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCBwYXJzZUZsb2F0KHZhbCkpO1xuICAgIH0sXG4gICAgbWF4OiBmdW5jdGlvbiBtYXgodmFsKSB7XG4gICAgICB2YWwgPCB0aGlzLmlucHV0VmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCBwYXJzZUZsb2F0KHZhbCkpO1xuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gcGFyc2VGbG9hdCh2YWwpO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICAvLyBXaXRob3V0IGEgdi1hcHAsIGlPUyBkb2VzIG5vdCB3b3JrIHdpdGggYm9keSBzZWxlY3RvcnNcbiAgICB0aGlzLmFwcCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWFwcF0nKSB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdNaXNzaW5nIHYtYXBwIG9yIGEgbm9uLWJvZHkgd3JhcHBpbmcgZWxlbWVudCB3aXRoIHRoZSBbZGF0YS1hcHBdIGF0dHJpYnV0ZScsIHRoaXMpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uTW91c2VEb3duOiBmdW5jdGlvbiBvbk1vdXNlRG93bihlKSB7XG4gICAgICB0aGlzLmtleVByZXNzZWQgPSAyO1xuICAgICAgdmFyIG9wdGlvbnMgPSB7IHBhc3NpdmU6IHRydWUgfTtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuXG4gICAgICBpZiAoJ3RvdWNoZXMnIGluIGUpIHtcbiAgICAgICAgdGhpcy5hcHAuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5vbk1vdXNlTW92ZSwgb3B0aW9ucyk7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfaGVscGVyc19fW1wiYVwiIC8qIGFkZE9uY2VFdmVudExpc3RlbmVyICovXSkodGhpcy5hcHAsICd0b3VjaGVuZCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYXBwLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25Nb3VzZU1vdmUsIG9wdGlvbnMpO1xuICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2hlbHBlcnNfX1tcImFcIiAvKiBhZGRPbmNlRXZlbnRMaXN0ZW5lciAqL10pKHRoaXMuYXBwLCAnbW91c2V1cCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uTW91c2VVcDogZnVuY3Rpb24gb25Nb3VzZVVwKCkge1xuICAgICAgdGhpcy5rZXlQcmVzc2VkID0gMDtcbiAgICAgIHZhciBvcHRpb25zID0geyBwYXNzaXZlOiB0cnVlIH07XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLmFwcC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLm9uTW91c2VNb3ZlLCBvcHRpb25zKTtcbiAgICAgIHRoaXMuYXBwLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25Nb3VzZU1vdmUsIG9wdGlvbnMpO1xuICAgIH0sXG4gICAgb25Nb3VzZU1vdmU6IGZ1bmN0aW9uIG9uTW91c2VNb3ZlKGUpIHtcbiAgICAgIHZhciBfJHJlZnMkdHJhY2skZ2V0Qm91bmQgPSB0aGlzLiRyZWZzLnRyYWNrLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgICAgIG9mZnNldExlZnQgPSBfJHJlZnMkdHJhY2skZ2V0Qm91bmQubGVmdCxcbiAgICAgICAgICB0cmFja1dpZHRoID0gXyRyZWZzJHRyYWNrJGdldEJvdW5kLndpZHRoO1xuXG4gICAgICB2YXIgY2xpZW50WCA9ICd0b3VjaGVzJyBpbiBlID8gZS50b3VjaGVzWzBdLmNsaWVudFggOiBlLmNsaWVudFg7XG4gICAgICB2YXIgbGVmdCA9IE1hdGgubWluKE1hdGgubWF4KChjbGllbnRYIC0gb2Zmc2V0TGVmdCkgLyB0cmFja1dpZHRoLCAwKSwgMSk7XG5cbiAgICAgIGlmIChjbGllbnRYID49IG9mZnNldExlZnQgLSA4ICYmIGNsaWVudFggPD0gb2Zmc2V0TGVmdCArIHRyYWNrV2lkdGggKyA4KSB7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHBhcnNlRmxvYXQodGhpcy5taW4pICsgbGVmdCAqICh0aGlzLm1heCAtIHRoaXMubWluKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uS2V5RG93bjogZnVuY3Rpb24gb25LZXlEb3duKGUpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8ICFbMzMsIDM0LCAzNSwgMzYsIDM3LCAzOV0uaW5jbHVkZXMoZS5rZXlDb2RlKSkgcmV0dXJuO1xuXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB2YXIgc3RlcCA9IHRoaXMuc3RlcE51bWVyaWMgfHwgMTtcbiAgICAgIHZhciBzdGVwcyA9ICh0aGlzLm1heCAtIHRoaXMubWluKSAvIHN0ZXA7XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzNyB8fCBlLmtleUNvZGUgPT09IDM5KSB7XG4gICAgICAgIC8vIExlZnQvcmlnaHRcbiAgICAgICAgdGhpcy5rZXlQcmVzc2VkICs9IDE7XG5cbiAgICAgICAgdmFyIGRpcmVjdGlvbiA9IGUua2V5Q29kZSA9PT0gMzcgPyAtMSA6IDE7XG4gICAgICAgIHZhciBtdWx0aXBsaWVyID0gZS5zaGlmdEtleSA/IDMgOiBlLmN0cmxLZXkgPyAyIDogMTtcblxuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmlucHV0VmFsdWUgKyBkaXJlY3Rpb24gKiBzdGVwICogbXVsdGlwbGllcjtcbiAgICAgIH0gZWxzZSBpZiAoZS5rZXlDb2RlID09PSAzNikge1xuICAgICAgICAvLyBIb21lXG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHBhcnNlRmxvYXQodGhpcy5taW4pO1xuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDM1KSB7XG4gICAgICAgIC8vIEVuZFxuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSBwYXJzZUZsb2F0KHRoaXMubWF4KTtcbiAgICAgIH0gZWxzZSAvKiBpZiAoZS5rZXlDb2RlID09PSAzMyB8fCBlLmtleUNvZGUgPT09IDM0KSAqL3tcbiAgICAgICAgICAvLyBQYWdlIHVwL2Rvd25cbiAgICAgICAgICB2YXIgX2RpcmVjdGlvbiA9IGUua2V5Q29kZSA9PT0gMzQgPyAtMSA6IDE7XG4gICAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5pbnB1dFZhbHVlIC0gX2RpcmVjdGlvbiAqIHN0ZXAgKiAoc3RlcHMgPiAxMDAgPyBzdGVwcyAvIDEwIDogMTApO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBvbktleVVwOiBmdW5jdGlvbiBvbktleVVwKGUpIHtcbiAgICAgIHRoaXMua2V5UHJlc3NlZCA9IDA7XG4gICAgfSxcbiAgICBzbGlkZXJNb3ZlOiBmdW5jdGlvbiBzbGlkZXJNb3ZlKGUpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSkge1xuICAgICAgICB0aGlzLm9uTW91c2VNb3ZlKGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2VuVGh1bWJMYWJlbDogZnVuY3Rpb24gZ2VuVGh1bWJMYWJlbChoKSB7XG4gICAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX3RyYW5zaXRpb25zX19bXCJjXCIgLyogVlNjYWxlVHJhbnNpdGlvbiAqL10sIHtcbiAgICAgICAgcHJvcHM6IHsgb3JpZ2luOiAnYm90dG9tIGNlbnRlcicgfVxuICAgICAgfSwgW2goJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RodW1iLS1sYWJlbF9fY29udGFpbmVyJyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfV1cbiAgICAgIH0sIFtoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190aHVtYi0tbGFiZWwnLFxuICAgICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHt9LCB0aGlzLmNvbXB1dGVkVGh1bWJDb2xvcilcbiAgICAgIH0sIFtoKCdzcGFuJywge30sIHRoaXMuaW5wdXRWYWx1ZSldKV0pXSk7XG4gICAgfSxcbiAgICByb3VuZFZhbHVlOiBmdW5jdGlvbiByb3VuZFZhbHVlKHZhbHVlKSB7XG4gICAgICBpZiAoIXRoaXMuc3RlcE51bWVyaWMpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGb3JtYXQgaW5wdXQgdmFsdWUgdXNpbmcgdGhlIHNhbWUgbnVtYmVyXG4gICAgICAvLyBvZiBkZWNpbWFscyBwbGFjZXMgYXMgaW4gdGhlIHN0ZXAgcHJvcFxuICAgICAgdmFyIHRyaW1tZWRTdGVwID0gdGhpcy5zdGVwLnRvU3RyaW5nKCkudHJpbSgpO1xuICAgICAgdmFyIGRlY2ltYWxzID0gdHJpbW1lZFN0ZXAuaW5kZXhPZignLicpID4gLTEgPyB0cmltbWVkU3RlcC5sZW5ndGggLSB0cmltbWVkU3RlcC5pbmRleE9mKCcuJykgLSAxIDogMDtcbiAgICAgIHJldHVybiAxICogKE1hdGgucm91bmQodmFsdWUgLyB0aGlzLnN0ZXBOdW1lcmljKSAqIHRoaXMuc3RlcE51bWVyaWMpLnRvRml4ZWQoZGVjaW1hbHMpO1xuICAgIH0sXG4gICAgZ2VuVGh1bWJDb250YWluZXI6IGZ1bmN0aW9uIGdlblRodW1iQ29udGFpbmVyKGgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190aHVtYicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe30sIHRoaXMuY29tcHV0ZWRUaHVtYkNvbG9yKVxuICAgICAgfSkpO1xuXG4gICAgICB0aGlzLnRodW1iTGFiZWwgJiYgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRodW1iTGFiZWwoaCkpO1xuXG4gICAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdGh1bWItY29udGFpbmVyJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdzbGlkZXJfX3RodW1iLWNvbnRhaW5lci0tbGFiZWwnOiB0aGlzLnRodW1iTGFiZWxcbiAgICAgICAgfSxcbiAgICAgICAgc3R5bGU6IHRoaXMudGh1bWJTdHlsZXMsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgdG91Y2hzdGFydDogdGhpcy5vbk1vdXNlRG93bixcbiAgICAgICAgICBtb3VzZWRvd246IHRoaXMub25Nb3VzZURvd25cbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAndGh1bWInXG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfSxcbiAgICBnZW5TdGVwczogZnVuY3Rpb24gZ2VuU3RlcHMoaCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIHRpY2tzID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSh0aGlzLm51bVRpY2tzICsgMSkubWFwKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHZhciBzcGFuID0gaCgnc3BhbicsIHtcbiAgICAgICAgICBrZXk6IGksXG4gICAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RpY2snLFxuICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBsZWZ0OiBpICogKDEwMCAvIF90aGlzLm51bVRpY2tzKSArICclJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHNwYW47XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RpY2tzLWNvbnRhaW5lcicsXG4gICAgICAgIHN0eWxlOiB0aGlzLnRpY2tDb250YWluZXJTdHlsZXNcbiAgICAgIH0sIHRpY2tzKTtcbiAgICB9LFxuICAgIGdlblRyYWNrQ29udGFpbmVyOiBmdW5jdGlvbiBnZW5UcmFja0NvbnRhaW5lcihoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdHJhY2snLFxuICAgICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHt9LCB0aGlzLmNvbXB1dGVkVHJhY2tDb2xvciksXG4gICAgICAgIHN0eWxlOiB0aGlzLnRyYWNrU3R5bGVzXG4gICAgICB9KSwgaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdHJhY2stZmlsbCcsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoKSxcbiAgICAgICAgc3R5bGU6IHRoaXMudHJhY2tGaWxsU3R5bGVzXG4gICAgICB9KV07XG5cbiAgICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190cmFja19fY29udGFpbmVyJyxcbiAgICAgICAgcmVmOiAndHJhY2snXG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuXG4gICAgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRyYWNrQ29udGFpbmVyKGgpKTtcbiAgICB0aGlzLnN0ZXAgJiYgdGhpcy50aWNrcyAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuU3RlcHMoaCkpO1xuICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5UaHVtYkNvbnRhaW5lcihoKSk7XG5cbiAgICB2YXIgc2xpZGVyID0gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXInXG4gICAgfSwgY2hpbGRyZW4pO1xuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbc2xpZGVyXSwge1xuICAgICAgYXR0cnM6IHtcbiAgICAgICAgcm9sZTogJ3NsaWRlcicsXG4gICAgICAgIHRhYmluZGV4OiB0aGlzLmRpc2FibGVkID8gLTEgOiB0aGlzLnRhYmluZGV4XG4gICAgICB9LFxuICAgICAgb246IE9iamVjdC5hc3NpZ24oe30sIHtcbiAgICAgICAgbW91c2V1cDogdGhpcy5zbGlkZXJNb3ZlLFxuICAgICAgICBrZXlkb3duOiB0aGlzLm9uS2V5RG93bixcbiAgICAgICAga2V5dXA6IHRoaXMub25LZXlVcFxuICAgICAgfSwgdGhpcy4kbGlzdGVuZXJzKSxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczIuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjE3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjE4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNuYWNrYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxOSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNuYWNrYmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU25hY2tiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbmFja2Jhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU25hY2tiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjE5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc25hY2tiYXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NuYWNrYmFyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NuYWNrYmFyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMik7XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc25hY2tiYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19wb3NpdGlvbmFibGVfX1tcImJcIiAvKiBmYWN0b3J5ICovXSkoWydhYnNvbHV0ZScsICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnLCAncmlnaHQnXSldLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGl2ZVRpbWVvdXQ6IHt9XG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXV0b0hlaWdodDogQm9vbGVhbixcbiAgICBtdWx0aUxpbmU6IEJvb2xlYW4sXG4gICAgLy8gVE9ETzogY2hhbmdlIHRoaXMgdG8gY2xvc2VEZWxheSB0byBtYXRjaCBvdGhlciBBUEkgaW4gZGVsYXlhYmxlLmpzXG4gICAgdGltZW91dDoge1xuICAgICAgdHlwZTogTnVtYmVyLFxuICAgICAgZGVmYXVsdDogNjAwMFxuICAgIH0sXG4gICAgdmVydGljYWw6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnc25hY2stLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdzbmFjay0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAnc25hY2stLWF1dG8taGVpZ2h0JzogdGhpcy5hdXRvSGVpZ2h0LFxuICAgICAgICAnc25hY2stLWJvdHRvbSc6IHRoaXMuYm90dG9tIHx8ICF0aGlzLnRvcCxcbiAgICAgICAgJ3NuYWNrLS1sZWZ0JzogdGhpcy5sZWZ0LFxuICAgICAgICAnc25hY2stLW11bHRpLWxpbmUnOiB0aGlzLm11bHRpTGluZSAmJiAhdGhpcy52ZXJ0aWNhbCxcbiAgICAgICAgJ3NuYWNrLS1yaWdodCc6IHRoaXMucmlnaHQsXG4gICAgICAgICdzbmFjay0tdG9wJzogdGhpcy50b3AsXG4gICAgICAgICdzbmFjay0tdmVydGljYWwnOiB0aGlzLnZlcnRpY2FsXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSgpIHtcbiAgICAgIHRoaXMuc2V0VGltZW91dCgpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgc2V0VGltZW91dDogZnVuY3Rpb24gKF9zZXRUaW1lb3V0KSB7XG4gICAgICBmdW5jdGlvbiBzZXRUaW1lb3V0KCkge1xuICAgICAgICByZXR1cm4gX3NldFRpbWVvdXQuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgIH1cblxuICAgICAgc2V0VGltZW91dC50b1N0cmluZyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF9zZXRUaW1lb3V0LnRvU3RyaW5nKCk7XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gc2V0VGltZW91dDtcbiAgICB9KGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmFjdGl2ZVRpbWVvdXQpO1xuXG4gICAgICBpZiAodGhpcy5pc0FjdGl2ZSAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgfSwgdGhpcy50aW1lb3V0KTtcbiAgICAgIH1cbiAgICB9KVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5zZXRUaW1lb3V0KCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbmFjaycsXG4gICAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXMsXG4gICAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICAgIH0sIFtoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc25hY2tfX3dyYXBwZXInLFxuICAgICAgICBjbGFzczogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpXG4gICAgICB9LCBbaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NuYWNrX19jb250ZW50J1xuICAgICAgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKV0pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaCgndHJhbnNpdGlvbicsIHtcbiAgICAgIGF0dHJzOiB7IG5hbWU6ICdzbmFjay10cmFuc2l0aW9uJyB9XG4gICAgfSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3BlZWREaWFsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyMik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3BlZWREaWFsX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIyMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NwZWVkX2RpYWxfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3BlZWRfZGlhbF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NwZWVkX2RpYWxfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdHJhbnNpdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zcGVlZC1kaWFsJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19wb3NpdGlvbmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc190cmFuc2l0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7IENsaWNrT3V0c2lkZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIHByb3BzOiB7XG4gICAgZGlyZWN0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndG9wJyxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHZhbCkge1xuICAgICAgICByZXR1cm4gWyd0b3AnLCAncmlnaHQnLCAnYm90dG9tJywgJ2xlZnQnXS5pbmNsdWRlcyh2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb3Blbk9uSG92ZXI6IEJvb2xlYW4sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3NjYWxlLXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe1xuICAgICAgICAnc3BlZWQtZGlhbCc6IHRydWUsXG4gICAgICAgICdzcGVlZC1kaWFsLS10b3AnOiB0aGlzLnRvcCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAnc3BlZWQtZGlhbC0tbGVmdCc6IHRoaXMubGVmdCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWZpeGVkJzogdGhpcy5maXhlZFxuICAgICAgfSwgJ3NwZWVkLWRpYWwtLWRpcmVjdGlvbi0nICsgdGhpcy5kaXJlY3Rpb24sIHRydWUpO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1dLFxuICAgICAgb246IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9ICFfdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5vcGVuT25Ib3Zlcikge1xuICAgICAgZGF0YS5vbi5tb3VzZWVudGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgfTtcbiAgICAgIGRhdGEub24ubW91c2VsZWF2ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICBjaGlsZHJlbiA9ICh0aGlzLiRzbG90cy5kZWZhdWx0IHx8IFtdKS5tYXAoZnVuY3Rpb24gKGIsIGkpIHtcbiAgICAgICAgYi5rZXkgPSBpO1xuXG4gICAgICAgIHJldHVybiBiO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdmFyIGxpc3QgPSBoKCd0cmFuc2l0aW9uLWdyb3VwJywge1xuICAgICAgJ2NsYXNzJzogJ3NwZWVkLWRpYWxfX2xpc3QnLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgbmFtZTogdGhpcy50cmFuc2l0aW9uLFxuICAgICAgICBtb2RlOiB0aGlzLm1vZGUsXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIHRhZzogJ2RpdidcbiAgICAgIH1cbiAgICB9LCBjaGlsZHJlbik7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgW3RoaXMuJHNsb3RzLmFjdGl2YXRvciwgbGlzdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlN0ZXBwZXJIZWFkZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWU3RlcHBlckl0ZW1zICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WU3RlcHBlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlN0ZXBwZXJTdGVwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WU3RlcHBlckNvbnRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjI4KTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZTdGVwcGVyICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWU3RlcHBlckNvbnRlbnQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZTdGVwcGVyU3RlcCAqL1xuXG5cblxuXG5cbnZhciBWU3RlcHBlckhlYWRlciA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3RlcHBlcl9faGVhZGVyJyk7XG52YXIgVlN0ZXBwZXJJdGVtcyA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3RlcHBlcl9faXRlbXMnKTtcblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZTdGVwcGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WU3RlcHBlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlN0ZXBwZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WU3RlcHBlckNvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZTdGVwcGVyQ29udGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZTdGVwcGVyU3RlcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlN0ZXBwZXJTdGVwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZTdGVwcGVySGVhZGVyLm5hbWUsIFZTdGVwcGVySGVhZGVyKTtcbiAgVnVlLmNvbXBvbmVudChWU3RlcHBlckl0ZW1zLm5hbWUsIFZTdGVwcGVySXRlbXMpO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZTdGVwcGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIyNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N0ZXBwZXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N0ZXBwZXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3RlcHBlcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdGVwcGVyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RlcENsaWNrOiB0aGlzLnN0ZXBDbGlja1xuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0VmFsdWU6IG51bGwsXG4gICAgICBpc0Jvb3RlZDogZmFsc2UsXG4gICAgICBzdGVwczogW10sXG4gICAgICBjb250ZW50OiBbXSxcbiAgICAgIGlzUmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBub25MaW5lYXI6IEJvb2xlYW4sXG4gICAgYWx0TGFiZWxzOiBCb29sZWFuLFxuICAgIHZlcnRpY2FsOiBCb29sZWFuLFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3N0ZXBwZXInOiB0cnVlLFxuICAgICAgICAnc3RlcHBlci0taXMtYm9vdGVkJzogdGhpcy5pc0Jvb3RlZCxcbiAgICAgICAgJ3N0ZXBwZXItLXZlcnRpY2FsJzogdGhpcy52ZXJ0aWNhbCxcbiAgICAgICAgJ3N0ZXBwZXItLWFsdC1sYWJlbHMnOiB0aGlzLmFsdExhYmVscyxcbiAgICAgICAgJ3N0ZXBwZXItLW5vbi1saW5lYXInOiB0aGlzLm5vbkxpbmVhcixcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpbnB1dFZhbHVlOiBmdW5jdGlvbiBpbnB1dFZhbHVlKHZhbCwgcHJldikge1xuICAgICAgdGhpcy5pc1JldmVyc2UgPSBOdW1iZXIodmFsKSA8IE51bWJlcihwcmV2KTtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5zdGVwcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5zdGVwc1tpbmRleF0udG9nZ2xlKHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG4gICAgICBmb3IgKHZhciBfaW5kZXggPSB0aGlzLmNvbnRlbnQubGVuZ3RoOyAtLV9pbmRleCA+PSAwOykge1xuICAgICAgICB0aGlzLmNvbnRlbnRbX2luZGV4XS50b2dnbGUodGhpcy5pbnB1dFZhbHVlLCB0aGlzLmlzUmV2ZXJzZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHByZXYgJiYgKHRoaXMuaXNCb290ZWQgPSB0cnVlKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuZ2V0U3RlcHMoKTtcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlucHV0VmFsdWUgPSBfdGhpcy52YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuZ2V0U3RlcHMoKTtcblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMudmFsdWUgfHwgdGhpcy5zdGVwc1swXS5zdGVwIHx8IDE7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgZ2V0U3RlcHM6IGZ1bmN0aW9uIGdldFN0ZXBzKCkge1xuICAgICAgdGhpcy5zdGVwcyA9IFtdO1xuICAgICAgdGhpcy5jb250ZW50ID0gW107XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy4kY2hpbGRyZW4ubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHZhciBjaGlsZCA9IHRoaXMuJGNoaWxkcmVuW2luZGV4XTtcbiAgICAgICAgLy8gVE9ETzogdXNlIHRoZSBjb21wb25lbnQgbmFtZSBpbnN0ZWFkIG9mIHRhZ1xuICAgICAgICBpZiAoY2hpbGQuJG9wdGlvbnMuX2NvbXBvbmVudFRhZyA9PT0gJ3Ytc3RlcHBlci1zdGVwJykge1xuICAgICAgICAgIHRoaXMuc3RlcHMucHVzaChjaGlsZCk7XG4gICAgICAgIH0gZWxzZSBpZiAoY2hpbGQuJG9wdGlvbnMuX2NvbXBvbmVudFRhZyA9PT0gJ3Ytc3RlcHBlci1jb250ZW50Jykge1xuICAgICAgICAgIGNoaWxkLmlzVmVydGljYWwgPSB0aGlzLnZlcnRpY2FsO1xuICAgICAgICAgIHRoaXMuY29udGVudC5wdXNoKGNoaWxkKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgc3RlcENsaWNrOiBmdW5jdGlvbiBzdGVwQ2xpY2soc3RlcCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHRoaXMuZ2V0U3RlcHMoKTtcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5pbnB1dFZhbHVlID0gc3RlcDtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfcmlwcGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdGVwcGVyLXN0ZXAnLFxuXG4gIGRpcmVjdGl2ZXM6IHsgUmlwcGxlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfcmlwcGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBpbmplY3Q6IFsnc3RlcENsaWNrJ10sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAgaXNJbmFjdGl2ZTogdHJ1ZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGNvbXBsZXRlOiBCb29sZWFuLFxuICAgIGNvbXBsZXRlSWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2NoZWNrJ1xuICAgIH0sXG4gICAgZWRpdEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdlZGl0J1xuICAgIH0sXG4gICAgZXJyb3JJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnd2FybmluZydcbiAgICB9LFxuICAgIGVkaXRhYmxlOiBCb29sZWFuLFxuICAgIHJ1bGVzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBzdGVwOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAnOiB0cnVlLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlJzogdGhpcy5lZGl0YWJsZSxcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAtLWluYWN0aXZlJzogdGhpcy5pc0luYWN0aXZlLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tZXJyb3InOiB0aGlzLmhhc0Vycm9yLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tY29tcGxldGUnOiB0aGlzLmNvbXBsZXRlLFxuICAgICAgICAnZXJyb3ItLXRleHQnOiB0aGlzLmhhc0Vycm9yXG4gICAgICB9O1xuICAgIH0sXG4gICAgaGFzRXJyb3I6IGZ1bmN0aW9uIGhhc0Vycm9yKCkge1xuICAgICAgcmV0dXJuIHRoaXMucnVsZXMuc29tZShmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gaSgpICE9PSB0cnVlO1xuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgaWYgKHRoaXMuZWRpdGFibGUpIHtcbiAgICAgICAgdGhpcy5zdGVwQ2xpY2sodGhpcy5zdGVwKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHN0ZXApIHtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSBzdGVwLnRvU3RyaW5nKCkgPT09IHRoaXMuc3RlcC50b1N0cmluZygpO1xuICAgICAgdGhpcy5pc0luYWN0aXZlID0gTnVtYmVyKHN0ZXApIDwgTnVtYmVyKHRoaXMuc3RlcCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdyaXBwbGUnLFxuICAgICAgICB2YWx1ZTogdGhpcy5lZGl0YWJsZVxuICAgICAgfV0sXG4gICAgICBvbjogeyBjbGljazogdGhpcy5jbGljayB9XG4gICAgfTtcbiAgICB2YXIgc3RlcENvbnRlbnQgPSB2b2lkIDA7XG5cbiAgICBpZiAodGhpcy5oYXNFcnJvcikge1xuICAgICAgc3RlcENvbnRlbnQgPSBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHt9LCB0aGlzLmVycm9ySWNvbildO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wbGV0ZSkge1xuICAgICAgaWYgKHRoaXMuZWRpdGFibGUpIHtcbiAgICAgICAgc3RlcENvbnRlbnQgPSBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHt9LCB0aGlzLmVkaXRJY29uKV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGVwQ29udGVudCA9IFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge30sIHRoaXMuY29tcGxldGVJY29uKV07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0ZXBDb250ZW50ID0gdGhpcy5zdGVwO1xuICAgIH1cblxuICAgIHZhciBzdGVwID0gaCgnc3BhbicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnc3RlcHBlcl9fc3RlcF9fc3RlcCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdwcmltYXJ5JzogIXRoaXMuaGFzRXJyb3IgJiYgKHRoaXMuY29tcGxldGUgfHwgdGhpcy5pc0FjdGl2ZSlcbiAgICAgIH1cbiAgICB9LCBzdGVwQ29udGVudCk7XG5cbiAgICB2YXIgbGFiZWwgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3N0ZXBwZXJfX2xhYmVsJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIGRhdGEsIFtzdGVwLCBsYWJlbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc3RlcHBlci1jb250ZW50JyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWlnaHQ6IDAsXG4gICAgICAvLyBNdXN0IGJlIG51bGwgdG8gYWxsb3dcbiAgICAgIC8vIHByZXZpb3VzIGNvbXBhcmlzb25cbiAgICAgIGlzQWN0aXZlOiBudWxsLFxuICAgICAgaXNSZXZlcnNlOiBmYWxzZSxcbiAgICAgIGlzVmVydGljYWw6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgc3RlcDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdzdGVwcGVyX19jb250ZW50JzogdHJ1ZVxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNSZXZlcnNlID8gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fW1wiZVwiIC8qIFZUYWJSZXZlcnNlVHJhbnNpdGlvbiAqL10gOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJmXCIgLyogVlRhYlRyYW5zaXRpb24gKi9dO1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbCkgcmV0dXJuIHt9O1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6ICFpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLmhlaWdodCArICdweCcgOiB0aGlzLmhlaWdodFxuICAgICAgfTtcbiAgICB9LFxuICAgIHdyYXBwZXJDbGFzc2VzOiBmdW5jdGlvbiB3cmFwcGVyQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdzdGVwcGVyX193cmFwcGVyJzogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoY3VycmVudCwgcHJldmlvdXMpIHtcbiAgICAgIC8vIElmIGFjdGl2ZSBhbmQgdGhlIHByZXZpb3VzIHN0YXRlXG4gICAgICAvLyB3YXMgbnVsbCwgaXMganVzdCBib290aW5nIHVwXG4gICAgICBpZiAoY3VycmVudCAmJiBwcmV2aW91cyA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhlaWdodCA9ICdhdXRvJztcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmlzVmVydGljYWwpIHJldHVybjtcblxuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUpIHRoaXMuZW50ZXIoKTtlbHNlIHRoaXMubGVhdmUoKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLiRyZWZzLndyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIHRoaXMub25UcmFuc2l0aW9uLCBmYWxzZSk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy4kcmVmcy53cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCB0aGlzLm9uVHJhbnNpdGlvbiwgZmFsc2UpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uVHJhbnNpdGlvbjogZnVuY3Rpb24gb25UcmFuc2l0aW9uKGUpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSB8fCBlLnByb3BlcnR5TmFtZSAhPT0gJ2hlaWdodCcpIHJldHVybjtcblxuICAgICAgdGhpcy5oZWlnaHQgPSAnYXV0byc7XG4gICAgfSxcbiAgICBlbnRlcjogZnVuY3Rpb24gZW50ZXIoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgc2Nyb2xsSGVpZ2h0ID0gMDtcblxuICAgICAgLy8gUmVuZGVyIGJ1ZyB3aXRoIGhlaWdodFxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2Nyb2xsSGVpZ2h0ID0gX3RoaXMuJHJlZnMud3JhcHBlci5zY3JvbGxIZWlnaHQ7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5oZWlnaHQgPSAwO1xuXG4gICAgICAvLyBHaXZlIHRoZSBjb2xsYXBzaW5nIGVsZW1lbnQgdGltZSB0byBjb2xsYXBzZVxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy5oZWlnaHQgPSBzY3JvbGxIZWlnaHQgfHwgJ2F1dG8nO1xuICAgICAgfSwgNDUwKTtcbiAgICB9LFxuICAgIGxlYXZlOiBmdW5jdGlvbiBsZWF2ZSgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB0aGlzLmhlaWdodCA9IHRoaXMuJHJlZnMud3JhcHBlci5jbGllbnRIZWlnaHQ7XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5oZWlnaHQgPSAwO1xuICAgICAgfSwgMTApO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoc3RlcCwgcmV2ZXJzZSkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHN0ZXAudG9TdHJpbmcoKSA9PT0gdGhpcy5zdGVwLnRvU3RyaW5nKCk7XG4gICAgICB0aGlzLmlzUmV2ZXJzZSA9IHJldmVyc2U7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY29udGVudERhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXNcbiAgICB9O1xuICAgIHZhciB3cmFwcGVyRGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMud3JhcHBlckNsYXNzZXMsXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICByZWY6ICd3cmFwcGVyJ1xuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbCkge1xuICAgICAgY29udGVudERhdGEuZGlyZWN0aXZlcyA9IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dO1xuICAgIH1cblxuICAgIHZhciB3cmFwcGVyID0gaCgnZGl2Jywgd3JhcHBlckRhdGEsIFt0aGlzLiRzbG90cy5kZWZhdWx0XSk7XG4gICAgdmFyIGNvbnRlbnQgPSBoKCdkaXYnLCBjb250ZW50RGF0YSwgW3dyYXBwZXJdKTtcblxuICAgIHJldHVybiBoKHRoaXMuY29tcHV0ZWRUcmFuc2l0aW9uLCB7XG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2NvbnRlbnRdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjI5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN3aXRjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzApO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc3dpdGNoX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3N3aXRjaF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3N3aXRjaF9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JpcHBsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3NlbGVjdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXN3aXRjaCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zZWxlY3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgVG91Y2g6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIHN3aXRjaCc6IHRydWVcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICAgIGNsYXNzZXNbJ2Vycm9yLS10ZXh0J10gPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgcmlwcGxlQ2xhc3NlczogZnVuY3Rpb24gcmlwcGxlQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmUnOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9O1xuICAgIH0sXG4gICAgY29udGFpbmVyQ2xhc3NlczogZnVuY3Rpb24gY29udGFpbmVyQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXInOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fY29udGFpbmVyLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXItLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfTtcbiAgICB9LFxuICAgIHRvZ2dsZUNsYXNzZXM6IGZ1bmN0aW9uIHRvZ2dsZUNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xlJzogdHJ1ZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZS0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIG9uU3dpcGVMZWZ0OiBmdW5jdGlvbiBvblN3aXBlTGVmdCgpIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSB0aGlzLnRvZ2dsZSgpO1xuICAgIH0sXG4gICAgb25Td2lwZVJpZ2h0OiBmdW5jdGlvbiBvblN3aXBlUmlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNBY3RpdmUpIHRoaXMudG9nZ2xlKCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY29udGFpbmVyID0gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jb250YWluZXJDbGFzc2VzXG4gICAgfSwgW2goJ2RpdicsIHsgJ2NsYXNzJzogdGhpcy50b2dnbGVDbGFzc2VzIH0pLCB0aGlzLmdlblJpcHBsZSh7XG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIGxlZnQ6IHRoaXMub25Td2lwZUxlZnQsXG4gICAgICAgICAgcmlnaHQ6IHRoaXMub25Td2lwZVJpZ2h0XG4gICAgICAgIH1cbiAgICAgIH1dXG4gICAgfSldKTtcblxuICAgIHJldHVybiB0aGlzLmdlbklucHV0R3JvdXAoW2NvbnRhaW5lcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3lzdGVtQmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzMyk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3lzdGVtQmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIzMyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N5c3RlbV9iYXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjM0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N5c3RlbV9iYXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3lzdGVtX2JhcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19hcHBsaWNhdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc3lzdGVtLWJhcicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnYmFyJywgWydoZWlnaHQnLCAnd2luZG93J10pLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGxpZ2h0c091dDogQm9vbGVhbixcbiAgICBzdGF0dXM6IEJvb2xlYW4sXG4gICAgd2luZG93OiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICdzeXN0ZW0tYmFyLS1saWdodHMtb3V0JzogdGhpcy5saWdodHNPdXQsXG4gICAgICAgICdzeXN0ZW0tYmFyLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICdzeXN0ZW0tYmFyLS1maXhlZCc6ICF0aGlzLmFic29sdXRlICYmICh0aGlzLmFwcCB8fCB0aGlzLmZpeGVkKSxcbiAgICAgICAgJ3N5c3RlbS1iYXItLXN0YXR1cyc6IHRoaXMuc3RhdHVzLFxuICAgICAgICAnc3lzdGVtLWJhci0td2luZG93JzogdGhpcy53aW5kb3dcbiAgICAgIH0sIHRoaXMudGhlbWVDbGFzc2VzKSk7XG4gICAgfSxcbiAgICBjb21wdXRlZEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRIZWlnaHQoKSB7XG4gICAgICBpZiAodGhpcy5oZWlnaHQpIHJldHVybiBwYXJzZUludCh0aGlzLmhlaWdodCk7XG5cbiAgICAgIHJldHVybiB0aGlzLndpbmRvdyA/IDMyIDogMjQ7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIGFwcGxpY2F0aW9uIGxheW91dFxuICAgICAqXG4gICAgICogQHJldHVybiB7bnVtYmVyfVxuICAgICAqL1xuICAgIHVwZGF0ZUFwcGxpY2F0aW9uOiBmdW5jdGlvbiB1cGRhdGVBcHBsaWNhdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkSGVpZ2h0O1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3N5c3RlbS1iYXInLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmNvbXB1dGVkSGVpZ2h0ICsgJ3B4J1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIzNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDIzNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGFiX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZUYWJJdGVtX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0NCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WVGFic1NsaWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2OCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWVGFicyAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRhYkl0ZW0gKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWJzSXRlbXMgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWJzU2xpZGVyICovXG5cblxuXG5cblxuXG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRhYnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGFic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVlRhYkl0ZW1fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZUYWJJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVlRhYnNTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZUYWJzU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGFic19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190YWJzX2NvbXB1dGVkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGFic19nZW5lcmF0b3JzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGFic19wcm9wc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RhYnNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190YWJzX3dhdGNoZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX3Nzcl9ib290YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX2RpcmVjdGl2ZXNfcmVzaXplX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuLy8gU3R5bGVzXG5cblxuLy8gQ29tcG9uZW50IGxldmVsIG1peGluc1xuXG5cblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYnMnLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgndGFicycpLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfc3NyX2Jvb3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RhYnNfY29tcHV0ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGFic19wcm9wc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190YWJzX2dlbmVyYXRvcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGFic190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190YWJzX3dhdGNoZXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19kaXJlY3RpdmVzX3Jlc2l6ZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLFxuICAgIFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBwcm92aWRlOiBmdW5jdGlvbiBwcm92aWRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0YWJDbGljazogdGhpcy50YWJDbGljayxcbiAgICAgIHRhYlByb3h5OiB0aGlzLnRhYlByb3h5LFxuICAgICAgcmVnaXN0ZXJJdGVtczogdGhpcy5yZWdpc3Rlckl0ZW1zLFxuICAgICAgdW5yZWdpc3Rlckl0ZW1zOiB0aGlzLnVucmVnaXN0ZXJJdGVtc1xuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJhcjogW10sXG4gICAgICBjb250ZW50OiBbXSxcbiAgICAgIGlzQm9vdGVkOiBmYWxzZSxcbiAgICAgIGlzT3ZlcmZsb3dpbmc6IGZhbHNlLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgbmV4dEljb25WaXNpYmxlOiBmYWxzZSxcbiAgICAgIHByZXZJY29uVmlzaWJsZTogZmFsc2UsXG4gICAgICByZXNpemVUaW1lb3V0OiBudWxsLFxuICAgICAgcmV2ZXJzZTogZmFsc2UsXG4gICAgICBzY3JvbGxPZmZzZXQ6IDAsXG4gICAgICBzbGlkZXJXaWR0aDogbnVsbCxcbiAgICAgIHNsaWRlckxlZnQ6IG51bGwsXG4gICAgICBzdGFydFg6IDAsXG4gICAgICB0YWJzQ29udGFpbmVyOiBudWxsLFxuICAgICAgdGFiczogW10sXG4gICAgICB0YWJJdGVtczogbnVsbCxcbiAgICAgIHRyYW5zaXRpb25UaW1lOiAzMDAsXG4gICAgICB3aWR0aHM6IHtcbiAgICAgICAgYmFyOiAwLFxuICAgICAgICBjb250YWluZXI6IDAsXG4gICAgICAgIHdyYXBwZXI6IDBcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICB0YWJzOiAnb25SZXNpemUnXG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmNoZWNrSWNvbnMoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjaGVja0ljb25zOiBmdW5jdGlvbiBjaGVja0ljb25zKCkge1xuICAgICAgdGhpcy5wcmV2SWNvblZpc2libGUgPSB0aGlzLmNoZWNrUHJldkljb24oKTtcbiAgICAgIHRoaXMubmV4dEljb25WaXNpYmxlID0gdGhpcy5jaGVja05leHRJY29uKCk7XG4gICAgfSxcbiAgICBjaGVja1ByZXZJY29uOiBmdW5jdGlvbiBjaGVja1ByZXZJY29uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2Nyb2xsT2Zmc2V0ID4gMDtcbiAgICB9LFxuICAgIGNoZWNrTmV4dEljb246IGZ1bmN0aW9uIGNoZWNrTmV4dEljb24oKSB7XG4gICAgICAvLyBDaGVjayBvbmUgc2Nyb2xsIGFoZWFkIHRvIGtub3cgdGhlIHdpZHRoIG9mIHJpZ2h0LW1vc3QgaXRlbVxuICAgICAgcmV0dXJuIHRoaXMud2lkdGhzLmNvbnRhaW5lciA+IHRoaXMuc2Nyb2xsT2Zmc2V0ICsgdGhpcy53aWR0aHMud3JhcHBlcjtcbiAgICB9LFxuICAgIGNhbGxTbGlkZXI6IGZ1bmN0aW9uIGNhbGxTbGlkZXIoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAodGhpcy5oaWRlU2xpZGVyIHx8ICF0aGlzLmFjdGl2ZVRhYikgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAvLyBHaXZlIHNjcmVlbiB0aW1lIHRvIHBhaW50XG4gICAgICB2YXIgYWN0aW9uID0gKHRoaXMuYWN0aXZlVGFiIHx8IHt9KS5hY3Rpb247XG4gICAgICB2YXIgYWN0aXZlVGFiID0gYWN0aW9uID09PSB0aGlzLmFjdGl2ZVRhYiA/IHRoaXMuYWN0aXZlVGFiIDogdGhpcy50YWJzLmZpbmQoZnVuY3Rpb24gKHRhYikge1xuICAgICAgICByZXR1cm4gdGFiLmFjdGlvbiA9PT0gYWN0aW9uO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKCFhY3RpdmVUYWIgfHwgIWFjdGl2ZVRhYi4kZWwpIHJldHVybjtcbiAgICAgICAgX3RoaXMuc2xpZGVyV2lkdGggPSBhY3RpdmVUYWIuJGVsLnNjcm9sbFdpZHRoO1xuICAgICAgICBfdGhpcy5zbGlkZXJMZWZ0ID0gYWN0aXZlVGFiLiRlbC5vZmZzZXRMZWZ0O1xuICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFdoZW4gdi1uYXZpZ2F0aW9uLWRyYXdlciBjaGFuZ2VzIHRoZVxuICAgICAqIHdpZHRoIG9mIHRoZSBjb250YWluZXIsIGNhbGwgcmVzaXplXG4gICAgICogYWZ0ZXIgdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVcbiAgICAgKi9cbiAgICBvblJlc2l6ZTogZnVuY3Rpb24gb25SZXNpemUoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuX2lzRGVzdHJveWVkKSByZXR1cm47XG5cbiAgICAgIHRoaXMuc2V0V2lkdGhzKCk7XG5cbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpO1xuICAgICAgdGhpcy5yZXNpemVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMi5jYWxsU2xpZGVyKCk7XG4gICAgICAgIF90aGlzMi5zY3JvbGxJbnRvVmlldygpO1xuICAgICAgICBfdGhpczIuY2hlY2tJY29ucygpO1xuICAgICAgfSwgdGhpcy50cmFuc2l0aW9uVGltZSk7XG4gICAgfSxcbiAgICBvdmVyZmxvd0NoZWNrOiBmdW5jdGlvbiBvdmVyZmxvd0NoZWNrKGUsIGZuKSB7XG4gICAgICB0aGlzLmlzT3ZlcmZsb3dpbmcgJiYgZm4oZSk7XG4gICAgfSxcbiAgICBzY3JvbGxUbzogZnVuY3Rpb24gc2Nyb2xsVG8oZGlyZWN0aW9uKSB7XG4gICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IHRoaXMubmV3T2Zmc2V0KGRpcmVjdGlvbik7XG4gICAgfSxcbiAgICBzZXRPdmVyZmxvdzogZnVuY3Rpb24gc2V0T3ZlcmZsb3coKSB7XG4gICAgICB0aGlzLmlzT3ZlcmZsb3dpbmcgPSB0aGlzLndpZHRocy5iYXIgPCB0aGlzLndpZHRocy5jb250YWluZXI7XG4gICAgfSxcbiAgICBzZXRXaWR0aHM6IGZ1bmN0aW9uIHNldFdpZHRocygpIHtcbiAgICAgIHZhciBiYXIgPSB0aGlzLiRyZWZzLmJhciA/IHRoaXMuJHJlZnMuYmFyLmNsaWVudFdpZHRoIDogMDtcbiAgICAgIHZhciBjb250YWluZXIgPSB0aGlzLiRyZWZzLmNvbnRhaW5lciA/IHRoaXMuJHJlZnMuY29udGFpbmVyLmNsaWVudFdpZHRoIDogMDtcbiAgICAgIHZhciB3cmFwcGVyID0gdGhpcy4kcmVmcy53cmFwcGVyID8gdGhpcy4kcmVmcy53cmFwcGVyLmNsaWVudFdpZHRoIDogMDtcblxuICAgICAgdGhpcy53aWR0aHMgPSB7IGJhcjogYmFyLCBjb250YWluZXI6IGNvbnRhaW5lciwgd3JhcHBlcjogd3JhcHBlciB9O1xuXG4gICAgICB0aGlzLnNldE92ZXJmbG93KCk7XG4gICAgfSxcbiAgICBmaW5kQWN0aXZlTGluazogZnVuY3Rpb24gZmluZEFjdGl2ZUxpbmsoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLnRhYnMubGVuZ3RoIHx8IHRoaXMubGF6eVZhbHVlKSByZXR1cm47XG5cbiAgICAgIHZhciBhY3RpdmVJbmRleCA9IHRoaXMudGFicy5maW5kSW5kZXgoZnVuY3Rpb24gKHRhYkl0ZW0sIGluZGV4KSB7XG4gICAgICAgIHZhciBpZCA9IHRhYkl0ZW0uYWN0aW9uID09PSB0YWJJdGVtID8gaW5kZXgudG9TdHJpbmcoKSA6IHRhYkl0ZW0uYWN0aW9uO1xuICAgICAgICByZXR1cm4gaWQgPT09IF90aGlzMy5sYXp5VmFsdWUgfHwgdGFiSXRlbS4kZWwuZmlyc3RDaGlsZC5jbGFzc05hbWUuaW5kZXhPZihfdGhpczMuYWN0aXZlQ2xhc3MpID4gLTE7XG4gICAgICB9KTtcblxuICAgICAgdmFyIGluZGV4ID0gYWN0aXZlSW5kZXggPiAtMSA/IGFjdGl2ZUluZGV4IDogMDtcbiAgICAgIHZhciB0YWIgPSB0aGlzLnRhYnNbaW5kZXhdO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgLy8gVGhlcmUgaXMgbm90IGEgcmVsaWFibGUgd2F5IHRvIHRlc3RcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRhYi5hY3Rpb24gPT09IHRhYiA/IGluZGV4IDogdGFiLmFjdGlvbjtcbiAgICB9LFxuICAgIHBhcnNlTm9kZXM6IGZ1bmN0aW9uIHBhcnNlTm9kZXMoKSB7XG4gICAgICB2YXIgaXRlbSA9IFtdO1xuICAgICAgdmFyIGl0ZW1zID0gW107XG4gICAgICB2YXIgc2xpZGVyID0gW107XG4gICAgICB2YXIgdGFiID0gW107XG4gICAgICB2YXIgbGVuZ3RoID0gKHRoaXMuJHNsb3RzLmRlZmF1bHQgfHwgW10pLmxlbmd0aDtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgdm5vZGUgPSB0aGlzLiRzbG90cy5kZWZhdWx0W2ldO1xuXG4gICAgICAgIGlmICh2bm9kZS5jb21wb25lbnRPcHRpb25zKSB7XG4gICAgICAgICAgc3dpdGNoICh2bm9kZS5jb21wb25lbnRPcHRpb25zLkN0b3Iub3B0aW9ucy5uYW1lKSB7XG4gICAgICAgICAgICBjYXNlICd2LXRhYnMtc2xpZGVyJzpcbiAgICAgICAgICAgICAgc2xpZGVyLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3YtdGFicy1pdGVtcyc6XG4gICAgICAgICAgICAgIGl0ZW1zLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3YtdGFiLWl0ZW0nOlxuICAgICAgICAgICAgICBpdGVtLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIC8vIGNhc2UgJ3YtdGFiJyAtIGludGVudGlvbmFsbHkgb21pdHRlZFxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGFiLnB1c2godm5vZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0YWIucHVzaCh2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgdGFiOiB0YWIsIHNsaWRlcjogc2xpZGVyLCBpdGVtczogaXRlbXMsIGl0ZW06IGl0ZW0gfTtcbiAgICB9LFxuICAgIHJlZ2lzdGVyOiBmdW5jdGlvbiByZWdpc3RlcihvcHRpb25zKSB7XG4gICAgICB0aGlzLnRhYnMucHVzaChvcHRpb25zKTtcbiAgICB9LFxuICAgIHNjcm9sbEludG9WaWV3OiBmdW5jdGlvbiBzY3JvbGxJbnRvVmlldygpIHtcbiAgICAgIGlmICghdGhpcy5hY3RpdmVUYWIpIHJldHVybjtcbiAgICAgIGlmICghdGhpcy5pc092ZXJmbG93aW5nKSByZXR1cm4gdGhpcy5zY3JvbGxPZmZzZXQgPSAwO1xuXG4gICAgICB2YXIgdG90YWxXaWR0aCA9IHRoaXMud2lkdGhzLndyYXBwZXIgKyB0aGlzLnNjcm9sbE9mZnNldDtcbiAgICAgIHZhciBfYWN0aXZlVGFiJCRlbCA9IHRoaXMuYWN0aXZlVGFiLiRlbCxcbiAgICAgICAgICBjbGllbnRXaWR0aCA9IF9hY3RpdmVUYWIkJGVsLmNsaWVudFdpZHRoLFxuICAgICAgICAgIG9mZnNldExlZnQgPSBfYWN0aXZlVGFiJCRlbC5vZmZzZXRMZWZ0O1xuXG4gICAgICB2YXIgaXRlbU9mZnNldCA9IGNsaWVudFdpZHRoICsgb2Zmc2V0TGVmdDtcbiAgICAgIHZhciBhZGRpdGlvbmFsT2Zmc2V0ID0gY2xpZW50V2lkdGggKiAwLjM7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAob2Zmc2V0TGVmdCA8IHRoaXMuc2Nyb2xsT2Zmc2V0KSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsT2Zmc2V0ID0gTWF0aC5tYXgob2Zmc2V0TGVmdCAtIGFkZGl0aW9uYWxPZmZzZXQsIDApO1xuICAgICAgfSBlbHNlIGlmICh0b3RhbFdpZHRoIDwgaXRlbU9mZnNldCkge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCAtPSB0b3RhbFdpZHRoIC0gaXRlbU9mZnNldCAtIGFkZGl0aW9uYWxPZmZzZXQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB0YWJDbGljazogZnVuY3Rpb24gdGFiQ2xpY2sodGFiKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0YWIuYWN0aW9uID09PSB0YWIgPyB0aGlzLnRhYnMuaW5kZXhPZih0YWIpIDogdGFiLmFjdGlvbjtcbiAgICAgIHRoaXMuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgICB9LFxuICAgIHRhYlByb3h5OiBmdW5jdGlvbiB0YWJQcm94eSh2YWwpIHtcbiAgICAgIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuICAgIH0sXG4gICAgcmVnaXN0ZXJJdGVtczogZnVuY3Rpb24gcmVnaXN0ZXJJdGVtcyhmbikge1xuICAgICAgdGhpcy50YWJJdGVtcyA9IGZuO1xuICAgIH0sXG4gICAgdW5yZWdpc3Rlckl0ZW1zOiBmdW5jdGlvbiB1bnJlZ2lzdGVySXRlbXMoKSB7XG4gICAgICB0aGlzLnRhYkl0ZW1zID0gbnVsbDtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodGFiKSB7XG4gICAgICB0aGlzLnRhYnMgPSB0aGlzLnRhYnMuZmlsdGVyKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgIHJldHVybiBvICE9PSB0YWI7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHVwZGF0ZVRhYnM6IGZ1bmN0aW9uIHVwZGF0ZVRhYnMoKSB7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMudGFicy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy50YWJzW2luZGV4XS50b2dnbGUodGhpcy50YXJnZXQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldE92ZXJmbG93KCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3BhcnNlTm9kZXMgPSB0aGlzLnBhcnNlTm9kZXMoKSxcbiAgICAgICAgdGFiID0gX3BhcnNlTm9kZXMudGFiLFxuICAgICAgICBzbGlkZXIgPSBfcGFyc2VOb2Rlcy5zbGlkZXIsXG4gICAgICAgIGl0ZW1zID0gX3BhcnNlTm9kZXMuaXRlbXMsXG4gICAgICAgIGl0ZW0gPSBfcGFyc2VOb2Rlcy5pdGVtO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFicycsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAncmVzaXplJyxcbiAgICAgICAgYXJnOiA0MDAsXG4gICAgICAgIG1vZGlmaWVyczogeyBxdWlldDogdHJ1ZSB9LFxuICAgICAgICB2YWx1ZTogdGhpcy5vblJlc2l6ZVxuICAgICAgfV1cbiAgICB9LCBbdGhpcy5nZW5CYXIoW3RoaXMuaGlkZVNsaWRlciA/IG51bGwgOiB0aGlzLmdlblNsaWRlcihzbGlkZXIpLCB0YWJdKSwgdGhpcy5nZW5JdGVtcyhpdGVtcywgaXRlbSldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjM3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjM4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBUYWJzIGNvbXB1dGVkXG4gKlxuICogQG1peGluXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBjb21wdXRlZDoge1xuICAgIGFjdGl2ZUluZGV4OiBmdW5jdGlvbiBhY3RpdmVJbmRleCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLnRhYnMuZmluZEluZGV4KGZ1bmN0aW9uICh0YWIsIGluZGV4KSB7XG4gICAgICAgIHZhciBpZCA9IHRhYi5hY3Rpb24gPT09IHRhYiA/IGluZGV4LnRvU3RyaW5nKCkgOiB0YWIuYWN0aW9uO1xuICAgICAgICByZXR1cm4gaWQgPT09IF90aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgYWN0aXZlVGFiOiBmdW5jdGlvbiBhY3RpdmVUYWIoKSB7XG4gICAgICBpZiAoIXRoaXMudGFicy5sZW5ndGgpIHJldHVybiB1bmRlZmluZWQ7XG5cbiAgICAgIHJldHVybiB0aGlzLnRhYnNbdGhpcy5hY3RpdmVJbmRleF07XG4gICAgfSxcbiAgICBjb250YWluZXJTdHlsZXM6IGZ1bmN0aW9uIGNvbnRhaW5lclN0eWxlcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmhlaWdodCA/IHtcbiAgICAgICAgaGVpZ2h0OiBwYXJzZUludCh0aGlzLmhlaWdodCwgMTApICsgJ3B4J1xuICAgICAgfSA6IG51bGw7XG4gICAgfSxcbiAgICBoYXNBcnJvd3M6IGZ1bmN0aW9uIGhhc0Fycm93cygpIHtcbiAgICAgIHJldHVybiAodGhpcy5zaG93QXJyb3dzIHx8ICF0aGlzLmlzTW9iaWxlKSAmJiB0aGlzLmlzT3ZlcmZsb3dpbmc7XG4gICAgfSxcblxuICAgIGlucHV0VmFsdWU6IHtcbiAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXp5VmFsdWU7XG4gICAgICB9LFxuICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsKSB7XG4gICAgICAgIC8vIEFsd2F5cyB1c2Ugc3RyaW5nc1xuICAgICAgICB2YWwgPSB2YWwudG9TdHJpbmcoKTtcblxuICAgICAgICB0aGlzLmxhenlWYWx1ZSA9IHZhbDtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgaXNNb2JpbGU6IGZ1bmN0aW9uIGlzTW9iaWxlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludC53aWR0aCA8IHRoaXMubW9iaWxlQnJlYWtQb2ludDtcbiAgICB9LFxuICAgIHNsaWRlclN0eWxlczogZnVuY3Rpb24gc2xpZGVyU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbGVmdDogdGhpcy5zbGlkZXJMZWZ0ICsgJ3B4JyxcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy5zbGlkZXJMZWZ0ICE9IG51bGwgPyBudWxsIDogJ25vbmUnLFxuICAgICAgICB3aWR0aDogdGhpcy5zbGlkZXJXaWR0aCArICdweCdcbiAgICAgIH07XG4gICAgfSxcbiAgICB0YXJnZXQ6IGZ1bmN0aW9uIHRhcmdldCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmFjdGl2ZVRhYiA/IHRoaXMuYWN0aXZlVGFiLmFjdGlvbiA6IG51bGw7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMzkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGFic0l0ZW1zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJzU2xpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuXG5cblxuXG4vKipcbiAqIFRhYnMgZ2VuZXJhdG9yc1xuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGdlbkJhcjogZnVuY3Rpb24gZ2VuQmFyKGl0ZW1zKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2JhcicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe1xuICAgICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgICB9KSxcbiAgICAgICAgcmVmOiAnYmFyJ1xuICAgICAgfSwgW3RoaXMuZ2VuVHJhbnNpdGlvbigncHJldicpLCB0aGlzLmdlbldyYXBwZXIodGhpcy5nZW5Db250YWluZXIoaXRlbXMpKSwgdGhpcy5nZW5UcmFuc2l0aW9uKCduZXh0JyldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRhaW5lcjogZnVuY3Rpb24gZ2VuQ29udGFpbmVyKGl0ZW1zKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2NvbnRhaW5lcicsXG4gICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tYWxpZ24td2l0aC10aXRsZSc6IHRoaXMuYWxpZ25XaXRoVGl0bGUsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQnOiB0aGlzLmNlbnRlcmVkLFxuICAgICAgICAgICd0YWJzX19jb250YWluZXItLWZpeGVkLXRhYnMnOiB0aGlzLmZpeGVkVGFicyxcbiAgICAgICAgICAndGFic19fY29udGFpbmVyLS1ncm93JzogdGhpcy5ncm93LFxuICAgICAgICAgICd0YWJzX19jb250YWluZXItLWljb25zLWFuZC10ZXh0JzogdGhpcy5pY29uc0FuZFRleHQsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tb3ZlcmZsb3cnOiB0aGlzLmlzT3ZlcmZsb3dpbmcsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tcmlnaHQnOiB0aGlzLnJpZ2h0XG4gICAgICAgIH0sXG4gICAgICAgIHN0eWxlOiB0aGlzLmNvbnRhaW5lclN0eWxlcyxcbiAgICAgICAgcmVmOiAnY29udGFpbmVyJ1xuICAgICAgfSwgaXRlbXMpO1xuICAgIH0sXG4gICAgZ2VuSWNvbjogZnVuY3Rpb24gZ2VuSWNvbihkaXJlY3Rpb24pIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5oYXNBcnJvd3MgfHwgIXRoaXNbZGlyZWN0aW9uICsgJ0ljb25WaXNpYmxlJ10pIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0YWJzX19pY29uIHRhYnNfX2ljb24tLScgKyBkaXJlY3Rpb24sXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6ICF0aGlzW2RpcmVjdGlvbiArICdJY29uVmlzaWJsZSddXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLnNjcm9sbFRvKGRpcmVjdGlvbik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCB0aGlzW2RpcmVjdGlvbiArICdJY29uJ10pO1xuICAgIH0sXG4gICAgZ2VuSXRlbXM6IGZ1bmN0aW9uIGdlbkl0ZW1zKGl0ZW1zLCBpdGVtKSB7XG4gICAgICBpZiAoaXRlbXMubGVuZ3RoID4gMCkgcmV0dXJuIGl0ZW1zO1xuICAgICAgaWYgKCFpdGVtLmxlbmd0aCkgcmV0dXJuIG51bGw7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRhYnNJdGVtc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBpdGVtKTtcbiAgICB9LFxuICAgIGdlblRyYW5zaXRpb246IGZ1bmN0aW9uIGdlblRyYW5zaXRpb24oZGlyZWN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgndHJhbnNpdGlvbicsIHtcbiAgICAgICAgcHJvcHM6IHsgbmFtZTogJ2ZhZGUtdHJhbnNpdGlvbicgfVxuICAgICAgfSwgW3RoaXMuZ2VuSWNvbihkaXJlY3Rpb24pXSk7XG4gICAgfSxcbiAgICBnZW5XcmFwcGVyOiBmdW5jdGlvbiBnZW5XcmFwcGVyKGl0ZW1zKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0YWJzX193cmFwcGVyJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAndGFic19fd3JhcHBlci0tc2hvdy1hcnJvd3MnOiB0aGlzLmhhc0Fycm93c1xuICAgICAgICB9LFxuICAgICAgICByZWY6ICd3cmFwcGVyJyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBzdGFydDogZnVuY3Rpb24gc3RhcnQoZSkge1xuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMyLm92ZXJmbG93Q2hlY2soZSwgX3RoaXMyLm9uVG91Y2hTdGFydCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW92ZTogZnVuY3Rpb24gbW92ZShlKSB7XG4gICAgICAgICAgICAgIHJldHVybiBfdGhpczIub3ZlcmZsb3dDaGVjayhlLCBfdGhpczIub25Ub3VjaE1vdmUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVuZDogZnVuY3Rpb24gZW5kKGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzMi5vdmVyZmxvd0NoZWNrKGUsIF90aGlzMi5vblRvdWNoRW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1dXG4gICAgICB9LCBbaXRlbXNdKTtcbiAgICB9LFxuICAgIGdlblNsaWRlcjogZnVuY3Rpb24gZ2VuU2xpZGVyKGl0ZW1zKSB7XG4gICAgICBpZiAoIWl0ZW1zLmxlbmd0aCkge1xuICAgICAgICBpdGVtcyA9IFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRhYnNTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAgIHByb3BzOiB7IGNvbG9yOiB0aGlzLnNsaWRlckNvbG9yIH1cbiAgICAgICAgfSldO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX3NsaWRlci13cmFwcGVyJyxcbiAgICAgICAgc3R5bGU6IHRoaXMuc2xpZGVyU3R5bGVzXG4gICAgICB9LCBpdGVtcyk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKipcbiAqIFRhYnMgcHJvcHNcbiAqXG4gKiBAbWl4aW5cbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgYWxpZ25XaXRoVGl0bGU6IEJvb2xlYW4sXG4gICAgY2VudGVyZWQ6IEJvb2xlYW4sXG4gICAgZml4ZWRUYWJzOiBCb29sZWFuLFxuICAgIGdyb3c6IEJvb2xlYW4sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGhpZGVTbGlkZXI6IEJvb2xlYW4sXG4gICAgaWNvbnNBbmRUZXh0OiBCb29sZWFuLFxuICAgIG1vYmlsZUJyZWFrUG9pbnQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAxMjY0LFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgcmlnaHQ6IEJvb2xlYW4sXG4gICAgc2hvd0Fycm93czogQm9vbGVhbixcbiAgICBzbGlkZXJDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2FjY2VudCdcbiAgICB9LFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogVGFicyB0b3VjaFxuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIG5ld09mZnNldDogZnVuY3Rpb24gbmV3T2Zmc2V0KGRpcmVjdGlvbikge1xuICAgICAgdmFyIGNsaWVudFdpZHRoID0gdGhpcy4kcmVmcy53cmFwcGVyLmNsaWVudFdpZHRoO1xuXG4gICAgICBpZiAoZGlyZWN0aW9uID09PSAncHJldicpIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KHRoaXMuc2Nyb2xsT2Zmc2V0IC0gY2xpZW50V2lkdGgsIDApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWluKHRoaXMuc2Nyb2xsT2Zmc2V0ICsgY2xpZW50V2lkdGgsIHRoaXMuJHJlZnMuY29udGFpbmVyLmNsaWVudFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb25Ub3VjaFN0YXJ0OiBmdW5jdGlvbiBvblRvdWNoU3RhcnQoZSkge1xuICAgICAgdGhpcy5zdGFydFggPSB0aGlzLnNjcm9sbE9mZnNldCArIGUudG91Y2hzdGFydFg7XG4gICAgICB0aGlzLiRyZWZzLmNvbnRhaW5lci5zdHlsZS50cmFuc2l0aW9uID0gJ25vbmUnO1xuICAgICAgdGhpcy4kcmVmcy5jb250YWluZXIuc3R5bGUud2lsbENoYW5nZSA9ICd0cmFuc2Zvcm0nO1xuICAgIH0sXG4gICAgb25Ub3VjaE1vdmU6IGZ1bmN0aW9uIG9uVG91Y2hNb3ZlKGUpIHtcbiAgICAgIHRoaXMuc2Nyb2xsT2Zmc2V0ID0gdGhpcy5zdGFydFggLSBlLnRvdWNobW92ZVg7XG4gICAgfSxcbiAgICBvblRvdWNoRW5kOiBmdW5jdGlvbiBvblRvdWNoRW5kKCkge1xuICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuJHJlZnMuY29udGFpbmVyO1xuICAgICAgdmFyIHdyYXBwZXIgPSB0aGlzLiRyZWZzLndyYXBwZXI7XG4gICAgICB2YXIgbWF4U2Nyb2xsT2Zmc2V0ID0gY29udGFpbmVyLmNsaWVudFdpZHRoIC0gd3JhcHBlci5jbGllbnRXaWR0aDtcbiAgICAgIGNvbnRhaW5lci5zdHlsZS50cmFuc2l0aW9uID0gbnVsbDtcbiAgICAgIGNvbnRhaW5lci5zdHlsZS53aWxsQ2hhbmdlID0gbnVsbDtcblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmICh0aGlzLnNjcm9sbE9mZnNldCA8IDAgfHwgIXRoaXMuaXNPdmVyZmxvd2luZykge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IDA7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2Nyb2xsT2Zmc2V0ID49IG1heFNjcm9sbE9mZnNldCkge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IG1heFNjcm9sbE9mZnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogVGFicyB3YXRjaGVyc1xuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgd2F0Y2g6IHtcbiAgICBhY3RpdmVUYWI6IGZ1bmN0aW9uIGFjdGl2ZVRhYih0YWIsIHByZXYpIHtcbiAgICAgICFwcmV2ICYmIHRhYiAmJiB0aGlzLnVwZGF0ZVRhYnMoKTtcblxuICAgICAgc2V0VGltZW91dCh0aGlzLmNhbGxTbGlkZXIsIDApO1xuXG4gICAgICBpZiAoIXRhYikgcmV0dXJuO1xuXG4gICAgICB2YXIgYWN0aW9uID0gdGFiLmFjdGlvbjtcbiAgICAgIHRoaXMudGFiSXRlbXMgJiYgdGhpcy50YWJJdGVtcyhhY3Rpb24gPT09IHRhYiA/IHRoaXMudGFicy5pbmRleE9mKHRhYikudG9TdHJpbmcoKSA6IGFjdGlvbik7XG4gICAgfSxcblxuICAgIGFsaWduV2l0aFRpdGxlOiAnY2FsbFNsaWRlcicsXG4gICAgY2VudGVyZWQ6ICdjYWxsU2xpZGVyJyxcbiAgICBmaXhlZFRhYnM6ICdjYWxsU2xpZGVyJyxcbiAgICBoYXNBcnJvd3M6IGZ1bmN0aW9uIGhhc0Fycm93cyh2YWwpIHtcbiAgICAgIGlmICghdmFsKSB0aGlzLnNjcm9sbE9mZnNldCA9IDA7XG4gICAgfSxcblxuICAgIGlzQm9vdGVkOiAnZmluZEFjdGl2ZUxpbmsnLFxuICAgIGxhenlWYWx1ZTogJ3VwZGF0ZVRhYnMnLFxuICAgIHJpZ2h0OiAnY2FsbFNsaWRlcicsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG4gICAgfSxcblxuICAgICckdnVldGlmeS5hcHBsaWNhdGlvbi5sZWZ0JzogJ29uUmVzaXplJyxcbiAgICAnJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQnOiAnb25SZXNpemUnLFxuICAgIHNjcm9sbE9mZnNldDogZnVuY3Rpb24gc2Nyb2xsT2Zmc2V0KHZhbCkge1xuICAgICAgdGhpcy4kcmVmcy5jb250YWluZXIuc3R5bGUudHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoJyArIC12YWwgKyAncHgpJztcbiAgICAgIGlmICh0aGlzLmhhc0Fycm93cykge1xuICAgICAgICB0aGlzLnByZXZJY29uVmlzaWJsZSA9IHRoaXMuY2hlY2tQcmV2SWNvbigpO1xuICAgICAgICB0aGlzLm5leHRJY29uVmlzaWJsZSA9IHRoaXMuY2hlY2tOZXh0SWNvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbi8vIE1peGluc1xuXG5cblxuLy8gVXRpbGl0aWVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ3RhYnMnLCAndi10YWInLCAndi10YWJzJyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGluamVjdDogWyd0YWJDbGljayddLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGFic19faXRlbS0tYWN0aXZlJ1xuICAgIH0sXG4gICAgcmlwcGxlOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIF9kZWZpbmVQcm9wZXJ0eSh7XG4gICAgICAgICd0YWJzX19pdGVtJzogdHJ1ZSxcbiAgICAgICAgJ3RhYnNfX2l0ZW0tLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgIXRoaXMudG8gJiYgdGhpcy5pc0FjdGl2ZSk7XG4gICAgfSxcbiAgICBhY3Rpb246IGZ1bmN0aW9uIGFjdGlvbigpIHtcbiAgICAgIHZhciB0byA9IHRoaXMudG8gfHwgdGhpcy5ocmVmO1xuXG4gICAgICBpZiAodGhpcy4kcm91dGVyICYmIHRoaXMudG8gPT09IE9iamVjdCh0aGlzLnRvKSkge1xuICAgICAgICB2YXIgcmVzb2x2ZSA9IHRoaXMuJHJvdXRlci5yZXNvbHZlKHRoaXMudG8sIHRoaXMuJHJvdXRlLCB0aGlzLmFwcGVuZCk7XG5cbiAgICAgICAgdG8gPSByZXNvbHZlLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0eXBlb2YgdG8gPT09ICdzdHJpbmcnID8gdG8ucmVwbGFjZSgnIycsICcnKSA6IHRoaXM7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgJHJvdXRlOiAnb25Sb3V0ZUNoYW5nZSdcbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMudGFicy5yZWdpc3Rlcih0aGlzKTtcbiAgICB0aGlzLm9uUm91dGVDaGFuZ2UoKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLnRhYnMudW5yZWdpc3Rlcih0aGlzKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgLy8gSWYgdXNlciBwcm92aWRlcyBhblxuICAgICAgLy8gYWN0dWFsIGxpbmssIGRvIG5vdFxuICAgICAgLy8gcHJldmVudCBkZWZhdWx0XG4gICAgICBpZiAodGhpcy5ocmVmICYmIHRoaXMuaHJlZi5pbmRleE9mKCcjJykgPiAtMSkgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICB0aGlzLiRlbWl0KCdjbGljaycsIGUpO1xuXG4gICAgICB0aGlzLnRvIHx8IHRoaXMudGFiQ2xpY2sodGhpcyk7XG4gICAgfSxcbiAgICBvblJvdXRlQ2hhbmdlOiBmdW5jdGlvbiBvblJvdXRlQ2hhbmdlKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLnRvIHx8ICF0aGlzLiRyZWZzLmxpbmspIHJldHVybjtcblxuICAgICAgdmFyIHBhdGggPSAnX3Zub2RlLmRhdGEuY2xhc3MuJyArIHRoaXMuYWN0aXZlQ2xhc3M7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoX3RoaXMuJHJlZnMubGluaywgcGF0aCkpIHtcbiAgICAgICAgICBfdGhpcy50YWJDbGljayhfdGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoYWN0aW9uKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gYWN0aW9uID09PSB0aGlzIHx8IGFjdGlvbiA9PT0gdGhpcy5hY3Rpb247XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgbGluayA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKTtcbiAgICB2YXIgZGF0YSA9IGxpbmsuZGF0YTtcblxuICAgIC8vIElmIGRpc2FibGVkLCB1c2UgZGl2IGFzIGFuY2hvciB0YWdzIGRvIG5vdCBzdXBwb3J0XG4gICAgLy8gYmVpbmcgZGlzYWJsZWRcblxuICAgIHZhciB0YWcgPSB0aGlzLmRpc2FibGVkID8gJ2RpdicgOiBsaW5rLnRhZztcblxuICAgIGRhdGEucmVmID0gJ2xpbmsnO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFic19fZGl2J1xuICAgIH0sIFtoKHRhZywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQ0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZGlyZWN0aXZlc190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcblxuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtdGFiLWl0ZW0nLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2Jvb3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCd0YWJzJywgJ3YtdGFiLWl0ZW0nLCAndi10YWJzLWl0ZW1zJyldLFxuXG4gIGNvbXBvbmVudHM6IHtcbiAgICBWVGFiVHJhbnNpdGlvbjogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX190cmFuc2l0aW9uc19fW1wiZlwiIC8qIFZUYWJUcmFuc2l0aW9uICovXSxcbiAgICBWVGFiUmV2ZXJzZVRyYW5zaXRpb246IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdHJhbnNpdGlvbnNfX1tcImVcIiAvKiBWVGFiUmV2ZXJzZVRyYW5zaXRpb24gKi9dXG4gIH0sXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZSxcbiAgICAgIHJldmVyc2U6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgaWQ6IFN0cmluZyxcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICd0YWItdHJhbnNpdGlvbidcbiAgICB9LFxuICAgIHJldmVyc2VUcmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICd0YWItcmV2ZXJzZS10cmFuc2l0aW9uJ1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmV2ZXJzZSA/IHRoaXMucmV2ZXJzZVRyYW5zaXRpb24gOiB0aGlzLnRyYW5zaXRpb247XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSh0YXJnZXQsIHJldmVyc2UsIHNob3dUcmFuc2l0aW9uLCBpbmRleCkge1xuICAgICAgdGhpcy4kZWwuc3R5bGUudHJhbnNpdGlvbiA9ICFzaG93VHJhbnNpdGlvbiA/ICdub25lJyA6IG51bGw7XG4gICAgICB0aGlzLnJldmVyc2UgPSByZXZlcnNlO1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9ICh0aGlzLmlkIHx8IGluZGV4LnRvU3RyaW5nKCkpID09PSB0YXJnZXQ7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy50YWJzLnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMudGFicy51bnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2NvbnRlbnQnLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0FjdGl2ZVxuICAgICAgfV0sXG4gICAgICBkb21Qcm9wczogeyBpZDogdGhpcy5pZCB9LFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICB2YXIgZGl2ID0gaCgnZGl2JywgZGF0YSwgdGhpcy5zaG93TGF6eUNvbnRlbnQodGhpcy4kc2xvdHMuZGVmYXVsdCkpO1xuXG4gICAgaWYgKCF0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbikgcmV0dXJuIGRpdjtcblxuICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywge1xuICAgICAgcHJvcHM6IHsgbmFtZTogdGhpcy5jb21wdXRlZFRyYW5zaXRpb24gfVxuICAgIH0sIFtkaXZdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQ1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRleHRGaWVsZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRleHRGaWVsZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyNDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3RleHRfZmllbGRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfdGV4dF9maWVsZHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c190ZXh0X2ZpZWxkc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfbWFza2FibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3NvbG9hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUxKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbi8vIFN0eWxlc1xuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxudmFyIGRpcnR5VHlwZXMgPSBbJ2NvbG9yJywgJ2ZpbGUnLCAndGltZScsICdkYXRlJywgJ2RhdGV0aW1lLWxvY2FsJywgJ3dlZWsnLCAnbW9udGgnXTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRleHQtZmllbGQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19tYXNrYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zb2xvYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBpbmhlcml0QXR0cnM6IGZhbHNlLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluaXRpYWxWYWx1ZTogbnVsbCxcbiAgICAgIGlucHV0SGVpZ2h0OiBudWxsLFxuICAgICAgaW50ZXJuYWxDaGFuZ2U6IGZhbHNlLFxuICAgICAgYmFkSW5wdXQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXV0b2ZvY3VzOiBCb29sZWFuLFxuICAgIGF1dG9Hcm93OiBCb29sZWFuLFxuICAgIGJveDogQm9vbGVhbixcbiAgICBjbGVhcmFibGU6IEJvb2xlYW4sXG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgY291bnRlcjogW0Jvb2xlYW4sIE51bWJlciwgU3RyaW5nXSxcbiAgICBmdWxsV2lkdGg6IEJvb2xlYW4sXG4gICAgbXVsdGlMaW5lOiBCb29sZWFuLFxuICAgIG5vUmVzaXplOiBCb29sZWFuLFxuICAgIHBsYWNlaG9sZGVyOiBTdHJpbmcsXG4gICAgcHJlZml4OiBTdHJpbmcsXG4gICAgcm93SGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjQsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VGbG9hdCh2KSk7XG4gICAgICB9XG4gICAgfSxcbiAgICByb3dzOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNSxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHYpIHtcbiAgICAgICAgcmV0dXJuICFpc05hTihwYXJzZUludCh2LCAxMCkpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2luZ2xlTGluZTogQm9vbGVhbixcbiAgICBzdWZmaXg6IFN0cmluZyxcbiAgICB0ZXh0YXJlYTogQm9vbGVhbixcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSBfZXh0ZW5kcyh7fSwgdGhpcy5nZW5Tb2xvQ2xhc3NlcygpLCB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dC1maWVsZCc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3gnOiB0aGlzLmJveCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zaW5nbGUtbGluZSc6IHRoaXMuc2luZ2xlTGluZSB8fCB0aGlzLmlzU29sbyxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1tdWx0aS1saW5lJzogdGhpcy5tdWx0aUxpbmUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZnVsbC13aWR0aCc6IHRoaXMuZnVsbFdpZHRoLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW5vLXJlc2l6ZSc6IHRoaXMubm9SZXNpemVIYW5kbGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tcHJlZml4JzogdGhpcy5wcmVmaXgsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc3VmZml4JzogdGhpcy5zdWZmaXgsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dGFyZWEnOiB0aGlzLnRleHRhcmVhXG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcbiAgICAgICAgY2xhc3Nlc1snZXJyb3ItLXRleHQnXSA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBjb3VudDogZnVuY3Rpb24gY291bnQoKSB7XG4gICAgICB2YXIgaW5wdXRMZW5ndGggPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy5pbnB1dFZhbHVlKSBpbnB1dExlbmd0aCA9IHRoaXMuaW5wdXRWYWx1ZS50b1N0cmluZygpLmxlbmd0aDtlbHNlIGlucHV0TGVuZ3RoID0gMDtcblxuICAgICAgcmV0dXJuIGlucHV0TGVuZ3RoICsgJyAvICcgKyB0aGlzLmNvdW50ZXJMZW5ndGg7XG4gICAgfSxcbiAgICBjb3VudGVyTGVuZ3RoOiBmdW5jdGlvbiBjb3VudGVyTGVuZ3RoKCkge1xuICAgICAgdmFyIHBhcnNlZExlbmd0aCA9IHBhcnNlSW50KHRoaXMuY291bnRlciwgMTApO1xuICAgICAgcmV0dXJuIGlzTmFOKHBhcnNlZExlbmd0aCkgPyAyNSA6IHBhcnNlZExlbmd0aDtcbiAgICB9LFxuXG4gICAgaW5wdXRWYWx1ZToge1xuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgaWYgKHRoaXMubWFzaykge1xuICAgICAgICAgIHRoaXMubGF6eVZhbHVlID0gdGhpcy51bm1hc2tUZXh0KHRoaXMubWFza1RleHQodGhpcy51bm1hc2tUZXh0KHZhbCkpKTtcbiAgICAgICAgICB0aGlzLnNldFNlbGVjdGlvblJhbmdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG4gICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmxhenlWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIGlzRGlydHk6IGZ1bmN0aW9uIGlzRGlydHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5sYXp5VmFsdWUgIT0gbnVsbCAmJiB0aGlzLmxhenlWYWx1ZS50b1N0cmluZygpLmxlbmd0aCA+IDAgfHwgdGhpcy5iYWRJbnB1dCB8fCBkaXJ0eVR5cGVzLmluY2x1ZGVzKHRoaXMudHlwZSk7XG4gICAgfSxcbiAgICBpc1RleHRhcmVhOiBmdW5jdGlvbiBpc1RleHRhcmVhKCkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlMaW5lIHx8IHRoaXMudGV4dGFyZWE7XG4gICAgfSxcbiAgICBub1Jlc2l6ZUhhbmRsZTogZnVuY3Rpb24gbm9SZXNpemVIYW5kbGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc1RleHRhcmVhICYmICh0aGlzLm5vUmVzaXplIHx8IHRoaXMuc2hvdWxkQXV0b0dyb3cpO1xuICAgIH0sXG4gICAgc2hvdWxkQXV0b0dyb3c6IGZ1bmN0aW9uIHNob3VsZEF1dG9Hcm93KCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNUZXh0YXJlYSAmJiB0aGlzLmF1dG9Hcm93O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzRm9jdXNlZDogZnVuY3Rpb24gaXNGb2N1c2VkKHZhbCkge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxWYWx1ZSA9IHRoaXMubGF6eVZhbHVlO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmluaXRpYWxWYWx1ZSAhPT0gdGhpcy5sYXp5VmFsdWUpIHtcbiAgICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5sYXp5VmFsdWUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMubWFzayAmJiAhdGhpcy5pbnRlcm5hbENoYW5nZSkge1xuICAgICAgICB2YXIgbWFza2VkID0gdGhpcy5tYXNrVGV4dCh0aGlzLnVubWFza1RleHQodmFsKSk7XG4gICAgICAgIHRoaXMubGF6eVZhbHVlID0gdGhpcy51bm1hc2tUZXh0KG1hc2tlZCk7XG5cbiAgICAgICAgLy8gRW1pdCB3aGVuIHRoZSBleHRlcm5hbGx5IHNldCB2YWx1ZSB3YXMgbW9kaWZpZWQgaW50ZXJuYWxseVxuICAgICAgICBTdHJpbmcodmFsKSAhPT0gdGhpcy5sYXp5VmFsdWUgJiYgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLiRyZWZzLmlucHV0LnZhbHVlID0gbWFza2VkO1xuICAgICAgICAgIF90aGlzLiRlbWl0KCdpbnB1dCcsIF90aGlzLmxhenlWYWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuXG4gICAgICBpZiAodGhpcy5pbnRlcm5hbENoYW5nZSkgdGhpcy5pbnRlcm5hbENoYW5nZSA9IGZhbHNlO1xuXG4gICAgICAhdGhpcy52YWxpZGF0ZU9uQmx1ciAmJiB0aGlzLnZhbGlkYXRlKCk7XG4gICAgICB0aGlzLnNob3VsZEF1dG9Hcm93ICYmIHRoaXMuY2FsY3VsYXRlSW5wdXRIZWlnaHQoKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnNob3VsZEF1dG9Hcm93ICYmIHRoaXMuY2FsY3VsYXRlSW5wdXRIZWlnaHQoKTtcbiAgICB0aGlzLmF1dG9mb2N1cyAmJiB0aGlzLmZvY3VzKCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgY2FsY3VsYXRlSW5wdXRIZWlnaHQ6IGZ1bmN0aW9uIGNhbGN1bGF0ZUlucHV0SGVpZ2h0KCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHRoaXMuaW5wdXRIZWlnaHQgPSBudWxsO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBoZWlnaHQgPSBfdGhpczIuJHJlZnMuaW5wdXQgPyBfdGhpczIuJHJlZnMuaW5wdXQuc2Nyb2xsSGVpZ2h0IDogMDtcbiAgICAgICAgdmFyIG1pbkhlaWdodCA9IHBhcnNlSW50KF90aGlzMi5yb3dzLCAxMCkgKiBwYXJzZUZsb2F0KF90aGlzMi5yb3dIZWlnaHQpO1xuICAgICAgICBfdGhpczIuaW5wdXRIZWlnaHQgPSBNYXRoLm1heChtaW5IZWlnaHQsIGhlaWdodCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIG9uSW5wdXQ6IGZ1bmN0aW9uIG9uSW5wdXQoZSkge1xuICAgICAgdGhpcy5tYXNrICYmIHRoaXMucmVzZXRTZWxlY3Rpb25zKGUudGFyZ2V0KTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgICAgdGhpcy5iYWRJbnB1dCA9IGUudGFyZ2V0LnZhbGlkaXR5ICYmIGUudGFyZ2V0LnZhbGlkaXR5LmJhZElucHV0O1xuICAgICAgdGhpcy5zaG91bGRBdXRvR3JvdyAmJiB0aGlzLmNhbGN1bGF0ZUlucHV0SGVpZ2h0KCk7XG4gICAgfSxcbiAgICBibHVyOiBmdW5jdGlvbiBibHVyKGUpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgLy8gUmVzZXQgaW50ZXJuYWxDaGFuZ2Ugc3RhdGVcbiAgICAgIC8vIHRvIGFsbG93IGV4dGVybmFsIGNoYW5nZVxuICAgICAgLy8gdG8gcGVyc2lzdFxuICAgICAgdGhpcy5pbnRlcm5hbENoYW5nZSA9IGZhbHNlO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMy52YWxpZGF0ZSgpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLiRlbWl0KCdibHVyJywgZSk7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoZSkge1xuICAgICAgaWYgKCF0aGlzLiRyZWZzLmlucHV0KSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSB0aGlzLiRyZWZzLmlucHV0KSB7XG4gICAgICAgIHRoaXMuJHJlZnMuaW5wdXQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuJGVtaXQoJ2ZvY3VzJywgZSk7XG4gICAgfSxcbiAgICBrZXlEb3duOiBmdW5jdGlvbiBrZXlEb3duKGUpIHtcbiAgICAgIC8vIFByZXZlbnRzIGNsb3Npbmcgb2YgYVxuICAgICAgLy8gZGlhbG9nIHdoZW4gcHJlc3NpbmdcbiAgICAgIC8vIGVudGVyXG4gICAgICBpZiAodGhpcy5pc1RleHRhcmVhICYmIHRoaXMuaXNGb2N1c2VkICYmIGUua2V5Q29kZSA9PT0gMTMpIHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnRlcm5hbENoYW5nZSA9IHRydWU7XG4gICAgfSxcbiAgICBnZW5Db3VudGVyOiBmdW5jdGlvbiBnZW5Db3VudGVyKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cF9fY291bnRlcic6IHRydWUsXG4gICAgICAgICAgJ2lucHV0LWdyb3VwX19jb3VudGVyLS1lcnJvcic6IHRoaXMuaGFzRXJyb3JcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy5jb3VudCk7XG4gICAgfSxcbiAgICBnZW5JbnB1dDogZnVuY3Rpb24gZ2VuSW5wdXQoKSB7XG4gICAgICB2YXIgdGFnID0gdGhpcy5pc1RleHRhcmVhID8gJ3RleHRhcmVhJyA6ICdpbnB1dCc7XG4gICAgICB2YXIgbGlzdGVuZXJzID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy4kbGlzdGVuZXJzKTtcbiAgICAgIGRlbGV0ZSBsaXN0ZW5lcnNbJ2NoYW5nZSddOyAvLyBDaGFuZ2Ugc2hvdWxkIG5vdCBiZSBib3VuZCBleHRlcm5hbGx5XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBzdHlsZToge30sXG4gICAgICAgIGRvbVByb3BzOiB7XG4gICAgICAgICAgdmFsdWU6IHRoaXMubWFza1RleHQodGhpcy5sYXp5VmFsdWUpXG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiBfZXh0ZW5kcyh7fSwgdGhpcy4kYXR0cnMsIHtcbiAgICAgICAgICBhdXRvZm9jdXM6IHRoaXMuYXV0b2ZvY3VzLFxuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAgIHJlcXVpcmVkOiB0aGlzLnJlcXVpcmVkLFxuICAgICAgICAgIHJlYWRvbmx5OiB0aGlzLnJlYWRvbmx5LFxuICAgICAgICAgIHRhYmluZGV4OiB0aGlzLnRhYmluZGV4LFxuICAgICAgICAgICdhcmlhLWxhYmVsJzogKCF0aGlzLiRhdHRycyB8fCAhdGhpcy4kYXR0cnMuaWQpICYmIHRoaXMubGFiZWwgLy8gTGFiZWwgYGZvcmAgd2lsbCBiZSBzZXQgaWYgd2UgaGF2ZSBhbiBpZFxuICAgICAgICB9KSxcbiAgICAgICAgb246IE9iamVjdC5hc3NpZ24obGlzdGVuZXJzLCB7XG4gICAgICAgICAgYmx1cjogdGhpcy5ibHVyLFxuICAgICAgICAgIGlucHV0OiB0aGlzLm9uSW5wdXQsXG4gICAgICAgICAgZm9jdXM6IHRoaXMuZm9jdXMsXG4gICAgICAgICAga2V5ZG93bjogdGhpcy5rZXlEb3duXG4gICAgICAgIH0pLFxuICAgICAgICByZWY6ICdpbnB1dCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLnNob3VsZEF1dG9Hcm93KSB7XG4gICAgICAgIGRhdGEuc3R5bGUuaGVpZ2h0ID0gdGhpcy5pbnB1dEhlaWdodCAmJiB0aGlzLmlucHV0SGVpZ2h0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIGRhdGEuYXR0cnMucGxhY2Vob2xkZXIgPSB0aGlzLnBsYWNlaG9sZGVyO1xuXG4gICAgICBpZiAoIXRoaXMuaXNUZXh0YXJlYSkge1xuICAgICAgICBkYXRhLmF0dHJzLnR5cGUgPSB0aGlzLnR5cGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhLmF0dHJzLnJvd3MgPSB0aGlzLnJvd3M7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLm1hc2spIHtcbiAgICAgICAgZGF0YS5hdHRycy5tYXhsZW5ndGggPSB0aGlzLm1hc2tlZC5sZW5ndGg7XG4gICAgICB9XG5cbiAgICAgIHZhciBjaGlsZHJlbiA9IFt0aGlzLiRjcmVhdGVFbGVtZW50KHRhZywgZGF0YSldO1xuXG4gICAgICB0aGlzLnByZWZpeCAmJiBjaGlsZHJlbi51bnNoaWZ0KHRoaXMuZ2VuRml4KCdwcmVmaXgnKSk7XG4gICAgICB0aGlzLnN1ZmZpeCAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuRml4KCdzdWZmaXgnKSk7XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9LFxuICAgIGdlbkZpeDogZnVuY3Rpb24gZ2VuRml4KHR5cGUpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfXycgKyB0eXBlXG4gICAgICB9LCB0aGlzW3R5cGVdKTtcbiAgICB9LFxuICAgIGNsZWFyYWJsZUNhbGxiYWNrOiBmdW5jdGlvbiBjbGVhcmFibGVDYWxsYmFjaygpIHtcbiAgICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXM0LiRyZWZzLmlucHV0LmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cCh0aGlzLmdlbklucHV0KCksIHsgYXR0cnM6IHsgdGFiaW5kZXg6IGZhbHNlIH0gfSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUaW1lUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUaW1lUGlja2VyVGl0bGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjkpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRpbWVQaWNrZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUaW1lUGlja2VyQ2xvY2sgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUaW1lUGlja2VyVGl0bGUgKi9cblxuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUaW1lUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRpbWVQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyNDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlclRpdGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUaW1lUGlja2VyQ2xvY2tfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3BpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8vIENvbXBvbmVudHNcblxuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuXG52YXIgcmFuZ2VIb3VyczI0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSgyNCk7XG52YXIgcmFuZ2VIb3VyczEyYW0gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfX1tcImRcIiAvKiBjcmVhdGVSYW5nZSAqL10pKDEyKTtcbnZhciByYW5nZUhvdXJzMTJwbSA9IHJhbmdlSG91cnMxMmFtLm1hcChmdW5jdGlvbiAodikge1xuICByZXR1cm4gdiArIDEyO1xufSk7XG52YXIgcmFuZ2VNaW51dGVzID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg2MCk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10aW1lLXBpY2tlcicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0SG91cjogbnVsbCxcbiAgICAgIGlucHV0TWludXRlOiBudWxsLFxuICAgICAgcGVyaW9kOiAnYW0nLFxuICAgICAgc2VsZWN0aW5nSG91cjogdHJ1ZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFsbG93ZWRIb3VyczogRnVuY3Rpb24sXG4gICAgYWxsb3dlZE1pbnV0ZXM6IEZ1bmN0aW9uLFxuICAgIGZvcm1hdDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2FtcG0nLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiBbJ2FtcG0nLCAnMjRociddLmluY2x1ZGVzKHZhbCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBtaW46IFN0cmluZyxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHZhbHVlOiBudWxsXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBpc0FsbG93ZWRIb3VyQ2I6IGZ1bmN0aW9uIGlzQWxsb3dlZEhvdXJDYigpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5taW4gJiYgIXRoaXMubWF4KSByZXR1cm4gdGhpcy5hbGxvd2VkSG91cnM7XG5cbiAgICAgIHZhciBtaW5Ib3VyID0gdGhpcy5taW4gPyB0aGlzLm1pbi5zcGxpdCgnOicpWzBdIDogMDtcbiAgICAgIHZhciBtYXhIb3VyID0gdGhpcy5tYXggPyB0aGlzLm1heC5zcGxpdCgnOicpWzBdIDogMjM7XG5cbiAgICAgIHJldHVybiBmdW5jdGlvbiAodmFsKSB7XG4gICAgICAgIHJldHVybiB2YWwgPj0gbWluSG91ciAqIDEgJiYgdmFsIDw9IG1heEhvdXIgKiAxICYmICghX3RoaXMuYWxsb3dlZEhvdXJzIHx8IF90aGlzLmFsbG93ZWRIb3Vycyh2YWwpKTtcbiAgICAgIH07XG4gICAgfSxcbiAgICBpc0FsbG93ZWRNaW51dGVDYjogZnVuY3Rpb24gaXNBbGxvd2VkTWludXRlQ2IoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGlzSG91ckFsbG93ZWQgPSAhdGhpcy5hbGxvd2VkSG91cnMgfHwgdGhpcy5hbGxvd2VkSG91cnModGhpcy5pbnB1dEhvdXIpO1xuICAgICAgaWYgKCF0aGlzLm1pbiAmJiAhdGhpcy5tYXgpIHtcbiAgICAgICAgcmV0dXJuIGlzSG91ckFsbG93ZWQgPyB0aGlzLmFsbG93ZWRNaW51dGVzIDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgdmFyIF9yZWYgPSB0aGlzLm1pbiA/IHRoaXMubWluLnNwbGl0KCc6JykgOiBbMCwgMF0sXG4gICAgICAgICAgX3JlZjIgPSBfc2xpY2VkVG9BcnJheShfcmVmLCAyKSxcbiAgICAgICAgICBtaW5Ib3VyID0gX3JlZjJbMF0sXG4gICAgICAgICAgbWluTWludXRlID0gX3JlZjJbMV07XG5cbiAgICAgIHZhciBfcmVmMyA9IHRoaXMubWF4ID8gdGhpcy5tYXguc3BsaXQoJzonKSA6IFsyMywgNTldLFxuICAgICAgICAgIF9yZWY0ID0gX3NsaWNlZFRvQXJyYXkoX3JlZjMsIDIpLFxuICAgICAgICAgIG1heEhvdXIgPSBfcmVmNFswXSxcbiAgICAgICAgICBtYXhNaW51dGUgPSBfcmVmNFsxXTtcblxuICAgICAgdmFyIG1pblRpbWUgPSBtaW5Ib3VyICogNjAgKyBtaW5NaW51dGUgKiAxO1xuICAgICAgdmFyIG1heFRpbWUgPSBtYXhIb3VyICogNjAgKyBtYXhNaW51dGUgKiAxO1xuXG4gICAgICByZXR1cm4gZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICB2YXIgdGltZSA9IDYwICogX3RoaXMyLmlucHV0SG91ciArIHZhbDtcbiAgICAgICAgcmV0dXJuIHRpbWUgPj0gbWluVGltZSAmJiB0aW1lIDw9IG1heFRpbWUgJiYgaXNIb3VyQWxsb3dlZCAmJiAoIV90aGlzMi5hbGxvd2VkTWludXRlcyB8fCBfdGhpczIuYWxsb3dlZE1pbnV0ZXModmFsKSk7XG4gICAgICB9O1xuICAgIH0sXG4gICAgaXNBbVBtOiBmdW5jdGlvbiBpc0FtUG0oKSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQgPT09ICdhbXBtJztcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICB2YWx1ZTogJ3NldElucHV0RGF0YSdcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZW1pdFZhbHVlOiBmdW5jdGlvbiBlbWl0VmFsdWUoKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dEhvdXIgIT0gbnVsbCAmJiB0aGlzLmlucHV0TWludXRlICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSh0aGlzLmlucHV0SG91cikgKyAnOicgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSh0aGlzLmlucHV0TWludXRlKSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBzZXRQZXJpb2Q6IGZ1bmN0aW9uIHNldFBlcmlvZChwZXJpb2QpIHtcbiAgICAgIHRoaXMucGVyaW9kID0gcGVyaW9kO1xuICAgICAgaWYgKHRoaXMuaW5wdXRIb3VyICE9IG51bGwpIHtcbiAgICAgICAgdmFyIG5ld0hvdXIgPSB0aGlzLmlucHV0SG91ciArIChwZXJpb2QgPT09ICdhbScgPyAtMTIgOiAxMik7XG4gICAgICAgIHRoaXMuaW5wdXRIb3VyID0gdGhpcy5maXJzdEFsbG93ZWQoJ2hvdXInLCBuZXdIb3VyKTtcbiAgICAgICAgdGhpcy5lbWl0VmFsdWUoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHNldElucHV0RGF0YTogZnVuY3Rpb24gc2V0SW5wdXREYXRhKHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmlucHV0SG91ciA9IG51bGw7XG4gICAgICAgIHRoaXMuaW5wdXRNaW51dGUgPSBudWxsO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgdGhpcy5pbnB1dEhvdXIgPSB2YWx1ZS5nZXRIb3VycygpO1xuICAgICAgICB0aGlzLmlucHV0TWludXRlID0gdmFsdWUuZ2V0TWludXRlcygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIF9yZWY1ID0gdmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCkubWF0Y2goL14oXFxkKyk6KFxcZCspKDpcXGQrKT8oW2FwXW0pPyQvLCAnJykgfHwgW10sXG4gICAgICAgICAgICBfcmVmNiA9IF9zbGljZWRUb0FycmF5KF9yZWY1LCA1KSxcbiAgICAgICAgICAgIGhvdXIgPSBfcmVmNlsxXSxcbiAgICAgICAgICAgIG1pbnV0ZSA9IF9yZWY2WzJdLFxuICAgICAgICAgICAgcGVyaW9kID0gX3JlZjZbNF07XG5cbiAgICAgICAgdGhpcy5pbnB1dEhvdXIgPSBwZXJpb2QgPyB0aGlzLmNvbnZlcnQxMnRvMjQocGFyc2VJbnQoaG91ciwgMTApLCBwZXJpb2QpIDogcGFyc2VJbnQoaG91ciwgMTApO1xuICAgICAgICB0aGlzLmlucHV0TWludXRlID0gcGFyc2VJbnQobWludXRlLCAxMCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucGVyaW9kID0gdGhpcy5pbnB1dEhvdXIgPCAxMiA/ICdhbScgOiAncG0nO1xuICAgIH0sXG4gICAgY29udmVydDI0dG8xMjogZnVuY3Rpb24gY29udmVydDI0dG8xMihob3VyKSB7XG4gICAgICByZXR1cm4gaG91ciA/IChob3VyIC0gMSkgJSAxMiArIDEgOiAxMjtcbiAgICB9LFxuICAgIGNvbnZlcnQxMnRvMjQ6IGZ1bmN0aW9uIGNvbnZlcnQxMnRvMjQoaG91ciwgcGVyaW9kKSB7XG4gICAgICByZXR1cm4gaG91ciAlIDEyICsgKHBlcmlvZCA9PT0gJ3BtJyA/IDEyIDogMCk7XG4gICAgfSxcbiAgICBvbklucHV0OiBmdW5jdGlvbiBvbklucHV0KHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RpbmdIb3VyKSB7XG4gICAgICAgIHRoaXMuaW5wdXRIb3VyID0gdGhpcy5pc0FtUG0gPyB0aGlzLmNvbnZlcnQxMnRvMjQodmFsdWUsIHRoaXMucGVyaW9kKSA6IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnB1dE1pbnV0ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgICAgdGhpcy5lbWl0VmFsdWUoKTtcbiAgICB9LFxuICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZSgpIHtcbiAgICAgIGlmICghdGhpcy5zZWxlY3RpbmdIb3VyKSB7XG4gICAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIHRoaXMudmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlbGVjdGluZ0hvdXIgPSAhdGhpcy5zZWxlY3RpbmdIb3VyO1xuICAgIH0sXG4gICAgZmlyc3RBbGxvd2VkOiBmdW5jdGlvbiBmaXJzdEFsbG93ZWQodHlwZSwgdmFsdWUpIHtcbiAgICAgIHZhciBhbGxvd2VkRm4gPSB0eXBlID09PSAnaG91cicgPyB0aGlzLmlzQWxsb3dlZEhvdXJDYiA6IHRoaXMuaXNBbGxvd2VkTWludXRlQ2I7XG4gICAgICBpZiAoIWFsbG93ZWRGbikgcmV0dXJuIHZhbHVlO1xuXG4gICAgICAvLyBUT0RPOiBjbGVhbiB1cFxuICAgICAgdmFyIHJhbmdlID0gdHlwZSA9PT0gJ21pbnV0ZScgPyByYW5nZU1pbnV0ZXMgOiB0aGlzLmlzQW1QbSA/IHZhbHVlIDwgMTIgPyByYW5nZUhvdXJzMTJhbSA6IHJhbmdlSG91cnMxMnBtIDogcmFuZ2VIb3VyczI0O1xuICAgICAgdmFyIGZpcnN0ID0gcmFuZ2UuZmluZChmdW5jdGlvbiAodikge1xuICAgICAgICByZXR1cm4gYWxsb3dlZEZuKCh2ICsgdmFsdWUpICUgcmFuZ2UubGVuZ3RoICsgcmFuZ2VbMF0pO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gKChmaXJzdCB8fCAwKSArIHZhbHVlKSAlIHJhbmdlLmxlbmd0aCArIHJhbmdlWzBdO1xuICAgIH0sXG4gICAgZ2VuQ2xvY2s6IGZ1bmN0aW9uIGdlbkNsb2NrKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhbGxvd2VkVmFsdWVzOiB0aGlzLnNlbGVjdGluZ0hvdXIgPyB0aGlzLmlzQWxsb3dlZEhvdXJDYiA6IHRoaXMuaXNBbGxvd2VkTWludXRlQ2IsXG4gICAgICAgICAgY29sb3I6IHRoaXMuY29sb3IsXG4gICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgIGRvdWJsZTogdGhpcy5zZWxlY3RpbmdIb3VyICYmICF0aGlzLmlzQW1QbSxcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMuc2VsZWN0aW5nSG91ciA/IHRoaXMuaXNBbVBtID8gdGhpcy5jb252ZXJ0MjR0bzEyIDogZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgICB9IDogZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZEYXRlUGlja2VyX3V0aWxfcGFkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKHZhbCwgMik7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBtYXg6IHRoaXMuc2VsZWN0aW5nSG91ciA/IHRoaXMuaXNBbVBtICYmIHRoaXMucGVyaW9kID09PSAnYW0nID8gMTEgOiAyMyA6IDU5LFxuICAgICAgICAgIG1pbjogdGhpcy5zZWxlY3RpbmdIb3VyICYmIHRoaXMuaXNBbVBtICYmIHRoaXMucGVyaW9kID09PSAncG0nID8gMTIgOiAwLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICBzaXplOiB0aGlzLndpZHRoIC0gKCF0aGlzLmZ1bGxXaWR0aCAmJiB0aGlzLmxhbmRzY2FwZSA/IDgwIDogMjApLFxuICAgICAgICAgIHN0ZXA6IHRoaXMuc2VsZWN0aW5nSG91ciA/IDEgOiA1LFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnNlbGVjdGluZ0hvdXIgPyB0aGlzLmlucHV0SG91ciA6IHRoaXMuaW5wdXRNaW51dGVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogdGhpcy5vbklucHV0LFxuICAgICAgICAgIGNoYW5nZTogdGhpcy5vbkNoYW5nZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICdjbG9jaydcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndGltZS1waWNrZXItY2xvY2tfX2NvbnRhaW5lcicsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgd2lkdGg6IHRoaXMud2lkdGggKyAncHgnLFxuICAgICAgICAgIGhlaWdodDogdGhpcy53aWR0aCAtICghdGhpcy5mdWxsV2lkdGggJiYgdGhpcy5sYW5kc2NhcGUgPyA2MCA6IDApICsgJ3B4J1xuICAgICAgICB9LFxuICAgICAgICBrZXk6IHRoaXMuc2VsZWN0aW5nSG91clxuICAgICAgfSwgW3RoaXMuZ2VuQ2xvY2soKV0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYW1wbTogdGhpcy5pc0FtUG0sXG4gICAgICAgICAgaG91cjogdGhpcy5pbnB1dEhvdXIsXG4gICAgICAgICAgbWludXRlOiB0aGlzLmlucHV0TWludXRlLFxuICAgICAgICAgIHBlcmlvZDogdGhpcy5wZXJpb2QsXG4gICAgICAgICAgc2VsZWN0aW5nSG91cjogdGhpcy5zZWxlY3RpbmdIb3VyXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgJ3VwZGF0ZTpzZWxlY3RpbmdIb3VyJzogZnVuY3Rpb24gdXBkYXRlU2VsZWN0aW5nSG91cih2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMy5zZWxlY3RpbmdIb3VyID0gdmFsdWU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAndXBkYXRlOnBlcmlvZCc6IHRoaXMuc2V0UGVyaW9kXG4gICAgICAgIH0sXG4gICAgICAgIHJlZjogJ3RpdGxlJyxcbiAgICAgICAgc2xvdDogJ3RpdGxlJ1xuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5zZXRJbnB1dERhdGEodGhpcy52YWx1ZSk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gdGhpcy5nZW5QaWNrZXIoJ3BpY2tlci0tdGltZScpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyNTAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyNTEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlRvb2xiYXJUaXRsZSAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZUb29sYmFySXRlbXMgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUb29sYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVG9vbGJhclNpZGVJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1NCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWVG9vbGJhciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRvb2xiYXJTaWRlSWNvbiAqL1xuXG5cblxuXG5cbnZhciBWVG9vbGJhclRpdGxlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0b29sYmFyX190aXRsZScpO1xudmFyIFZUb29sYmFySXRlbXMgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImVcIiAvKiBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsICovXSkoJ3Rvb2xiYXJfX2l0ZW1zJyk7XG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVG9vbGJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRvb2xiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUb29sYmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZUb29sYmFySXRlbXMubmFtZSwgVlRvb2xiYXJJdGVtcyk7XG4gIFZ1ZS5jb21wb25lbnQoVlRvb2xiYXJUaXRsZS5uYW1lLCBWVG9vbGJhclRpdGxlKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUb29sYmFyU2lkZUljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUb29sYmFyU2lkZUljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRvb2xiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjUyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbGJhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190b29sYmFyX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbGJhcl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zc3JfYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc19zY3JvbGxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzEpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10b29sYmFyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCd0b3AnLCBbJ2NsaXBwZWRMZWZ0JywgJ2NsaXBwZWRSaWdodCcsICdjb21wdXRlZEhlaWdodCcsICdpbnZlcnRlZFNjcm9sbCcsICdtYW51YWxTY3JvbGwnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zc3JfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgU2Nyb2xsOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX2RpcmVjdGl2ZXNfc2Nyb2xsX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBhY3RpdmVUaW1lb3V0OiBudWxsLFxuICAgICAgY3VycmVudFNjcm9sbDogMCxcbiAgICAgIGhlaWdodHM6IHtcbiAgICAgICAgbW9iaWxlTGFuZHNjYXBlOiA0OCxcbiAgICAgICAgbW9iaWxlOiA1NixcbiAgICAgICAgZGVza3RvcDogNjQsXG4gICAgICAgIGRlbnNlOiA0OFxuICAgICAgfSxcbiAgICAgIGlzQWN0aXZlOiB0cnVlLFxuICAgICAgaXNFeHRlbmRlZDogZmFsc2UsXG4gICAgICBpc1Njcm9sbGluZ1VwOiBmYWxzZSxcbiAgICAgIHByZXZpb3VzU2Nyb2xsOiBudWxsLFxuICAgICAgcHJldmlvdXNTY3JvbGxEaXJlY3Rpb246IG51bGwsXG4gICAgICBzYXZlZFNjcm9sbDogMCxcbiAgICAgIHRhcmdldDogbnVsbFxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBjYXJkOiBCb29sZWFuLFxuICAgIGNsaXBwZWRMZWZ0OiBCb29sZWFuLFxuICAgIGNsaXBwZWRSaWdodDogQm9vbGVhbixcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBleHRlbmRlZDogQm9vbGVhbixcbiAgICBleHRlbnNpb25IZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBmbG9hdGluZzogQm9vbGVhbixcbiAgICBoZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgaW52ZXJ0ZWRTY3JvbGw6IEJvb2xlYW4sXG4gICAgbWFudWFsU2Nyb2xsOiBCb29sZWFuLFxuICAgIHByb21pbmVudDogQm9vbGVhbixcbiAgICBzY3JvbGxPZmZTY3JlZW46IEJvb2xlYW4sXG4gICAgc2Nyb2xsVGFyZ2V0OiBTdHJpbmcsXG4gICAgc2Nyb2xsVGhyZXNob2xkOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAzMDBcbiAgICB9LFxuICAgIHRhYnM6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvbXB1dGVkQ29udGVudEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRDb250ZW50SGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMuaGVpZ2h0KSByZXR1cm4gcGFyc2VJbnQodGhpcy5oZWlnaHQpO1xuICAgICAgaWYgKHRoaXMuZGVuc2UpIHJldHVybiB0aGlzLmhlaWdodHMuZGVuc2U7XG5cbiAgICAgIGlmICh0aGlzLnByb21pbmVudCB8fCB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQubWRBbmRVcCkgcmV0dXJuIHRoaXMuaGVpZ2h0cy5kZXNrdG9wO1xuXG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5icmVha3BvaW50LndpZHRoID4gdGhpcy4kdnVldGlmeS5icmVha3BvaW50LmhlaWdodCkgcmV0dXJuIHRoaXMuaGVpZ2h0cy5tb2JpbGVMYW5kc2NhcGU7XG5cbiAgICAgIHJldHVybiB0aGlzLmhlaWdodHMubW9iaWxlO1xuICAgIH0sXG4gICAgY29tcHV0ZWRFeHRlbnNpb25IZWlnaHQ6IGZ1bmN0aW9uIGNvbXB1dGVkRXh0ZW5zaW9uSGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMudGFicykgcmV0dXJuIDQ4O1xuICAgICAgaWYgKHRoaXMuZXh0ZW5zaW9uSGVpZ2h0KSByZXR1cm4gcGFyc2VJbnQodGhpcy5leHRlbnNpb25IZWlnaHQpO1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZENvbnRlbnRIZWlnaHQ7XG4gICAgfSxcbiAgICBjb21wdXRlZEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRIZWlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNFeHRlbmRlZCkgcmV0dXJuIHRoaXMuY29tcHV0ZWRDb250ZW50SGVpZ2h0O1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZENvbnRlbnRIZWlnaHQgKyB0aGlzLmNvbXB1dGVkRXh0ZW5zaW9uSGVpZ2h0O1xuICAgIH0sXG4gICAgY29tcHV0ZWRNYXJnaW5Ub3A6IGZ1bmN0aW9uIGNvbXB1dGVkTWFyZ2luVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmJhcjtcbiAgICB9LFxuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICd0b29sYmFyJzogdHJ1ZSxcbiAgICAgICAgJ2VsZXZhdGlvbi0wJzogdGhpcy5mbGF0IHx8ICF0aGlzLmlzQWN0aXZlICYmICF0aGlzLnRhYnMsXG4gICAgICAgICd0b29sYmFyLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICd0b29sYmFyLS1jYXJkJzogdGhpcy5jYXJkLFxuICAgICAgICAndG9vbGJhci0tY2xpcHBlZCc6IHRoaXMuY2xpcHBlZExlZnQgfHwgdGhpcy5jbGlwcGVkUmlnaHQsXG4gICAgICAgICd0b29sYmFyLS1kZW5zZSc6IHRoaXMuZGVuc2UsXG4gICAgICAgICd0b29sYmFyLS1leHRlbmRlZCc6IHRoaXMuaXNFeHRlbmRlZCxcbiAgICAgICAgJ3Rvb2xiYXItLWZpeGVkJzogIXRoaXMuYWJzb2x1dGUgJiYgKHRoaXMuYXBwIHx8IHRoaXMuZml4ZWQpLFxuICAgICAgICAndG9vbGJhci0tZmxvYXRpbmcnOiB0aGlzLmZsb2F0aW5nLFxuICAgICAgICAndG9vbGJhci0tcHJvbWluZW50JzogdGhpcy5wcm9taW5lbnQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgY29tcHV0ZWRQYWRkaW5nTGVmdDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nTGVmdCgpIHtcbiAgICAgIGlmICghdGhpcy5hcHAgfHwgdGhpcy5jbGlwcGVkTGVmdCkgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmxlZnQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdSaWdodDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nUmlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuYXBwIHx8IHRoaXMuY2xpcHBlZFJpZ2h0KSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYW5zZm9ybTogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2Zvcm0oKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNBY3RpdmUgPyAtdGhpcy5jb21wdXRlZEhlaWdodCA6IDA7XG4gICAgfSxcbiAgICBjdXJyZW50VGhyZXNob2xkOiBmdW5jdGlvbiBjdXJyZW50VGhyZXNob2xkKCkge1xuICAgICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuY3VycmVudFNjcm9sbCAtIHRoaXMuc2F2ZWRTY3JvbGwpO1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtYXJnaW5Ub3A6IHRoaXMuY29tcHV0ZWRNYXJnaW5Ub3AgKyAncHgnLFxuICAgICAgICBwYWRkaW5nUmlnaHQ6IHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQgKyAncHgnLFxuICAgICAgICBwYWRkaW5nTGVmdDogdGhpcy5jb21wdXRlZFBhZGRpbmdMZWZ0ICsgJ3B4JyxcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgnICsgdGhpcy5jb21wdXRlZFRyYW5zZm9ybSArICdweCknXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGN1cnJlbnRUaHJlc2hvbGQ6IGZ1bmN0aW9uIGN1cnJlbnRUaHJlc2hvbGQodmFsKSB7XG4gICAgICBpZiAodGhpcy5pbnZlcnRlZFNjcm9sbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSA9IHRoaXMuY3VycmVudFNjcm9sbCA+IHRoaXMuc2Nyb2xsVGhyZXNob2xkO1xuICAgICAgfVxuXG4gICAgICBpZiAodmFsIDwgdGhpcy5zY3JvbGxUaHJlc2hvbGQgfHwgIXRoaXMuaXNCb290ZWQpIHJldHVybjtcblxuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMuaXNTY3JvbGxpbmdVcDtcbiAgICAgIHRoaXMuc2F2ZWRTY3JvbGwgPSB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoKSB7XG4gICAgICB0aGlzLnNhdmVkU2Nyb2xsID0gMDtcbiAgICB9LFxuICAgIGludmVydGVkU2Nyb2xsOiBmdW5jdGlvbiBpbnZlcnRlZFNjcm9sbCh2YWwpIHtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdmFsO1xuICAgIH0sXG4gICAgbWFudWFsU2Nyb2xsOiBmdW5jdGlvbiBtYW51YWxTY3JvbGwodmFsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gIXZhbDtcbiAgICB9LFxuICAgIGlzU2Nyb2xsaW5nVXA6IGZ1bmN0aW9uIGlzU2Nyb2xsaW5nVXAodmFsKSB7XG4gICAgICB0aGlzLnNhdmVkU2Nyb2xsID0gdGhpcy5zYXZlZFNjcm9sbCB8fCB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfVxuICB9LFxuXG4gIGNyZWF0ZWQ6IGZ1bmN0aW9uIGNyZWF0ZWQoKSB7XG4gICAgaWYgKHRoaXMuaW52ZXJ0ZWRTY3JvbGwgfHwgdGhpcy5tYW51YWxTY3JvbGwpIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgfSxcbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICBpZiAodGhpcy5zY3JvbGxUYXJnZXQpIHtcbiAgICAgIHRoaXMudGFyZ2V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLnNjcm9sbFRhcmdldCk7XG4gICAgfVxuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uU2Nyb2xsOiBmdW5jdGlvbiBvblNjcm9sbCgpIHtcbiAgICAgIGlmICghdGhpcy5zY3JvbGxPZmZTY3JlZW4gfHwgdGhpcy5tYW51YWxTY3JvbGwgfHwgdHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybjtcblxuICAgICAgdmFyIHRhcmdldCA9IHRoaXMudGFyZ2V0IHx8IHdpbmRvdztcblxuICAgICAgdGhpcy5jdXJyZW50U2Nyb2xsID0gdGhpcy5zY3JvbGxUYXJnZXQgPyB0YXJnZXQuc2Nyb2xsVG9wIDogdGFyZ2V0LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A7XG5cbiAgICAgIHRoaXMuaXNTY3JvbGxpbmdVcCA9IHRoaXMuY3VycmVudFNjcm9sbCA8IHRoaXMucHJldmlvdXNTY3JvbGw7XG5cbiAgICAgIHRoaXMucHJldmlvdXNTY3JvbGwgPSB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgYXBwbGljYXRpb24gbGF5b3V0XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtudW1iZXJ9XG4gICAgICovXG4gICAgdXBkYXRlQXBwbGljYXRpb246IGZ1bmN0aW9uIHVwZGF0ZUFwcGxpY2F0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW52ZXJ0ZWRTY3JvbGwgfHwgdGhpcy5tYW51YWxTY3JvbGwgPyAwIDogdGhpcy5jb21wdXRlZEhlaWdodDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHRoaXMuaXNFeHRlbmRlZCA9IHRoaXMuZXh0ZW5kZWQgfHwgISF0aGlzLiRzbG90cy5leHRlbnNpb247XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9O1xuXG4gICAgZGF0YS5kaXJlY3RpdmVzID0gW3tcbiAgICAgIGFyZzogdGhpcy5zY3JvbGxUYXJnZXQsXG4gICAgICBuYW1lOiAnc2Nyb2xsJyxcbiAgICAgIHZhbHVlOiB0aGlzLm9uU2Nyb2xsXG4gICAgfV07XG5cbiAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndG9vbGJhcl9fY29udGVudCcsXG4gICAgICBzdHlsZTogeyBoZWlnaHQ6IHRoaXMuY29tcHV0ZWRDb250ZW50SGVpZ2h0ICsgJ3B4JyB9LFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KSk7XG5cbiAgICBpZiAodGhpcy5pc0V4dGVuZGVkKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0b29sYmFyX19leHRlbnNpb24nLFxuICAgICAgICBzdHlsZTogeyBoZWlnaHQ6IHRoaXMuY29tcHV0ZWRFeHRlbnNpb25IZWlnaHQgKyAncHgnIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmV4dGVuc2lvbikpO1xuICAgIH1cblxuICAgIHJldHVybiBoKCduYXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDI1NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRvb2xiYXItc2lkZS1pY29uJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgc2xvdHMgPSBfcmVmLnNsb3RzLFxuICAgICAgICBsaXN0ZW5lcnMgPSBfcmVmLmxpc3RlbmVycyxcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBkYXRhID0gX3JlZi5kYXRhO1xuXG4gICAgdmFyIGNsYXNzZXMgPSBkYXRhLnN0YXRpY0NsYXNzID8gZGF0YS5zdGF0aWNDbGFzcyArICcgdG9vbGJhcl9fc2lkZS1pY29uJyA6ICd0b29sYmFyX19zaWRlLWljb24nO1xuXG4gICAgdmFyIGQgPSBPYmplY3QuYXNzaWduKGRhdGEsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiBjbGFzc2VzLFxuICAgICAgcHJvcHM6IE9iamVjdC5hc3NpZ24ocHJvcHMsIHtcbiAgICAgICAgaWNvbjogdHJ1ZVxuICAgICAgfSksXG4gICAgICBvbjogbGlzdGVuZXJzXG4gICAgfSk7XG5cbiAgICB2YXIgZGVmYXVsdFNsb3QgPSBzbG90cygpLmRlZmF1bHQ7XG5cbiAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBkLCBkZWZhdWx0U2xvdCB8fCBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgJ21lbnUnKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNTUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVG9vbHRpcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUb29sdGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVG9vbHRpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRvb2x0aXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRvb2x0aXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjU2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbHRpcHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbHRpcHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190b29sdGlwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19kZWxheWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RlcGVuZGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfZGV0YWNoYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfbWVudWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10b29sdGlwJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfZGVsYXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19kZXRhY2hhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX21lbnVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2FsY3VsYXRlZE1pbldpZHRoOiAwLFxuICAgICAgY2xvc2VEZXBlbmRlbnRzOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkZWJvdW5jZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZpeGVkOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgb3BlbkRlbGF5OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjAwXG4gICAgfSxcbiAgICB0YWc6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdzcGFuJ1xuICAgIH0sXG4gICAgdHJhbnNpdGlvbjogU3RyaW5nLFxuICAgIHpJbmRleDoge1xuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNhbGN1bGF0ZWRMZWZ0OiBmdW5jdGlvbiBjYWxjdWxhdGVkTGVmdCgpIHtcbiAgICAgIHZhciBfZGltZW5zaW9ucyA9IHRoaXMuZGltZW5zaW9ucyxcbiAgICAgICAgICBhY3RpdmF0b3IgPSBfZGltZW5zaW9ucy5hY3RpdmF0b3IsXG4gICAgICAgICAgY29udGVudCA9IF9kaW1lbnNpb25zLmNvbnRlbnQ7XG5cbiAgICAgIHZhciB1bmtub3duID0gIXRoaXMuYm90dG9tICYmICF0aGlzLmxlZnQgJiYgIXRoaXMudG9wICYmICF0aGlzLnJpZ2h0O1xuICAgICAgdmFyIGxlZnQgPSAwO1xuXG4gICAgICBpZiAodGhpcy50b3AgfHwgdGhpcy5ib3R0b20gfHwgdW5rbm93bikge1xuICAgICAgICBsZWZ0ID0gYWN0aXZhdG9yLmxlZnQgKyBhY3RpdmF0b3Iud2lkdGggLyAyIC0gY29udGVudC53aWR0aCAvIDI7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMubGVmdCB8fCB0aGlzLnJpZ2h0KSB7XG4gICAgICAgIGxlZnQgPSBhY3RpdmF0b3IubGVmdCArICh0aGlzLnJpZ2h0ID8gYWN0aXZhdG9yLndpZHRoIDogLWNvbnRlbnQud2lkdGgpICsgKHRoaXMucmlnaHQgPyAxMCA6IC0xMCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNYT3ZlcmZsb3cobGVmdCkgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZFRvcDogZnVuY3Rpb24gY2FsY3VsYXRlZFRvcCgpIHtcbiAgICAgIHZhciBfZGltZW5zaW9uczIgPSB0aGlzLmRpbWVuc2lvbnMsXG4gICAgICAgICAgYWN0aXZhdG9yID0gX2RpbWVuc2lvbnMyLmFjdGl2YXRvcixcbiAgICAgICAgICBjb250ZW50ID0gX2RpbWVuc2lvbnMyLmNvbnRlbnQ7XG5cbiAgICAgIHZhciB0b3AgPSAwO1xuXG4gICAgICBpZiAodGhpcy50b3AgfHwgdGhpcy5ib3R0b20pIHtcbiAgICAgICAgdG9wID0gYWN0aXZhdG9yLnRvcCArICh0aGlzLmJvdHRvbSA/IGFjdGl2YXRvci5oZWlnaHQgOiAtY29udGVudC5oZWlnaHQpICsgKHRoaXMuYm90dG9tID8gMTAgOiAtMTApO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmxlZnQgfHwgdGhpcy5yaWdodCkge1xuICAgICAgICB0b3AgPSBhY3RpdmF0b3IudG9wICsgYWN0aXZhdG9yLmhlaWdodCAvIDIgLSBjb250ZW50LmhlaWdodCAvIDI7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNZT3ZlcmZsb3codG9wICsgdGhpcy5wYWdlWU9mZnNldCkgKyAncHgnO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd0b29sdGlwLS10b3AnOiB0aGlzLnRvcCxcbiAgICAgICAgJ3Rvb2x0aXAtLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ3Rvb2x0aXAtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAndG9vbHRpcC0tbGVmdCc6IHRoaXMubGVmdFxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgaWYgKHRoaXMudHJhbnNpdGlvbikgcmV0dXJuIHRoaXMudHJhbnNpdGlvbjtcbiAgICAgIGlmICh0aGlzLnRvcCkgcmV0dXJuICdzbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbic7XG4gICAgICBpZiAodGhpcy5yaWdodCkgcmV0dXJuICdzbGlkZS14LXRyYW5zaXRpb24nO1xuICAgICAgaWYgKHRoaXMuYm90dG9tKSByZXR1cm4gJ3NsaWRlLXktdHJhbnNpdGlvbic7XG4gICAgICBpZiAodGhpcy5sZWZ0KSByZXR1cm4gJ3NsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uJztcbiAgICB9LFxuICAgIG9mZnNldFk6IGZ1bmN0aW9uIG9mZnNldFkoKSB7XG4gICAgICByZXR1cm4gdGhpcy50b3AgfHwgdGhpcy5ib3R0b207XG4gICAgfSxcbiAgICBvZmZzZXRYOiBmdW5jdGlvbiBvZmZzZXRYKCkge1xuICAgICAgcmV0dXJuIHRoaXMubGVmdCB8fCB0aGlzLnJpZ2h0O1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBsZWZ0OiB0aGlzLmNhbGN1bGF0ZWRMZWZ0LFxuICAgICAgICBtYXhXaWR0aDogaXNOYU4odGhpcy5tYXhXaWR0aCkgPyB0aGlzLm1heFdpZHRoIDogdGhpcy5tYXhXaWR0aCArICdweCcsXG4gICAgICAgIG9wYWNpdHk6IHRoaXMuaXNBY3RpdmUgPyAwLjkgOiAwLFxuICAgICAgICB0b3A6IHRoaXMuY2FsY3VsYXRlZFRvcCxcbiAgICAgICAgekluZGV4OiB0aGlzLnpJbmRleCB8fCB0aGlzLmFjdGl2ZVpJbmRleFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGFjdGl2YXRlOiBmdW5jdGlvbiBhY3RpdmF0ZSgpIHtcbiAgICAgIC8vIFVwZGF0ZSBjb29yZGluYXRlcyBhbmQgZGltZW5zaW9ucyBvZiBtZW51XG4gICAgICAvLyBhbmQgaXRzIGFjdGl2YXRvclxuICAgICAgdGhpcy51cGRhdGVEaW1lbnNpb25zKCk7XG4gICAgICAvLyBTdGFydCB0aGUgdHJhbnNpdGlvblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHRoaXMuc3RhcnRUcmFuc2l0aW9uKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnZhbHVlICYmIHRoaXMuY2FsbEFjdGl2YXRlKCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2FkZEJhY2tncm91bmRDb2xvckNsLFxuICAgICAgICBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgdG9vbHRpcCA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndG9vbHRpcF9fY29udGVudCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKChfYWRkQmFja2dyb3VuZENvbG9yQ2wgPSB7fSwgX2RlZmluZVByb3BlcnR5KF9hZGRCYWNrZ3JvdW5kQ29sb3JDbCwgdGhpcy5jb250ZW50Q2xhc3MsIHRydWUpLCBfZGVmaW5lUHJvcGVydHkoX2FkZEJhY2tncm91bmRDb2xvckNsLCAnbWVudWFibGVfX2NvbnRlbnRfX2FjdGl2ZScsIHRoaXMuaXNBY3RpdmUpLCBfYWRkQmFja2dyb3VuZENvbG9yQ2wpKSxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIGF0dHJzOiB0aGlzLmF0dHJzLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0NvbnRlbnRBY3RpdmVcbiAgICAgIH1dLFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKHRoaXMudGFnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3Rvb2x0aXAnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW2goJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvblxuICAgICAgfVxuICAgIH0sIFt0b29sdGlwXSksIGgoJ3NwYW4nLCB7XG4gICAgICBvbjogdGhpcy5kaXNhYmxlZCA/IHt9IDoge1xuICAgICAgICBtb3VzZWVudGVyOiBmdW5jdGlvbiBtb3VzZWVudGVyKCkge1xuICAgICAgICAgIF90aGlzLnJ1bkRlbGF5KCdvcGVuJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgbW91c2VsZWF2ZTogZnVuY3Rpb24gbW91c2VsZWF2ZSgpIHtcbiAgICAgICAgICBfdGhpcy5ydW5EZWxheSgnY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHJlZjogJ2FjdGl2YXRvcidcbiAgICB9LCB0aGlzLiRzbG90cy5hY3RpdmF0b3IpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDI1OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJkZWZhdWx0XCJdID0gaW5zdGFsbDtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19yZXNpemVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcmlwcGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3Njcm9sbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkNsaWNrT3V0c2lkZVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY2xpY2tfb3V0c2lkZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJSaXBwbGVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3JpcHBsZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJSZXNpemVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3Jlc2l6ZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJTY3JvbGxcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3Njcm9sbF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJUb3VjaFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdG91Y2hfX1tcImFcIl07IH0pO1xuXG5cblxuXG5cblxuXG5cbmZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5kaXJlY3RpdmUoJ2NsaWNrLW91dHNpZGUnLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5kaXJlY3RpdmUoJ3JpcHBsZScsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcmlwcGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuZGlyZWN0aXZlKCdyZXNpemUnLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3Jlc2l6ZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmRpcmVjdGl2ZSgnc2Nyb2xsJywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19zY3JvbGxfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5kaXJlY3RpdmUoJ3RvdWNoJywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn1cblxuLyoqKi8gfSlcbi8qKioqKiovIF0pW1wiZGVmYXVsdFwiXTtcbn0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dnVldGlmeS5qcy5tYXBcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWV0aWZ5L2Rpc3QvdnVldGlmeS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vuetify/dist/vuetify.js\n"); + +/***/ }), + +/***/ "./node_modules/vuetify/dist/vuetify.min.css": +/***/ (function(module, exports, __webpack_require__) { + +eval("// style-loader: Adds some css to the DOM by adding a diff --git a/src/main.js b/src/main.js index 417390e2..e0ba216e 100644 --- a/src/main.js +++ b/src/main.js @@ -3,6 +3,10 @@ import Vue from 'vue' import App from './App' import router from './router' +import Vuetify from 'vuetify' +import 'vuetify/dist/vuetify.min.css' + +Vue.use(Vuetify) Vue.config.productionTip = false diff --git a/src/stylesheet/main.css b/src/stylesheet/main.css index 1c710a8c..c632e0b1 100644 --- a/src/stylesheet/main.css +++ b/src/stylesheet/main.css @@ -1,8 +1,4 @@ -@import "//fonts.googleapis.com/css?family=Roboto:400,500,700,400italic|Material+Icons"; - -html { - height: 100%; -} +@import "https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons"; body { margin: 0; @@ -14,4 +10,13 @@ body { .box { border: 1px solid black; +} + +.columns { + margin: 0; +} + +.container { + margin: 0; + padding: 0; } \ No newline at end of file From e27e2428e9c70dbd08142b5c89d3080d418359e1 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Wed, 2 May 2018 14:16:16 +0800 Subject: [PATCH 007/113] Add loginform and registerform components --- assets/app.js | 106 ++++++++++++++++++++++++++++---- login/urls.py | 1 + src/App.vue | 4 +- src/components/LogIn.vue | 71 +++++++++++++++------ src/components/loginForm.vue | 27 ++++++++ src/components/registerForm.vue | 42 +++++++++++++ src/main.js | 11 +++- 7 files changed, 229 insertions(+), 33 deletions(-) create mode 100644 src/components/loginForm.vue create mode 100644 src/components/registerForm.vue diff --git a/assets/app.js b/assets/app.js index 933a3d72..38b8b475 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "7817c27adf513cdc142f"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "3ee8a9cef0ce5aa3ea4d"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -731,7 +731,7 @@ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBpZD1cImFwcFwiPlxuICAgIDxyb3V0ZXItdmlldy8+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ0FwcCdcbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG5AaW1wb3J0IFwiLi9zdHlsZXNoZWV0L21haW4uY3NzXCI7XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBBcHAudnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBT0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); +eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPHYtYXBwIGRhcms+XG4gICAgPHJvdXRlci12aWV3Lz5cbiAgPC92LWFwcD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdBcHAnXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuQGltcG9ydCBcIi4vc3R5bGVzaGVldC9tYWluLmNzc1wiO1xuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gQXBwLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQU9BO0FBQ0E7QUFEQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); /***/ }), @@ -739,7 +739,23 @@ eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin() {\n\t\t\tconsole.log(\"test\");\n\t\t}\n\t},\n\tcalculated: {}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCByb3cgd3JhcD5cblx0XHQgIFx0PHYtZmxleCBsZzc+XG5cdFx0ICBcdFx0PHYtbGF5b3V0IGp1c3RpZnktc3BhY2UtYXJvdW5kIHJvdyBjbGFzcz1cImJveCBpbnRyb1wiPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGVcIj5lQXVjdGlvbjwvc3Bhbj5cblx0XHQgIFx0XHQ8L3YtbGF5b3V0PlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQgIFx0PHYtZmxleCBsZzU+XG5cdFx0ICBcdCBcdFxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdGRhdGEoKXtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHVzZXJuYW1lOiBcIlwiLFxuXHRcdFx0XHRwYXNzd29yZDogXCJcIixcblx0XHRcdFx0ZW1haWw6IFwiXCIsXG5cdFx0XHRcdGlzUmVnaXN0ZXI6IGZhbHNlLFxuXHRcdFx0XHRjb25maXJtTWF0Y2g6IHRydWUsXG5cdFx0XHR9O1xuXHRcdH0sXG5cdFx0bWV0aG9kczoge1xuXHRcdFx0bG9naW4oKXtcblx0XHRcdFx0Y29uc29sZS5sb2coXCJ0ZXN0XCIpO1xuXHRcdFx0fSxcblx0XHR9LFxuXHRcdGNhbGN1bGF0ZWQ6IHtcblx0XHR9XG5cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC5pbnRybyB7XG5cdFx0cGFkZGluZzogMTBlbTtcblx0fVxuXHQudGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogMjBlbTtcblx0fVxuPC9zdHlsZT5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBMb2dJbi52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFnQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUxBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBS0E7QUFDQTtBQWhCQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__loginForm__ = __webpack_require__(\"./src/components/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__registerForm__ = __webpack_require__(\"./src/components/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__registerForm__[\"a\" /* default */]\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCByb3cgd3JhcCBmaWxsPlxuXHRcdCAgXHQ8di1mbGV4IGxnNyBjbGFzcz1cImludHJvXCI+XG5cdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQgIFx0PHYtZmxleCBsZzUgY2xhc3M9XCJyaWdodCBhbWJlciBkYXJrZW4tM1wiPlxuXHRcdFx0XHQ8di1sYXlvdXQgcm93IHdyYXA+XG5cdFx0XHRcdFx0PHYtZmxleCBsZzYgPlxuXHRcdFx0XHRcdFx0PHYtYnRuIFxuXHRcdFx0XHRcdFx0XHRkZXByZXNzZWRcblx0XHRcdFx0XHRcdFx0ZmxhdFxuXHRcdFx0XHRcdFx0XHQ6cmlwcGxlPVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHRAY2xpY2s9XCJpc1JlZ2lzdGVyID0gZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHQ6Y2xhc3M9XCJ7J2FtYmVyIGRhcmtlbi0zJzogIWlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiBpc1JlZ2lzdGVyfVwiXG5cdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdExvZyBJblxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0XHQ8di1mbGV4IGxnNiA+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZCBcblx0XHRcdFx0XHRcdFx0ZmxhdFxuXHRcdFx0XHRcdFx0XHQ6cmlwcGxlPVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHRAY2xpY2s9XCJpc1JlZ2lzdGVyID0gdHJ1ZVwiIFxuXHRcdFx0XHRcdFx0XHQ6Y2xhc3M9XCJ7J2FtYmVyIGRhcmtlbi0zJzogaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6ICFpc1JlZ2lzdGVyfVwiXG5cdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdFJlZ2lzdGVyXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHQ8L3YtbGF5b3V0PlxuXHRcdFx0XHQ8bG9naW5Gb3JtIHYtc2hvdz1cIiFpc1JlZ2lzdGVyXCI+PC9sb2dpbkZvcm0+XG5cdFx0XHRcdDxyZWdpc3RlckZvcm0gdi1zaG93PVwiaXNSZWdpc3RlclwiPjwvcmVnaXN0ZXJGb3JtPlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiBmYWxzZSxcblx0XHRcdFx0Y29uZmlybU1hdGNoOiB0cnVlLFxuXHRcdFx0fTtcblx0XHR9LFxuXHRcdGNvbXBvbmVudHM6IHtcblx0XHRcdGxvZ2luRm9ybSwgcmVnaXN0ZXJGb3JtXG5cdFx0fSxcblx0XHR3YXRjaDoge1xuXHRcdFx0aXNSZWdpc3RlcjogZnVuY3Rpb24oKXtcblx0XHRcdFx0Y29uc29sZS5sb2codGhpcy5pc1JlZ2lzdGVyKTtcblx0XHRcdH1cblx0XHR9LFxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuXHQuaW50cm8ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0XHRwYWRkaW5nLXRvcDogMTVlbTtcblx0fVxuXG5cblx0YnV0dG9uIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDVlbTtcblx0XHRtYXJnaW46IDA7XG5cdH1cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEyQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUxBO0FBT0E7QUFDQTtBQUNBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBYkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/loginForm.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlBhc3N3b3JkXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di1idG4+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0bmFtZTogJ2xvZ2luRm9ybScsXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gbG9naW5Gb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQkE7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/loginForm.vue\n"); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/registerForm.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'registerForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9yZWdpc3RlckZvcm0udnVlP2FiOTciXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwiZm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJGaXJzdG5hbWVcIlxuXHRcdCAgaWQ9XCJmblwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJsbmFtZVwiXG5cdFx0ICBsYWJlbD1cIkxhc3QgTmFtZVwiXG5cdFx0ICBpZD1cImxuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cInVzZXJcIlxuXHRcdCAgbGFiZWw9XCJVc2VybmFtZVwiXG5cdFx0ICBpZD1cInVuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cImVtYWlsXCJcblx0XHQgIGxhYmVsPVwiRW1haWxcIlxuXHRcdCAgaWQ9XCJlbVwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJwYXNzXCJcblx0XHQgIGxhYmVsPVwiUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJwc1wiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0bj5TdWJtaXQ8L3YtYnRuPlxuXHQ8L3YtZm9ybT5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRuYW1lOiAncmVnaXN0ZXJGb3JtJyxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC5sb2dpbiB7XG5cdFx0cGFkZGluZzogMmVtO1xuXHR9XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyByZWdpc3RlckZvcm0udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdDQTtBQUNBO0FBREEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/registerForm.vue\n"); /***/ }), @@ -750,10 +766,10 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ }), -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.intro[data-v-51b0eb09] {\\n\\tpadding: 10em;\\n}\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 20em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAsCA;CACA,cAAA;CACA;AACA;CACA,gBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi5pbnRyb1tkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRwYWRkaW5nOiAxMGVtO1xcbn1cXG4udGl0bGVbZGF0YS12LTUxYjBlYjA5XSB7XFxuXFx0Zm9udC1zaXplOiAyMGVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBc0NBO0NBQ0EsY0FBQTtDQUNBO0FBQ0E7Q0FDQSxnQkFBQTtDQUNBXCIsXCJmaWxlXCI6XCJMb2dJbi52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWNvbnRhaW5lciBmbHVpZD5cXG5cXHRcXHQ8di1sYXlvdXQgcm93IHdyYXA+XFxuXFx0XFx0ICBcXHQ8di1mbGV4IGxnNz5cXG5cXHRcXHQgIFxcdFxcdDx2LWxheW91dCBqdXN0aWZ5LXNwYWNlLWFyb3VuZCByb3cgY2xhc3M9XFxcImJveCBpbnRyb1xcXCI+XFxuXFx0XFx0XFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcInRpdGxlXFxcIj5lQXVjdGlvbjwvc3Bhbj5cXG5cXHRcXHQgIFxcdFxcdDwvdi1sYXlvdXQ+XFxuXFx0XFx0ICBcXHQ8L3YtZmxleD5cXG5cXHRcXHQgIFxcdDx2LWZsZXggbGc1PlxcblxcdFxcdCAgXFx0IFxcdFxcblxcdFxcdCAgXFx0PC92LWZsZXg+XFxuXFx0XFx0PC92LWxheW91dD5cXG5cXHQ8L3YtY29udGFpbmVyPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogZmFsc2UsXFxuXFx0XFx0XFx0XFx0Y29uZmlybU1hdGNoOiB0cnVlLFxcblxcdFxcdFxcdH07XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW4oKXtcXG5cXHRcXHRcXHRcXHRjb25zb2xlLmxvZyhcXFwidGVzdFxcXCIpO1xcblxcdFxcdFxcdH0sXFxuXFx0XFx0fSxcXG5cXHRcXHRjYWxjdWxhdGVkOiB7XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5pbnRybyB7XFxuXFx0XFx0cGFkZGluZzogMTBlbTtcXG5cXHR9XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDIwZW07XFxuXFx0fVxcbjwvc3R5bGU+XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.intro[data-v-51b0eb09] {\\n padding: 2em;\\n padding-top: 15em;\\n}\\nbutton[data-v-51b0eb09] {\\n width: 100%;\\n height: 5em;\\n margin: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAoEA;EACC,aAAY;EACZ,kBAAiB;CACjB;AAGD;EACC,YAAW;EACX,YAAW;EACX,UAAS;CACT\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.intro {\\n\\tpadding: 2em;\\n\\tpadding-top: 15em;\\n}\\n\\n\\nbutton {\\n\\twidth: 100%;\\n\\theight: 5em;\\n\\tmargin: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmludHJvW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMmVtO1xcbiAgcGFkZGluZy10b3A6IDE1ZW07XFxufVxcbmJ1dHRvbltkYXRhLXYtNTFiMGViMDldIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiA1ZW07XFxuICBtYXJnaW46IDA7XFxufVxcblwiLCBcIlwiLCB7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFvRUE7RUFDQyxhQUFZO0VBQ1osa0JBQWlCO0NBQ2pCO0FBR0Q7RUFDQyxZQUFXO0VBQ1gsWUFBVztFQUNYLFVBQVM7Q0FDVFwiLFwiZmlsZVwiOlwiTG9nSW4udnVlXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcbi5pbnRybyB7XFxuXFx0cGFkZGluZzogMmVtO1xcblxcdHBhZGRpbmctdG9wOiAxNWVtO1xcbn1cXG5cXG5cXG5idXR0b24ge1xcblxcdHdpZHRoOiAxMDAlO1xcblxcdGhlaWdodDogNWVtO1xcblxcdG1hcmdpbjogMDtcXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2xpYi9sb2FkZXIuanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -764,6 +780,20 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ }), +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-cf3acad2\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/registerForm.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-cf3acad2] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/registerForm.vue\"],\"names\":[],\"mappings\":\";AAsCA;CACA,aAAA;CACA\",\"file\":\"registerForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jZjNhY2FkMlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWU/MDVkYSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jZjNhY2FkMl0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9yZWdpc3RlckZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFzQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcInJlZ2lzdGVyRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJmbmFtZVxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJGaXJzdG5hbWVcXFwiXFxuXFx0XFx0ICBpZD1cXFwiZm5cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcImxuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIkxhc3QgTmFtZVxcXCJcXG5cXHRcXHQgIGlkPVxcXCJsblxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwidXNlclxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJVc2VybmFtZVxcXCJcXG5cXHRcXHQgIGlkPVxcXCJ1blxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwiZW1haWxcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiRW1haWxcXFwiXFxuXFx0XFx0ICBpZD1cXFwiZW1cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcInBhc3NcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwicHNcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LWJ0bj5TdWJtaXQ8L3YtYnRuPlxcblxcdDwvdi1mb3JtPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0bmFtZTogJ3JlZ2lzdGVyRm9ybScsXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LmxvZ2luIHtcXG5cXHRcXHRwYWRkaW5nOiAyZW07XFxuXFx0fVxcbjwvc3R5bGU+XCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-cf3acad2\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/registerForm.vue\n"); + +/***/ }), + +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-eceaa526\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/loginForm.vue": +/***/ (function(module, exports, __webpack_require__) { + +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-eceaa526] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/loginForm.vue\"],\"names\":[],\"mappings\":\";AAuBA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luRm9ybS52dWU/Yzc1NyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1lY2VhYTUyNl0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUF1QkE7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di1idG4+U3VibWl0PC92LWJ0bj5cXG5cXHQ8L3YtZm9ybT5cXG48L3RlbXBsYXRlPlxcblxcbjxzY3JpcHQ+XFxuXFx0ZXhwb3J0IGRlZmF1bHQge1xcblxcdFxcdG5hbWU6ICdsb2dpbkZvcm0nLFxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-eceaa526\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/loginForm.vue\n"); + +/***/ }), + /***/ "./node_modules/css-loader/lib/css-base.js": /***/ (function(module, exports) { @@ -789,7 +819,7 @@ eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 featu /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg7: \"\" } },\n [\n _c(\n \"v-layout\",\n {\n staticClass: \"box intro\",\n attrs: { \"justify-space-around\": \"\", row: \"\" }\n },\n [_c(\"span\", { staticClass: \"title\" }, [_vm._v(\"eAuction\")])]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"v-flex\", { attrs: { lg5: \"\" } })\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IGF0dHJzOiB7IGxnNzogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwidi1sYXlvdXRcIixcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJib3ggaW50cm9cIixcbiAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IFwianVzdGlmeS1zcGFjZS1hcm91bmRcIjogXCJcIiwgcm93OiBcIlwiIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFtfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJ0aXRsZVwiIH0sIFtfdm0uX3YoXCJlQXVjdGlvblwiKV0pXVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgICksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcInYtZmxleFwiLCB7IGF0dHJzOiB7IGxnNTogXCJcIiB9IH0pXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgIClcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", fill: \"\" } },\n [\n _c(\"v-flex\", { staticClass: \"intro\", attrs: { lg7: \"\" } }, [\n _c(\"p\", { staticClass: \"text-lg-left display-4\" }, [\n _vm._v(\"eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { staticClass: \"right amber darken-3\", attrs: { lg5: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": !_vm.isRegister,\n \"yellow darken-3\": _vm.isRegister\n },\n attrs: { depressed: \"\", flat: \"\", ripple: false },\n on: {\n click: function($event) {\n _vm.isRegister = false\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tLog In\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": _vm.isRegister,\n \"yellow darken-3\": !_vm.isRegister\n },\n attrs: { depressed: \"\", flat: \"\", ripple: false },\n on: {\n click: function($event) {\n _vm.isRegister = true\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tRegister\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"loginForm\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ]\n }),\n _vm._v(\" \"),\n _c(\"registerForm\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ]\n })\n ],\n 1\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgZmlsbDogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcInYtZmxleFwiLCB7IHN0YXRpY0NsYXNzOiBcImludHJvXCIsIGF0dHJzOiB7IGxnNzogXCJcIiB9IH0sIFtcbiAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBkaXNwbGF5LTRcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICBcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCJcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJwXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCIgfSwgW1xuICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCIsIGF0dHJzOiB7IGxnNTogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwidi1sYXlvdXRcIixcbiAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiB9IH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc2OiBcIlwiIH0gfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ2LWJ0blwiLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiYW1iZXIgZGFya2VuLTNcIjogIV92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwieWVsbG93IGRhcmtlbi0zXCI6IF92bS5pc1JlZ2lzdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGRlcHJlc3NlZDogXCJcIiwgZmxhdDogXCJcIiwgcmlwcGxlOiBmYWxzZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5pc1JlZ2lzdGVyID0gZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KFwiXFxuXFx0XFx0XFx0XFx0XFx0XFx0TG9nIEluXFxuXFx0XFx0XFx0XFx0XFx0XCIpXVxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBsZzY6IFwiXCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInYtYnRuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhbWJlciBkYXJrZW4tM1wiOiBfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInllbGxvdyBkYXJrZW4tM1wiOiAhX3ZtLmlzUmVnaXN0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZGVwcmVzc2VkOiBcIlwiLCBmbGF0OiBcIlwiLCByaXBwbGU6IGZhbHNlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmlzUmVnaXN0ZXIgPSB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW192bS5fdihcIlxcblxcdFxcdFxcdFxcdFxcdFxcdFJlZ2lzdGVyXFxuXFx0XFx0XFx0XFx0XFx0XCIpXVxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxvZ2luRm9ybVwiLCB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJyZWdpc3RlckZvcm1cIiwge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJpc1JlZ2lzdGVyXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgIClcbiAgICAgICAgXSxcbiAgICAgICAgMVxuICAgICAgKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi01MWIwZWIwOVwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -797,7 +827,23 @@ eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"app\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJkaXZcIiwgeyBhdHRyczogeyBpZDogXCJhcHBcIiB9IH0sIFtfYyhcInJvdXRlci12aWV3XCIpXSwgMSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTdiYTViZDkwXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcImhhc1Njb3BlZFwiOmZhbHNlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"v-app\", { attrs: { dark: \"\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJ2LWFwcFwiLCB7IGF0dHJzOiB7IGRhcms6IFwiXCIgfSB9LCBbX2MoXCJyb3V0ZXItdmlld1wiKV0sIDEpXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi03YmE1YmQ5MFwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-cf3acad2\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/registerForm.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"fname\", label: \"Firstname\", id: \"fn\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"lname\", label: \"Last Name\", id: \"ln\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"user\", label: \"Username\", id: \"un\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"email\", label: \"Email\", id: \"em\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"pass\", label: \"Password\", id: \"ps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-cf3acad2\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jZjNhY2FkMlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9yZWdpc3RlckZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZT9kZmZhIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwiZm5hbWVcIiwgbGFiZWw6IFwiRmlyc3RuYW1lXCIsIGlkOiBcImZuXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcImxuYW1lXCIsIGxhYmVsOiBcIkxhc3QgTmFtZVwiLCBpZDogXCJsblwiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJ1c2VyXCIsIGxhYmVsOiBcIlVzZXJuYW1lXCIsIGlkOiBcInVuXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcImVtYWlsXCIsIGxhYmVsOiBcIkVtYWlsXCIsIGlkOiBcImVtXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcInBhc3NcIiwgbGFiZWw6IFwiUGFzc3dvcmRcIiwgaWQ6IFwicHNcIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtYnRuXCIsIFtfdm0uX3YoXCJTdWJtaXRcIildKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi1jZjNhY2FkMlwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LWNmM2FjYWQyXCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-cf3acad2\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/registerForm.vue\n"); + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-eceaa526\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/loginForm.vue": +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Password\", id: \"id\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-eceaa526\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZT85MjM0Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJuYW1lXCIsIGxhYmVsOiBcIlBhc3N3b3JkXCIsIGlkOiBcImlkXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LWJ0blwiLCBbX3ZtLl92KFwiU3VibWl0XCIpXSlcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtZWNlYWE1MjZcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL2xvZ2luRm9ybS52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-eceaa526\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/loginForm.vue\n"); /***/ }), @@ -809,10 +855,10 @@ eval("/**\n * vue-router v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\ /***/ }), -/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("// style-loader: Adds some css to the DOM by adding a diff --git a/src/components/loginForm.vue b/src/components/loginForm.vue new file mode 100644 index 00000000..a86ac891 --- /dev/null +++ b/src/components/loginForm.vue @@ -0,0 +1,27 @@ + + + + + \ No newline at end of file diff --git a/src/components/registerForm.vue b/src/components/registerForm.vue new file mode 100644 index 00000000..e457e4dd --- /dev/null +++ b/src/components/registerForm.vue @@ -0,0 +1,42 @@ + + + + + \ No newline at end of file diff --git a/src/main.js b/src/main.js index e0ba216e..f26564cc 100644 --- a/src/main.js +++ b/src/main.js @@ -5,8 +5,15 @@ import App from './App' import router from './router' import Vuetify from 'vuetify' import 'vuetify/dist/vuetify.min.css' - -Vue.use(Vuetify) +import colors from 'vuetify/es5/util/colors' + +Vue.use(Vuetify, { + theme: { + primary: colors.amber.lighten5, // #E53935 + secondary: colors.amber.lighten1, // #FFCDD2 + accent: colors.amber.accent1 // #3F51B5 + } +}); Vue.config.productionTip = false From 8218825c7282cd097408bd4fbaaa8054a98fca2d Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 08:24:14 +0800 Subject: [PATCH 008/113] changed directory structure for components --- assets/app.js | 70 ++++++++++----------- login/urls.py | 2 +- login/views.py | 20 +++--- src/App.vue | 2 +- src/components/LogIn.vue | 51 ++++++++------- src/components/login/loginForm.vue | 51 +++++++++++++++ src/components/{ => login}/registerForm.vue | 32 +++++++--- src/components/loginForm.vue | 27 -------- src/stylesheet/{main.css => main.scss} | 3 +- 9 files changed, 152 insertions(+), 106 deletions(-) create mode 100644 src/components/login/loginForm.vue rename src/components/{ => login}/registerForm.vue (56%) delete mode 100644 src/components/loginForm.vue rename src/stylesheet/{main.css => main.scss} (89%) diff --git a/assets/app.js b/assets/app.js index 38b8b475..5e018237 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "3ee8a9cef0ce5aa3ea4d"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "f9e9385926afd8a75c89"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -731,7 +731,7 @@ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPHYtYXBwIGRhcms+XG4gICAgPHJvdXRlci12aWV3Lz5cbiAgPC92LWFwcD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdBcHAnXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuQGltcG9ydCBcIi4vc3R5bGVzaGVldC9tYWluLmNzc1wiO1xuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gQXBwLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQU9BO0FBQ0E7QUFEQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); +eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPHYtYXBwIGRhcms+XG4gICAgPHJvdXRlci12aWV3Lz5cbiAgPC92LWFwcD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdBcHAnXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuQGltcG9ydCBcIi4vc3R5bGVzaGVldC9tYWluLnNjc3NcIjtcbjwvc3R5bGU+XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIEFwcC52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFPQTtBQUNBO0FBREEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); /***/ }), @@ -739,23 +739,23 @@ eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__loginForm__ = __webpack_require__(\"./src/components/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__registerForm__ = __webpack_require__(\"./src/components/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__registerForm__[\"a\" /* default */]\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCByb3cgd3JhcCBmaWxsPlxuXHRcdCAgXHQ8di1mbGV4IGxnNyBjbGFzcz1cImludHJvXCI+XG5cdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQgIFx0PHYtZmxleCBsZzUgY2xhc3M9XCJyaWdodCBhbWJlciBkYXJrZW4tM1wiPlxuXHRcdFx0XHQ8di1sYXlvdXQgcm93IHdyYXA+XG5cdFx0XHRcdFx0PHYtZmxleCBsZzYgPlxuXHRcdFx0XHRcdFx0PHYtYnRuIFxuXHRcdFx0XHRcdFx0XHRkZXByZXNzZWRcblx0XHRcdFx0XHRcdFx0ZmxhdFxuXHRcdFx0XHRcdFx0XHQ6cmlwcGxlPVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHRAY2xpY2s9XCJpc1JlZ2lzdGVyID0gZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHQ6Y2xhc3M9XCJ7J2FtYmVyIGRhcmtlbi0zJzogIWlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiBpc1JlZ2lzdGVyfVwiXG5cdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdExvZyBJblxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0XHQ8di1mbGV4IGxnNiA+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZCBcblx0XHRcdFx0XHRcdFx0ZmxhdFxuXHRcdFx0XHRcdFx0XHQ6cmlwcGxlPVwiZmFsc2VcIlxuXHRcdFx0XHRcdFx0XHRAY2xpY2s9XCJpc1JlZ2lzdGVyID0gdHJ1ZVwiIFxuXHRcdFx0XHRcdFx0XHQ6Y2xhc3M9XCJ7J2FtYmVyIGRhcmtlbi0zJzogaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6ICFpc1JlZ2lzdGVyfVwiXG5cdFx0XHRcdFx0XHQ+XG5cdFx0XHRcdFx0XHRcdFJlZ2lzdGVyXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHQ8L3YtbGF5b3V0PlxuXHRcdFx0XHQ8bG9naW5Gb3JtIHYtc2hvdz1cIiFpc1JlZ2lzdGVyXCI+PC9sb2dpbkZvcm0+XG5cdFx0XHRcdDxyZWdpc3RlckZvcm0gdi1zaG93PVwiaXNSZWdpc3RlclwiPjwvcmVnaXN0ZXJGb3JtPlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHRcdGVtYWlsOiBcIlwiLFxuXHRcdFx0XHRpc1JlZ2lzdGVyOiBmYWxzZSxcblx0XHRcdFx0Y29uZmlybU1hdGNoOiB0cnVlLFxuXHRcdFx0fTtcblx0XHR9LFxuXHRcdGNvbXBvbmVudHM6IHtcblx0XHRcdGxvZ2luRm9ybSwgcmVnaXN0ZXJGb3JtXG5cdFx0fSxcblx0XHR3YXRjaDoge1xuXHRcdFx0aXNSZWdpc3RlcjogZnVuY3Rpb24oKXtcblx0XHRcdFx0Y29uc29sZS5sb2codGhpcy5pc1JlZ2lzdGVyKTtcblx0XHRcdH1cblx0XHR9LFxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuXHQuaW50cm8ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0XHRwYWRkaW5nLXRvcDogMTVlbTtcblx0fVxuXG5cblx0YnV0dG9uIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDVlbTtcblx0XHRtYXJnaW46IDA7XG5cdH1cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEyQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUxBO0FBT0E7QUFDQTtBQUNBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBYkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = __webpack_require__(\"./src/components/login/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__login_registerForm__ = __webpack_require__(\"./src/components/login/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */]\n\t},\n\tcomputed: {\n\t\tform: function () {\n\t\t\tif (this.isRegister) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */];\n\t\t\t} else {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */];\n\t\t\t}\n\t\t}\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCByb3cgd3JhcCBmaWxsLWhlaWdodD5cblx0XHQgIFx0PHYtZmxleCBsZzc+XG5cdFx0XHRcdDx2LWxheW91dCBhbGlnbi1jZW50ZXIganVzdGlmeS1jZW50ZXIgZmlsbC1oZWlnaHQ+XG5cdFx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCI+ZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb248L3A+XG5cdFx0XHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHQgIFx0XHRcdDwvZGl2PlxuXHRcdCAgXHRcdDwvdi1sYXlvdXQ+XG5cdFx0ICBcdDwvdi1mbGV4PlxuXHRcdCAgXHQ8di1mbGV4IGxnNSBjbGFzcz1cInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCI+XG5cdFx0XHRcdDx2LWxheW91dCByb3cgd3JhcD5cblx0XHRcdFx0XHQ8di1mbGV4IGxnNiA+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZFxuXHRcdFx0XHRcdFx0XHRmbGF0XG5cdFx0XHRcdFx0XHRcdGJsb2NrXG5cdFx0XHRcdFx0XHRcdDpyaXBwbGU9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdEBjbGljaz1cImlzUmVnaXN0ZXIgPSBmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdDpjbGFzcz1cInsnYW1iZXIgZGFya2VuLTMnOiAhaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6IGlzUmVnaXN0ZXJ9XCJcblx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0TG9nIEluXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHRcdDx2LWZsZXggbGc2ID5cblx0XHRcdFx0XHRcdDx2LWJ0biBcblx0XHRcdFx0XHRcdFx0ZGVwcmVzc2VkXG5cdFx0XHRcdFx0XHRcdGZsYXRcblx0XHRcdFx0XHRcdFx0YmxvY2tcblx0XHRcdFx0XHRcdFx0OnJpcHBsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRcdFx0QGNsaWNrPVwiaXNSZWdpc3RlciA9IHRydWVcIiBcblx0XHRcdFx0XHRcdFx0OmNsYXNzPVwieydhbWJlciBkYXJrZW4tMyc6IGlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiAhaXNSZWdpc3Rlcn1cIlxuXHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRSZWdpc3RlclxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0PC92LWxheW91dD5cblx0XHRcdFx0PGNvbXBvbmVudCA6aXM9XCJmb3JtXCI+XG5cdFx0XHRcdDwvY29tcG9uZW50PlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9sb2dpbi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRlbWFpbDogXCJcIixcblx0XHRcdFx0aXNSZWdpc3RlcjogZmFsc2UsXG5cdFx0XHRcdGNvbmZpcm1NYXRjaDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSxcblx0XHRjb21wb25lbnRzOiB7XG5cdFx0XHRsb2dpbkZvcm0sIHJlZ2lzdGVyRm9ybVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdGZvcm06IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGlmKHRoaXMuaXNSZWdpc3Rlcil7XG5cdFx0XHRcdFx0cmV0dXJuIHJlZ2lzdGVyRm9ybTtcblx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0cmV0dXJuIGxvZ2luRm9ybTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0d2F0Y2g6IHtcblx0XHRcdGlzUmVnaXN0ZXI6IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGNvbnNvbGUubG9nKHRoaXMuaXNSZWdpc3Rlcik7XG5cdFx0XHR9XG5cdFx0fSxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cblxuXHRidXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGhlaWdodDogNWVtO1xuXHR9XG5cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFLQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFQQTtBQVNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFwQkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); /***/ }), -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/loginForm.vue": +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlBhc3N3b3JkXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di1idG4+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0bmFtZTogJ2xvZ2luRm9ybScsXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gbG9naW5Gb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQkE7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/loginForm.vue\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\"\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tconsole.log(this.username, this.password);\n\t\t\tlet xhr = new XMLHttpRequest();\n\n\t\t\txhr.onreadystatechange = function () {\n\t\t\t\tif (xhr.readyState === 4 && xhr.status === 200) {\n\t\t\t\t\tconsole.log(xhr.responseText);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\txhr.open('POST', 'https://localhost:8000/login/test/', true);\n\t\t\txhr.send(\"name=\" + this.username + \"&password=\" + this.password);\n\t\t}\n\t}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInVzZXJuYW1lXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cIm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJQYXNzd29yZFwiXG5cdFx0ICBpZD1cImlkXCJcblx0XHQgIHYtbW9kZWw9XCJwYXNzd29yZFwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0biBAY2xpY2s9XCJsb2dpblwiPlN1Ym1pdDwvdi1idG4+XG5cdDwvdi1mb3JtPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdFx0Y29uc29sZS5sb2codGhpcy51c2VybmFtZSwgdGhpcy5wYXNzd29yZCk7XG5cdFx0XHRcdGxldCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuXHRcdFx0XHR4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKXtcblx0XHRcdFx0XHQgIGlmKHhoci5yZWFkeVN0YXRlID09PSA0ICYmIHhoci5zdGF0dXMgPT09IDIwMCkge1xuXHRcdFx0XHRcdCAgICBjb25zb2xlLmxvZyh4aHIucmVzcG9uc2VUZXh0KTtcblx0XHRcdFx0XHQgIH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHhoci5vcGVuKCdQT1NUJywgJ2h0dHBzOi8vbG9jYWxob3N0OjgwMDAvbG9naW4vdGVzdC8nLCB0cnVlKTtcblx0XHRcdFx0eGhyLnNlbmQoXCJuYW1lPVwiK3RoaXMudXNlcm5hbWUrXCImcGFzc3dvcmQ9XCIrdGhpcy5wYXNzd29yZCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gbG9naW5Gb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFGQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWJBO0FBQ0E7QUFUQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); /***/ }), -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/registerForm.vue": +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/registerForm.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'registerForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9yZWdpc3RlckZvcm0udnVlP2FiOTciXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwiZm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJGaXJzdG5hbWVcIlxuXHRcdCAgaWQ9XCJmblwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJsbmFtZVwiXG5cdFx0ICBsYWJlbD1cIkxhc3QgTmFtZVwiXG5cdFx0ICBpZD1cImxuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cInVzZXJcIlxuXHRcdCAgbGFiZWw9XCJVc2VybmFtZVwiXG5cdFx0ICBpZD1cInVuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cImVtYWlsXCJcblx0XHQgIGxhYmVsPVwiRW1haWxcIlxuXHRcdCAgaWQ9XCJlbVwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJwYXNzXCJcblx0XHQgIGxhYmVsPVwiUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJwc1wiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0bj5TdWJtaXQ8L3YtYnRuPlxuXHQ8L3YtZm9ybT5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRuYW1lOiAncmVnaXN0ZXJGb3JtJyxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC5sb2dpbiB7XG5cdFx0cGFkZGluZzogMmVtO1xuXHR9XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyByZWdpc3RlckZvcm0udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdDQTtBQUNBO0FBREEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/registerForm.vue\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'registerForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9yZWdpc3RlckZvcm0udnVlP2FiOTciXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di1sYXlvdXQgcm93IHdyYXAganVzdGlmeS1zcGFjZS1iZXR3ZWVuPlxuXHRcdFx0PHYtZmxleCBsZzU+XG5cdFx0XHRcdDx2LXRleHQtZmllbGRcblx0XHRcdFx0ICBuYW1lPVwiZm5hbWVcIlxuXHRcdFx0XHQgIGxhYmVsPVwiRmlyc3RuYW1lXCJcblx0XHRcdFx0ICBpZD1cImZuXCJcblx0XHRcdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdFx0PC92LWZsZXg+XG5cdFx0XHQ8di1mbGV4IGxnNT5cblx0XHRcdFx0PHYtdGV4dC1maWVsZFxuXHRcdFx0XHQgIG5hbWU9XCJsbmFtZVwiXG5cdFx0XHRcdCAgbGFiZWw9XCJMYXN0IE5hbWVcIlxuXHRcdFx0XHQgIGlkPVwibG5cIlxuXHRcdFx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0XHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cInVzZXJcIlxuXHRcdCAgbGFiZWw9XCJVc2VybmFtZVwiXG5cdFx0ICBpZD1cInVuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cImVtYWlsXCJcblx0XHQgIGxhYmVsPVwiRW1haWxcIlxuXHRcdCAgaWQ9XCJlbVwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJwYXNzXCJcblx0XHQgIGxhYmVsPVwiUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJwc1wiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJjb25maXJtcGFzc1wiXG5cdFx0ICBsYWJlbD1cIkNvbmZpcm0gUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJjcHNcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di1idG4+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0bmFtZTogJ3JlZ2lzdGVyRm9ybScsXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gcmVnaXN0ZXJGb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE0Q0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/registerForm.vue\n"); /***/ }), @@ -766,31 +766,31 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ }), -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.intro[data-v-51b0eb09] {\\n padding: 2em;\\n padding-top: 15em;\\n}\\nbutton[data-v-51b0eb09] {\\n width: 100%;\\n height: 5em;\\n margin: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAoEA;EACC,aAAY;EACZ,kBAAiB;CACjB;AAGD;EACC,YAAW;EACX,YAAW;EACX,UAAS;CACT\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.intro {\\n\\tpadding: 2em;\\n\\tpadding-top: 15em;\\n}\\n\\n\\nbutton {\\n\\twidth: 100%;\\n\\theight: 5em;\\n\\tmargin: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmludHJvW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMmVtO1xcbiAgcGFkZGluZy10b3A6IDE1ZW07XFxufVxcbmJ1dHRvbltkYXRhLXYtNTFiMGViMDldIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiA1ZW07XFxuICBtYXJnaW46IDA7XFxufVxcblwiLCBcIlwiLCB7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCIvaG9tZS9ib2pvL0Rlc2t0b3AvZUF1Y3Rpb24vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFvRUE7RUFDQyxhQUFZO0VBQ1osa0JBQWlCO0NBQ2pCO0FBR0Q7RUFDQyxZQUFXO0VBQ1gsWUFBVztFQUNYLFVBQVM7Q0FDVFwiLFwiZmlsZVwiOlwiTG9nSW4udnVlXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcblxcbi5pbnRybyB7XFxuXFx0cGFkZGluZzogMmVtO1xcblxcdHBhZGRpbmctdG9wOiAxNWVtO1xcbn1cXG5cXG5cXG5idXR0b24ge1xcblxcdHdpZHRoOiAxMDAlO1xcblxcdGhlaWdodDogNWVtO1xcblxcdG1hcmdpbjogMDtcXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2xpYi9sb2FkZXIuanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-3340127d] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/registerForm.vue\"],\"names\":[],\"mappings\":\";AAkDA;CACA,aAAA;CACA\",\"file\":\"registerForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL3JlZ2lzdGVyRm9ybS52dWU/YjQwOCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi0zMzQwMTI3ZF0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFrREE7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcInJlZ2lzdGVyRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di1sYXlvdXQgcm93IHdyYXAganVzdGlmeS1zcGFjZS1iZXR3ZWVuPlxcblxcdFxcdFxcdDx2LWZsZXggbGc1PlxcblxcdFxcdFxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHRcXHRcXHQgIG5hbWU9XFxcImZuYW1lXFxcIlxcblxcdFxcdFxcdFxcdCAgbGFiZWw9XFxcIkZpcnN0bmFtZVxcXCJcXG5cXHRcXHRcXHRcXHQgIGlkPVxcXCJmblxcXCJcXG5cXHRcXHRcXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0XFx0PC92LWZsZXg+XFxuXFx0XFx0XFx0PHYtZmxleCBsZzU+XFxuXFx0XFx0XFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdFxcdFxcdCAgbmFtZT1cXFwibG5hbWVcXFwiXFxuXFx0XFx0XFx0XFx0ICBsYWJlbD1cXFwiTGFzdCBOYW1lXFxcIlxcblxcdFxcdFxcdFxcdCAgaWQ9XFxcImxuXFxcIlxcblxcdFxcdFxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHRcXHQ8L3YtZmxleD5cXG5cXHRcXHQ8L3YtbGF5b3V0PlxcblxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcInVzZXJcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiVXNlcm5hbWVcXFwiXFxuXFx0XFx0ICBpZD1cXFwidW5cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcImVtYWlsXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIkVtYWlsXFxcIlxcblxcdFxcdCAgaWQ9XFxcImVtXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJwYXNzXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcInBzXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJjb25maXJtcGFzc1xcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJDb25maXJtIFBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcImNwc1xcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAncmVnaXN0ZXJGb3JtJyxcXG5cXHR9XFxuPC9zY3JpcHQ+XFxuXFxuPHN0eWxlIHNjb3BlZD5cXG5cXHQubG9naW4ge1xcblxcdFxcdHBhZGRpbmc6IDJlbTtcXG5cXHR9XFxuPC9zdHlsZT5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue\n"); /***/ }), -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue": +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 1px solid black;\\n}\\n.columns {\\n\\tmargin: 0;\\n}\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.css\"],\"names\":[],\"mappings\":\";AAEA;CACC,UAAU;CACV;AAED;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB;AAED;CACC,UAAU;CACV;AAED;CACC,UAAU;CACV,WAAW;CACX\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons\\\";\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 1px solid black;\\n}\\n\\n.columns {\\n\\tmargin: 0;\\n}\\n\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYm9keSB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4jYXBwIHtcXG5cXHRmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCI7XFxufVxcbi5ib3gge1xcblxcdGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xcbn1cXG4uY29sdW1ucyB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4uY29udGFpbmVyIHtcXG5cXHRtYXJnaW46IDA7XFxuXFx0cGFkZGluZzogMDtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBRUE7Q0FDQyxVQUFVO0NBQ1Y7QUFFRDtDQUNDLHNCQUFzQjtDQUN0QjtBQUVEO0NBQ0Msd0JBQXdCO0NBQ3hCO0FBRUQ7Q0FDQyxVQUFVO0NBQ1Y7QUFFRDtDQUNDLFVBQVU7Q0FDVixXQUFXO0NBQ1hcIixcImZpbGVcIjpcIkFwcC52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiQGltcG9ydCBcXFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnNcXFwiO1xcblxcbmJvZHkge1xcblxcdG1hcmdpbjogMDtcXG59XFxuXFxuI2FwcCB7XFxuXFx0Zm9udC1mYW1pbHk6IFxcXCJSb2JvdG9cXFwiO1xcbn1cXG5cXG4uYm94IHtcXG5cXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcXG59XFxuXFxuLmNvbHVtbnMge1xcblxcdG1hcmdpbjogMDtcXG59XFxuXFxuLmNvbnRhaW5lciB7XFxuXFx0bWFyZ2luOiAwO1xcblxcdHBhZGRpbmc6IDA7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtN2JhNWJkOTBcIixcInNjb3BlZFwiOmZhbHNlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\nbutton[data-v-51b0eb09] {\\n padding: 0;\\n margin: 0;\\n height: 5em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAkFA;EACC,WAAU;EACV,UAAS;EACT,YAAW;CACX\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\theight: 5em;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYnV0dG9uW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbjogMDtcXG4gIGhlaWdodDogNWVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBa0ZBO0VBQ0MsV0FBVTtFQUNWLFVBQVM7RUFDVCxZQUFXO0NBQ1hcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5idXR0b24ge1xcblxcdHBhZGRpbmc6IDA7XFxuXFx0bWFyZ2luOiAwO1xcblxcdGhlaWdodDogNWVtO1xcbn1cXG5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-cf3acad2\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/registerForm.vue": +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-cf3acad2] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/registerForm.vue\"],\"names\":[],\"mappings\":\";AAsCA;CACA,aAAA;CACA\",\"file\":\"registerForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jZjNhY2FkMlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWU/MDVkYSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jZjNhY2FkMl0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9yZWdpc3RlckZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFzQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcInJlZ2lzdGVyRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJmbmFtZVxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJGaXJzdG5hbWVcXFwiXFxuXFx0XFx0ICBpZD1cXFwiZm5cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcImxuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIkxhc3QgTmFtZVxcXCJcXG5cXHRcXHQgIGlkPVxcXCJsblxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwidXNlclxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJVc2VybmFtZVxcXCJcXG5cXHRcXHQgIGlkPVxcXCJ1blxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwiZW1haWxcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiRW1haWxcXFwiXFxuXFx0XFx0ICBpZD1cXFwiZW1cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcInBhc3NcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwicHNcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LWJ0bj5TdWJtaXQ8L3YtYnRuPlxcblxcdDwvdi1mb3JtPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0bmFtZTogJ3JlZ2lzdGVyRm9ybScsXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LmxvZ2luIHtcXG5cXHRcXHRwYWRkaW5nOiAyZW07XFxuXFx0fVxcbjwvc3R5bGU+XCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXI/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-cf3acad2\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/registerForm.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 5px solid black;\\n}\\n.columns {\\n\\tmargin: 0;\\n}\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.scss\"],\"names\":[],\"mappings\":\";AAEA;CACC,UAAU;CACV;AAGD;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB;AAED;CACC,UAAU;CACV;AAED;CACC,UAAU;CACV,WAAW;CACX\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons\\\";\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 5px solid black;\\n}\\n\\n.columns {\\n\\tmargin: 0;\\n}\\n\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYm9keSB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4jYXBwIHtcXG5cXHRmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCI7XFxufVxcbi5ib3gge1xcblxcdGJvcmRlcjogNXB4IHNvbGlkIGJsYWNrO1xcbn1cXG4uY29sdW1ucyB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4uY29udGFpbmVyIHtcXG5cXHRtYXJnaW46IDA7XFxuXFx0cGFkZGluZzogMDtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQUVBO0NBQ0MsVUFBVTtDQUNWO0FBR0Q7Q0FDQyxzQkFBc0I7Q0FDdEI7QUFFRDtDQUNDLHdCQUF3QjtDQUN4QjtBQUVEO0NBQ0MsVUFBVTtDQUNWO0FBRUQ7Q0FDQyxVQUFVO0NBQ1YsV0FBVztDQUNYXCIsXCJmaWxlXCI6XCJBcHAudnVlXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIkBpbXBvcnQgXFxcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86MzAwLDQwMCw1MDAsNzAwfE1hdGVyaWFsK0ljb25zXFxcIjtcXG5cXG5ib2R5IHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcblxcbiNhcHAge1xcblxcdGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIjtcXG59XFxuXFxuLmJveCB7XFxuXFx0Ym9yZGVyOiA1cHggc29saWQgYmxhY2s7XFxufVxcblxcbi5jb2x1bW5zIHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcbi5jb250YWluZXIge1xcblxcdG1hcmdpbjogMDtcXG5cXHRwYWRkaW5nOiAwO1xcbn1cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); /***/ }), -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-eceaa526\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/loginForm.vue": +/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-eceaa526] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/loginForm.vue\"],\"names\":[],\"mappings\":\";AAuBA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luRm9ybS52dWU/Yzc1NyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1lY2VhYTUyNl0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUF1QkE7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di1idG4+U3VibWl0PC92LWJ0bj5cXG5cXHQ8L3YtZm9ybT5cXG48L3RlbXBsYXRlPlxcblxcbjxzY3JpcHQ+XFxuXFx0ZXhwb3J0IGRlZmF1bHQge1xcblxcdFxcdG5hbWU6ICdsb2dpbkZvcm0nLFxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-eceaa526\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/loginForm.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AA+CA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUErQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcIm5hbWVcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwiaWRcXFwiXFxuXFx0XFx0ICB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuIEBjbGljaz1cXFwibG9naW5cXFwiPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46IGZ1bmN0aW9uKCl7XFxuXFx0XFx0XFx0XFx0Y29uc29sZS5sb2codGhpcy51c2VybmFtZSwgdGhpcy5wYXNzd29yZCk7XFxuXFx0XFx0XFx0XFx0bGV0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xcblxcblxcdFxcdFxcdFxcdHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdFxcdCAgaWYoeGhyLnJlYWR5U3RhdGUgPT09IDQgJiYgeGhyLnN0YXR1cyA9PT0gMjAwKSB7XFxuXFx0XFx0XFx0XFx0XFx0ICAgIGNvbnNvbGUubG9nKHhoci5yZXNwb25zZVRleHQpO1xcblxcdFxcdFxcdFxcdFxcdCAgfVxcblxcdFxcdFxcdFxcdH1cXG5cXG5cXHRcXHRcXHRcXHR4aHIub3BlbignUE9TVCcsICdodHRwczovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvJywgdHJ1ZSk7XFxuXFx0XFx0XFx0XFx0eGhyLnNlbmQoXFxcIm5hbWU9XFxcIit0aGlzLnVzZXJuYW1lK1xcXCImcGFzc3dvcmQ9XFxcIit0aGlzLnBhc3N3b3JkKTtcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -815,35 +815,35 @@ eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 featu /***/ }), -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-3340127d\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/registerForm.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", fill: \"\" } },\n [\n _c(\"v-flex\", { staticClass: \"intro\", attrs: { lg7: \"\" } }, [\n _c(\"p\", { staticClass: \"text-lg-left display-4\" }, [\n _vm._v(\"eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { staticClass: \"right amber darken-3\", attrs: { lg5: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": !_vm.isRegister,\n \"yellow darken-3\": _vm.isRegister\n },\n attrs: { depressed: \"\", flat: \"\", ripple: false },\n on: {\n click: function($event) {\n _vm.isRegister = false\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tLog In\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": _vm.isRegister,\n \"yellow darken-3\": !_vm.isRegister\n },\n attrs: { depressed: \"\", flat: \"\", ripple: false },\n on: {\n click: function($event) {\n _vm.isRegister = true\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tRegister\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"loginForm\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ]\n }),\n _vm._v(\" \"),\n _c(\"registerForm\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ]\n })\n ],\n 1\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgZmlsbDogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcInYtZmxleFwiLCB7IHN0YXRpY0NsYXNzOiBcImludHJvXCIsIGF0dHJzOiB7IGxnNzogXCJcIiB9IH0sIFtcbiAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBkaXNwbGF5LTRcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCIpXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICBcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCJcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXCJwXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCIgfSwgW1xuICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCIsIGF0dHJzOiB7IGxnNTogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwidi1sYXlvdXRcIixcbiAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiB9IH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc2OiBcIlwiIH0gfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ2LWJ0blwiLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiYW1iZXIgZGFya2VuLTNcIjogIV92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwieWVsbG93IGRhcmtlbi0zXCI6IF92bS5pc1JlZ2lzdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGRlcHJlc3NlZDogXCJcIiwgZmxhdDogXCJcIiwgcmlwcGxlOiBmYWxzZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5pc1JlZ2lzdGVyID0gZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KFwiXFxuXFx0XFx0XFx0XFx0XFx0XFx0TG9nIEluXFxuXFx0XFx0XFx0XFx0XFx0XCIpXVxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBsZzY6IFwiXCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInYtYnRuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhbWJlciBkYXJrZW4tM1wiOiBfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInllbGxvdyBkYXJrZW4tM1wiOiAhX3ZtLmlzUmVnaXN0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZGVwcmVzc2VkOiBcIlwiLCBmbGF0OiBcIlwiLCByaXBwbGU6IGZhbHNlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmlzUmVnaXN0ZXIgPSB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW192bS5fdihcIlxcblxcdFxcdFxcdFxcdFxcdFxcdFJlZ2lzdGVyXFxuXFx0XFx0XFx0XFx0XFx0XCIpXVxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImxvZ2luRm9ybVwiLCB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJyZWdpc3RlckZvcm1cIiwge1xuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJpc1JlZ2lzdGVyXCJcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgMVxuICAgICAgICAgIClcbiAgICAgICAgXSxcbiAgICAgICAgMVxuICAgICAgKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi01MWIwZWIwOVwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", \"justify-space-between\": \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg5: \"\" } },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"fname\", label: \"Firstname\", id: \"fn\" }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg5: \"\" } },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"lname\", label: \"Last Name\", id: \"ln\" }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"user\", label: \"Username\", id: \"un\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"email\", label: \"Email\", id: \"em\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"pass\", label: \"Password\", id: \"ps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"confirmpass\", label: \"Confirm Password\", id: \"cps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-3340127d\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZT9hNWFjIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgXCJqdXN0aWZ5LXNwYWNlLWJldHdlZW5cIjogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IGF0dHJzOiB7IGxnNTogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgICAgICAgICBhdHRyczogeyBuYW1lOiBcImZuYW1lXCIsIGxhYmVsOiBcIkZpcnN0bmFtZVwiLCBpZDogXCJmblwiIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc1OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICAgICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibG5hbWVcIiwgbGFiZWw6IFwiTGFzdCBOYW1lXCIsIGlkOiBcImxuXCIgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcInVzZXJcIiwgbGFiZWw6IFwiVXNlcm5hbWVcIiwgaWQ6IFwidW5cIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwiZW1haWxcIiwgbGFiZWw6IFwiRW1haWxcIiwgaWQ6IFwiZW1cIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwicGFzc1wiLCBsYWJlbDogXCJQYXNzd29yZFwiLCBpZDogXCJwc1wiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJjb25maXJtcGFzc1wiLCBsYWJlbDogXCJDb25maXJtIFBhc3N3b3JkXCIsIGlkOiBcImNwc1wiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi1idG5cIiwgW192bS5fdihcIlN1Ym1pdFwiKV0pXG4gICAgXSxcbiAgICAxXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTMzNDAxMjdkXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtMzM0MDEyN2RcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-3340127d\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/registerForm.vue\n"); /***/ }), -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue": +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"v-app\", { attrs: { dark: \"\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJ2LWFwcFwiLCB7IGF0dHJzOiB7IGRhcms6IFwiXCIgfSB9LCBbX2MoXCJyb3V0ZXItdmlld1wiKV0sIDEpXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi03YmE1YmQ5MFwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", \"fill-height\": \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg7: \"\" } },\n [\n _c(\n \"v-layout\",\n {\n attrs: {\n \"align-center\": \"\",\n \"justify-center\": \"\",\n \"fill-height\": \"\"\n }\n },\n [\n _c(\"div\", [\n _c(\"p\", { staticClass: \"text-lg-left display-4\" }, [\n _vm._v(\"eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ])\n ])\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { staticClass: \"right amber darken-3\", attrs: { lg5: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": !_vm.isRegister,\n \"yellow darken-3\": _vm.isRegister\n },\n attrs: {\n depressed: \"\",\n flat: \"\",\n block: \"\",\n ripple: false\n },\n on: {\n click: function($event) {\n _vm.isRegister = false\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tLog In\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": _vm.isRegister,\n \"yellow darken-3\": !_vm.isRegister\n },\n attrs: {\n depressed: \"\",\n flat: \"\",\n block: \"\",\n ripple: false\n },\n on: {\n click: function($event) {\n _vm.isRegister = true\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tRegister\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(_vm.form, { tag: \"component\" })\n ],\n 1\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgXCJmaWxsLWhlaWdodFwiOiBcIlwiIH0gfSxcbiAgICAgICAgW1xuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc3OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiYWxpZ24tY2VudGVyXCI6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgIFwianVzdGlmeS1jZW50ZXJcIjogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgXCJmaWxsLWhlaWdodFwiOiBcIlwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBkaXNwbGF5LTRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiZUF1Y3Rpb25cIilcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBoZWFkbGluZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiKVxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJwXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBoZWFkbGluZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICBcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwicmlnaHQgYW1iZXIgZGFya2VuLTNcIiwgYXR0cnM6IHsgbGc1OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgcm93OiBcIlwiLCB3cmFwOiBcIlwiIH0gfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBsZzY6IFwiXCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInYtYnRuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhbWJlciBkYXJrZW4tM1wiOiAhX3ZtLmlzUmVnaXN0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ5ZWxsb3cgZGFya2VuLTNcIjogX3ZtLmlzUmVnaXN0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXByZXNzZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhdDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9jazogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaXBwbGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmlzUmVnaXN0ZXIgPSBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtfdm0uX3YoXCJcXG5cXHRcXHRcXHRcXHRcXHRcXHRMb2cgSW5cXG5cXHRcXHRcXHRcXHRcXHRcIildXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcInYtZmxleFwiLFxuICAgICAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IGxnNjogXCJcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidi1idG5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImFtYmVyIGRhcmtlbi0zXCI6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwieWVsbG93IGRhcmtlbi0zXCI6ICFfdm0uaXNSZWdpc3RlclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcHJlc3NlZDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGF0OiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpcHBsZTogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGljazogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uaXNSZWdpc3RlciA9IHRydWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KFwiXFxuXFx0XFx0XFx0XFx0XFx0XFx0UmVnaXN0ZXJcXG5cXHRcXHRcXHRcXHRcXHRcIildXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgIF9jKF92bS5mb3JtLCB7IHRhZzogXCJjb21wb25lbnRcIiB9KVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgIClcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); /***/ }), -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-cf3acad2\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/registerForm.vue": +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"fname\", label: \"Firstname\", id: \"fn\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"lname\", label: \"Last Name\", id: \"ln\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"user\", label: \"Username\", id: \"un\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"email\", label: \"Email\", id: \"em\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"pass\", label: \"Password\", id: \"ps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-cf3acad2\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jZjNhY2FkMlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9yZWdpc3RlckZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZT9kZmZhIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwiZm5hbWVcIiwgbGFiZWw6IFwiRmlyc3RuYW1lXCIsIGlkOiBcImZuXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcImxuYW1lXCIsIGxhYmVsOiBcIkxhc3QgTmFtZVwiLCBpZDogXCJsblwiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJ1c2VyXCIsIGxhYmVsOiBcIlVzZXJuYW1lXCIsIGlkOiBcInVuXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcImVtYWlsXCIsIGxhYmVsOiBcIkVtYWlsXCIsIGlkOiBcImVtXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcInBhc3NcIiwgbGFiZWw6IFwiUGFzc3dvcmRcIiwgaWQ6IFwicHNcIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtYnRuXCIsIFtfdm0uX3YoXCJTdWJtaXRcIildKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi1jZjNhY2FkMlwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LWNmM2FjYWQyXCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL3JlZ2lzdGVyRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtY2YzYWNhZDJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-cf3acad2\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/registerForm.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"v-app\", { attrs: { dark: \"\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJ2LWFwcFwiLCB7IGF0dHJzOiB7IGRhcms6IFwiXCIgfSB9LCBbX2MoXCJyb3V0ZXItdmlld1wiKV0sIDEpXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi03YmE1YmQ5MFwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); /***/ }), -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-eceaa526\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/loginForm.vue": +/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Password\", id: \"id\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-eceaa526\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW5Gb3JtLnZ1ZT85MjM0Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJuYW1lXCIsIGxhYmVsOiBcIlBhc3N3b3JkXCIsIGlkOiBcImlkXCIgfVxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LWJ0blwiLCBbX3ZtLl92KFwiU3VibWl0XCIpXSlcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtZWNlYWE1MjZcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi1lY2VhYTUyNlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlci9pbmRleC5qcz97XCJpZFwiOlwiZGF0YS12LWVjZWFhNTI2XCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL2xvZ2luRm9ybS52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-eceaa526\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/loginForm.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Password\", id: \"id\" },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", { on: { click: _vm.login } }, [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-c576a172\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZT9kNzNkIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4cHJlc3Npb246IFwidXNlcm5hbWVcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJQYXNzd29yZFwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtYnRuXCIsIHsgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sIFtfdm0uX3YoXCJTdWJtaXRcIildKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi1jNTc2YTE3MlwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtYzU3NmExNzJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -855,31 +855,31 @@ eval("/**\n * vue-router v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\ /***/ }), -/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": +/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue": /***/ (function(module, exports, __webpack_require__) { -eval("// style-loader: Adds some css to the DOM by adding a \ No newline at end of file diff --git a/src/components/LogIn.vue b/src/components/LogIn.vue index e854592b..c7eb6820 100644 --- a/src/components/LogIn.vue +++ b/src/components/LogIn.vue @@ -1,12 +1,16 @@ diff --git a/src/components/login/loginForm.vue b/src/components/login/loginForm.vue new file mode 100644 index 00000000..05c2d3e8 --- /dev/null +++ b/src/components/login/loginForm.vue @@ -0,0 +1,51 @@ + + + + + \ No newline at end of file diff --git a/src/components/registerForm.vue b/src/components/login/registerForm.vue similarity index 56% rename from src/components/registerForm.vue rename to src/components/login/registerForm.vue index e457e4dd..9935d0d4 100644 --- a/src/components/registerForm.vue +++ b/src/components/login/registerForm.vue @@ -1,15 +1,22 @@ diff --git a/src/components/loginForm.vue b/src/components/loginForm.vue deleted file mode 100644 index a86ac891..00000000 --- a/src/components/loginForm.vue +++ /dev/null @@ -1,27 +0,0 @@ - - - - - \ No newline at end of file diff --git a/src/stylesheet/main.css b/src/stylesheet/main.scss similarity index 89% rename from src/stylesheet/main.css rename to src/stylesheet/main.scss index c632e0b1..d487275a 100644 --- a/src/stylesheet/main.css +++ b/src/stylesheet/main.scss @@ -4,12 +4,13 @@ body { margin: 0; } + #app { font-family: "Roboto"; } .box { - border: 1px solid black; + border: 5px solid black; } .columns { From d1bee2b2e00dcd69729c198e5636c18fd054b2c0 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 08:36:12 +0800 Subject: [PATCH 009/113] Installed vue-axios --- assets/app.js | 6 +++--- package.json | 1 + src/components/login/loginForm.vue | 11 ----------- src/main.js | 4 ++++ 4 files changed, 8 insertions(+), 14 deletions(-) diff --git a/assets/app.js b/assets/app.js index 5e018237..3a94c0ac 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "f9e9385926afd8a75c89"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "84537a93d0cf348823f9"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -747,7 +747,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\"\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {\n\t\t\tconsole.log(this.username, this.password);\n\t\t\tlet xhr = new XMLHttpRequest();\n\n\t\t\txhr.onreadystatechange = function () {\n\t\t\t\tif (xhr.readyState === 4 && xhr.status === 200) {\n\t\t\t\t\tconsole.log(xhr.responseText);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\txhr.open('POST', 'https://localhost:8000/login/test/', true);\n\t\t\txhr.send(\"name=\" + this.username + \"&password=\" + this.password);\n\t\t}\n\t}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInVzZXJuYW1lXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cIm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJQYXNzd29yZFwiXG5cdFx0ICBpZD1cImlkXCJcblx0XHQgIHYtbW9kZWw9XCJwYXNzd29yZFwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0biBAY2xpY2s9XCJsb2dpblwiPlN1Ym1pdDwvdi1idG4+XG5cdDwvdi1mb3JtPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdFx0Y29uc29sZS5sb2codGhpcy51c2VybmFtZSwgdGhpcy5wYXNzd29yZCk7XG5cdFx0XHRcdGxldCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuXHRcdFx0XHR4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKXtcblx0XHRcdFx0XHQgIGlmKHhoci5yZWFkeVN0YXRlID09PSA0ICYmIHhoci5zdGF0dXMgPT09IDIwMCkge1xuXHRcdFx0XHRcdCAgICBjb25zb2xlLmxvZyh4aHIucmVzcG9uc2VUZXh0KTtcblx0XHRcdFx0XHQgIH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHhoci5vcGVuKCdQT1NUJywgJ2h0dHBzOi8vbG9jYWxob3N0OjgwMDAvbG9naW4vdGVzdC8nLCB0cnVlKTtcblx0XHRcdFx0eGhyLnNlbmQoXCJuYW1lPVwiK3RoaXMudXNlcm5hbWUrXCImcGFzc3dvcmQ9XCIrdGhpcy5wYXNzd29yZCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gbG9naW5Gb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFGQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWJBO0FBQ0E7QUFUQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); +eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\"\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {}\n\t}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInVzZXJuYW1lXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cIm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJQYXNzd29yZFwiXG5cdFx0ICBpZD1cImlkXCJcblx0XHQgIHYtbW9kZWw9XCJwYXNzd29yZFwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0biBAY2xpY2s9XCJsb2dpblwiPlN1Ym1pdDwvdi1idG4+XG5cdDwvdi1mb3JtPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdH1cblx0XHR9XG5cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC5sb2dpbiB7XG5cdFx0cGFkZGluZzogMmVtO1xuXHR9XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBsb2dpbkZvcm0udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUZBO0FBSUE7QUFDQTtBQUNBO0FBREE7QUFDQTtBQVRBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -790,7 +790,7 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AA+CA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUErQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcIm5hbWVcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwiaWRcXFwiXFxuXFx0XFx0ICB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuIEBjbGljaz1cXFwibG9naW5cXFwiPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46IGZ1bmN0aW9uKCl7XFxuXFx0XFx0XFx0XFx0Y29uc29sZS5sb2codGhpcy51c2VybmFtZSwgdGhpcy5wYXNzd29yZCk7XFxuXFx0XFx0XFx0XFx0bGV0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xcblxcblxcdFxcdFxcdFxcdHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdFxcdCAgaWYoeGhyLnJlYWR5U3RhdGUgPT09IDQgJiYgeGhyLnN0YXR1cyA9PT0gMjAwKSB7XFxuXFx0XFx0XFx0XFx0XFx0ICAgIGNvbnNvbGUubG9nKHhoci5yZXNwb25zZVRleHQpO1xcblxcdFxcdFxcdFxcdFxcdCAgfVxcblxcdFxcdFxcdFxcdH1cXG5cXG5cXHRcXHRcXHRcXHR4aHIub3BlbignUE9TVCcsICdodHRwczovL2xvY2FsaG9zdDo4MDAwL2xvZ2luL3Rlc3QvJywgdHJ1ZSk7XFxuXFx0XFx0XFx0XFx0eGhyLnNlbmQoXFxcIm5hbWU9XFxcIit0aGlzLnVzZXJuYW1lK1xcXCImcGFzc3dvcmQ9XFxcIit0aGlzLnBhc3N3b3JkKTtcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fVxcblxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AAoCA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFvQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcIm5hbWVcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwiaWRcXFwiXFxuXFx0XFx0ICB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuIEBjbGljaz1cXFwibG9naW5cXFwiPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46IGZ1bmN0aW9uKCl7XFxuXFx0XFx0XFx0fVxcblxcdFxcdH1cXG5cXG5cXHR9XFxuPC9zY3JpcHQ+XFxuXFxuPHN0eWxlIHNjb3BlZD5cXG5cXHQubG9naW4ge1xcblxcdFxcdHBhZGRpbmc6IDJlbTtcXG5cXHR9XFxuPC9zdHlsZT5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); /***/ }), diff --git a/package.json b/package.json index 37093853..adb0da8e 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "build": "node build/build.js" }, "dependencies": { + "axios": "^0.18.0", "vue": "^2.5.16", "vue-router": "^3.0.1", "vuetify": "^1.0.17" diff --git a/src/components/login/loginForm.vue b/src/components/login/loginForm.vue index 05c2d3e8..af6b09c3 100644 --- a/src/components/login/loginForm.vue +++ b/src/components/login/loginForm.vue @@ -27,17 +27,6 @@ }, methods: { login: function(){ - console.log(this.username, this.password); - let xhr = new XMLHttpRequest(); - - xhr.onreadystatechange = function(){ - if(xhr.readyState === 4 && xhr.status === 200) { - console.log(xhr.responseText); - } - } - - xhr.open('POST', 'https://localhost:8000/login/test/', true); - xhr.send("name="+this.username+"&password="+this.password); } } diff --git a/src/main.js b/src/main.js index f26564cc..a78e008b 100644 --- a/src/main.js +++ b/src/main.js @@ -6,6 +6,10 @@ import router from './router' import Vuetify from 'vuetify' import 'vuetify/dist/vuetify.min.css' import colors from 'vuetify/es5/util/colors' +import axios from 'axios' +import VueAxios from 'vue-axios' + +Vue.use(VueAxios, axios) Vue.use(Vuetify, { theme: { From c882ea091acdbe07b7beee92dd9b6bee3274ffdc Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 08:51:41 +0800 Subject: [PATCH 010/113] Installed vue-axios --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index adb0da8e..d4a4f27d 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "dependencies": { "axios": "^0.18.0", "vue": "^2.5.16", + "vue-axios": "^2.1.1", "vue-router": "^3.0.1", "vuetify": "^1.0.17" }, From c6493cdd86e97e9ca79fa82f1885a30627f6c9c9 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 11:47:24 +0800 Subject: [PATCH 011/113] Installed js-cookies --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index d4a4f27d..5579db09 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ }, "dependencies": { "axios": "^0.18.0", + "js-cookie": "^2.2.0", "vue": "^2.5.16", "vue-axios": "^2.1.1", "vue-router": "^3.0.1", From cb7d54a4d348ecbe9038f070c0e253e1a6959878 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 11:50:18 +0800 Subject: [PATCH 012/113] Remove test view --- login/urls.py | 1 - login/views.py | 18 ++---------------- 2 files changed, 2 insertions(+), 17 deletions(-) diff --git a/login/urls.py b/login/urls.py index 360b906b..c5b22556 100644 --- a/login/urls.py +++ b/login/urls.py @@ -7,5 +7,4 @@ urlpatterns = [ # path('', views.index, name='index'), path('', views.index, name='login-page'), - path('test/', views.test), ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index a3c6ed87..ff89cb49 100644 --- a/login/views.py +++ b/login/views.py @@ -4,26 +4,12 @@ from django.template import loader from django.urls import reverse from django.views.generic import TemplateView +from django.views.decorators.csrf import ensure_csrf_cookie - +@ensure_csrf_cookie def index(request): return render(request, 'index.html') -def test(request): - name = request.POST.get('name') - password = request.POST.get('password') - - isValid = False - - if(name == "bojoluis" and password == "1234"): - isValid = True - - context = { - 'correct': isValid, - } - - return HttpResponse(json.dumps(context)) - class LoginView(TemplateView): template_name='index.html' \ No newline at end of file From 641f9c3e79e99ff2e74dabe112de522c2307ac19 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Fri, 4 May 2018 11:51:03 +0800 Subject: [PATCH 013/113] Password field contents hidden --- assets/app.js | 242 ++++++++++++++++++++++++++++- src/components/LogIn.vue | 23 ++- src/components/login/loginForm.vue | 12 +- 3 files changed, 262 insertions(+), 15 deletions(-) diff --git a/assets/app.js b/assets/app.js index 3a94c0ac..78612564 100644 --- a/assets/app.js +++ b/assets/app.js @@ -61,7 +61,7 @@ /******/ /******/ /******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "84537a93d0cf348823f9"; // eslint-disable-line no-unused-vars +/******/ var hotCurrentHash = "47c6e3a11a25eeff5316"; // eslint-disable-line no-unused-vars /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars @@ -727,6 +727,205 @@ /************************************************************************/ /******/ ({ +/***/ "./node_modules/axios/index.js": +/***/ (function(module, exports, __webpack_require__) { + +eval("module.exports = __webpack_require__(\"./node_modules/axios/lib/axios.js\");//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanM/OWFkNSJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vbGliL2F4aW9zJyk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2luZGV4LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/index.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/adapters/xhr.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar settle = __webpack_require__(\"./node_modules/axios/lib/core/settle.js\");\nvar buildURL = __webpack_require__(\"./node_modules/axios/lib/helpers/buildURL.js\");\nvar parseHeaders = __webpack_require__(\"./node_modules/axios/lib/helpers/parseHeaders.js\");\nvar isURLSameOrigin = __webpack_require__(\"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\nvar createError = __webpack_require__(\"./node_modules/axios/lib/core/createError.js\");\nvar btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(\"./node_modules/axios/lib/helpers/btoa.js\");\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n var loadEvent = 'onreadystatechange';\n var xDomain = false;\n\n // For IE 8/9 CORS support\n // Only supports POST and GET calls and doesn't returns the response headers.\n // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.\n if (\"development\" !== 'test' &&\n typeof window !== 'undefined' &&\n window.XDomainRequest && !('withCredentials' in request) &&\n !isURLSameOrigin(config.url)) {\n request = new window.XDomainRequest();\n loadEvent = 'onload';\n xDomain = true;\n request.onprogress = function handleProgress() {};\n request.ontimeout = function handleTimeout() {};\n }\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request[loadEvent] = function handleLoad() {\n if (!request || (request.readyState !== 4 && !xDomain)) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)\n status: request.status === 1223 ? 204 : request.status,\n statusText: request.status === 1223 ? 'No Content' : request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = __webpack_require__(\"./node_modules/axios/lib/helpers/cookies.js\");\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2FkYXB0ZXJzL3hoci5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzP2VjNmMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgc2V0dGxlID0gcmVxdWlyZSgnLi8uLi9jb3JlL3NldHRsZScpO1xudmFyIGJ1aWxkVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J1aWxkVVJMJyk7XG52YXIgcGFyc2VIZWFkZXJzID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL3BhcnNlSGVhZGVycycpO1xudmFyIGlzVVJMU2FtZU9yaWdpbiA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc1VSTFNhbWVPcmlnaW4nKTtcbnZhciBjcmVhdGVFcnJvciA9IHJlcXVpcmUoJy4uL2NvcmUvY3JlYXRlRXJyb3InKTtcbnZhciBidG9hID0gKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5idG9hICYmIHdpbmRvdy5idG9hLmJpbmQod2luZG93KSkgfHwgcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J0b2EnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB4aHJBZGFwdGVyKGNvbmZpZykge1xuICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gZGlzcGF0Y2hYaHJSZXF1ZXN0KHJlc29sdmUsIHJlamVjdCkge1xuICAgIHZhciByZXF1ZXN0RGF0YSA9IGNvbmZpZy5kYXRhO1xuICAgIHZhciByZXF1ZXN0SGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzO1xuXG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEocmVxdWVzdERhdGEpKSB7XG4gICAgICBkZWxldGUgcmVxdWVzdEhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddOyAvLyBMZXQgdGhlIGJyb3dzZXIgc2V0IGl0XG4gICAgfVxuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgbG9hZEV2ZW50ID0gJ29ucmVhZHlzdGF0ZWNoYW5nZSc7XG4gICAgdmFyIHhEb21haW4gPSBmYWxzZTtcblxuICAgIC8vIEZvciBJRSA4LzkgQ09SUyBzdXBwb3J0XG4gICAgLy8gT25seSBzdXBwb3J0cyBQT1NUIGFuZCBHRVQgY2FsbHMgYW5kIGRvZXNuJ3QgcmV0dXJucyB0aGUgcmVzcG9uc2UgaGVhZGVycy5cbiAgICAvLyBET04nVCBkbyB0aGlzIGZvciB0ZXN0aW5nIGIvYyBYTUxIdHRwUmVxdWVzdCBpcyBtb2NrZWQsIG5vdCBYRG9tYWluUmVxdWVzdC5cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0JyAmJlxuICAgICAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICB3aW5kb3cuWERvbWFpblJlcXVlc3QgJiYgISgnd2l0aENyZWRlbnRpYWxzJyBpbiByZXF1ZXN0KSAmJlxuICAgICAgICAhaXNVUkxTYW1lT3JpZ2luKGNvbmZpZy51cmwpKSB7XG4gICAgICByZXF1ZXN0ID0gbmV3IHdpbmRvdy5YRG9tYWluUmVxdWVzdCgpO1xuICAgICAgbG9hZEV2ZW50ID0gJ29ubG9hZCc7XG4gICAgICB4RG9tYWluID0gdHJ1ZTtcbiAgICAgIHJlcXVlc3Qub25wcm9ncmVzcyA9IGZ1bmN0aW9uIGhhbmRsZVByb2dyZXNzKCkge307XG4gICAgICByZXF1ZXN0Lm9udGltZW91dCA9IGZ1bmN0aW9uIGhhbmRsZVRpbWVvdXQoKSB7fTtcbiAgICB9XG5cbiAgICAvLyBIVFRQIGJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAgaWYgKGNvbmZpZy5hdXRoKSB7XG4gICAgICB2YXIgdXNlcm5hbWUgPSBjb25maWcuYXV0aC51c2VybmFtZSB8fCAnJztcbiAgICAgIHZhciBwYXNzd29yZCA9IGNvbmZpZy5hdXRoLnBhc3N3b3JkIHx8ICcnO1xuICAgICAgcmVxdWVzdEhlYWRlcnMuQXV0aG9yaXphdGlvbiA9ICdCYXNpYyAnICsgYnRvYSh1c2VybmFtZSArICc6JyArIHBhc3N3b3JkKTtcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9wZW4oY29uZmlnLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBidWlsZFVSTChjb25maWcudXJsLCBjb25maWcucGFyYW1zLCBjb25maWcucGFyYW1zU2VyaWFsaXplciksIHRydWUpO1xuXG4gICAgLy8gU2V0IHRoZSByZXF1ZXN0IHRpbWVvdXQgaW4gTVNcbiAgICByZXF1ZXN0LnRpbWVvdXQgPSBjb25maWcudGltZW91dDtcblxuICAgIC8vIExpc3RlbiBmb3IgcmVhZHkgc3RhdGVcbiAgICByZXF1ZXN0W2xvYWRFdmVudF0gPSBmdW5jdGlvbiBoYW5kbGVMb2FkKCkge1xuICAgICAgaWYgKCFyZXF1ZXN0IHx8IChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQgJiYgIXhEb21haW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gVGhlIHJlcXVlc3QgZXJyb3JlZCBvdXQgYW5kIHdlIGRpZG4ndCBnZXQgYSByZXNwb25zZSwgdGhpcyB3aWxsIGJlXG4gICAgICAvLyBoYW5kbGVkIGJ5IG9uZXJyb3IgaW5zdGVhZFxuICAgICAgLy8gV2l0aCBvbmUgZXhjZXB0aW9uOiByZXF1ZXN0IHRoYXQgdXNpbmcgZmlsZTogcHJvdG9jb2wsIG1vc3QgYnJvd3NlcnNcbiAgICAgIC8vIHdpbGwgcmV0dXJuIHN0YXR1cyBhcyAwIGV2ZW4gdGhvdWdoIGl0J3MgYSBzdWNjZXNzZnVsIHJlcXVlc3RcbiAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCAmJiAhKHJlcXVlc3QucmVzcG9uc2VVUkwgJiYgcmVxdWVzdC5yZXNwb25zZVVSTC5pbmRleE9mKCdmaWxlOicpID09PSAwKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXBhcmUgdGhlIHJlc3BvbnNlXG4gICAgICB2YXIgcmVzcG9uc2VIZWFkZXJzID0gJ2dldEFsbFJlc3BvbnNlSGVhZGVycycgaW4gcmVxdWVzdCA/IHBhcnNlSGVhZGVycyhyZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGw7XG4gICAgICB2YXIgcmVzcG9uc2VEYXRhID0gIWNvbmZpZy5yZXNwb25zZVR5cGUgfHwgY29uZmlnLnJlc3BvbnNlVHlwZSA9PT0gJ3RleHQnID8gcmVxdWVzdC5yZXNwb25zZVRleHQgOiByZXF1ZXN0LnJlc3BvbnNlO1xuICAgICAgdmFyIHJlc3BvbnNlID0ge1xuICAgICAgICBkYXRhOiByZXNwb25zZURhdGEsXG4gICAgICAgIC8vIElFIHNlbmRzIDEyMjMgaW5zdGVhZCBvZiAyMDQgKGh0dHBzOi8vZ2l0aHViLmNvbS9heGlvcy9heGlvcy9pc3N1ZXMvMjAxKVxuICAgICAgICBzdGF0dXM6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gMjA0IDogcmVxdWVzdC5zdGF0dXMsXG4gICAgICAgIHN0YXR1c1RleHQ6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gJ05vIENvbnRlbnQnIDogcmVxdWVzdC5zdGF0dXNUZXh0LFxuICAgICAgICBoZWFkZXJzOiByZXNwb25zZUhlYWRlcnMsXG4gICAgICAgIGNvbmZpZzogY29uZmlnLFxuICAgICAgICByZXF1ZXN0OiByZXF1ZXN0XG4gICAgICB9O1xuXG4gICAgICBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCByZXNwb25zZSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgbG93IGxldmVsIG5ldHdvcmsgZXJyb3JzXG4gICAgcmVxdWVzdC5vbmVycm9yID0gZnVuY3Rpb24gaGFuZGxlRXJyb3IoKSB7XG4gICAgICAvLyBSZWFsIGVycm9ycyBhcmUgaGlkZGVuIGZyb20gdXMgYnkgdGhlIGJyb3dzZXJcbiAgICAgIC8vIG9uZXJyb3Igc2hvdWxkIG9ubHkgZmlyZSBpZiBpdCdzIGEgbmV0d29yayBlcnJvclxuICAgICAgcmVqZWN0KGNyZWF0ZUVycm9yKCdOZXR3b3JrIEVycm9yJywgY29uZmlnLCBudWxsLCByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgdGltZW91dFxuICAgIHJlcXVlc3Qub250aW1lb3V0ID0gZnVuY3Rpb24gaGFuZGxlVGltZW91dCgpIHtcbiAgICAgIHJlamVjdChjcmVhdGVFcnJvcigndGltZW91dCBvZiAnICsgY29uZmlnLnRpbWVvdXQgKyAnbXMgZXhjZWVkZWQnLCBjb25maWcsICdFQ09OTkFCT1JURUQnLFxuICAgICAgICByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBBZGQgeHNyZiBoZWFkZXJcbiAgICAvLyBUaGlzIGlzIG9ubHkgZG9uZSBpZiBydW5uaW5nIGluIGEgc3RhbmRhcmQgYnJvd3NlciBlbnZpcm9ubWVudC5cbiAgICAvLyBTcGVjaWZpY2FsbHkgbm90IGlmIHdlJ3JlIGluIGEgd2ViIHdvcmtlciwgb3IgcmVhY3QtbmF0aXZlLlxuICAgIGlmICh1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7XG4gICAgICB2YXIgY29va2llcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb29raWVzJyk7XG5cbiAgICAgIC8vIEFkZCB4c3JmIGhlYWRlclxuICAgICAgdmFyIHhzcmZWYWx1ZSA9IChjb25maWcud2l0aENyZWRlbnRpYWxzIHx8IGlzVVJMU2FtZU9yaWdpbihjb25maWcudXJsKSkgJiYgY29uZmlnLnhzcmZDb29raWVOYW1lID9cbiAgICAgICAgICBjb29raWVzLnJlYWQoY29uZmlnLnhzcmZDb29raWVOYW1lKSA6XG4gICAgICAgICAgdW5kZWZpbmVkO1xuXG4gICAgICBpZiAoeHNyZlZhbHVlKSB7XG4gICAgICAgIHJlcXVlc3RIZWFkZXJzW2NvbmZpZy54c3JmSGVhZGVyTmFtZV0gPSB4c3JmVmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3RcbiAgICBpZiAoJ3NldFJlcXVlc3RIZWFkZXInIGluIHJlcXVlc3QpIHtcbiAgICAgIHV0aWxzLmZvckVhY2gocmVxdWVzdEhlYWRlcnMsIGZ1bmN0aW9uIHNldFJlcXVlc3RIZWFkZXIodmFsLCBrZXkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0RGF0YSA9PT0gJ3VuZGVmaW5lZCcgJiYga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnKSB7XG4gICAgICAgICAgLy8gUmVtb3ZlIENvbnRlbnQtVHlwZSBpZiBkYXRhIGlzIHVuZGVmaW5lZFxuICAgICAgICAgIGRlbGV0ZSByZXF1ZXN0SGVhZGVyc1trZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSBhZGQgaGVhZGVyIHRvIHRoZSByZXF1ZXN0XG4gICAgICAgICAgcmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHdpdGhDcmVkZW50aWFscyB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcud2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICByZXF1ZXN0LndpdGhDcmVkZW50aWFscyA9IHRydWU7XG4gICAgfVxuXG4gICAgLy8gQWRkIHJlc3BvbnNlVHlwZSB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcucmVzcG9uc2VUeXBlKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9IGNvbmZpZy5yZXNwb25zZVR5cGU7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIEV4cGVjdGVkIERPTUV4Y2VwdGlvbiB0aHJvd24gYnkgYnJvd3NlcnMgbm90IGNvbXBhdGlibGUgWE1MSHR0cFJlcXVlc3QgTGV2ZWwgMi5cbiAgICAgICAgLy8gQnV0LCB0aGlzIGNhbiBiZSBzdXBwcmVzc2VkIGZvciAnanNvbicgdHlwZSBhcyBpdCBjYW4gYmUgcGFyc2VkIGJ5IGRlZmF1bHQgJ3RyYW5zZm9ybVJlc3BvbnNlJyBmdW5jdGlvbi5cbiAgICAgICAgaWYgKGNvbmZpZy5yZXNwb25zZVR5cGUgIT09ICdqc29uJykge1xuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgcHJvZ3Jlc3MgaWYgbmVlZGVkXG4gICAgaWYgKHR5cGVvZiBjb25maWcub25Eb3dubG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXF1ZXN0LmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgY29uZmlnLm9uRG93bmxvYWRQcm9ncmVzcyk7XG4gICAgfVxuXG4gICAgLy8gTm90IGFsbCBicm93c2VycyBzdXBwb3J0IHVwbG9hZCBldmVudHNcbiAgICBpZiAodHlwZW9mIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nICYmIHJlcXVlc3QudXBsb2FkKSB7XG4gICAgICByZXF1ZXN0LnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgICAvLyBIYW5kbGUgY2FuY2VsbGF0aW9uXG4gICAgICBjb25maWcuY2FuY2VsVG9rZW4ucHJvbWlzZS50aGVuKGZ1bmN0aW9uIG9uQ2FuY2VsZWQoY2FuY2VsKSB7XG4gICAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlcXVlc3QuYWJvcnQoKTtcbiAgICAgICAgcmVqZWN0KGNhbmNlbCk7XG4gICAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdCA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocmVxdWVzdERhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdERhdGEgPSBudWxsO1xuICAgIH1cblxuICAgIC8vIFNlbmQgdGhlIHJlcXVlc3RcbiAgICByZXF1ZXN0LnNlbmQocmVxdWVzdERhdGEpO1xuICB9KTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/adapters/xhr.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/axios.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar bind = __webpack_require__(\"./node_modules/axios/lib/helpers/bind.js\");\nvar Axios = __webpack_require__(\"./node_modules/axios/lib/core/Axios.js\");\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(utils.merge(defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = __webpack_require__(\"./node_modules/axios/lib/cancel/Cancel.js\");\naxios.CancelToken = __webpack_require__(\"./node_modules/axios/lib/cancel/CancelToken.js\");\naxios.isCancel = __webpack_require__(\"./node_modules/axios/lib/cancel/isCancel.js\");\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = __webpack_require__(\"./node_modules/axios/lib/helpers/spread.js\");\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2F4aW9zLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qcz9iNDgxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIEF4aW9zID0gcmVxdWlyZSgnLi9jb3JlL0F4aW9zJyk7XG52YXIgZGVmYXVsdHMgPSByZXF1aXJlKCcuL2RlZmF1bHRzJyk7XG5cbi8qKlxuICogQ3JlYXRlIGFuIGluc3RhbmNlIG9mIEF4aW9zXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGRlZmF1bHRDb25maWcgVGhlIGRlZmF1bHQgY29uZmlnIGZvciB0aGUgaW5zdGFuY2VcbiAqIEByZXR1cm4ge0F4aW9zfSBBIG5ldyBpbnN0YW5jZSBvZiBBeGlvc1xuICovXG5mdW5jdGlvbiBjcmVhdGVJbnN0YW5jZShkZWZhdWx0Q29uZmlnKSB7XG4gIHZhciBjb250ZXh0ID0gbmV3IEF4aW9zKGRlZmF1bHRDb25maWcpO1xuICB2YXIgaW5zdGFuY2UgPSBiaW5kKEF4aW9zLnByb3RvdHlwZS5yZXF1ZXN0LCBjb250ZXh0KTtcblxuICAvLyBDb3B5IGF4aW9zLnByb3RvdHlwZSB0byBpbnN0YW5jZVxuICB1dGlscy5leHRlbmQoaW5zdGFuY2UsIEF4aW9zLnByb3RvdHlwZSwgY29udGV4dCk7XG5cbiAgLy8gQ29weSBjb250ZXh0IHRvIGluc3RhbmNlXG4gIHV0aWxzLmV4dGVuZChpbnN0YW5jZSwgY29udGV4dCk7XG5cbiAgcmV0dXJuIGluc3RhbmNlO1xufVxuXG4vLyBDcmVhdGUgdGhlIGRlZmF1bHQgaW5zdGFuY2UgdG8gYmUgZXhwb3J0ZWRcbnZhciBheGlvcyA9IGNyZWF0ZUluc3RhbmNlKGRlZmF1bHRzKTtcblxuLy8gRXhwb3NlIEF4aW9zIGNsYXNzIHRvIGFsbG93IGNsYXNzIGluaGVyaXRhbmNlXG5heGlvcy5BeGlvcyA9IEF4aW9zO1xuXG4vLyBGYWN0b3J5IGZvciBjcmVhdGluZyBuZXcgaW5zdGFuY2VzXG5heGlvcy5jcmVhdGUgPSBmdW5jdGlvbiBjcmVhdGUoaW5zdGFuY2VDb25maWcpIHtcbiAgcmV0dXJuIGNyZWF0ZUluc3RhbmNlKHV0aWxzLm1lcmdlKGRlZmF1bHRzLCBpbnN0YW5jZUNvbmZpZykpO1xufTtcblxuLy8gRXhwb3NlIENhbmNlbCAmIENhbmNlbFRva2VuXG5heGlvcy5DYW5jZWwgPSByZXF1aXJlKCcuL2NhbmNlbC9DYW5jZWwnKTtcbmF4aW9zLkNhbmNlbFRva2VuID0gcmVxdWlyZSgnLi9jYW5jZWwvQ2FuY2VsVG9rZW4nKTtcbmF4aW9zLmlzQ2FuY2VsID0gcmVxdWlyZSgnLi9jYW5jZWwvaXNDYW5jZWwnKTtcblxuLy8gRXhwb3NlIGFsbC9zcHJlYWRcbmF4aW9zLmFsbCA9IGZ1bmN0aW9uIGFsbChwcm9taXNlcykge1xuICByZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xufTtcbmF4aW9zLnNwcmVhZCA9IHJlcXVpcmUoJy4vaGVscGVycy9zcHJlYWQnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBheGlvcztcblxuLy8gQWxsb3cgdXNlIG9mIGRlZmF1bHQgaW1wb3J0IHN5bnRheCBpbiBUeXBlU2NyaXB0XG5tb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0gYXhpb3M7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYXhpb3MuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/axios.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/cancel/Cancel.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWwuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWwuanM/NzU1MyJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQSBgQ2FuY2VsYCBpcyBhbiBvYmplY3QgdGhhdCBpcyB0aHJvd24gd2hlbiBhbiBvcGVyYXRpb24gaXMgY2FuY2VsZWQuXG4gKlxuICogQGNsYXNzXG4gKiBAcGFyYW0ge3N0cmluZz19IG1lc3NhZ2UgVGhlIG1lc3NhZ2UuXG4gKi9cbmZ1bmN0aW9uIENhbmNlbChtZXNzYWdlKSB7XG4gIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG59XG5cbkNhbmNlbC5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZygpIHtcbiAgcmV0dXJuICdDYW5jZWwnICsgKHRoaXMubWVzc2FnZSA/ICc6ICcgKyB0aGlzLm1lc3NhZ2UgOiAnJyk7XG59O1xuXG5DYW5jZWwucHJvdG90eXBlLl9fQ0FOQ0VMX18gPSB0cnVlO1xuXG5tb2R1bGUuZXhwb3J0cyA9IENhbmNlbDtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/Cancel.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/cancel/CancelToken.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar Cancel = __webpack_require__(\"./node_modules/axios/lib/cancel/Cancel.js\");\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWxUb2tlbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbFRva2VuLmpzPzcxNmMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQ2FuY2VsID0gcmVxdWlyZSgnLi9DYW5jZWwnKTtcblxuLyoqXG4gKiBBIGBDYW5jZWxUb2tlbmAgaXMgYW4gb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQgdG8gcmVxdWVzdCBjYW5jZWxsYXRpb24gb2YgYW4gb3BlcmF0aW9uLlxuICpcbiAqIEBjbGFzc1xuICogQHBhcmFtIHtGdW5jdGlvbn0gZXhlY3V0b3IgVGhlIGV4ZWN1dG9yIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBDYW5jZWxUb2tlbihleGVjdXRvcikge1xuICBpZiAodHlwZW9mIGV4ZWN1dG9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignZXhlY3V0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLicpO1xuICB9XG5cbiAgdmFyIHJlc29sdmVQcm9taXNlO1xuICB0aGlzLnByb21pc2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiBwcm9taXNlRXhlY3V0b3IocmVzb2x2ZSkge1xuICAgIHJlc29sdmVQcm9taXNlID0gcmVzb2x2ZTtcbiAgfSk7XG5cbiAgdmFyIHRva2VuID0gdGhpcztcbiAgZXhlY3V0b3IoZnVuY3Rpb24gY2FuY2VsKG1lc3NhZ2UpIHtcbiAgICBpZiAodG9rZW4ucmVhc29uKSB7XG4gICAgICAvLyBDYW5jZWxsYXRpb24gaGFzIGFscmVhZHkgYmVlbiByZXF1ZXN0ZWRcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0b2tlbi5yZWFzb24gPSBuZXcgQ2FuY2VsKG1lc3NhZ2UpO1xuICAgIHJlc29sdmVQcm9taXNlKHRva2VuLnJlYXNvbik7XG4gIH0pO1xufVxuXG4vKipcbiAqIFRocm93cyBhIGBDYW5jZWxgIGlmIGNhbmNlbGxhdGlvbiBoYXMgYmVlbiByZXF1ZXN0ZWQuXG4gKi9cbkNhbmNlbFRva2VuLnByb3RvdHlwZS50aHJvd0lmUmVxdWVzdGVkID0gZnVuY3Rpb24gdGhyb3dJZlJlcXVlc3RlZCgpIHtcbiAgaWYgKHRoaXMucmVhc29uKSB7XG4gICAgdGhyb3cgdGhpcy5yZWFzb247XG4gIH1cbn07XG5cbi8qKlxuICogUmV0dXJucyBhbiBvYmplY3QgdGhhdCBjb250YWlucyBhIG5ldyBgQ2FuY2VsVG9rZW5gIGFuZCBhIGZ1bmN0aW9uIHRoYXQsIHdoZW4gY2FsbGVkLFxuICogY2FuY2VscyB0aGUgYENhbmNlbFRva2VuYC5cbiAqL1xuQ2FuY2VsVG9rZW4uc291cmNlID0gZnVuY3Rpb24gc291cmNlKCkge1xuICB2YXIgY2FuY2VsO1xuICB2YXIgdG9rZW4gPSBuZXcgQ2FuY2VsVG9rZW4oZnVuY3Rpb24gZXhlY3V0b3IoYykge1xuICAgIGNhbmNlbCA9IGM7XG4gIH0pO1xuICByZXR1cm4ge1xuICAgIHRva2VuOiB0b2tlbixcbiAgICBjYW5jZWw6IGNhbmNlbFxuICB9O1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBDYW5jZWxUb2tlbjtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsVG9rZW4uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsVG9rZW4uanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/CancelToken.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/cancel/isCancel.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9pc0NhbmNlbC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzP2E0MWIiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGlzQ2FuY2VsKHZhbHVlKSB7XG4gIHJldHVybiAhISh2YWx1ZSAmJiB2YWx1ZS5fX0NBTkNFTF9fKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/isCancel.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/Axios.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar InterceptorManager = __webpack_require__(\"./node_modules/axios/lib/core/InterceptorManager.js\");\nvar dispatchRequest = __webpack_require__(\"./node_modules/axios/lib/core/dispatchRequest.js\");\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = utils.merge({\n url: arguments[0]\n }, arguments[1]);\n }\n\n config = utils.merge(defaults, {method: 'get'}, this.defaults, config);\n config.method = config.method.toLowerCase();\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanM/NWU2NSJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4vLi4vZGVmYXVsdHMnKTtcbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcbnZhciBJbnRlcmNlcHRvck1hbmFnZXIgPSByZXF1aXJlKCcuL0ludGVyY2VwdG9yTWFuYWdlcicpO1xudmFyIGRpc3BhdGNoUmVxdWVzdCA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hSZXF1ZXN0Jyk7XG5cbi8qKlxuICogQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIEF4aW9zXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGluc3RhbmNlQ29uZmlnIFRoZSBkZWZhdWx0IGNvbmZpZyBmb3IgdGhlIGluc3RhbmNlXG4gKi9cbmZ1bmN0aW9uIEF4aW9zKGluc3RhbmNlQ29uZmlnKSB7XG4gIHRoaXMuZGVmYXVsdHMgPSBpbnN0YW5jZUNvbmZpZztcbiAgdGhpcy5pbnRlcmNlcHRvcnMgPSB7XG4gICAgcmVxdWVzdDogbmV3IEludGVyY2VwdG9yTWFuYWdlcigpLFxuICAgIHJlc3BvbnNlOiBuZXcgSW50ZXJjZXB0b3JNYW5hZ2VyKClcbiAgfTtcbn1cblxuLyoqXG4gKiBEaXNwYXRjaCBhIHJlcXVlc3RcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcgc3BlY2lmaWMgZm9yIHRoaXMgcmVxdWVzdCAobWVyZ2VkIHdpdGggdGhpcy5kZWZhdWx0cylcbiAqL1xuQXhpb3MucHJvdG90eXBlLnJlcXVlc3QgPSBmdW5jdGlvbiByZXF1ZXN0KGNvbmZpZykge1xuICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgLy8gQWxsb3cgZm9yIGF4aW9zKCdleGFtcGxlL3VybCdbLCBjb25maWddKSBhIGxhIGZldGNoIEFQSVxuICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25maWcgPSB1dGlscy5tZXJnZSh7XG4gICAgICB1cmw6IGFyZ3VtZW50c1swXVxuICAgIH0sIGFyZ3VtZW50c1sxXSk7XG4gIH1cblxuICBjb25maWcgPSB1dGlscy5tZXJnZShkZWZhdWx0cywge21ldGhvZDogJ2dldCd9LCB0aGlzLmRlZmF1bHRzLCBjb25maWcpO1xuICBjb25maWcubWV0aG9kID0gY29uZmlnLm1ldGhvZC50b0xvd2VyQ2FzZSgpO1xuXG4gIC8vIEhvb2sgdXAgaW50ZXJjZXB0b3JzIG1pZGRsZXdhcmVcbiAgdmFyIGNoYWluID0gW2Rpc3BhdGNoUmVxdWVzdCwgdW5kZWZpbmVkXTtcbiAgdmFyIHByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoY29uZmlnKTtcblxuICB0aGlzLmludGVyY2VwdG9ycy5yZXF1ZXN0LmZvckVhY2goZnVuY3Rpb24gdW5zaGlmdFJlcXVlc3RJbnRlcmNlcHRvcnMoaW50ZXJjZXB0b3IpIHtcbiAgICBjaGFpbi51bnNoaWZ0KGludGVyY2VwdG9yLmZ1bGZpbGxlZCwgaW50ZXJjZXB0b3IucmVqZWN0ZWQpO1xuICB9KTtcblxuICB0aGlzLmludGVyY2VwdG9ycy5yZXNwb25zZS5mb3JFYWNoKGZ1bmN0aW9uIHB1c2hSZXNwb25zZUludGVyY2VwdG9ycyhpbnRlcmNlcHRvcikge1xuICAgIGNoYWluLnB1c2goaW50ZXJjZXB0b3IuZnVsZmlsbGVkLCBpbnRlcmNlcHRvci5yZWplY3RlZCk7XG4gIH0pO1xuXG4gIHdoaWxlIChjaGFpbi5sZW5ndGgpIHtcbiAgICBwcm9taXNlID0gcHJvbWlzZS50aGVuKGNoYWluLnNoaWZ0KCksIGNoYWluLnNoaWZ0KCkpO1xuICB9XG5cbiAgcmV0dXJuIHByb21pc2U7XG59O1xuXG4vLyBQcm92aWRlIGFsaWFzZXMgZm9yIHN1cHBvcnRlZCByZXF1ZXN0IG1ldGhvZHNcbnV0aWxzLmZvckVhY2goWydkZWxldGUnLCAnZ2V0JywgJ2hlYWQnLCAnb3B0aW9ucyddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kTm9EYXRhKG1ldGhvZCkge1xuICAvKmVzbGludCBmdW5jLW5hbWVzOjAqL1xuICBBeGlvcy5wcm90b3R5cGVbbWV0aG9kXSA9IGZ1bmN0aW9uKHVybCwgY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdCh1dGlscy5tZXJnZShjb25maWcgfHwge30sIHtcbiAgICAgIG1ldGhvZDogbWV0aG9kLFxuICAgICAgdXJsOiB1cmxcbiAgICB9KSk7XG4gIH07XG59KTtcblxudXRpbHMuZm9yRWFjaChbJ3Bvc3QnLCAncHV0JywgJ3BhdGNoJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2RXaXRoRGF0YShtZXRob2QpIHtcbiAgLyplc2xpbnQgZnVuYy1uYW1lczowKi9cbiAgQXhpb3MucHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbih1cmwsIGRhdGEsIGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QodXRpbHMubWVyZ2UoY29uZmlnIHx8IHt9LCB7XG4gICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgIHVybDogdXJsLFxuICAgICAgZGF0YTogZGF0YVxuICAgIH0pKTtcbiAgfTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IEF4aW9zO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0F4aW9zLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/Axios.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/InterceptorManager.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvSW50ZXJjZXB0b3JNYW5hZ2VyLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0ludGVyY2VwdG9yTWFuYWdlci5qcz83ZWUxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBJbnRlcmNlcHRvck1hbmFnZXIoKSB7XG4gIHRoaXMuaGFuZGxlcnMgPSBbXTtcbn1cblxuLyoqXG4gKiBBZGQgYSBuZXcgaW50ZXJjZXB0b3IgdG8gdGhlIHN0YWNrXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVsZmlsbGVkIFRoZSBmdW5jdGlvbiB0byBoYW5kbGUgYHRoZW5gIGZvciBhIGBQcm9taXNlYFxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVqZWN0ZWQgVGhlIGZ1bmN0aW9uIHRvIGhhbmRsZSBgcmVqZWN0YCBmb3IgYSBgUHJvbWlzZWBcbiAqXG4gKiBAcmV0dXJuIHtOdW1iZXJ9IEFuIElEIHVzZWQgdG8gcmVtb3ZlIGludGVyY2VwdG9yIGxhdGVyXG4gKi9cbkludGVyY2VwdG9yTWFuYWdlci5wcm90b3R5cGUudXNlID0gZnVuY3Rpb24gdXNlKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpIHtcbiAgdGhpcy5oYW5kbGVycy5wdXNoKHtcbiAgICBmdWxmaWxsZWQ6IGZ1bGZpbGxlZCxcbiAgICByZWplY3RlZDogcmVqZWN0ZWRcbiAgfSk7XG4gIHJldHVybiB0aGlzLmhhbmRsZXJzLmxlbmd0aCAtIDE7XG59O1xuXG4vKipcbiAqIFJlbW92ZSBhbiBpbnRlcmNlcHRvciBmcm9tIHRoZSBzdGFja1xuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBpZCBUaGUgSUQgdGhhdCB3YXMgcmV0dXJuZWQgYnkgYHVzZWBcbiAqL1xuSW50ZXJjZXB0b3JNYW5hZ2VyLnByb3RvdHlwZS5lamVjdCA9IGZ1bmN0aW9uIGVqZWN0KGlkKSB7XG4gIGlmICh0aGlzLmhhbmRsZXJzW2lkXSkge1xuICAgIHRoaXMuaGFuZGxlcnNbaWRdID0gbnVsbDtcbiAgfVxufTtcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgYWxsIHRoZSByZWdpc3RlcmVkIGludGVyY2VwdG9yc1xuICpcbiAqIFRoaXMgbWV0aG9kIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIHNraXBwaW5nIG92ZXIgYW55XG4gKiBpbnRlcmNlcHRvcnMgdGhhdCBtYXkgaGF2ZSBiZWNvbWUgYG51bGxgIGNhbGxpbmcgYGVqZWN0YC5cbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgZnVuY3Rpb24gdG8gY2FsbCBmb3IgZWFjaCBpbnRlcmNlcHRvclxuICovXG5JbnRlcmNlcHRvck1hbmFnZXIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbiBmb3JFYWNoKGZuKSB7XG4gIHV0aWxzLmZvckVhY2godGhpcy5oYW5kbGVycywgZnVuY3Rpb24gZm9yRWFjaEhhbmRsZXIoaCkge1xuICAgIGlmIChoICE9PSBudWxsKSB7XG4gICAgICBmbihoKTtcbiAgICB9XG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBJbnRlcmNlcHRvck1hbmFnZXI7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9JbnRlcmNlcHRvck1hbmFnZXIuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0ludGVyY2VwdG9yTWFuYWdlci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/InterceptorManager.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/createError.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar enhanceError = __webpack_require__(\"./node_modules/axios/lib/core/enhanceError.js\");\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanM/MTZkMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciBlbmhhbmNlRXJyb3IgPSByZXF1aXJlKCcuL2VuaGFuY2VFcnJvcicpO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBFcnJvciB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSwgY29uZmlnLCBlcnJvciBjb2RlLCByZXF1ZXN0IGFuZCByZXNwb25zZS5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZSBUaGUgZXJyb3IgbWVzc2FnZS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBjb25maWcgVGhlIGNvbmZpZy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbY29kZV0gVGhlIGVycm9yIGNvZGUgKGZvciBleGFtcGxlLCAnRUNPTk5BQk9SVEVEJykuXG4gKiBAcGFyYW0ge09iamVjdH0gW3JlcXVlc3RdIFRoZSByZXF1ZXN0LlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXNwb25zZV0gVGhlIHJlc3BvbnNlLlxuICogQHJldHVybnMge0Vycm9yfSBUaGUgY3JlYXRlZCBlcnJvci5cbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjcmVhdGVFcnJvcihtZXNzYWdlLCBjb25maWcsIGNvZGUsIHJlcXVlc3QsIHJlc3BvbnNlKSB7XG4gIHZhciBlcnJvciA9IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgcmV0dXJuIGVuaGFuY2VFcnJvcihlcnJvciwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2NyZWF0ZUVycm9yLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/createError.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/dispatchRequest.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar transformData = __webpack_require__(\"./node_modules/axios/lib/core/transformData.js\");\nvar isCancel = __webpack_require__(\"./node_modules/axios/lib/cancel/isCancel.js\");\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\nvar isAbsoluteURL = __webpack_require__(\"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\nvar combineURLs = __webpack_require__(\"./node_modules/axios/lib/helpers/combineURLs.js\");\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Support baseURL config\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers || {}\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2Rpc3BhdGNoUmVxdWVzdC5qcz9jNGJiIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xudmFyIHRyYW5zZm9ybURhdGEgPSByZXF1aXJlKCcuL3RyYW5zZm9ybURhdGEnKTtcbnZhciBpc0NhbmNlbCA9IHJlcXVpcmUoJy4uL2NhbmNlbC9pc0NhbmNlbCcpO1xudmFyIGRlZmF1bHRzID0gcmVxdWlyZSgnLi4vZGVmYXVsdHMnKTtcbnZhciBpc0Fic29sdXRlVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2lzQWJzb2x1dGVVUkwnKTtcbnZhciBjb21iaW5lVVJMcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb21iaW5lVVJMcycpO1xuXG4vKipcbiAqIFRocm93cyBhIGBDYW5jZWxgIGlmIGNhbmNlbGxhdGlvbiBoYXMgYmVlbiByZXF1ZXN0ZWQuXG4gKi9cbmZ1bmN0aW9uIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKSB7XG4gIGlmIChjb25maWcuY2FuY2VsVG9rZW4pIHtcbiAgICBjb25maWcuY2FuY2VsVG9rZW4udGhyb3dJZlJlcXVlc3RlZCgpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGF0Y2ggYSByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIgdXNpbmcgdGhlIGNvbmZpZ3VyZWQgYWRhcHRlci5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gY29uZmlnIFRoZSBjb25maWcgdGhhdCBpcyB0byBiZSB1c2VkIGZvciB0aGUgcmVxdWVzdFxuICogQHJldHVybnMge1Byb21pc2V9IFRoZSBQcm9taXNlIHRvIGJlIGZ1bGZpbGxlZFxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGRpc3BhdGNoUmVxdWVzdChjb25maWcpIHtcbiAgdGhyb3dJZkNhbmNlbGxhdGlvblJlcXVlc3RlZChjb25maWcpO1xuXG4gIC8vIFN1cHBvcnQgYmFzZVVSTCBjb25maWdcbiAgaWYgKGNvbmZpZy5iYXNlVVJMICYmICFpc0Fic29sdXRlVVJMKGNvbmZpZy51cmwpKSB7XG4gICAgY29uZmlnLnVybCA9IGNvbWJpbmVVUkxzKGNvbmZpZy5iYXNlVVJMLCBjb25maWcudXJsKTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBoZWFkZXJzIGV4aXN0XG4gIGNvbmZpZy5oZWFkZXJzID0gY29uZmlnLmhlYWRlcnMgfHwge307XG5cbiAgLy8gVHJhbnNmb3JtIHJlcXVlc3QgZGF0YVxuICBjb25maWcuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgY29uZmlnLmRhdGEsXG4gICAgY29uZmlnLmhlYWRlcnMsXG4gICAgY29uZmlnLnRyYW5zZm9ybVJlcXVlc3RcbiAgKTtcblxuICAvLyBGbGF0dGVuIGhlYWRlcnNcbiAgY29uZmlnLmhlYWRlcnMgPSB1dGlscy5tZXJnZShcbiAgICBjb25maWcuaGVhZGVycy5jb21tb24gfHwge30sXG4gICAgY29uZmlnLmhlYWRlcnNbY29uZmlnLm1ldGhvZF0gfHwge30sXG4gICAgY29uZmlnLmhlYWRlcnMgfHwge31cbiAgKTtcblxuICB1dGlscy5mb3JFYWNoKFxuICAgIFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJywgJ3Bvc3QnLCAncHV0JywgJ3BhdGNoJywgJ2NvbW1vbiddLFxuICAgIGZ1bmN0aW9uIGNsZWFuSGVhZGVyQ29uZmlnKG1ldGhvZCkge1xuICAgICAgZGVsZXRlIGNvbmZpZy5oZWFkZXJzW21ldGhvZF07XG4gICAgfVxuICApO1xuXG4gIHZhciBhZGFwdGVyID0gY29uZmlnLmFkYXB0ZXIgfHwgZGVmYXVsdHMuYWRhcHRlcjtcblxuICByZXR1cm4gYWRhcHRlcihjb25maWcpLnRoZW4oZnVuY3Rpb24gb25BZGFwdGVyUmVzb2x1dGlvbihyZXNwb25zZSkge1xuICAgIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAgIC8vIFRyYW5zZm9ybSByZXNwb25zZSBkYXRhXG4gICAgcmVzcG9uc2UuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgICByZXNwb25zZS5kYXRhLFxuICAgICAgcmVzcG9uc2UuaGVhZGVycyxcbiAgICAgIGNvbmZpZy50cmFuc2Zvcm1SZXNwb25zZVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzcG9uc2U7XG4gIH0sIGZ1bmN0aW9uIG9uQWRhcHRlclJlamVjdGlvbihyZWFzb24pIHtcbiAgICBpZiAoIWlzQ2FuY2VsKHJlYXNvbikpIHtcbiAgICAgIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAgICAgLy8gVHJhbnNmb3JtIHJlc3BvbnNlIGRhdGFcbiAgICAgIGlmIChyZWFzb24gJiYgcmVhc29uLnJlc3BvbnNlKSB7XG4gICAgICAgIHJlYXNvbi5yZXNwb25zZS5kYXRhID0gdHJhbnNmb3JtRGF0YShcbiAgICAgICAgICByZWFzb24ucmVzcG9uc2UuZGF0YSxcbiAgICAgICAgICByZWFzb24ucmVzcG9uc2UuaGVhZGVycyxcbiAgICAgICAgICBjb25maWcudHJhbnNmb3JtUmVzcG9uc2VcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QocmVhc29uKTtcbiAgfSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9kaXNwYXRjaFJlcXVlc3QuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/dispatchRequest.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/enhanceError.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n return error;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2VuaGFuY2VFcnJvci5qcz9iN2NhIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBVcGRhdGUgYW4gRXJyb3Igd2l0aCB0aGUgc3BlY2lmaWVkIGNvbmZpZywgZXJyb3IgY29kZSwgYW5kIHJlc3BvbnNlLlxuICpcbiAqIEBwYXJhbSB7RXJyb3J9IGVycm9yIFRoZSBlcnJvciB0byB1cGRhdGUuXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2NvZGVdIFRoZSBlcnJvciBjb2RlIChmb3IgZXhhbXBsZSwgJ0VDT05OQUJPUlRFRCcpLlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXF1ZXN0XSBUaGUgcmVxdWVzdC5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVzcG9uc2VdIFRoZSByZXNwb25zZS5cbiAqIEByZXR1cm5zIHtFcnJvcn0gVGhlIGVycm9yLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGVuaGFuY2VFcnJvcihlcnJvciwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSkge1xuICBlcnJvci5jb25maWcgPSBjb25maWc7XG4gIGlmIChjb2RlKSB7XG4gICAgZXJyb3IuY29kZSA9IGNvZGU7XG4gIH1cbiAgZXJyb3IucmVxdWVzdCA9IHJlcXVlc3Q7XG4gIGVycm9yLnJlc3BvbnNlID0gcmVzcG9uc2U7XG4gIHJldHVybiBlcnJvcjtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9lbmhhbmNlRXJyb3IuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2VuaGFuY2VFcnJvci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/enhanceError.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/settle.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar createError = __webpack_require__(\"./node_modules/axios/lib/core/createError.js\");\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n // Note: status is not exposed by XDomainRequest\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qcz9kYjUyIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGNyZWF0ZUVycm9yID0gcmVxdWlyZSgnLi9jcmVhdGVFcnJvcicpO1xuXG4vKipcbiAqIFJlc29sdmUgb3IgcmVqZWN0IGEgUHJvbWlzZSBiYXNlZCBvbiByZXNwb25zZSBzdGF0dXMuXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVzb2x2ZSBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSByZWplY3QgQSBmdW5jdGlvbiB0aGF0IHJlamVjdHMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge29iamVjdH0gcmVzcG9uc2UgVGhlIHJlc3BvbnNlLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNldHRsZShyZXNvbHZlLCByZWplY3QsIHJlc3BvbnNlKSB7XG4gIHZhciB2YWxpZGF0ZVN0YXR1cyA9IHJlc3BvbnNlLmNvbmZpZy52YWxpZGF0ZVN0YXR1cztcbiAgLy8gTm90ZTogc3RhdHVzIGlzIG5vdCBleHBvc2VkIGJ5IFhEb21haW5SZXF1ZXN0XG4gIGlmICghcmVzcG9uc2Uuc3RhdHVzIHx8ICF2YWxpZGF0ZVN0YXR1cyB8fCB2YWxpZGF0ZVN0YXR1cyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gIH0gZWxzZSB7XG4gICAgcmVqZWN0KGNyZWF0ZUVycm9yKFxuICAgICAgJ1JlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzIGNvZGUgJyArIHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgIHJlc3BvbnNlLmNvbmZpZyxcbiAgICAgIG51bGwsXG4gICAgICByZXNwb25zZS5yZXF1ZXN0LFxuICAgICAgcmVzcG9uc2VcbiAgICApKTtcbiAgfVxufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/settle.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/core/transformData.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS90cmFuc2Zvcm1EYXRhLmpzPzRjZDUiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbi8qKlxuICogVHJhbnNmb3JtIHRoZSBkYXRhIGZvciBhIHJlcXVlc3Qgb3IgYSByZXNwb25zZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fFN0cmluZ30gZGF0YSBUaGUgZGF0YSB0byBiZSB0cmFuc2Zvcm1lZFxuICogQHBhcmFtIHtBcnJheX0gaGVhZGVycyBUaGUgaGVhZGVycyBmb3IgdGhlIHJlcXVlc3Qgb3IgcmVzcG9uc2VcbiAqIEBwYXJhbSB7QXJyYXl8RnVuY3Rpb259IGZucyBBIHNpbmdsZSBmdW5jdGlvbiBvciBBcnJheSBvZiBmdW5jdGlvbnNcbiAqIEByZXR1cm5zIHsqfSBUaGUgcmVzdWx0aW5nIHRyYW5zZm9ybWVkIGRhdGFcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRhKGRhdGEsIGhlYWRlcnMsIGZucykge1xuICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgdXRpbHMuZm9yRWFjaChmbnMsIGZ1bmN0aW9uIHRyYW5zZm9ybShmbikge1xuICAgIGRhdGEgPSBmbihkYXRhLCBoZWFkZXJzKTtcbiAgfSk7XG5cbiAgcmV0dXJuIGRhdGE7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/transformData.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/defaults.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar normalizeHeaderName = __webpack_require__(\"./node_modules/axios/lib/helpers/normalizeHeaderName.js\");\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = __webpack_require__(\"./node_modules/axios/lib/adapters/xhr.js\");\n } else if (typeof process !== 'undefined') {\n // For node use HTTP adapter\n adapter = __webpack_require__(\"./node_modules/axios/lib/adapters/xhr.js\");\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(\"./node_modules/process/browser.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9kZWZhdWx0cy5qcz8yODIyIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIG5vcm1hbGl6ZUhlYWRlck5hbWUgPSByZXF1aXJlKCcuL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZScpO1xuXG52YXIgREVGQVVMVF9DT05URU5UX1RZUEUgPSB7XG4gICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xufTtcblxuZnVuY3Rpb24gc2V0Q29udGVudFR5cGVJZlVuc2V0KGhlYWRlcnMsIHZhbHVlKSB7XG4gIGlmICghdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVycykgJiYgdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVyc1snQ29udGVudC1UeXBlJ10pKSB7XG4gICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSB2YWx1ZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QWRhcHRlcigpIHtcbiAgdmFyIGFkYXB0ZXI7XG4gIGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgLy8gRm9yIGJyb3dzZXJzIHVzZSBYSFIgYWRhcHRlclxuICAgIGFkYXB0ZXIgPSByZXF1aXJlKCcuL2FkYXB0ZXJzL3hocicpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIEZvciBub2RlIHVzZSBIVFRQIGFkYXB0ZXJcbiAgICBhZGFwdGVyID0gcmVxdWlyZSgnLi9hZGFwdGVycy9odHRwJyk7XG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXI7XG59XG5cbnZhciBkZWZhdWx0cyA9IHtcbiAgYWRhcHRlcjogZ2V0RGVmYXVsdEFkYXB0ZXIoKSxcblxuICB0cmFuc2Zvcm1SZXF1ZXN0OiBbZnVuY3Rpb24gdHJhbnNmb3JtUmVxdWVzdChkYXRhLCBoZWFkZXJzKSB7XG4gICAgbm9ybWFsaXplSGVhZGVyTmFtZShoZWFkZXJzLCAnQ29udGVudC1UeXBlJyk7XG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQXJyYXlCdWZmZXIoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQnVmZmVyKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc1N0cmVhbShkYXRhKSB8fFxuICAgICAgdXRpbHMuaXNGaWxlKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc0Jsb2IoZGF0YSlcbiAgICApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNBcnJheUJ1ZmZlclZpZXcoZGF0YSkpIHtcbiAgICAgIHJldHVybiBkYXRhLmJ1ZmZlcjtcbiAgICB9XG4gICAgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKGRhdGEpKSB7XG4gICAgICBzZXRDb250ZW50VHlwZUlmVW5zZXQoaGVhZGVycywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gZGF0YS50b1N0cmluZygpO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNPYmplY3QoZGF0YSkpIHtcbiAgICAgIHNldENvbnRlbnRUeXBlSWZVbnNldChoZWFkZXJzLCAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XSxcblxuICB0cmFuc2Zvcm1SZXNwb25zZTogW2Z1bmN0aW9uIHRyYW5zZm9ybVJlc3BvbnNlKGRhdGEpIHtcbiAgICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBkYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogSWdub3JlICovIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1dLFxuXG4gIC8qKlxuICAgKiBBIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIHRvIGFib3J0IGEgcmVxdWVzdC4gSWYgc2V0IHRvIDAgKGRlZmF1bHQpIGFcbiAgICogdGltZW91dCBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHRpbWVvdXQ6IDAsXG5cbiAgeHNyZkNvb2tpZU5hbWU6ICdYU1JGLVRPS0VOJyxcbiAgeHNyZkhlYWRlck5hbWU6ICdYLVhTUkYtVE9LRU4nLFxuXG4gIG1heENvbnRlbnRMZW5ndGg6IC0xLFxuXG4gIHZhbGlkYXRlU3RhdHVzOiBmdW5jdGlvbiB2YWxpZGF0ZVN0YXR1cyhzdGF0dXMpIHtcbiAgICByZXR1cm4gc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDA7XG4gIH1cbn07XG5cbmRlZmF1bHRzLmhlYWRlcnMgPSB7XG4gIGNvbW1vbjoge1xuICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJ1xuICB9XG59O1xuXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2ROb0RhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHt9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHV0aWxzLm1lcmdlKERFRkFVTFRfQ09OVEVOVF9UWVBFKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGRlZmF1bHRzO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvZGVmYXVsdHMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/defaults.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/bind.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9iaW5kLmpzPzI0ZmYiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJpbmQoZm4sIHRoaXNBcmcpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHdyYXAoKSB7XG4gICAgdmFyIGFyZ3MgPSBuZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcmdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBhcmdzW2ldID0gYXJndW1lbnRzW2ldO1xuICAgIH1cbiAgICByZXR1cm4gZm4uYXBwbHkodGhpc0FyZywgYXJncyk7XG4gIH07XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/bind.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/btoa.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js\n\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\nfunction E() {\n this.message = 'String contains an invalid character';\n}\nE.prototype = new Error;\nE.prototype.code = 5;\nE.prototype.name = 'InvalidCharacterError';\n\nfunction btoa(input) {\n var str = String(input);\n var output = '';\n for (\n // initialize result and counter\n var block, charCode, idx = 0, map = chars;\n // if the next str index does not exist:\n // change the mapping table to \"=\"\n // check if d has no fractional digits\n str.charAt(idx | 0) || (map = '=', idx % 1);\n // \"8 - idx % 1 * 8\" generates the sequence 2, 4, 6, 8\n output += map.charAt(63 & block >> 8 - idx % 1 * 8)\n ) {\n charCode = str.charCodeAt(idx += 3 / 4);\n if (charCode > 0xFF) {\n throw new E();\n }\n block = block << 8 | charCode;\n }\n return output;\n}\n\nmodule.exports = btoa;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idG9hLmpzP2I2MTIiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG4vLyBidG9hIHBvbHlmaWxsIGZvciBJRTwxMCBjb3VydGVzeSBodHRwczovL2dpdGh1Yi5jb20vZGF2aWRjaGFtYmVycy9CYXNlNjQuanNcblxudmFyIGNoYXJzID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89JztcblxuZnVuY3Rpb24gRSgpIHtcbiAgdGhpcy5tZXNzYWdlID0gJ1N0cmluZyBjb250YWlucyBhbiBpbnZhbGlkIGNoYXJhY3Rlcic7XG59XG5FLnByb3RvdHlwZSA9IG5ldyBFcnJvcjtcbkUucHJvdG90eXBlLmNvZGUgPSA1O1xuRS5wcm90b3R5cGUubmFtZSA9ICdJbnZhbGlkQ2hhcmFjdGVyRXJyb3InO1xuXG5mdW5jdGlvbiBidG9hKGlucHV0KSB7XG4gIHZhciBzdHIgPSBTdHJpbmcoaW5wdXQpO1xuICB2YXIgb3V0cHV0ID0gJyc7XG4gIGZvciAoXG4gICAgLy8gaW5pdGlhbGl6ZSByZXN1bHQgYW5kIGNvdW50ZXJcbiAgICB2YXIgYmxvY2ssIGNoYXJDb2RlLCBpZHggPSAwLCBtYXAgPSBjaGFycztcbiAgICAvLyBpZiB0aGUgbmV4dCBzdHIgaW5kZXggZG9lcyBub3QgZXhpc3Q6XG4gICAgLy8gICBjaGFuZ2UgdGhlIG1hcHBpbmcgdGFibGUgdG8gXCI9XCJcbiAgICAvLyAgIGNoZWNrIGlmIGQgaGFzIG5vIGZyYWN0aW9uYWwgZGlnaXRzXG4gICAgc3RyLmNoYXJBdChpZHggfCAwKSB8fCAobWFwID0gJz0nLCBpZHggJSAxKTtcbiAgICAvLyBcIjggLSBpZHggJSAxICogOFwiIGdlbmVyYXRlcyB0aGUgc2VxdWVuY2UgMiwgNCwgNiwgOFxuICAgIG91dHB1dCArPSBtYXAuY2hhckF0KDYzICYgYmxvY2sgPj4gOCAtIGlkeCAlIDEgKiA4KVxuICApIHtcbiAgICBjaGFyQ29kZSA9IHN0ci5jaGFyQ29kZUF0KGlkeCArPSAzIC8gNCk7XG4gICAgaWYgKGNoYXJDb2RlID4gMHhGRikge1xuICAgICAgdGhyb3cgbmV3IEUoKTtcbiAgICB9XG4gICAgYmxvY2sgPSBibG9jayA8PCA4IHwgY2hhckNvZGU7XG4gIH1cbiAgcmV0dXJuIG91dHB1dDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBidG9hO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/btoa.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/buildURL.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanM/MGQwMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxuZnVuY3Rpb24gZW5jb2RlKHZhbCkge1xuICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHZhbCkuXG4gICAgcmVwbGFjZSgvJTQwL2dpLCAnQCcpLlxuICAgIHJlcGxhY2UoLyUzQS9naSwgJzonKS5cbiAgICByZXBsYWNlKC8lMjQvZywgJyQnKS5cbiAgICByZXBsYWNlKC8lMkMvZ2ksICcsJykuXG4gICAgcmVwbGFjZSgvJTIwL2csICcrJykuXG4gICAgcmVwbGFjZSgvJTVCL2dpLCAnWycpLlxuICAgIHJlcGxhY2UoLyU1RC9naSwgJ10nKTtcbn1cblxuLyoqXG4gKiBCdWlsZCBhIFVSTCBieSBhcHBlbmRpbmcgcGFyYW1zIHRvIHRoZSBlbmRcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gdXJsIFRoZSBiYXNlIG9mIHRoZSB1cmwgKGUuZy4sIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbSlcbiAqIEBwYXJhbSB7b2JqZWN0fSBbcGFyYW1zXSBUaGUgcGFyYW1zIHRvIGJlIGFwcGVuZGVkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgZm9ybWF0dGVkIHVybFxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJ1aWxkVVJMKHVybCwgcGFyYW1zLCBwYXJhbXNTZXJpYWxpemVyKSB7XG4gIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICBpZiAoIXBhcmFtcykge1xuICAgIHJldHVybiB1cmw7XG4gIH1cblxuICB2YXIgc2VyaWFsaXplZFBhcmFtcztcbiAgaWYgKHBhcmFtc1NlcmlhbGl6ZXIpIHtcbiAgICBzZXJpYWxpemVkUGFyYW1zID0gcGFyYW1zU2VyaWFsaXplcihwYXJhbXMpO1xuICB9IGVsc2UgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKHBhcmFtcykpIHtcbiAgICBzZXJpYWxpemVkUGFyYW1zID0gcGFyYW1zLnRvU3RyaW5nKCk7XG4gIH0gZWxzZSB7XG4gICAgdmFyIHBhcnRzID0gW107XG5cbiAgICB1dGlscy5mb3JFYWNoKHBhcmFtcywgZnVuY3Rpb24gc2VyaWFsaXplKHZhbCwga2V5KSB7XG4gICAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHV0aWxzLmlzQXJyYXkodmFsKSkge1xuICAgICAgICBrZXkgPSBrZXkgKyAnW10nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFsID0gW3ZhbF07XG4gICAgICB9XG5cbiAgICAgIHV0aWxzLmZvckVhY2godmFsLCBmdW5jdGlvbiBwYXJzZVZhbHVlKHYpIHtcbiAgICAgICAgaWYgKHV0aWxzLmlzRGF0ZSh2KSkge1xuICAgICAgICAgIHYgPSB2LnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodXRpbHMuaXNPYmplY3QodikpIHtcbiAgICAgICAgICB2ID0gSlNPTi5zdHJpbmdpZnkodik7XG4gICAgICAgIH1cbiAgICAgICAgcGFydHMucHVzaChlbmNvZGUoa2V5KSArICc9JyArIGVuY29kZSh2KSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJ0cy5qb2luKCcmJyk7XG4gIH1cblxuICBpZiAoc2VyaWFsaXplZFBhcmFtcykge1xuICAgIHVybCArPSAodXJsLmluZGV4T2YoJz8nKSA9PT0gLTEgPyAnPycgOiAnJicpICsgc2VyaWFsaXplZFBhcmFtcztcbiAgfVxuXG4gIHJldHVybiB1cmw7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2J1aWxkVVJMLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/buildURL.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/combineURLs.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanM/YTkxNyJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBVUkwgYnkgY29tYmluaW5nIHRoZSBzcGVjaWZpZWQgVVJMc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlVVJMIFRoZSBiYXNlIFVSTFxuICogQHBhcmFtIHtzdHJpbmd9IHJlbGF0aXZlVVJMIFRoZSByZWxhdGl2ZSBVUkxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjb21iaW5lZCBVUkxcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjb21iaW5lVVJMcyhiYXNlVVJMLCByZWxhdGl2ZVVSTCkge1xuICByZXR1cm4gcmVsYXRpdmVVUkxcbiAgICA/IGJhc2VVUkwucmVwbGFjZSgvXFwvKyQvLCAnJykgKyAnLycgKyByZWxhdGl2ZVVSTC5yZXBsYWNlKC9eXFwvKy8sICcnKVxuICAgIDogYmFzZVVSTDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb21iaW5lVVJMcy5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/combineURLs.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/cookies.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29va2llcy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb29raWVzLmpzP2E3NTYiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gKFxuICB1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpID9cblxuICAvLyBTdGFuZGFyZCBicm93c2VyIGVudnMgc3VwcG9ydCBkb2N1bWVudC5jb29raWVcbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgd3JpdGU6IGZ1bmN0aW9uIHdyaXRlKG5hbWUsIHZhbHVlLCBleHBpcmVzLCBwYXRoLCBkb21haW4sIHNlY3VyZSkge1xuICAgICAgICB2YXIgY29va2llID0gW107XG4gICAgICAgIGNvb2tpZS5wdXNoKG5hbWUgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcblxuICAgICAgICBpZiAodXRpbHMuaXNOdW1iZXIoZXhwaXJlcykpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgnZXhwaXJlcz0nICsgbmV3IERhdGUoZXhwaXJlcykudG9HTVRTdHJpbmcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcocGF0aCkpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgncGF0aD0nICsgcGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcoZG9tYWluKSkge1xuICAgICAgICAgIGNvb2tpZS5wdXNoKCdkb21haW49JyArIGRvbWFpbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VjdXJlID09PSB0cnVlKSB7XG4gICAgICAgICAgY29va2llLnB1c2goJ3NlY3VyZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgZG9jdW1lbnQuY29va2llID0gY29va2llLmpvaW4oJzsgJyk7XG4gICAgICB9LFxuXG4gICAgICByZWFkOiBmdW5jdGlvbiByZWFkKG5hbWUpIHtcbiAgICAgICAgdmFyIG1hdGNoID0gZG9jdW1lbnQuY29va2llLm1hdGNoKG5ldyBSZWdFeHAoJyhefDtcXFxccyopKCcgKyBuYW1lICsgJyk9KFteO10qKScpKTtcbiAgICAgICAgcmV0dXJuIChtYXRjaCA/IGRlY29kZVVSSUNvbXBvbmVudChtYXRjaFszXSkgOiBudWxsKTtcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogZnVuY3Rpb24gcmVtb3ZlKG5hbWUpIHtcbiAgICAgICAgdGhpcy53cml0ZShuYW1lLCAnJywgRGF0ZS5ub3coKSAtIDg2NDAwMDAwKTtcbiAgICAgIH1cbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnYgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdyaXRlOiBmdW5jdGlvbiB3cml0ZSgpIHt9LFxuICAgICAgcmVhZDogZnVuY3Rpb24gcmVhZCgpIHsgcmV0dXJuIG51bGw7IH0sXG4gICAgICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSgpIHt9XG4gICAgfTtcbiAgfSkoKVxuKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/cookies.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNBYnNvbHV0ZVVSTC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzPzc0OGMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgc3BlY2lmaWVkIFVSTCBpcyBhYnNvbHV0ZVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgVGhlIFVSTCB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB0aGUgc3BlY2lmaWVkIFVSTCBpcyBhYnNvbHV0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gaXNBYnNvbHV0ZVVSTCh1cmwpIHtcbiAgLy8gQSBVUkwgaXMgY29uc2lkZXJlZCBhYnNvbHV0ZSBpZiBpdCBiZWdpbnMgd2l0aCBcIjxzY2hlbWU+Oi8vXCIgb3IgXCIvL1wiIChwcm90b2NvbC1yZWxhdGl2ZSBVUkwpLlxuICAvLyBSRkMgMzk4NiBkZWZpbmVzIHNjaGVtZSBuYW1lIGFzIGEgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycyBiZWdpbm5pbmcgd2l0aCBhIGxldHRlciBhbmQgZm9sbG93ZWRcbiAgLy8gYnkgYW55IGNvbWJpbmF0aW9uIG9mIGxldHRlcnMsIGRpZ2l0cywgcGx1cywgcGVyaW9kLCBvciBoeXBoZW4uXG4gIHJldHVybiAvXihbYS16XVthLXpcXGRcXCtcXC1cXC5dKjopP1xcL1xcLy9pLnRlc3QodXJsKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/isAbsoluteURL.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzVVJMU2FtZU9yaWdpbi5qcz8xODcwIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IChcbiAgdXRpbHMuaXNTdGFuZGFyZEJyb3dzZXJFbnYoKSA/XG5cbiAgLy8gU3RhbmRhcmQgYnJvd3NlciBlbnZzIGhhdmUgZnVsbCBzdXBwb3J0IG9mIHRoZSBBUElzIG5lZWRlZCB0byB0ZXN0XG4gIC8vIHdoZXRoZXIgdGhlIHJlcXVlc3QgVVJMIGlzIG9mIHRoZSBzYW1lIG9yaWdpbiBhcyBjdXJyZW50IGxvY2F0aW9uLlxuICAoZnVuY3Rpb24gc3RhbmRhcmRCcm93c2VyRW52KCkge1xuICAgIHZhciBtc2llID0gLyhtc2llfHRyaWRlbnQpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbiAgICB2YXIgdXJsUGFyc2luZ05vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgdmFyIG9yaWdpblVSTDtcblxuICAgIC8qKlxuICAgICogUGFyc2UgYSBVUkwgdG8gZGlzY292ZXIgaXQncyBjb21wb25lbnRzXG4gICAgKlxuICAgICogQHBhcmFtIHtTdHJpbmd9IHVybCBUaGUgVVJMIHRvIGJlIHBhcnNlZFxuICAgICogQHJldHVybnMge09iamVjdH1cbiAgICAqL1xuICAgIGZ1bmN0aW9uIHJlc29sdmVVUkwodXJsKSB7XG4gICAgICB2YXIgaHJlZiA9IHVybDtcblxuICAgICAgaWYgKG1zaWUpIHtcbiAgICAgICAgLy8gSUUgbmVlZHMgYXR0cmlidXRlIHNldCB0d2ljZSB0byBub3JtYWxpemUgcHJvcGVydGllc1xuICAgICAgICB1cmxQYXJzaW5nTm9kZS5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBocmVmKTtcbiAgICAgICAgaHJlZiA9IHVybFBhcnNpbmdOb2RlLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIHVybFBhcnNpbmdOb2RlLnNldEF0dHJpYnV0ZSgnaHJlZicsIGhyZWYpO1xuXG4gICAgICAvLyB1cmxQYXJzaW5nTm9kZSBwcm92aWRlcyB0aGUgVXJsVXRpbHMgaW50ZXJmYWNlIC0gaHR0cDovL3VybC5zcGVjLndoYXR3Zy5vcmcvI3VybHV0aWxzXG4gICAgICByZXR1cm4ge1xuICAgICAgICBocmVmOiB1cmxQYXJzaW5nTm9kZS5ocmVmLFxuICAgICAgICBwcm90b2NvbDogdXJsUGFyc2luZ05vZGUucHJvdG9jb2wgPyB1cmxQYXJzaW5nTm9kZS5wcm90b2NvbC5yZXBsYWNlKC86JC8sICcnKSA6ICcnLFxuICAgICAgICBob3N0OiB1cmxQYXJzaW5nTm9kZS5ob3N0LFxuICAgICAgICBzZWFyY2g6IHVybFBhcnNpbmdOb2RlLnNlYXJjaCA/IHVybFBhcnNpbmdOb2RlLnNlYXJjaC5yZXBsYWNlKC9eXFw/LywgJycpIDogJycsXG4gICAgICAgIGhhc2g6IHVybFBhcnNpbmdOb2RlLmhhc2ggPyB1cmxQYXJzaW5nTm9kZS5oYXNoLnJlcGxhY2UoL14jLywgJycpIDogJycsXG4gICAgICAgIGhvc3RuYW1lOiB1cmxQYXJzaW5nTm9kZS5ob3N0bmFtZSxcbiAgICAgICAgcG9ydDogdXJsUGFyc2luZ05vZGUucG9ydCxcbiAgICAgICAgcGF0aG5hbWU6ICh1cmxQYXJzaW5nTm9kZS5wYXRobmFtZS5jaGFyQXQoMCkgPT09ICcvJykgP1xuICAgICAgICAgICAgICAgICAgdXJsUGFyc2luZ05vZGUucGF0aG5hbWUgOlxuICAgICAgICAgICAgICAgICAgJy8nICsgdXJsUGFyc2luZ05vZGUucGF0aG5hbWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgb3JpZ2luVVJMID0gcmVzb2x2ZVVSTCh3aW5kb3cubG9jYXRpb24uaHJlZik7XG5cbiAgICAvKipcbiAgICAqIERldGVybWluZSBpZiBhIFVSTCBzaGFyZXMgdGhlIHNhbWUgb3JpZ2luIGFzIHRoZSBjdXJyZW50IGxvY2F0aW9uXG4gICAgKlxuICAgICogQHBhcmFtIHtTdHJpbmd9IHJlcXVlc3RVUkwgVGhlIFVSTCB0byB0ZXN0XG4gICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBVUkwgc2hhcmVzIHRoZSBzYW1lIG9yaWdpbiwgb3RoZXJ3aXNlIGZhbHNlXG4gICAgKi9cbiAgICByZXR1cm4gZnVuY3Rpb24gaXNVUkxTYW1lT3JpZ2luKHJlcXVlc3RVUkwpIHtcbiAgICAgIHZhciBwYXJzZWQgPSAodXRpbHMuaXNTdHJpbmcocmVxdWVzdFVSTCkpID8gcmVzb2x2ZVVSTChyZXF1ZXN0VVJMKSA6IHJlcXVlc3RVUkw7XG4gICAgICByZXR1cm4gKHBhcnNlZC5wcm90b2NvbCA9PT0gb3JpZ2luVVJMLnByb3RvY29sICYmXG4gICAgICAgICAgICBwYXJzZWQuaG9zdCA9PT0gb3JpZ2luVVJMLmhvc3QpO1xuICAgIH07XG4gIH0pKCkgOlxuXG4gIC8vIE5vbiBzdGFuZGFyZCBicm93c2VyIGVudnMgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIGlzVVJMU2FtZU9yaWdpbigpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH07XG4gIH0pKClcbik7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc1VSTFNhbWVPcmlnaW4uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzVVJMU2FtZU9yaWdpbi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/isURLSameOrigin.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/normalizeHeaderName.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9ub3JtYWxpemVIZWFkZXJOYW1lLmpzP2U1NTQiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLi91dGlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIG5vcm1hbGl6ZUhlYWRlck5hbWUoaGVhZGVycywgbm9ybWFsaXplZE5hbWUpIHtcbiAgdXRpbHMuZm9yRWFjaChoZWFkZXJzLCBmdW5jdGlvbiBwcm9jZXNzSGVhZGVyKHZhbHVlLCBuYW1lKSB7XG4gICAgaWYgKG5hbWUgIT09IG5vcm1hbGl6ZWROYW1lICYmIG5hbWUudG9VcHBlckNhc2UoKSA9PT0gbm9ybWFsaXplZE5hbWUudG9VcHBlckNhc2UoKSkge1xuICAgICAgaGVhZGVyc1tub3JtYWxpemVkTmFtZV0gPSB2YWx1ZTtcbiAgICAgIGRlbGV0ZSBoZWFkZXJzW25hbWVdO1xuICAgIH1cbiAgfSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/normalizeHeaderName.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/parseHeaders.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvcGFyc2VIZWFkZXJzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qcz9hMDk5Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG4vLyBIZWFkZXJzIHdob3NlIGR1cGxpY2F0ZXMgYXJlIGlnbm9yZWQgYnkgbm9kZVxuLy8gYy5mLiBodHRwczovL25vZGVqcy5vcmcvYXBpL2h0dHAuaHRtbCNodHRwX21lc3NhZ2VfaGVhZGVyc1xudmFyIGlnbm9yZUR1cGxpY2F0ZU9mID0gW1xuICAnYWdlJywgJ2F1dGhvcml6YXRpb24nLCAnY29udGVudC1sZW5ndGgnLCAnY29udGVudC10eXBlJywgJ2V0YWcnLFxuICAnZXhwaXJlcycsICdmcm9tJywgJ2hvc3QnLCAnaWYtbW9kaWZpZWQtc2luY2UnLCAnaWYtdW5tb2RpZmllZC1zaW5jZScsXG4gICdsYXN0LW1vZGlmaWVkJywgJ2xvY2F0aW9uJywgJ21heC1mb3J3YXJkcycsICdwcm94eS1hdXRob3JpemF0aW9uJyxcbiAgJ3JlZmVyZXInLCAncmV0cnktYWZ0ZXInLCAndXNlci1hZ2VudCdcbl07XG5cbi8qKlxuICogUGFyc2UgaGVhZGVycyBpbnRvIGFuIG9iamVjdFxuICpcbiAqIGBgYFxuICogRGF0ZTogV2VkLCAyNyBBdWcgMjAxNCAwODo1ODo0OSBHTVRcbiAqIENvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvblxuICogQ29ubmVjdGlvbjoga2VlcC1hbGl2ZVxuICogVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWRcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBoZWFkZXJzIEhlYWRlcnMgbmVlZGluZyB0byBiZSBwYXJzZWRcbiAqIEByZXR1cm5zIHtPYmplY3R9IEhlYWRlcnMgcGFyc2VkIGludG8gYW4gb2JqZWN0XG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gcGFyc2VIZWFkZXJzKGhlYWRlcnMpIHtcbiAgdmFyIHBhcnNlZCA9IHt9O1xuICB2YXIga2V5O1xuICB2YXIgdmFsO1xuICB2YXIgaTtcblxuICBpZiAoIWhlYWRlcnMpIHsgcmV0dXJuIHBhcnNlZDsgfVxuXG4gIHV0aWxzLmZvckVhY2goaGVhZGVycy5zcGxpdCgnXFxuJyksIGZ1bmN0aW9uIHBhcnNlcihsaW5lKSB7XG4gICAgaSA9IGxpbmUuaW5kZXhPZignOicpO1xuICAgIGtleSA9IHV0aWxzLnRyaW0obGluZS5zdWJzdHIoMCwgaSkpLnRvTG93ZXJDYXNlKCk7XG4gICAgdmFsID0gdXRpbHMudHJpbShsaW5lLnN1YnN0cihpICsgMSkpO1xuXG4gICAgaWYgKGtleSkge1xuICAgICAgaWYgKHBhcnNlZFtrZXldICYmIGlnbm9yZUR1cGxpY2F0ZU9mLmluZGV4T2Yoa2V5KSA+PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChrZXkgPT09ICdzZXQtY29va2llJykge1xuICAgICAgICBwYXJzZWRba2V5XSA9IChwYXJzZWRba2V5XSA/IHBhcnNlZFtrZXldIDogW10pLmNvbmNhdChbdmFsXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYXJzZWRba2V5XSA9IHBhcnNlZFtrZXldID8gcGFyc2VkW2tleV0gKyAnLCAnICsgdmFsIDogdmFsO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHBhcnNlZDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9wYXJzZUhlYWRlcnMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/parseHeaders.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/helpers/spread.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3NwcmVhZC5qcz9hNzExIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBTeW50YWN0aWMgc3VnYXIgZm9yIGludm9raW5nIGEgZnVuY3Rpb24gYW5kIGV4cGFuZGluZyBhbiBhcnJheSBmb3IgYXJndW1lbnRzLlxuICpcbiAqIENvbW1vbiB1c2UgY2FzZSB3b3VsZCBiZSB0byB1c2UgYEZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseWAuXG4gKlxuICogIGBgYGpzXG4gKiAgZnVuY3Rpb24gZih4LCB5LCB6KSB7fVxuICogIHZhciBhcmdzID0gWzEsIDIsIDNdO1xuICogIGYuYXBwbHkobnVsbCwgYXJncyk7XG4gKiAgYGBgXG4gKlxuICogV2l0aCBgc3ByZWFkYCB0aGlzIGV4YW1wbGUgY2FuIGJlIHJlLXdyaXR0ZW4uXG4gKlxuICogIGBgYGpzXG4gKiAgc3ByZWFkKGZ1bmN0aW9uKHgsIHksIHopIHt9KShbMSwgMiwgM10pO1xuICogIGBgYFxuICpcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259XG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gc3ByZWFkKGNhbGxiYWNrKSB7XG4gIHJldHVybiBmdW5jdGlvbiB3cmFwKGFycikge1xuICAgIHJldHVybiBjYWxsYmFjay5hcHBseShudWxsLCBhcnIpO1xuICB9O1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3NwcmVhZC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/spread.js\n"); + +/***/ }), + +/***/ "./node_modules/axios/lib/utils.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("\n\nvar bind = __webpack_require__(\"./node_modules/axios/lib/helpers/bind.js\");\nvar isBuffer = __webpack_require__(\"./node_modules/is-buffer/index.js\");\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL3V0aWxzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi91dGlscy5qcz83MDYxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIGlzQnVmZmVyID0gcmVxdWlyZSgnaXMtYnVmZmVyJyk7XG5cbi8qZ2xvYmFsIHRvU3RyaW5nOnRydWUqL1xuXG4vLyB1dGlscyBpcyBhIGxpYnJhcnkgb2YgZ2VuZXJpYyBoZWxwZXIgZnVuY3Rpb25zIG5vbi1zcGVjaWZpYyB0byBheGlvc1xuXG52YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXksIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5QnVmZmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyKHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRm9ybURhdGFcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhbiBGb3JtRGF0YSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRm9ybURhdGEodmFsKSB7XG4gIHJldHVybiAodHlwZW9mIEZvcm1EYXRhICE9PSAndW5kZWZpbmVkJykgJiYgKHZhbCBpbnN0YW5jZW9mIEZvcm1EYXRhKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXJcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyVmlldyh2YWwpIHtcbiAgdmFyIHJlc3VsdDtcbiAgaWYgKCh0eXBlb2YgQXJyYXlCdWZmZXIgIT09ICd1bmRlZmluZWQnKSAmJiAoQXJyYXlCdWZmZXIuaXNWaWV3KSkge1xuICAgIHJlc3VsdCA9IEFycmF5QnVmZmVyLmlzVmlldyh2YWwpO1xuICB9IGVsc2Uge1xuICAgIHJlc3VsdCA9ICh2YWwpICYmICh2YWwuYnVmZmVyKSAmJiAodmFsLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgU3RyaW5nXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBTdHJpbmcsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1N0cmluZyh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgTnVtYmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBOdW1iZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc051bWJlcih2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIHVuZGVmaW5lZFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSB2YWx1ZSBpcyB1bmRlZmluZWQsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1VuZGVmaW5lZCh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIE9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGFuIE9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbCkge1xuICByZXR1cm4gdmFsICE9PSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRGF0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRGF0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRGF0ZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRGF0ZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRmlsZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRmlsZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRmlsZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRmlsZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgQmxvYlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgQmxvYiwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzQmxvYih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgQmxvYl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRnVuY3Rpb25cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIEZ1bmN0aW9uLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRnVuY3Rpb25dJztcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIFN0cmVhbVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgU3RyZWFtLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTdHJlYW0odmFsKSB7XG4gIHJldHVybiBpc09iamVjdCh2YWwpICYmIGlzRnVuY3Rpb24odmFsLnBpcGUpO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzVVJMU2VhcmNoUGFyYW1zKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIFVSTFNlYXJjaFBhcmFtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsIGluc3RhbmNlb2YgVVJMU2VhcmNoUGFyYW1zO1xufVxuXG4vKipcbiAqIFRyaW0gZXhjZXNzIHdoaXRlc3BhY2Ugb2ZmIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiBhIHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgVGhlIFN0cmluZyB0byB0cmltXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBUaGUgU3RyaW5nIGZyZWVkIG9mIGV4Y2VzcyB3aGl0ZXNwYWNlXG4gKi9cbmZ1bmN0aW9uIHRyaW0oc3RyKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvXlxccyovLCAnJykucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lIGlmIHdlJ3JlIHJ1bm5pbmcgaW4gYSBzdGFuZGFyZCBicm93c2VyIGVudmlyb25tZW50XG4gKlxuICogVGhpcyBhbGxvd3MgYXhpb3MgdG8gcnVuIGluIGEgd2ViIHdvcmtlciwgYW5kIHJlYWN0LW5hdGl2ZS5cbiAqIEJvdGggZW52aXJvbm1lbnRzIHN1cHBvcnQgWE1MSHR0cFJlcXVlc3QsIGJ1dCBub3QgZnVsbHkgc3RhbmRhcmQgZ2xvYmFscy5cbiAqXG4gKiB3ZWIgd29ya2VyczpcbiAqICB0eXBlb2Ygd2luZG93IC0+IHVuZGVmaW5lZFxuICogIHR5cGVvZiBkb2N1bWVudCAtPiB1bmRlZmluZWRcbiAqXG4gKiByZWFjdC1uYXRpdmU6XG4gKiAgbmF2aWdhdG9yLnByb2R1Y3QgLT4gJ1JlYWN0TmF0aXZlJ1xuICovXG5mdW5jdGlvbiBpc1N0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvci5wcm9kdWN0ID09PSAnUmVhY3ROYXRpdmUnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnXG4gICk7XG59XG5cbi8qKlxuICogSXRlcmF0ZSBvdmVyIGFuIEFycmF5IG9yIGFuIE9iamVjdCBpbnZva2luZyBhIGZ1bmN0aW9uIGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgYG9iamAgaXMgYW4gQXJyYXkgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgcGFzc2luZ1xuICogdGhlIHZhbHVlLCBpbmRleCwgYW5kIGNvbXBsZXRlIGFycmF5IGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgJ29iaicgaXMgYW4gT2JqZWN0IGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIHBhc3NpbmdcbiAqIHRoZSB2YWx1ZSwga2V5LCBhbmQgY29tcGxldGUgb2JqZWN0IGZvciBlYWNoIHByb3BlcnR5LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fEFycmF5fSBvYmogVGhlIG9iamVjdCB0byBpdGVyYXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgY2FsbGJhY2sgdG8gaW52b2tlIGZvciBlYWNoIGl0ZW1cbiAqL1xuZnVuY3Rpb24gZm9yRWFjaChvYmosIGZuKSB7XG4gIC8vIERvbid0IGJvdGhlciBpZiBubyB2YWx1ZSBwcm92aWRlZFxuICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy8gRm9yY2UgYW4gYXJyYXkgaWYgbm90IGFscmVhZHkgc29tZXRoaW5nIGl0ZXJhYmxlXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICAgIG9iaiA9IFtvYmpdO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkob2JqKSkge1xuICAgIC8vIEl0ZXJhdGUgb3ZlciBhcnJheSB2YWx1ZXNcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IG9iai5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGZuLmNhbGwobnVsbCwgb2JqW2ldLCBpLCBvYmopO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgb2JqZWN0IGtleXNcbiAgICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICBmbi5jYWxsKG51bGwsIG9ialtrZXldLCBrZXksIG9iaik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQWNjZXB0cyB2YXJhcmdzIGV4cGVjdGluZyBlYWNoIGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCwgdGhlblxuICogaW1tdXRhYmx5IG1lcmdlcyB0aGUgcHJvcGVydGllcyBvZiBlYWNoIG9iamVjdCBhbmQgcmV0dXJucyByZXN1bHQuXG4gKlxuICogV2hlbiBtdWx0aXBsZSBvYmplY3RzIGNvbnRhaW4gdGhlIHNhbWUga2V5IHRoZSBsYXRlciBvYmplY3QgaW5cbiAqIHRoZSBhcmd1bWVudHMgbGlzdCB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYGpzXG4gKiB2YXIgcmVzdWx0ID0gbWVyZ2Uoe2ZvbzogMTIzfSwge2ZvbzogNDU2fSk7XG4gKiBjb25zb2xlLmxvZyhyZXN1bHQuZm9vKTsgLy8gb3V0cHV0cyA0NTZcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmoxIE9iamVjdCB0byBtZXJnZVxuICogQHJldHVybnMge09iamVjdH0gUmVzdWx0IG9mIGFsbCBtZXJnZSBwcm9wZXJ0aWVzXG4gKi9cbmZ1bmN0aW9uIG1lcmdlKC8qIG9iajEsIG9iajIsIG9iajMsIC4uLiAqLykge1xuICB2YXIgcmVzdWx0ID0ge307XG4gIGZ1bmN0aW9uIGFzc2lnblZhbHVlKHZhbCwga2V5KSB7XG4gICAgaWYgKHR5cGVvZiByZXN1bHRba2V5XSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJlc3VsdFtrZXldID0gbWVyZ2UocmVzdWx0W2tleV0sIHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdFtrZXldID0gdmFsO1xuICAgIH1cbiAgfVxuXG4gIGZvciAodmFyIGkgPSAwLCBsID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGZvckVhY2goYXJndW1lbnRzW2ldLCBhc3NpZ25WYWx1ZSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBFeHRlbmRzIG9iamVjdCBhIGJ5IG11dGFibHkgYWRkaW5nIHRvIGl0IHRoZSBwcm9wZXJ0aWVzIG9mIG9iamVjdCBiLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhIFRoZSBvYmplY3QgdG8gYmUgZXh0ZW5kZWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBiIFRoZSBvYmplY3QgdG8gY29weSBwcm9wZXJ0aWVzIGZyb21cbiAqIEBwYXJhbSB7T2JqZWN0fSB0aGlzQXJnIFRoZSBvYmplY3QgdG8gYmluZCBmdW5jdGlvbiB0b1xuICogQHJldHVybiB7T2JqZWN0fSBUaGUgcmVzdWx0aW5nIHZhbHVlIG9mIG9iamVjdCBhXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZChhLCBiLCB0aGlzQXJnKSB7XG4gIGZvckVhY2goYiwgZnVuY3Rpb24gYXNzaWduVmFsdWUodmFsLCBrZXkpIHtcbiAgICBpZiAodGhpc0FyZyAmJiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBhW2tleV0gPSBiaW5kKHZhbCwgdGhpc0FyZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFba2V5XSA9IHZhbDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gYTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQXJyYXk6IGlzQXJyYXksXG4gIGlzQXJyYXlCdWZmZXI6IGlzQXJyYXlCdWZmZXIsXG4gIGlzQnVmZmVyOiBpc0J1ZmZlcixcbiAgaXNGb3JtRGF0YTogaXNGb3JtRGF0YSxcbiAgaXNBcnJheUJ1ZmZlclZpZXc6IGlzQXJyYXlCdWZmZXJWaWV3LFxuICBpc1N0cmluZzogaXNTdHJpbmcsXG4gIGlzTnVtYmVyOiBpc051bWJlcixcbiAgaXNPYmplY3Q6IGlzT2JqZWN0LFxuICBpc1VuZGVmaW5lZDogaXNVbmRlZmluZWQsXG4gIGlzRGF0ZTogaXNEYXRlLFxuICBpc0ZpbGU6IGlzRmlsZSxcbiAgaXNCbG9iOiBpc0Jsb2IsXG4gIGlzRnVuY3Rpb246IGlzRnVuY3Rpb24sXG4gIGlzU3RyZWFtOiBpc1N0cmVhbSxcbiAgaXNVUkxTZWFyY2hQYXJhbXM6IGlzVVJMU2VhcmNoUGFyYW1zLFxuICBpc1N0YW5kYXJkQnJvd3NlckVudjogaXNTdGFuZGFyZEJyb3dzZXJFbnYsXG4gIGZvckVhY2g6IGZvckVhY2gsXG4gIG1lcmdlOiBtZXJnZSxcbiAgZXh0ZW5kOiBleHRlbmQsXG4gIHRyaW06IHRyaW1cbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvdXRpbHMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi91dGlscy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/utils.js\n"); + +/***/ }), + /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue": /***/ (function(module, __webpack_exports__, __webpack_require__) { @@ -739,7 +938,7 @@ eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = __webpack_require__(\"./src/components/login/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__login_registerForm__ = __webpack_require__(\"./src/components/login/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */]\n\t},\n\tcomputed: {\n\t\tform: function () {\n\t\t\tif (this.isRegister) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */];\n\t\t\t} else {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */];\n\t\t\t}\n\t\t}\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCByb3cgd3JhcCBmaWxsLWhlaWdodD5cblx0XHQgIFx0PHYtZmxleCBsZzc+XG5cdFx0XHRcdDx2LWxheW91dCBhbGlnbi1jZW50ZXIganVzdGlmeS1jZW50ZXIgZmlsbC1oZWlnaHQ+XG5cdFx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCI+ZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb248L3A+XG5cdFx0XHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHQgIFx0XHRcdDwvZGl2PlxuXHRcdCAgXHRcdDwvdi1sYXlvdXQ+XG5cdFx0ICBcdDwvdi1mbGV4PlxuXHRcdCAgXHQ8di1mbGV4IGxnNSBjbGFzcz1cInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCI+XG5cdFx0XHRcdDx2LWxheW91dCByb3cgd3JhcD5cblx0XHRcdFx0XHQ8di1mbGV4IGxnNiA+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZFxuXHRcdFx0XHRcdFx0XHRmbGF0XG5cdFx0XHRcdFx0XHRcdGJsb2NrXG5cdFx0XHRcdFx0XHRcdDpyaXBwbGU9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdEBjbGljaz1cImlzUmVnaXN0ZXIgPSBmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdDpjbGFzcz1cInsnYW1iZXIgZGFya2VuLTMnOiAhaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6IGlzUmVnaXN0ZXJ9XCJcblx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0TG9nIEluXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHRcdDx2LWZsZXggbGc2ID5cblx0XHRcdFx0XHRcdDx2LWJ0biBcblx0XHRcdFx0XHRcdFx0ZGVwcmVzc2VkXG5cdFx0XHRcdFx0XHRcdGZsYXRcblx0XHRcdFx0XHRcdFx0YmxvY2tcblx0XHRcdFx0XHRcdFx0OnJpcHBsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRcdFx0QGNsaWNrPVwiaXNSZWdpc3RlciA9IHRydWVcIiBcblx0XHRcdFx0XHRcdFx0OmNsYXNzPVwieydhbWJlciBkYXJrZW4tMyc6IGlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiAhaXNSZWdpc3Rlcn1cIlxuXHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRSZWdpc3RlclxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0PC92LWxheW91dD5cblx0XHRcdFx0PGNvbXBvbmVudCA6aXM9XCJmb3JtXCI+XG5cdFx0XHRcdDwvY29tcG9uZW50PlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9sb2dpbi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRlbWFpbDogXCJcIixcblx0XHRcdFx0aXNSZWdpc3RlcjogZmFsc2UsXG5cdFx0XHRcdGNvbmZpcm1NYXRjaDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSxcblx0XHRjb21wb25lbnRzOiB7XG5cdFx0XHRsb2dpbkZvcm0sIHJlZ2lzdGVyRm9ybVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdGZvcm06IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGlmKHRoaXMuaXNSZWdpc3Rlcil7XG5cdFx0XHRcdFx0cmV0dXJuIHJlZ2lzdGVyRm9ybTtcblx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0cmV0dXJuIGxvZ2luRm9ybTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0d2F0Y2g6IHtcblx0XHRcdGlzUmVnaXN0ZXI6IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGNvbnNvbGUubG9nKHRoaXMuaXNSZWdpc3Rlcik7XG5cdFx0XHR9XG5cdFx0fSxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cblxuXHRidXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGhlaWdodDogNWVtO1xuXHR9XG5cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFLQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFQQTtBQVNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFwQkEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = __webpack_require__(\"./src/components/login/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__login_registerForm__ = __webpack_require__(\"./src/components/login/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */]\n\t},\n\tcomputed: {\n\t\tform: function () {\n\t\t\tif (this.isRegister) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */];\n\t\t\t} else {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */];\n\t\t\t}\n\t\t}\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCBcblx0XHRcdHJvdyB3cmFwIFxuXHRcdFx0ZmlsbC1oZWlnaHRcblx0XHQ+XG5cdFx0ICBcdDx2LWZsZXggbGc3PlxuXHRcdFx0XHQ8di1sYXlvdXQgXG5cdFx0XHRcdFx0YWxpZ24tY2VudGVyIFxuXHRcdFx0XHRcdGp1c3RpZnktY2VudGVyXG5cdFx0XHRcdFx0IGZpbGwtaGVpZ2h0XG5cdFx0XHRcdCA+XG5cdFx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCI+ZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb248L3A+XG5cdFx0XHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHQgIFx0XHRcdDwvZGl2PlxuXHRcdCAgXHRcdDwvdi1sYXlvdXQ+XG5cdFx0ICBcdDwvdi1mbGV4PlxuXHRcdCAgXHQ8di1mbGV4IFxuXHRcdCAgXHRcdGxnNSBcblx0XHQgIFx0XHRjbGFzcz1cInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCJcblx0ICBcdFx0PlxuXHRcdFx0XHQ8di1sYXlvdXQgXG5cdFx0XHRcdFx0cm93XG5cdFx0XHRcdFx0d3JhcFxuXHRcdFx0XHQ+XG5cdFx0XHRcdFx0PHYtZmxleCBsZzY+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZFxuXHRcdFx0XHRcdFx0XHRmbGF0XG5cdFx0XHRcdFx0XHRcdGJsb2NrXG5cdFx0XHRcdFx0XHRcdDpyaXBwbGU9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdEBjbGljaz1cImlzUmVnaXN0ZXIgPSBmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdDpjbGFzcz1cInsnYW1iZXIgZGFya2VuLTMnOiAhaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6IGlzUmVnaXN0ZXJ9XCJcblx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0TG9nIEluXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHRcdDx2LWZsZXggbGc2ID5cblx0XHRcdFx0XHRcdDx2LWJ0biBcblx0XHRcdFx0XHRcdFx0ZGVwcmVzc2VkXG5cdFx0XHRcdFx0XHRcdGZsYXRcblx0XHRcdFx0XHRcdFx0YmxvY2tcblx0XHRcdFx0XHRcdFx0OnJpcHBsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRcdFx0QGNsaWNrPVwiaXNSZWdpc3RlciA9IHRydWVcIiBcblx0XHRcdFx0XHRcdFx0OmNsYXNzPVwieydhbWJlciBkYXJrZW4tMyc6IGlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiAhaXNSZWdpc3Rlcn1cIlxuXHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRSZWdpc3RlclxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0PC92LWxheW91dD5cblx0XHRcdFx0PGNvbXBvbmVudCA6aXM9XCJmb3JtXCI+XG5cdFx0XHRcdDwvY29tcG9uZW50PlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9sb2dpbi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRlbWFpbDogXCJcIixcblx0XHRcdFx0aXNSZWdpc3RlcjogZmFsc2UsXG5cdFx0XHRcdGNvbmZpcm1NYXRjaDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSxcblx0XHRjb21wb25lbnRzOiB7XG5cdFx0XHRsb2dpbkZvcm0sIHJlZ2lzdGVyRm9ybVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdGZvcm06IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGlmKHRoaXMuaXNSZWdpc3Rlcil7XG5cdFx0XHRcdFx0cmV0dXJuIHJlZ2lzdGVyRm9ybTtcblx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0cmV0dXJuIGxvZ2luRm9ybTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0d2F0Y2g6IHtcblx0XHRcdGlzUmVnaXN0ZXI6IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGNvbnNvbGUubG9nKHRoaXMuaXNSZWdpc3Rlcik7XG5cdFx0XHR9XG5cdFx0fSxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cblxuXHRidXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGhlaWdodDogNWVtO1xuXHR9XG5cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBOERBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBS0E7QUFDQTtBQUNBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBUEE7QUFTQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBcEJBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -747,7 +946,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\"\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {}\n\t}\n\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInVzZXJuYW1lXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cIm5hbWVcIlxuXHRcdCAgbGFiZWw9XCJQYXNzd29yZFwiXG5cdFx0ICBpZD1cImlkXCJcblx0XHQgIHYtbW9kZWw9XCJwYXNzd29yZFwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LWJ0biBAY2xpY2s9XCJsb2dpblwiPlN1Ym1pdDwvdi1idG4+XG5cdDwvdi1mb3JtPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHR1c2VybmFtZTogXCJcIixcblx0XHRcdFx0cGFzc3dvcmQ6IFwiXCIsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdH1cblx0XHR9XG5cblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQ+XG5cdC5sb2dpbiB7XG5cdFx0cGFkZGluZzogMmVtO1xuXHR9XG48L3N0eWxlPlxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBsb2dpbkZvcm0udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUZBO0FBSUE7QUFDQTtBQUNBO0FBREE7QUFDQTtBQVRBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); +eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(\"./node_modules/axios/index.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie__ = __webpack_require__(\"./node_modules/js-cookie/src/js.cookie.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_js_cookie__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tname: \"\",\n\t\t\tpassword: \"\",\n\t\t\tvisible: false\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cIm5hbWVcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlBhc3N3b3JkXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInBhc3N3b3JkXCJcblx0XHQgIDphcHBlbmQtaWNvbj1cInZpc2libGUgPyAndmlzaWJpbGl0eV9vZmYnOiAndmlzaWJpbGl0eSdcIlxuICAgICAgICAgIDphcHBlbmQtaWNvbi1jYj1cIigpID0+ICh2aXNpYmxlID0gIXZpc2libGUpXCJcbiAgICAgICAgICA6dHlwZT1cInZpc2libGUgPyAndGV4dCc6ICdwYXNzd29yZCcgXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtYnRuIEBjbGljaz1cImxvZ2luXCI+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5cdGltcG9ydCBDb29raWVzIGZyb20gJ2pzLWNvb2tpZSdcblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRuYW1lOiBcIlwiLFxuXHRcdFx0XHRwYXNzd29yZDogXCJcIixcblx0XHRcdFx0dmlzaWJsZTogZmFsc2UsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cblx0LmxvZ2luIHtcblx0XHRwYWRkaW5nOiAyZW07XG5cdH1cbjwvc3R5bGU+XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIGxvZ2luRm9ybS52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0JBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBS0E7QUFDQTtBQUNBO0FBREE7QUFUQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -776,7 +975,7 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\nbutton[data-v-51b0eb09] {\\n padding: 0;\\n margin: 0;\\n height: 5em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AAkFA;EACC,WAAU;EACV,UAAS;EACT,YAAW;CACX\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\theight: 5em;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYnV0dG9uW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbjogMDtcXG4gIGhlaWdodDogNWVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBa0ZBO0VBQ0MsV0FBVTtFQUNWLFVBQVM7RUFDVCxZQUFXO0NBQ1hcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5idXR0b24ge1xcblxcdHBhZGRpbmc6IDA7XFxuXFx0bWFyZ2luOiAwO1xcblxcdGhlaWdodDogNWVtO1xcbn1cXG5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\nbutton[data-v-51b0eb09] {\\n padding: 0;\\n margin: 0;\\n height: 5em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA+FA;EACC,WAAU;EACV,UAAS;EACT,YAAW;CACX\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\theight: 5em;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYnV0dG9uW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbjogMDtcXG4gIGhlaWdodDogNWVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBK0ZBO0VBQ0MsV0FBVTtFQUNWLFVBQVM7RUFDVCxZQUFXO0NBQ1hcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5idXR0b24ge1xcblxcdHBhZGRpbmc6IDA7XFxuXFx0bWFyZ2luOiAwO1xcblxcdGhlaWdodDogNWVtO1xcbn1cXG5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); /***/ }), @@ -790,7 +989,7 @@ eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader /***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue": /***/ (function(module, exports, __webpack_require__) { -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AAoCA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFvQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcIm5hbWVcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiUGFzc3dvcmRcXFwiXFxuXFx0XFx0ICBpZD1cXFwiaWRcXFwiXFxuXFx0XFx0ICB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuIEBjbGljaz1cXFwibG9naW5cXFwiPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fSxcXG5cXHRcXHRtZXRob2RzOiB7XFxuXFx0XFx0XFx0bG9naW46IGZ1bmN0aW9uKCl7XFxuXFx0XFx0XFx0fVxcblxcdFxcdH1cXG5cXG5cXHR9XFxuPC9zY3JpcHQ+XFxuXFxuPHN0eWxlIHNjb3BlZD5cXG5cXHQubG9naW4ge1xcblxcdFxcdHBhZGRpbmc6IDJlbTtcXG5cXHR9XFxuPC9zdHlsZT5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); +eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AA0CA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUEwQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwibmFtZVxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwibmFtZVxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJQYXNzd29yZFxcXCJcXG5cXHRcXHQgIGlkPVxcXCJpZFxcXCJcXG5cXHRcXHQgIHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIlxcblxcdFxcdCAgOmFwcGVuZC1pY29uPVxcXCJ2aXNpYmxlID8gJ3Zpc2liaWxpdHlfb2ZmJzogJ3Zpc2liaWxpdHknXFxcIlxcbiAgICAgICAgICA6YXBwZW5kLWljb24tY2I9XFxcIigpID0+ICh2aXNpYmxlID0gIXZpc2libGUpXFxcIlxcbiAgICAgICAgICA6dHlwZT1cXFwidmlzaWJsZSA/ICd0ZXh0JzogJ3Bhc3N3b3JkJyBcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LWJ0biBAY2xpY2s9XFxcImxvZ2luXFxcIj5TdWJtaXQ8L3YtYnRuPlxcblxcdDwvdi1mb3JtPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXFxuXFx0aW1wb3J0IENvb2tpZXMgZnJvbSAnanMtY29va2llJ1xcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0bmFtZTogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0cGFzc3dvcmQ6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHZpc2libGU6IGZhbHNlLFxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjogZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fVxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -801,6 +1000,35 @@ eval("/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAu /***/ }), +/***/ "./node_modules/is-buffer/index.js": +/***/ (function(module, exports) { + +eval("/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2lzLWJ1ZmZlci9pbmRleC5qcz80NWVkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogRGV0ZXJtaW5lIGlmIGFuIG9iamVjdCBpcyBhIEJ1ZmZlclxuICpcbiAqIEBhdXRob3IgICBGZXJvc3MgQWJvdWtoYWRpamVoIDxodHRwczovL2Zlcm9zcy5vcmc+XG4gKiBAbGljZW5zZSAgTUlUXG4gKi9cblxuLy8gVGhlIF9pc0J1ZmZlciBjaGVjayBpcyBmb3IgU2FmYXJpIDUtNyBzdXBwb3J0LCBiZWNhdXNlIGl0J3MgbWlzc2luZ1xuLy8gT2JqZWN0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvci4gUmVtb3ZlIHRoaXMgZXZlbnR1YWxseVxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob2JqKSB7XG4gIHJldHVybiBvYmogIT0gbnVsbCAmJiAoaXNCdWZmZXIob2JqKSB8fCBpc1Nsb3dCdWZmZXIob2JqKSB8fCAhIW9iai5faXNCdWZmZXIpXG59XG5cbmZ1bmN0aW9uIGlzQnVmZmVyIChvYmopIHtcbiAgcmV0dXJuICEhb2JqLmNvbnN0cnVjdG9yICYmIHR5cGVvZiBvYmouY29uc3RydWN0b3IuaXNCdWZmZXIgPT09ICdmdW5jdGlvbicgJiYgb2JqLmNvbnN0cnVjdG9yLmlzQnVmZmVyKG9iailcbn1cblxuLy8gRm9yIE5vZGUgdjAuMTAgc3VwcG9ydC4gUmVtb3ZlIHRoaXMgZXZlbnR1YWxseS5cbmZ1bmN0aW9uIGlzU2xvd0J1ZmZlciAob2JqKSB7XG4gIHJldHVybiB0eXBlb2Ygb2JqLnJlYWRGbG9hdExFID09PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBvYmouc2xpY2UgPT09ICdmdW5jdGlvbicgJiYgaXNCdWZmZXIob2JqLnNsaWNlKDAsIDApKVxufVxuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9pcy1idWZmZXIvaW5kZXguanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/is-buffer/index.js\n"); + +/***/ }), + +/***/ "./node_modules/js-cookie/src/js.cookie.js": +/***/ (function(module, exports, __webpack_require__) { + +eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * JavaScript Cookie v2.2.0\n * https://github.com/js-cookie/js-cookie\n *\n * Copyright 2006, 2015 Klaus Hartl & Fagner Brack\n * Released under the MIT license\n */\n;(function (factory) {\n\tvar registeredInModuleLoader = false;\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (true) {\n\t\tmodule.exports = factory();\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (!registeredInModuleLoader) {\n\t\tvar OldCookies = window.Cookies;\n\t\tvar api = window.Cookies = factory();\n\t\tapi.noConflict = function () {\n\t\t\twindow.Cookies = OldCookies;\n\t\t\treturn api;\n\t\t};\n\t}\n}(function () {\n\tfunction extend () {\n\t\tvar i = 0;\n\t\tvar result = {};\n\t\tfor (; i < arguments.length; i++) {\n\t\t\tvar attributes = arguments[ i ];\n\t\t\tfor (var key in attributes) {\n\t\t\t\tresult[key] = attributes[key];\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tfunction init (converter) {\n\t\tfunction api (key, value, attributes) {\n\t\t\tvar result;\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Write\n\n\t\t\tif (arguments.length > 1) {\n\t\t\t\tattributes = extend({\n\t\t\t\t\tpath: '/'\n\t\t\t\t}, api.defaults, attributes);\n\n\t\t\t\tif (typeof attributes.expires === 'number') {\n\t\t\t\t\tvar expires = new Date();\n\t\t\t\t\texpires.setMilliseconds(expires.getMilliseconds() + attributes.expires * 864e+5);\n\t\t\t\t\tattributes.expires = expires;\n\t\t\t\t}\n\n\t\t\t\t// We're using \"expires\" because \"max-age\" is not supported by IE\n\t\t\t\tattributes.expires = attributes.expires ? attributes.expires.toUTCString() : '';\n\n\t\t\t\ttry {\n\t\t\t\t\tresult = JSON.stringify(value);\n\t\t\t\t\tif (/^[\\{\\[]/.test(result)) {\n\t\t\t\t\t\tvalue = result;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\n\t\t\t\tif (!converter.write) {\n\t\t\t\t\tvalue = encodeURIComponent(String(value))\n\t\t\t\t\t\t.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);\n\t\t\t\t} else {\n\t\t\t\t\tvalue = converter.write(value, key);\n\t\t\t\t}\n\n\t\t\t\tkey = encodeURIComponent(String(key));\n\t\t\t\tkey = key.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent);\n\t\t\t\tkey = key.replace(/[\\(\\)]/g, escape);\n\n\t\t\t\tvar stringifiedAttributes = '';\n\n\t\t\t\tfor (var attributeName in attributes) {\n\t\t\t\t\tif (!attributes[attributeName]) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tstringifiedAttributes += '; ' + attributeName;\n\t\t\t\t\tif (attributes[attributeName] === true) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tstringifiedAttributes += '=' + attributes[attributeName];\n\t\t\t\t}\n\t\t\t\treturn (document.cookie = key + '=' + value + stringifiedAttributes);\n\t\t\t}\n\n\t\t\t// Read\n\n\t\t\tif (!key) {\n\t\t\t\tresult = {};\n\t\t\t}\n\n\t\t\t// To prevent the for loop in the first place assign an empty array\n\t\t\t// in case there are no cookies at all. Also prevents odd result when\n\t\t\t// calling \"get()\"\n\t\t\tvar cookies = document.cookie ? document.cookie.split('; ') : [];\n\t\t\tvar rdecode = /(%[0-9A-Z]{2})+/g;\n\t\t\tvar i = 0;\n\n\t\t\tfor (; i < cookies.length; i++) {\n\t\t\t\tvar parts = cookies[i].split('=');\n\t\t\t\tvar cookie = parts.slice(1).join('=');\n\n\t\t\t\tif (!this.json && cookie.charAt(0) === '\"') {\n\t\t\t\t\tcookie = cookie.slice(1, -1);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvar name = parts[0].replace(rdecode, decodeURIComponent);\n\t\t\t\t\tcookie = converter.read ?\n\t\t\t\t\t\tconverter.read(cookie, name) : converter(cookie, name) ||\n\t\t\t\t\t\tcookie.replace(rdecode, decodeURIComponent);\n\n\t\t\t\t\tif (this.json) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tcookie = JSON.parse(cookie);\n\t\t\t\t\t\t} catch (e) {}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (key === name) {\n\t\t\t\t\t\tresult = cookie;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!key) {\n\t\t\t\t\t\tresult[name] = cookie;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\n\t\tapi.set = api;\n\t\tapi.get = function (key) {\n\t\t\treturn api.call(api, key);\n\t\t};\n\t\tapi.getJSON = function () {\n\t\t\treturn api.apply({\n\t\t\t\tjson: true\n\t\t\t}, [].slice.call(arguments));\n\t\t};\n\t\tapi.defaults = {};\n\n\t\tapi.remove = function (key, attributes) {\n\t\t\tapi(key, '', extend(attributes, {\n\t\t\t\texpires: -1\n\t\t\t}));\n\t\t};\n\n\t\tapi.withConverter = init;\n\n\t\treturn api;\n\t}\n\n\treturn init(function () {});\n}));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvanMtY29va2llL3NyYy9qcy5jb29raWUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvanMtY29va2llL3NyYy9qcy5jb29raWUuanM/OTViMSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEphdmFTY3JpcHQgQ29va2llIHYyLjIuMFxuICogaHR0cHM6Ly9naXRodWIuY29tL2pzLWNvb2tpZS9qcy1jb29raWVcbiAqXG4gKiBDb3B5cmlnaHQgMjAwNiwgMjAxNSBLbGF1cyBIYXJ0bCAmIEZhZ25lciBCcmFja1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKi9cbjsoZnVuY3Rpb24gKGZhY3RvcnkpIHtcblx0dmFyIHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IGZhbHNlO1xuXHRpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKSB7XG5cdFx0ZGVmaW5lKGZhY3RvcnkpO1xuXHRcdHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IHRydWU7XG5cdH1cblx0aWYgKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jykge1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRcdHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IHRydWU7XG5cdH1cblx0aWYgKCFyZWdpc3RlcmVkSW5Nb2R1bGVMb2FkZXIpIHtcblx0XHR2YXIgT2xkQ29va2llcyA9IHdpbmRvdy5Db29raWVzO1xuXHRcdHZhciBhcGkgPSB3aW5kb3cuQ29va2llcyA9IGZhY3RvcnkoKTtcblx0XHRhcGkubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcblx0XHRcdHdpbmRvdy5Db29raWVzID0gT2xkQ29va2llcztcblx0XHRcdHJldHVybiBhcGk7XG5cdFx0fTtcblx0fVxufShmdW5jdGlvbiAoKSB7XG5cdGZ1bmN0aW9uIGV4dGVuZCAoKSB7XG5cdFx0dmFyIGkgPSAwO1xuXHRcdHZhciByZXN1bHQgPSB7fTtcblx0XHRmb3IgKDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGF0dHJpYnV0ZXMgPSBhcmd1bWVudHNbIGkgXTtcblx0XHRcdGZvciAodmFyIGtleSBpbiBhdHRyaWJ1dGVzKSB7XG5cdFx0XHRcdHJlc3VsdFtrZXldID0gYXR0cmlidXRlc1trZXldO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0ZnVuY3Rpb24gaW5pdCAoY29udmVydGVyKSB7XG5cdFx0ZnVuY3Rpb24gYXBpIChrZXksIHZhbHVlLCBhdHRyaWJ1dGVzKSB7XG5cdFx0XHR2YXIgcmVzdWx0O1xuXHRcdFx0aWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBXcml0ZVxuXG5cdFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA+IDEpIHtcblx0XHRcdFx0YXR0cmlidXRlcyA9IGV4dGVuZCh7XG5cdFx0XHRcdFx0cGF0aDogJy8nXG5cdFx0XHRcdH0sIGFwaS5kZWZhdWx0cywgYXR0cmlidXRlcyk7XG5cblx0XHRcdFx0aWYgKHR5cGVvZiBhdHRyaWJ1dGVzLmV4cGlyZXMgPT09ICdudW1iZXInKSB7XG5cdFx0XHRcdFx0dmFyIGV4cGlyZXMgPSBuZXcgRGF0ZSgpO1xuXHRcdFx0XHRcdGV4cGlyZXMuc2V0TWlsbGlzZWNvbmRzKGV4cGlyZXMuZ2V0TWlsbGlzZWNvbmRzKCkgKyBhdHRyaWJ1dGVzLmV4cGlyZXMgKiA4NjRlKzUpO1xuXHRcdFx0XHRcdGF0dHJpYnV0ZXMuZXhwaXJlcyA9IGV4cGlyZXM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBXZSdyZSB1c2luZyBcImV4cGlyZXNcIiBiZWNhdXNlIFwibWF4LWFnZVwiIGlzIG5vdCBzdXBwb3J0ZWQgYnkgSUVcblx0XHRcdFx0YXR0cmlidXRlcy5leHBpcmVzID0gYXR0cmlidXRlcy5leHBpcmVzID8gYXR0cmlidXRlcy5leHBpcmVzLnRvVVRDU3RyaW5nKCkgOiAnJztcblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHJlc3VsdCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcblx0XHRcdFx0XHRpZiAoL15bXFx7XFxbXS8udGVzdChyZXN1bHQpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IHJlc3VsdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cblx0XHRcdFx0aWYgKCFjb252ZXJ0ZXIud3JpdGUpIHtcblx0XHRcdFx0XHR2YWx1ZSA9IGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcodmFsdWUpKVxuXHRcdFx0XHRcdFx0LnJlcGxhY2UoLyUoMjN8MjR8MjZ8MkJ8M0F8M0N8M0V8M0R8MkZ8M0Z8NDB8NUJ8NUR8NUV8NjB8N0J8N0R8N0MpL2csIGRlY29kZVVSSUNvbXBvbmVudCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dmFsdWUgPSBjb252ZXJ0ZXIud3JpdGUodmFsdWUsIGtleSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRrZXkgPSBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGtleSkpO1xuXHRcdFx0XHRrZXkgPSBrZXkucmVwbGFjZSgvJSgyM3wyNHwyNnwyQnw1RXw2MHw3QykvZywgZGVjb2RlVVJJQ29tcG9uZW50KTtcblx0XHRcdFx0a2V5ID0ga2V5LnJlcGxhY2UoL1tcXChcXCldL2csIGVzY2FwZSk7XG5cblx0XHRcdFx0dmFyIHN0cmluZ2lmaWVkQXR0cmlidXRlcyA9ICcnO1xuXG5cdFx0XHRcdGZvciAodmFyIGF0dHJpYnV0ZU5hbWUgaW4gYXR0cmlidXRlcykge1xuXHRcdFx0XHRcdGlmICghYXR0cmlidXRlc1thdHRyaWJ1dGVOYW1lXSkge1xuXHRcdFx0XHRcdFx0Y29udGludWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHN0cmluZ2lmaWVkQXR0cmlidXRlcyArPSAnOyAnICsgYXR0cmlidXRlTmFtZTtcblx0XHRcdFx0XHRpZiAoYXR0cmlidXRlc1thdHRyaWJ1dGVOYW1lXSA9PT0gdHJ1ZSkge1xuXHRcdFx0XHRcdFx0Y29udGludWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHN0cmluZ2lmaWVkQXR0cmlidXRlcyArPSAnPScgKyBhdHRyaWJ1dGVzW2F0dHJpYnV0ZU5hbWVdO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiAoZG9jdW1lbnQuY29va2llID0ga2V5ICsgJz0nICsgdmFsdWUgKyBzdHJpbmdpZmllZEF0dHJpYnV0ZXMpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBSZWFkXG5cblx0XHRcdGlmICgha2V5KSB7XG5cdFx0XHRcdHJlc3VsdCA9IHt9O1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUbyBwcmV2ZW50IHRoZSBmb3IgbG9vcCBpbiB0aGUgZmlyc3QgcGxhY2UgYXNzaWduIGFuIGVtcHR5IGFycmF5XG5cdFx0XHQvLyBpbiBjYXNlIHRoZXJlIGFyZSBubyBjb29raWVzIGF0IGFsbC4gQWxzbyBwcmV2ZW50cyBvZGQgcmVzdWx0IHdoZW5cblx0XHRcdC8vIGNhbGxpbmcgXCJnZXQoKVwiXG5cdFx0XHR2YXIgY29va2llcyA9IGRvY3VtZW50LmNvb2tpZSA/IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOyAnKSA6IFtdO1xuXHRcdFx0dmFyIHJkZWNvZGUgPSAvKCVbMC05QS1aXXsyfSkrL2c7XG5cdFx0XHR2YXIgaSA9IDA7XG5cblx0XHRcdGZvciAoOyBpIDwgY29va2llcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0XHR2YXIgcGFydHMgPSBjb29raWVzW2ldLnNwbGl0KCc9Jyk7XG5cdFx0XHRcdHZhciBjb29raWUgPSBwYXJ0cy5zbGljZSgxKS5qb2luKCc9Jyk7XG5cblx0XHRcdFx0aWYgKCF0aGlzLmpzb24gJiYgY29va2llLmNoYXJBdCgwKSA9PT0gJ1wiJykge1xuXHRcdFx0XHRcdGNvb2tpZSA9IGNvb2tpZS5zbGljZSgxLCAtMSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHZhciBuYW1lID0gcGFydHNbMF0ucmVwbGFjZShyZGVjb2RlLCBkZWNvZGVVUklDb21wb25lbnQpO1xuXHRcdFx0XHRcdGNvb2tpZSA9IGNvbnZlcnRlci5yZWFkID9cblx0XHRcdFx0XHRcdGNvbnZlcnRlci5yZWFkKGNvb2tpZSwgbmFtZSkgOiBjb252ZXJ0ZXIoY29va2llLCBuYW1lKSB8fFxuXHRcdFx0XHRcdFx0Y29va2llLnJlcGxhY2UocmRlY29kZSwgZGVjb2RlVVJJQ29tcG9uZW50KTtcblxuXHRcdFx0XHRcdGlmICh0aGlzLmpzb24pIHtcblx0XHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRcdGNvb2tpZSA9IEpTT04ucGFyc2UoY29va2llKTtcblx0XHRcdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKGtleSA9PT0gbmFtZSkge1xuXHRcdFx0XHRcdFx0cmVzdWx0ID0gY29va2llO1xuXHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKCFrZXkpIHtcblx0XHRcdFx0XHRcdHJlc3VsdFtuYW1lXSA9IGNvb2tpZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiByZXN1bHQ7XG5cdFx0fVxuXG5cdFx0YXBpLnNldCA9IGFwaTtcblx0XHRhcGkuZ2V0ID0gZnVuY3Rpb24gKGtleSkge1xuXHRcdFx0cmV0dXJuIGFwaS5jYWxsKGFwaSwga2V5KTtcblx0XHR9O1xuXHRcdGFwaS5nZXRKU09OID0gZnVuY3Rpb24gKCkge1xuXHRcdFx0cmV0dXJuIGFwaS5hcHBseSh7XG5cdFx0XHRcdGpzb246IHRydWVcblx0XHRcdH0sIFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzKSk7XG5cdFx0fTtcblx0XHRhcGkuZGVmYXVsdHMgPSB7fTtcblxuXHRcdGFwaS5yZW1vdmUgPSBmdW5jdGlvbiAoa2V5LCBhdHRyaWJ1dGVzKSB7XG5cdFx0XHRhcGkoa2V5LCAnJywgZXh0ZW5kKGF0dHJpYnV0ZXMsIHtcblx0XHRcdFx0ZXhwaXJlczogLTFcblx0XHRcdH0pKTtcblx0XHR9O1xuXG5cdFx0YXBpLndpdGhDb252ZXJ0ZXIgPSBpbml0O1xuXG5cdFx0cmV0dXJuIGFwaTtcblx0fVxuXG5cdHJldHVybiBpbml0KGZ1bmN0aW9uICgpIHt9KTtcbn0pKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2pzLWNvb2tpZS9zcmMvanMuY29va2llLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9qcy1jb29raWUvc3JjL2pzLmNvb2tpZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/js-cookie/src/js.cookie.js\n"); + +/***/ }), + +/***/ "./node_modules/process/browser.js": +/***/ (function(module, exports) { + +eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcHJvY2Vzcy9icm93c2VyLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Byb2Nlc3MvYnJvd3Nlci5qcz81YjY5Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIHNoaW0gZm9yIHVzaW5nIHByb2Nlc3MgaW4gYnJvd3NlclxudmFyIHByb2Nlc3MgPSBtb2R1bGUuZXhwb3J0cyA9IHt9O1xuXG4vLyBjYWNoZWQgZnJvbSB3aGF0ZXZlciBnbG9iYWwgaXMgcHJlc2VudCBzbyB0aGF0IHRlc3QgcnVubmVycyB0aGF0IHN0dWIgaXRcbi8vIGRvbid0IGJyZWFrIHRoaW5ncy4gIEJ1dCB3ZSBuZWVkIHRvIHdyYXAgaXQgaW4gYSB0cnkgY2F0Y2ggaW4gY2FzZSBpdCBpc1xuLy8gd3JhcHBlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIHdoaWNoIGRvZXNuJ3QgZGVmaW5lIGFueSBnbG9iYWxzLiAgSXQncyBpbnNpZGUgYVxuLy8gZnVuY3Rpb24gYmVjYXVzZSB0cnkvY2F0Y2hlcyBkZW9wdGltaXplIGluIGNlcnRhaW4gZW5naW5lcy5cblxudmFyIGNhY2hlZFNldFRpbWVvdXQ7XG52YXIgY2FjaGVkQ2xlYXJUaW1lb3V0O1xuXG5mdW5jdGlvbiBkZWZhdWx0U2V0VGltb3V0KCkge1xuICAgIHRocm93IG5ldyBFcnJvcignc2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCcpO1xufVxuZnVuY3Rpb24gZGVmYXVsdENsZWFyVGltZW91dCAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbihmdW5jdGlvbiAoKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzZXRUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBkZWZhdWx0U2V0VGltb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbGVhclRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgfVxufSAoKSlcbmZ1bmN0aW9uIHJ1blRpbWVvdXQoZnVuKSB7XG4gICAgaWYgKGNhY2hlZFNldFRpbWVvdXQgPT09IHNldFRpbWVvdXQpIHtcbiAgICAgICAgLy9ub3JtYWwgZW52aXJvbWVudHMgaW4gc2FuZSBzaXR1YXRpb25zXG4gICAgICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfVxuICAgIC8vIGlmIHNldFRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRTZXRUaW1lb3V0ID09PSBkZWZhdWx0U2V0VGltb3V0IHx8ICFjYWNoZWRTZXRUaW1lb3V0KSAmJiBzZXRUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBzZXRUaW1lb3V0O1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfSBjYXRjaChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZFNldFRpbWVvdXQuY2FsbChudWxsLCBmdW4sIDApO1xuICAgICAgICB9IGNhdGNoKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3JcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwodGhpcywgZnVuLCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5mdW5jdGlvbiBydW5DbGVhclRpbWVvdXQobWFya2VyKSB7XG4gICAgaWYgKGNhY2hlZENsZWFyVGltZW91dCA9PT0gY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIC8vIGlmIGNsZWFyVGltZW91dCB3YXNuJ3QgYXZhaWxhYmxlIGJ1dCB3YXMgbGF0dGVyIGRlZmluZWRcbiAgICBpZiAoKGNhY2hlZENsZWFyVGltZW91dCA9PT0gZGVmYXVsdENsZWFyVGltZW91dCB8fCAhY2FjaGVkQ2xlYXJUaW1lb3V0KSAmJiBjbGVhclRpbWVvdXQpIHtcbiAgICAgICAgY2FjaGVkQ2xlYXJUaW1lb3V0ID0gY2xlYXJUaW1lb3V0O1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIC8vIHdoZW4gd2hlbiBzb21lYm9keSBoYXMgc2NyZXdlZCB3aXRoIHNldFRpbWVvdXQgYnV0IG5vIEkuRS4gbWFkZG5lc3NcbiAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gV2hlbiB3ZSBhcmUgaW4gSS5FLiBidXQgdGhlIHNjcmlwdCBoYXMgYmVlbiBldmFsZWQgc28gSS5FLiBkb2Vzbid0ICB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKG51bGwsIG1hcmtlcik7XG4gICAgICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3IuXG4gICAgICAgICAgICAvLyBTb21lIHZlcnNpb25zIG9mIEkuRS4gaGF2ZSBkaWZmZXJlbnQgcnVsZXMgZm9yIGNsZWFyVGltZW91dCB2cyBzZXRUaW1lb3V0XG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkQ2xlYXJUaW1lb3V0LmNhbGwodGhpcywgbWFya2VyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbn1cbnZhciBxdWV1ZSA9IFtdO1xudmFyIGRyYWluaW5nID0gZmFsc2U7XG52YXIgY3VycmVudFF1ZXVlO1xudmFyIHF1ZXVlSW5kZXggPSAtMTtcblxuZnVuY3Rpb24gY2xlYW5VcE5leHRUaWNrKCkge1xuICAgIGlmICghZHJhaW5pbmcgfHwgIWN1cnJlbnRRdWV1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRyYWluaW5nID0gZmFsc2U7XG4gICAgaWYgKGN1cnJlbnRRdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgcXVldWUgPSBjdXJyZW50UXVldWUuY29uY2F0KHF1ZXVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgfVxuICAgIGlmIChxdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgZHJhaW5RdWV1ZSgpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZHJhaW5RdWV1ZSgpIHtcbiAgICBpZiAoZHJhaW5pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdGltZW91dCA9IHJ1blRpbWVvdXQoY2xlYW5VcE5leHRUaWNrKTtcbiAgICBkcmFpbmluZyA9IHRydWU7XG5cbiAgICB2YXIgbGVuID0gcXVldWUubGVuZ3RoO1xuICAgIHdoaWxlKGxlbikge1xuICAgICAgICBjdXJyZW50UXVldWUgPSBxdWV1ZTtcbiAgICAgICAgcXVldWUgPSBbXTtcbiAgICAgICAgd2hpbGUgKCsrcXVldWVJbmRleCA8IGxlbikge1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRRdWV1ZSkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRRdWV1ZVtxdWV1ZUluZGV4XS5ydW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgICAgIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB9XG4gICAgY3VycmVudFF1ZXVlID0gbnVsbDtcbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIHJ1bkNsZWFyVGltZW91dCh0aW1lb3V0KTtcbn1cblxucHJvY2Vzcy5uZXh0VGljayA9IGZ1bmN0aW9uIChmdW4pIHtcbiAgICB2YXIgYXJncyA9IG5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoIC0gMSk7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhcmdzW2kgLSAxXSA9IGFyZ3VtZW50c1tpXTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBxdWV1ZS5wdXNoKG5ldyBJdGVtKGZ1biwgYXJncykpO1xuICAgIGlmIChxdWV1ZS5sZW5ndGggPT09IDEgJiYgIWRyYWluaW5nKSB7XG4gICAgICAgIHJ1blRpbWVvdXQoZHJhaW5RdWV1ZSk7XG4gICAgfVxufTtcblxuLy8gdjggbGlrZXMgcHJlZGljdGlibGUgb2JqZWN0c1xuZnVuY3Rpb24gSXRlbShmdW4sIGFycmF5KSB7XG4gICAgdGhpcy5mdW4gPSBmdW47XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xufVxuSXRlbS5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuZnVuLmFwcGx5KG51bGwsIHRoaXMuYXJyYXkpO1xufTtcbnByb2Nlc3MudGl0bGUgPSAnYnJvd3Nlcic7XG5wcm9jZXNzLmJyb3dzZXIgPSB0cnVlO1xucHJvY2Vzcy5lbnYgPSB7fTtcbnByb2Nlc3MuYXJndiA9IFtdO1xucHJvY2Vzcy52ZXJzaW9uID0gJyc7IC8vIGVtcHR5IHN0cmluZyB0byBhdm9pZCByZWdleHAgaXNzdWVzXG5wcm9jZXNzLnZlcnNpb25zID0ge307XG5cbmZ1bmN0aW9uIG5vb3AoKSB7fVxuXG5wcm9jZXNzLm9uID0gbm9vcDtcbnByb2Nlc3MuYWRkTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5vbmNlID0gbm9vcDtcbnByb2Nlc3Mub2ZmID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5yZW1vdmVBbGxMaXN0ZW5lcnMgPSBub29wO1xucHJvY2Vzcy5lbWl0ID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZE9uY2VMaXN0ZW5lciA9IG5vb3A7XG5cbnByb2Nlc3MubGlzdGVuZXJzID0gZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIFtdIH1cblxucHJvY2Vzcy5iaW5kaW5nID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkJyk7XG59O1xuXG5wcm9jZXNzLmN3ZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuICcvJyB9O1xucHJvY2Vzcy5jaGRpciA9IGZ1bmN0aW9uIChkaXIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuY2hkaXIgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcbnByb2Nlc3MudW1hc2sgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDA7IH07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Byb2Nlc3MvYnJvd3Nlci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/process/browser.js\n"); + +/***/ }), + +/***/ "./node_modules/vue-axios/dist/vue-axios.min.js": +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&\"function\"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?\"symbol\":typeof o};!function(){function o(e,t){if(!o.installed){if(o.installed=!0,!t)return void console.error(\"You have to install axios\");e.axios=t,Object.defineProperties(e.prototype,{axios:{get:function(){return t}},$http:{get:function(){return t}}})}}\"object\"==( false?\"undefined\":_typeof(exports))?module.exports=o: true?!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function(){return o}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)):window.Vue&&window.axios&&Vue.use(o,window.axios)}();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtYXhpb3MvZGlzdC92dWUtYXhpb3MubWluLmpzPzQ1ZmYiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7dmFyIF90eXBlb2Y9XCJmdW5jdGlvblwiPT10eXBlb2YgU3ltYm9sJiZcInN5bWJvbFwiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKG8pe3JldHVybiB0eXBlb2Ygb306ZnVuY3Rpb24obyl7cmV0dXJuIG8mJlwiZnVuY3Rpb25cIj09dHlwZW9mIFN5bWJvbCYmby5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmbyE9PVN5bWJvbC5wcm90b3R5cGU/XCJzeW1ib2xcIjp0eXBlb2Ygb307IWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbyhlLHQpe2lmKCFvLmluc3RhbGxlZCl7aWYoby5pbnN0YWxsZWQ9ITAsIXQpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcihcIllvdSBoYXZlIHRvIGluc3RhbGwgYXhpb3NcIik7ZS5heGlvcz10LE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGUucHJvdG90eXBlLHtheGlvczp7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHR9fSwkaHR0cDp7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHR9fX0pfX1cIm9iamVjdFwiPT0oXCJ1bmRlZmluZWRcIj09dHlwZW9mIGV4cG9ydHM/XCJ1bmRlZmluZWRcIjpfdHlwZW9mKGV4cG9ydHMpKT9tb2R1bGUuZXhwb3J0cz1vOlwiZnVuY3Rpb25cIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sZnVuY3Rpb24oKXtyZXR1cm4gb30pOndpbmRvdy5WdWUmJndpbmRvdy5heGlvcyYmVnVlLnVzZShvLHdpbmRvdy5heGlvcyl9KCk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-axios/dist/vue-axios.min.js\n"); + +/***/ }), + /***/ "./node_modules/vue-hot-reload-api/dist/index.js": /***/ (function(module, exports) { @@ -843,7 +1071,7 @@ eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Password\", id: \"id\" },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", { on: { click: _vm.login } }, [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-c576a172\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZT9kNzNkIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4cHJlc3Npb246IFwidXNlcm5hbWVcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJQYXNzd29yZFwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICB9LFxuICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtYnRuXCIsIHsgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sIFtfdm0uX3YoXCJTdWJtaXRcIildKVxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi1jNTc2YTE3MlwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJoYXNTY29wZWRcIjp0cnVlLFwidHJhbnNmb3JtVG9SZXF1aXJlXCI6e1widmlkZW9cIjpbXCJzcmNcIixcInBvc3RlclwiXSxcInNvdXJjZVwiOlwic3JjXCIsXCJpbWdcIjpcInNyY1wiLFwiaW1hZ2VcIjpcInhsaW5rOmhyZWZcIn0sXCJidWJsZVwiOntcInRyYW5zZm9ybXNcIjp7fX19IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9dGVtcGxhdGUmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtYzU3NmExNzJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue\n"); +eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" },\n model: {\n value: _vm.name,\n callback: function($$v) {\n _vm.name = $$v\n },\n expression: \"name\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: {\n name: \"name\",\n label: \"Password\",\n id: \"id\",\n \"append-icon\": _vm.visible ? \"visibility_off\" : \"visibility\",\n \"append-icon-cb\": function() {\n return (_vm.visible = !_vm.visible)\n },\n type: _vm.visible ? \"text\" : \"password\"\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", { on: { click: _vm.login } }, [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-c576a172\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZT9kNzNkIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS5uYW1lLFxuICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgIF92bS5uYW1lID0gJCR2XG4gICAgICAgICAgfSxcbiAgICAgICAgICBleHByZXNzaW9uOiBcIm5hbWVcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgbmFtZTogXCJuYW1lXCIsXG4gICAgICAgICAgbGFiZWw6IFwiUGFzc3dvcmRcIixcbiAgICAgICAgICBpZDogXCJpZFwiLFxuICAgICAgICAgIFwiYXBwZW5kLWljb25cIjogX3ZtLnZpc2libGUgPyBcInZpc2liaWxpdHlfb2ZmXCIgOiBcInZpc2liaWxpdHlcIixcbiAgICAgICAgICBcImFwcGVuZC1pY29uLWNiXCI6IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgcmV0dXJuIChfdm0udmlzaWJsZSA9ICFfdm0udmlzaWJsZSlcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGU6IF92bS52aXNpYmxlID8gXCJ0ZXh0XCIgOiBcInBhc3N3b3JkXCJcbiAgICAgICAgfSxcbiAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgIH0sXG4gICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi1idG5cIiwgeyBvbjogeyBjbGljazogX3ZtLmxvZ2luIH0gfSwgW192bS5fdihcIlN1Ym1pdFwiKV0pXG4gICAgXSxcbiAgICAxXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LWM1NzZhMTcyXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtYzU3NmExNzJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue\n"); /***/ }), @@ -970,7 +1198,7 @@ eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_mo /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(\"./node_modules/vue/dist/vue.esm.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__App__ = __webpack_require__(\"./src/App.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__router__ = __webpack_require__(\"./src/router/index.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuetify__ = __webpack_require__(\"./node_modules/vuetify/dist/vuetify.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuetify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vuetify__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css__ = __webpack_require__(\"./node_modules/vuetify/dist/vuetify.min.css\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors__ = __webpack_require__(\"./node_modules/vuetify/es5/util/colors.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors__);\n// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"].use(__WEBPACK_IMPORTED_MODULE_3_vuetify___default.a, {\n theme: {\n primary: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.lighten5, // #E53935\n secondary: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.lighten1, // #FFCDD2\n accent: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.accent1 // #3F51B5\n }\n});\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"].config.productionTip = false;\n\n/* eslint-disable no-new */\nnew __WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"]({\n el: '#app',\n router: __WEBPACK_IMPORTED_MODULE_2__router__[\"a\" /* default */],\n components: { App: __WEBPACK_IMPORTED_MODULE_1__App__[\"a\" /* default */] },\n template: ''\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbWFpbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9zcmMvbWFpbi5qcz8xYzkwIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoZSBWdWUgYnVpbGQgdmVyc2lvbiB0byBsb2FkIHdpdGggdGhlIGBpbXBvcnRgIGNvbW1hbmRcbi8vIChydW50aW1lLW9ubHkgb3Igc3RhbmRhbG9uZSkgaGFzIGJlZW4gc2V0IGluIHdlYnBhY2suYmFzZS5jb25mIHdpdGggYW4gYWxpYXMuXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCBBcHAgZnJvbSAnLi9BcHAnXG5pbXBvcnQgcm91dGVyIGZyb20gJy4vcm91dGVyJ1xuaW1wb3J0IFZ1ZXRpZnkgZnJvbSAndnVldGlmeSdcbmltcG9ydCAndnVldGlmeS9kaXN0L3Z1ZXRpZnkubWluLmNzcydcbmltcG9ydCBjb2xvcnMgZnJvbSAndnVldGlmeS9lczUvdXRpbC9jb2xvcnMnXG5cblZ1ZS51c2UoVnVldGlmeSwge1xuICB0aGVtZToge1xuICAgIHByaW1hcnk6IGNvbG9ycy5hbWJlci5saWdodGVuNSwgLy8gI0U1MzkzNVxuICAgIHNlY29uZGFyeTogY29sb3JzLmFtYmVyLmxpZ2h0ZW4xLCAvLyAjRkZDREQyXG4gICAgYWNjZW50OiBjb2xvcnMuYW1iZXIuYWNjZW50MSAvLyAjM0Y1MUI1XG4gIH1cbn0pO1xuXG5WdWUuY29uZmlnLnByb2R1Y3Rpb25UaXAgPSBmYWxzZVxuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1uZXcgKi9cbm5ldyBWdWUoe1xuICBlbDogJyNhcHAnLFxuICByb3V0ZXIsXG4gIGNvbXBvbmVudHM6IHsgQXBwIH0sXG4gIHRlbXBsYXRlOiAnPEFwcC8+J1xufSlcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvbWFpbi5qcyJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFEQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/main.js\n"); +eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(\"./node_modules/vue/dist/vue.esm.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__App__ = __webpack_require__(\"./src/App.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__router__ = __webpack_require__(\"./src/router/index.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuetify__ = __webpack_require__(\"./node_modules/vuetify/dist/vuetify.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuetify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vuetify__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css__ = __webpack_require__(\"./node_modules/vuetify/dist/vuetify.min.css\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_vuetify_dist_vuetify_min_css__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors__ = __webpack_require__(\"./node_modules/vuetify/es5/util/colors.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_axios__ = __webpack_require__(\"./node_modules/axios/index.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_vue_axios__ = __webpack_require__(\"./node_modules/vue-axios/dist/vue-axios.min.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_vue_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_vue_axios__);\n// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\n\n\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"].use(__WEBPACK_IMPORTED_MODULE_7_vue_axios___default.a, __WEBPACK_IMPORTED_MODULE_6_axios___default.a);\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"].use(__WEBPACK_IMPORTED_MODULE_3_vuetify___default.a, {\n theme: {\n primary: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.lighten5, // #E53935\n secondary: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.lighten1, // #FFCDD2\n accent: __WEBPACK_IMPORTED_MODULE_5_vuetify_es5_util_colors___default.a.amber.accent1 // #3F51B5\n }\n});\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"].config.productionTip = false;\n\n/* eslint-disable no-new */\nnew __WEBPACK_IMPORTED_MODULE_0_vue__[\"default\"]({\n el: '#app',\n router: __WEBPACK_IMPORTED_MODULE_2__router__[\"a\" /* default */],\n components: { App: __WEBPACK_IMPORTED_MODULE_1__App__[\"a\" /* default */] },\n template: ''\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbWFpbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9zcmMvbWFpbi5qcz8xYzkwIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoZSBWdWUgYnVpbGQgdmVyc2lvbiB0byBsb2FkIHdpdGggdGhlIGBpbXBvcnRgIGNvbW1hbmRcbi8vIChydW50aW1lLW9ubHkgb3Igc3RhbmRhbG9uZSkgaGFzIGJlZW4gc2V0IGluIHdlYnBhY2suYmFzZS5jb25mIHdpdGggYW4gYWxpYXMuXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCBBcHAgZnJvbSAnLi9BcHAnXG5pbXBvcnQgcm91dGVyIGZyb20gJy4vcm91dGVyJ1xuaW1wb3J0IFZ1ZXRpZnkgZnJvbSAndnVldGlmeSdcbmltcG9ydCAndnVldGlmeS9kaXN0L3Z1ZXRpZnkubWluLmNzcydcbmltcG9ydCBjb2xvcnMgZnJvbSAndnVldGlmeS9lczUvdXRpbC9jb2xvcnMnXG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5pbXBvcnQgVnVlQXhpb3MgZnJvbSAndnVlLWF4aW9zJ1xuXG5WdWUudXNlKFZ1ZUF4aW9zLCBheGlvcylcblxuVnVlLnVzZShWdWV0aWZ5LCB7XG4gIHRoZW1lOiB7XG4gICAgcHJpbWFyeTogY29sb3JzLmFtYmVyLmxpZ2h0ZW41LCAvLyAjRTUzOTM1XG4gICAgc2Vjb25kYXJ5OiBjb2xvcnMuYW1iZXIubGlnaHRlbjEsIC8vICNGRkNERDJcbiAgICBhY2NlbnQ6IGNvbG9ycy5hbWJlci5hY2NlbnQxIC8vICMzRjUxQjVcbiAgfVxufSk7XG5cblZ1ZS5jb25maWcucHJvZHVjdGlvblRpcCA9IGZhbHNlXG5cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5ldyAqL1xubmV3IFZ1ZSh7XG4gIGVsOiAnI2FwcCcsXG4gIHJvdXRlcixcbiAgY29tcG9uZW50czogeyBBcHAgfSxcbiAgdGVtcGxhdGU6ICc8QXBwLz4nXG59KVxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9tYWluLmpzIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFEQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/main.js\n"); /***/ }), diff --git a/src/components/LogIn.vue b/src/components/LogIn.vue index c7eb6820..5de8a401 100644 --- a/src/components/LogIn.vue +++ b/src/components/LogIn.vue @@ -1,8 +1,15 @@ From 2ee9f9bc65debb495ba722620176249013e2d217 Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Fri, 4 May 2018 13:11:59 +0800 Subject: [PATCH 014/113] Fix id problem --- login/views.py | 5 +++-- src/components/login/loginForm.vue | 2 -- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/login/views.py b/login/views.py index ff89cb49..14e9d1d4 100644 --- a/login/views.py +++ b/login/views.py @@ -6,10 +6,11 @@ from django.views.generic import TemplateView from django.views.decorators.csrf import ensure_csrf_cookie + @ensure_csrf_cookie def index(request): - return render(request, 'index.html') + return render(request, 'index.html') class LoginView(TemplateView): - template_name='index.html' \ No newline at end of file + template_name = 'index.html' diff --git a/src/components/login/loginForm.vue b/src/components/login/loginForm.vue index 2c385664..10f35c22 100644 --- a/src/components/login/loginForm.vue +++ b/src/components/login/loginForm.vue @@ -3,13 +3,11 @@ Date: Fri, 4 May 2018 13:53:13 +0800 Subject: [PATCH 015/113] Removed assets folder --- assets/0.9b96dedcef6f8cc83741.hot-update.js | 18 - assets/0f6d5a904b348950aa9e.hot-update.json | 1 - assets/9b96dedcef6f8cc83741.hot-update.json | 1 - assets/app.js | 1213 ------------------- assets/fdb1ce3a0a5c7acd9947.hot-update.json | 1 - 5 files changed, 1234 deletions(-) delete mode 100644 assets/0.9b96dedcef6f8cc83741.hot-update.js delete mode 100644 assets/0f6d5a904b348950aa9e.hot-update.json delete mode 100644 assets/9b96dedcef6f8cc83741.hot-update.json delete mode 100644 assets/app.js delete mode 100644 assets/fdb1ce3a0a5c7acd9947.hot-update.json diff --git a/assets/0.9b96dedcef6f8cc83741.hot-update.js b/assets/0.9b96dedcef6f8cc83741.hot-update.js deleted file mode 100644 index e2807c54..00000000 --- a/assets/0.9b96dedcef6f8cc83741.hot-update.js +++ /dev/null @@ -1,18 +0,0 @@ -webpackHotUpdate(0,{ - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.title[data-v-51b0eb09] {\\n\\tfont-size: 5em;\\n}\\n.loginbox[data-v-51b0eb09] {\\n\\tmargin: 5%;\\n\\tmargin-top: 7%;\\n\\tpadding: 5%;\\n}\\n.desc[data-v-51b0eb09] {\\n\\ttext-align: center;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA4EA;CACA,eAAA;CACA;AACA;CACA,WAAA;CACA,eAAA;CACA,YAAA;CACA;AACA;CACA,mBAAA;CACA\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlPzQzNDAiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKSh0cnVlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIlxcbi50aXRsZVtkYXRhLXYtNTFiMGViMDldIHtcXG5cXHRmb250LXNpemU6IDVlbTtcXG59XFxuLmxvZ2luYm94W2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdG1hcmdpbjogNSU7XFxuXFx0bWFyZ2luLXRvcDogNyU7XFxuXFx0cGFkZGluZzogNSU7XFxufVxcbi5kZXNjW2RhdGEtdi01MWIwZWIwOV0ge1xcblxcdHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQTRFQTtDQUNBLGVBQUE7Q0FDQTtBQUNBO0NBQ0EsV0FBQTtDQUNBLGVBQUE7Q0FDQSxZQUFBO0NBQ0E7QUFDQTtDQUNBLG1CQUFBO0NBQ0FcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI8dGVtcGxhdGU+XFxuXFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0IG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclxcXCI+XFxuXFx0XFx0XFx0PHNwYW4gY2xhc3M9XFxcIiB0aXRsZVxcXCI+ZUF1Y3Rpb248L3NwYW4+XFxuXFxuXFx0XFx0PC9kaXY+XFxuXFx0XFx0PGRpdiBjbGFzcz1cXFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclxcXCI+XFxuXFx0XFx0XFx0XFx0PGRpdiBjbGFzcz1cXFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cXFwiPlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCJpc1JlZ2lzdGVyXFxcIiBjbGFzcz1cXFwibWQtbGF5b3V0XFxcIj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8c3Bhbj5SZWdpc3Rlcjwvc3Bhbj5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkVtYWlsPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlVzZXJuYW1lPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwidXNlcm5hbWVcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPlBhc3N3b3JkPC9sYWJlbD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bWQtaW5wdXQgdi1tb2RlbD1cXFwicGFzc3dvcmRcXFwiIEBrZXl1cC5lbnRlcj1cXFwibG9naW5cXFwiPjwvbWQtaW5wdXQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PC9tZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bWQtZmllbGQ+XFxuXFx0XFx0XFx0XFx0XFx0XFx0XFx0PGxhYmVsPkNvbmZpcm0gUGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdFxcdFxcdFxcdDxkaXYgdi1zaG93PVxcXCIhaXNSZWdpc3RlclxcXCIgY2xhc3M9XFxcIm1kLWxheW91dFxcXCI+XFxuXFx0XFx0XFx0XFx0XFx0XFx0PHNwYW4+TG9nIEluPC9zcGFuPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+VXNlcm5hbWU8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJ1c2VybmFtZVxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdFxcdDxtZC1maWVsZD5cXG5cXHRcXHRcXHRcXHRcXHRcXHRcXHQ8bGFiZWw+UGFzc3dvcmQ8L2xhYmVsPlxcblxcdFxcdFxcdFxcdFxcdFxcdFxcdDxtZC1pbnB1dCB2LW1vZGVsPVxcXCJwYXNzd29yZFxcXCIgQGtleXVwLmVudGVyPVxcXCJsb2dpblxcXCI+PC9tZC1pbnB1dD5cXG5cXHRcXHRcXHRcXHRcXHRcXHQ8L21kLWZpZWxkPlxcblxcdFxcdFxcdFxcdFxcdDwvZGl2PlxcblxcblxcdFxcdFxcdFxcdFxcdDxtZC1idXR0b24gQGNsaWNrPVxcXCJsb2dpblxcXCIgY2xhc3M9XFxcIm1kLXJhaXNlZFxcXCI+TG9nIEluPC9tZC1idXR0b24+XFxuXFx0XFx0XFx0XFx0XFx0PG1kLWJ1dHRvbiBAY2xpY2s9XFxcImxvZ2luXFxcIiBjbGFzcz1cXFwibWQtcmFpc2VkXFxcIj5SZWdpc3RlcjwvbWQtYnV0dG9uPlxcblxcdFxcdFxcdFxcdDwvZGl2PlxcblxcdFxcdDwvZGl2PlxcblxcdDwvZGl2PlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRleHBvcnQgZGVmYXVsdCB7XFxuXFx0XFx0ZGF0YSgpe1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0dXNlcm5hbWU6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHBhc3N3b3JkOiBcXFwiXFxcIixcXG5cXHRcXHRcXHRcXHRlbWFpbDogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0aXNSZWdpc3RlcjogdHJ1ZSxcXG5cXHRcXHRcXHRcXHRjb25maXJtTWF0Y2g6IHRydWUsXFxuXFx0XFx0XFx0fTtcXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjpmdW5jdGlvbigpe1xcblxcdFxcdFxcdFxcdGxldCB1c2VybmFtZSA9IFxcXCJib2pvbHVpc1xcXCI7XFxuXFx0XFx0XFx0XFx0bGV0IHBhc3N3b3JkID0gXFxcIjEyMzRcXFwiO1xcblxcblxcdFxcdFxcdFxcdGlmKHRoaXMudXNlcm5hbWUgPT0gdXNlcm5hbWUgJiYgdGhpcy5wYXNzd29yZCA9PSBwYXNzd29yZCl7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIlZhbGlkXFxcIik7XFxuXFx0XFx0XFx0XFx0fWVsc2V7XFxuXFx0XFx0XFx0XFx0XFx0YWxlcnQoXFxcIldyb25nXFxcIik7XFxuXFx0XFx0XFx0XFx0fVxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdGNhbGN1bGF0ZWQ6IHtcXG5cXHRcXHR9XFxuXFxuXFx0fVxcbjwvc2NyaXB0PlxcblxcbjxzdHlsZSBzY29wZWQ+XFxuXFx0LnRpdGxlIHtcXG5cXHRcXHRmb250LXNpemU6IDVlbTtcXG5cXHR9XFxuXFx0LmxvZ2luYm94IHtcXG5cXHRcXHRtYXJnaW46IDUlO1xcblxcdFxcdG1hcmdpbi10b3A6IDclO1xcblxcdFxcdHBhZGRpbmc6IDUlO1xcblxcdH1cXG5cXHQuZGVzYyB7XFxuXFx0XFx0dGV4dC1hbGlnbjogY2VudGVyO1xcblxcdH1cXG48L3N0eWxlPlxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTUxYjBlYjA5XCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"md-layout md-gutter\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass:\n \"md-layout-item md-layout md-alignment-center-center md-gutter\"\n },\n [\n _c(\n \"div\",\n { staticClass: \"loginbox md-elevation-2 loginbox md-layout-item\" },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.isRegister,\n expression: \"isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Register\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Email\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Confirm Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.isRegister,\n expression: \"!isRegister\"\n }\n ],\n staticClass: \"md-layout\"\n },\n [\n _c(\"span\", [_vm._v(\"Log In\")]),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Username\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.username,\n callback: function($$v) {\n _vm.username = $$v\n },\n expression: \"username\"\n }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-field\",\n [\n _c(\"label\", [_vm._v(\"Password\")]),\n _vm._v(\" \"),\n _c(\"md-input\", {\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k(\n $event.keyCode,\n \"enter\",\n 13,\n $event.key,\n \"Enter\"\n )\n ) {\n return null\n }\n return _vm.login($event)\n }\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Log In\")]\n ),\n _vm._v(\" \"),\n _c(\n \"md-button\",\n { staticClass: \"md-raised\", on: { click: _vm.login } },\n [_vm._v(\"Register\")]\n )\n ],\n 1\n )\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \" md-layout-item md-layout md-alignment-center-center\" },\n [_c(\"span\", { staticClass: \" title\" }, [_vm._v(\"eAuction\")])]\n )\n }\n]\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0IG1kLWd1dHRlclwiIH0sIFtcbiAgICBfdm0uX20oMCksXG4gICAgX3ZtLl92KFwiIFwiKSxcbiAgICBfYyhcbiAgICAgIFwiZGl2XCIsXG4gICAgICB7XG4gICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgIFwibWQtbGF5b3V0LWl0ZW0gbWQtbGF5b3V0IG1kLWFsaWdubWVudC1jZW50ZXItY2VudGVyIG1kLWd1dHRlclwiXG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBfYyhcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibG9naW5ib3ggbWQtZWxldmF0aW9uLTIgbG9naW5ib3ggbWQtbGF5b3V0LWl0ZW1cIiB9LFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImlzUmVnaXN0ZXJcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWQtbGF5b3V0XCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCBbX3ZtLl92KFwiUmVnaXN0ZXJcIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJFbWFpbFwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucGFzc3dvcmQgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiVXNlcm5hbWVcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnVzZXJuYW1lID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJ1c2VybmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcIm1kLWZpZWxkXCIsXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgW192bS5fdihcIlBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJDb25maXJtIFBhc3N3b3JkXCIpXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibWQtaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhKFwiYnV0dG9uXCIgaW4gJGV2ZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fayhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXlDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJFbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ubG9naW4oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0ucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24oJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwicGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6ICFfdm0uaXNSZWdpc3RlcixcbiAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCIhaXNSZWdpc3RlclwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtZC1sYXlvdXRcIlxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCJMb2cgSW5cIildKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJtZC1maWVsZFwiLFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIFtfdm0uX3YoXCJVc2VybmFtZVwiKV0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcIm1kLWlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIShcImJ1dHRvblwiIGluICRldmVudCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2soXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQua2V5Q29kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiRW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmxvZ2luKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0udXNlcm5hbWUgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcInVzZXJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwibWQtZmllbGRcIixcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCBbX3ZtLl92KFwiUGFzc3dvcmRcIildKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJtZC1pbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbigkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEoXCJidXR0b25cIiBpbiAkZXZlbnQpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9rKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LmtleUNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC5rZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIkVudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5sb2dpbigkZXZlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5wYXNzd29yZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLnBhc3N3b3JkID0gJCR2XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwibWQtYnV0dG9uXCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwibWQtcmFpc2VkXCIsIG9uOiB7IGNsaWNrOiBfdm0ubG9naW4gfSB9LFxuICAgICAgICAgICAgICBbX3ZtLl92KFwiTG9nIEluXCIpXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJtZC1idXR0b25cIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJtZC1yYWlzZWRcIiwgb246IHsgY2xpY2s6IF92bS5sb2dpbiB9IH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoXCJSZWdpc3RlclwiKV1cbiAgICAgICAgICAgIClcbiAgICAgICAgICBdLFxuICAgICAgICAgIDFcbiAgICAgICAgKVxuICAgICAgXVxuICAgIClcbiAgXSlcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXG4gIGZ1bmN0aW9uKCkge1xuICAgIHZhciBfdm0gPSB0aGlzXG4gICAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gICAgdmFyIF9jID0gX3ZtLl9zZWxmLl9jIHx8IF9oXG4gICAgcmV0dXJuIF9jKFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgc3RhdGljQ2xhc3M6IFwiIG1kLWxheW91dC1pdGVtIG1kLWxheW91dCBtZC1hbGlnbm1lbnQtY2VudGVyLWNlbnRlclwiIH0sXG4gICAgICBbX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiIHRpdGxlXCIgfSwgW192bS5fdihcImVBdWN0aW9uXCIpXSldXG4gICAgKVxuICB9XG5dXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); - -/***/ }) - -}) \ No newline at end of file diff --git a/assets/0f6d5a904b348950aa9e.hot-update.json b/assets/0f6d5a904b348950aa9e.hot-update.json deleted file mode 100644 index 52abd569..00000000 --- a/assets/0f6d5a904b348950aa9e.hot-update.json +++ /dev/null @@ -1 +0,0 @@ -{"h":"1d739cf56c2926b9aa9b","c":{"1":false}} \ No newline at end of file diff --git a/assets/9b96dedcef6f8cc83741.hot-update.json b/assets/9b96dedcef6f8cc83741.hot-update.json deleted file mode 100644 index 0072fa47..00000000 --- a/assets/9b96dedcef6f8cc83741.hot-update.json +++ /dev/null @@ -1 +0,0 @@ -{"h":"a435a52d44b0d5b18c30","c":{"0":true}} \ No newline at end of file diff --git a/assets/app.js b/assets/app.js deleted file mode 100644 index 78612564..00000000 --- a/assets/app.js +++ /dev/null @@ -1,1213 +0,0 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ function hotDisposeChunk(chunkId) { -/******/ delete installedChunks[chunkId]; -/******/ } -/******/ var parentHotUpdateCallback = window["webpackHotUpdate"]; -/******/ window["webpackHotUpdate"] = -/******/ function webpackHotUpdateCallback(chunkId, moreModules) { // eslint-disable-line no-unused-vars -/******/ hotAddUpdateChunk(chunkId, moreModules); -/******/ if(parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules); -/******/ } ; -/******/ -/******/ function hotDownloadUpdateChunk(chunkId) { // eslint-disable-line no-unused-vars -/******/ var head = document.getElementsByTagName("head")[0]; -/******/ var script = document.createElement("script"); -/******/ script.type = "text/javascript"; -/******/ script.charset = "utf-8"; -/******/ script.src = __webpack_require__.p + "" + chunkId + "." + hotCurrentHash + ".hot-update.js"; -/******/ ; -/******/ head.appendChild(script); -/******/ } -/******/ -/******/ function hotDownloadManifest(requestTimeout) { // eslint-disable-line no-unused-vars -/******/ requestTimeout = requestTimeout || 10000; -/******/ return new Promise(function(resolve, reject) { -/******/ if(typeof XMLHttpRequest === "undefined") -/******/ return reject(new Error("No browser support")); -/******/ try { -/******/ var request = new XMLHttpRequest(); -/******/ var requestPath = __webpack_require__.p + "" + hotCurrentHash + ".hot-update.json"; -/******/ request.open("GET", requestPath, true); -/******/ request.timeout = requestTimeout; -/******/ request.send(null); -/******/ } catch(err) { -/******/ return reject(err); -/******/ } -/******/ request.onreadystatechange = function() { -/******/ if(request.readyState !== 4) return; -/******/ if(request.status === 0) { -/******/ // timeout -/******/ reject(new Error("Manifest request to " + requestPath + " timed out.")); -/******/ } else if(request.status === 404) { -/******/ // no update available -/******/ resolve(); -/******/ } else if(request.status !== 200 && request.status !== 304) { -/******/ // other failure -/******/ reject(new Error("Manifest request to " + requestPath + " failed.")); -/******/ } else { -/******/ // success -/******/ try { -/******/ var update = JSON.parse(request.responseText); -/******/ } catch(e) { -/******/ reject(e); -/******/ return; -/******/ } -/******/ resolve(update); -/******/ } -/******/ }; -/******/ }); -/******/ } -/******/ -/******/ -/******/ -/******/ var hotApplyOnUpdate = true; -/******/ var hotCurrentHash = "47c6e3a11a25eeff5316"; // eslint-disable-line no-unused-vars -/******/ var hotRequestTimeout = 10000; -/******/ var hotCurrentModuleData = {}; -/******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars -/******/ var hotCurrentParents = []; // eslint-disable-line no-unused-vars -/******/ var hotCurrentParentsTemp = []; // eslint-disable-line no-unused-vars -/******/ -/******/ function hotCreateRequire(moduleId) { // eslint-disable-line no-unused-vars -/******/ var me = installedModules[moduleId]; -/******/ if(!me) return __webpack_require__; -/******/ var fn = function(request) { -/******/ if(me.hot.active) { -/******/ if(installedModules[request]) { -/******/ if(installedModules[request].parents.indexOf(moduleId) < 0) -/******/ installedModules[request].parents.push(moduleId); -/******/ } else { -/******/ hotCurrentParents = [moduleId]; -/******/ hotCurrentChildModule = request; -/******/ } -/******/ if(me.children.indexOf(request) < 0) -/******/ me.children.push(request); -/******/ } else { -/******/ console.warn("[HMR] unexpected require(" + request + ") from disposed module " + moduleId); -/******/ hotCurrentParents = []; -/******/ } -/******/ return __webpack_require__(request); -/******/ }; -/******/ var ObjectFactory = function ObjectFactory(name) { -/******/ return { -/******/ configurable: true, -/******/ enumerable: true, -/******/ get: function() { -/******/ return __webpack_require__[name]; -/******/ }, -/******/ set: function(value) { -/******/ __webpack_require__[name] = value; -/******/ } -/******/ }; -/******/ }; -/******/ for(var name in __webpack_require__) { -/******/ if(Object.prototype.hasOwnProperty.call(__webpack_require__, name) && name !== "e") { -/******/ Object.defineProperty(fn, name, ObjectFactory(name)); -/******/ } -/******/ } -/******/ fn.e = function(chunkId) { -/******/ if(hotStatus === "ready") -/******/ hotSetStatus("prepare"); -/******/ hotChunksLoading++; -/******/ return __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) { -/******/ finishChunkLoading(); -/******/ throw err; -/******/ }); -/******/ -/******/ function finishChunkLoading() { -/******/ hotChunksLoading--; -/******/ if(hotStatus === "prepare") { -/******/ if(!hotWaitingFilesMap[chunkId]) { -/******/ hotEnsureUpdateChunk(chunkId); -/******/ } -/******/ if(hotChunksLoading === 0 && hotWaitingFiles === 0) { -/******/ hotUpdateDownloaded(); -/******/ } -/******/ } -/******/ } -/******/ }; -/******/ return fn; -/******/ } -/******/ -/******/ function hotCreateModule(moduleId) { // eslint-disable-line no-unused-vars -/******/ var hot = { -/******/ // private stuff -/******/ _acceptedDependencies: {}, -/******/ _declinedDependencies: {}, -/******/ _selfAccepted: false, -/******/ _selfDeclined: false, -/******/ _disposeHandlers: [], -/******/ _main: hotCurrentChildModule !== moduleId, -/******/ -/******/ // Module API -/******/ active: true, -/******/ accept: function(dep, callback) { -/******/ if(typeof dep === "undefined") -/******/ hot._selfAccepted = true; -/******/ else if(typeof dep === "function") -/******/ hot._selfAccepted = dep; -/******/ else if(typeof dep === "object") -/******/ for(var i = 0; i < dep.length; i++) -/******/ hot._acceptedDependencies[dep[i]] = callback || function() {}; -/******/ else -/******/ hot._acceptedDependencies[dep] = callback || function() {}; -/******/ }, -/******/ decline: function(dep) { -/******/ if(typeof dep === "undefined") -/******/ hot._selfDeclined = true; -/******/ else if(typeof dep === "object") -/******/ for(var i = 0; i < dep.length; i++) -/******/ hot._declinedDependencies[dep[i]] = true; -/******/ else -/******/ hot._declinedDependencies[dep] = true; -/******/ }, -/******/ dispose: function(callback) { -/******/ hot._disposeHandlers.push(callback); -/******/ }, -/******/ addDisposeHandler: function(callback) { -/******/ hot._disposeHandlers.push(callback); -/******/ }, -/******/ removeDisposeHandler: function(callback) { -/******/ var idx = hot._disposeHandlers.indexOf(callback); -/******/ if(idx >= 0) hot._disposeHandlers.splice(idx, 1); -/******/ }, -/******/ -/******/ // Management API -/******/ check: hotCheck, -/******/ apply: hotApply, -/******/ status: function(l) { -/******/ if(!l) return hotStatus; -/******/ hotStatusHandlers.push(l); -/******/ }, -/******/ addStatusHandler: function(l) { -/******/ hotStatusHandlers.push(l); -/******/ }, -/******/ removeStatusHandler: function(l) { -/******/ var idx = hotStatusHandlers.indexOf(l); -/******/ if(idx >= 0) hotStatusHandlers.splice(idx, 1); -/******/ }, -/******/ -/******/ //inherit from previous dispose call -/******/ data: hotCurrentModuleData[moduleId] -/******/ }; -/******/ hotCurrentChildModule = undefined; -/******/ return hot; -/******/ } -/******/ -/******/ var hotStatusHandlers = []; -/******/ var hotStatus = "idle"; -/******/ -/******/ function hotSetStatus(newStatus) { -/******/ hotStatus = newStatus; -/******/ for(var i = 0; i < hotStatusHandlers.length; i++) -/******/ hotStatusHandlers[i].call(null, newStatus); -/******/ } -/******/ -/******/ // while downloading -/******/ var hotWaitingFiles = 0; -/******/ var hotChunksLoading = 0; -/******/ var hotWaitingFilesMap = {}; -/******/ var hotRequestedFilesMap = {}; -/******/ var hotAvailableFilesMap = {}; -/******/ var hotDeferred; -/******/ -/******/ // The update info -/******/ var hotUpdate, hotUpdateNewHash; -/******/ -/******/ function toModuleId(id) { -/******/ var isNumber = (+id) + "" === id; -/******/ return isNumber ? +id : id; -/******/ } -/******/ -/******/ function hotCheck(apply) { -/******/ if(hotStatus !== "idle") throw new Error("check() is only allowed in idle status"); -/******/ hotApplyOnUpdate = apply; -/******/ hotSetStatus("check"); -/******/ return hotDownloadManifest(hotRequestTimeout).then(function(update) { -/******/ if(!update) { -/******/ hotSetStatus("idle"); -/******/ return null; -/******/ } -/******/ hotRequestedFilesMap = {}; -/******/ hotWaitingFilesMap = {}; -/******/ hotAvailableFilesMap = update.c; -/******/ hotUpdateNewHash = update.h; -/******/ -/******/ hotSetStatus("prepare"); -/******/ var promise = new Promise(function(resolve, reject) { -/******/ hotDeferred = { -/******/ resolve: resolve, -/******/ reject: reject -/******/ }; -/******/ }); -/******/ hotUpdate = {}; -/******/ var chunkId = 0; -/******/ { // eslint-disable-line no-lone-blocks -/******/ /*globals chunkId */ -/******/ hotEnsureUpdateChunk(chunkId); -/******/ } -/******/ if(hotStatus === "prepare" && hotChunksLoading === 0 && hotWaitingFiles === 0) { -/******/ hotUpdateDownloaded(); -/******/ } -/******/ return promise; -/******/ }); -/******/ } -/******/ -/******/ function hotAddUpdateChunk(chunkId, moreModules) { // eslint-disable-line no-unused-vars -/******/ if(!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId]) -/******/ return; -/******/ hotRequestedFilesMap[chunkId] = false; -/******/ for(var moduleId in moreModules) { -/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) { -/******/ hotUpdate[moduleId] = moreModules[moduleId]; -/******/ } -/******/ } -/******/ if(--hotWaitingFiles === 0 && hotChunksLoading === 0) { -/******/ hotUpdateDownloaded(); -/******/ } -/******/ } -/******/ -/******/ function hotEnsureUpdateChunk(chunkId) { -/******/ if(!hotAvailableFilesMap[chunkId]) { -/******/ hotWaitingFilesMap[chunkId] = true; -/******/ } else { -/******/ hotRequestedFilesMap[chunkId] = true; -/******/ hotWaitingFiles++; -/******/ hotDownloadUpdateChunk(chunkId); -/******/ } -/******/ } -/******/ -/******/ function hotUpdateDownloaded() { -/******/ hotSetStatus("ready"); -/******/ var deferred = hotDeferred; -/******/ hotDeferred = null; -/******/ if(!deferred) return; -/******/ if(hotApplyOnUpdate) { -/******/ // Wrap deferred object in Promise to mark it as a well-handled Promise to -/******/ // avoid triggering uncaught exception warning in Chrome. -/******/ // See https://bugs.chromium.org/p/chromium/issues/detail?id=465666 -/******/ Promise.resolve().then(function() { -/******/ return hotApply(hotApplyOnUpdate); -/******/ }).then( -/******/ function(result) { -/******/ deferred.resolve(result); -/******/ }, -/******/ function(err) { -/******/ deferred.reject(err); -/******/ } -/******/ ); -/******/ } else { -/******/ var outdatedModules = []; -/******/ for(var id in hotUpdate) { -/******/ if(Object.prototype.hasOwnProperty.call(hotUpdate, id)) { -/******/ outdatedModules.push(toModuleId(id)); -/******/ } -/******/ } -/******/ deferred.resolve(outdatedModules); -/******/ } -/******/ } -/******/ -/******/ function hotApply(options) { -/******/ if(hotStatus !== "ready") throw new Error("apply() is only allowed in ready status"); -/******/ options = options || {}; -/******/ -/******/ var cb; -/******/ var i; -/******/ var j; -/******/ var module; -/******/ var moduleId; -/******/ -/******/ function getAffectedStuff(updateModuleId) { -/******/ var outdatedModules = [updateModuleId]; -/******/ var outdatedDependencies = {}; -/******/ -/******/ var queue = outdatedModules.slice().map(function(id) { -/******/ return { -/******/ chain: [id], -/******/ id: id -/******/ }; -/******/ }); -/******/ while(queue.length > 0) { -/******/ var queueItem = queue.pop(); -/******/ var moduleId = queueItem.id; -/******/ var chain = queueItem.chain; -/******/ module = installedModules[moduleId]; -/******/ if(!module || module.hot._selfAccepted) -/******/ continue; -/******/ if(module.hot._selfDeclined) { -/******/ return { -/******/ type: "self-declined", -/******/ chain: chain, -/******/ moduleId: moduleId -/******/ }; -/******/ } -/******/ if(module.hot._main) { -/******/ return { -/******/ type: "unaccepted", -/******/ chain: chain, -/******/ moduleId: moduleId -/******/ }; -/******/ } -/******/ for(var i = 0; i < module.parents.length; i++) { -/******/ var parentId = module.parents[i]; -/******/ var parent = installedModules[parentId]; -/******/ if(!parent) continue; -/******/ if(parent.hot._declinedDependencies[moduleId]) { -/******/ return { -/******/ type: "declined", -/******/ chain: chain.concat([parentId]), -/******/ moduleId: moduleId, -/******/ parentId: parentId -/******/ }; -/******/ } -/******/ if(outdatedModules.indexOf(parentId) >= 0) continue; -/******/ if(parent.hot._acceptedDependencies[moduleId]) { -/******/ if(!outdatedDependencies[parentId]) -/******/ outdatedDependencies[parentId] = []; -/******/ addAllToSet(outdatedDependencies[parentId], [moduleId]); -/******/ continue; -/******/ } -/******/ delete outdatedDependencies[parentId]; -/******/ outdatedModules.push(parentId); -/******/ queue.push({ -/******/ chain: chain.concat([parentId]), -/******/ id: parentId -/******/ }); -/******/ } -/******/ } -/******/ -/******/ return { -/******/ type: "accepted", -/******/ moduleId: updateModuleId, -/******/ outdatedModules: outdatedModules, -/******/ outdatedDependencies: outdatedDependencies -/******/ }; -/******/ } -/******/ -/******/ function addAllToSet(a, b) { -/******/ for(var i = 0; i < b.length; i++) { -/******/ var item = b[i]; -/******/ if(a.indexOf(item) < 0) -/******/ a.push(item); -/******/ } -/******/ } -/******/ -/******/ // at begin all updates modules are outdated -/******/ // the "outdated" status can propagate to parents if they don't accept the children -/******/ var outdatedDependencies = {}; -/******/ var outdatedModules = []; -/******/ var appliedUpdate = {}; -/******/ -/******/ var warnUnexpectedRequire = function warnUnexpectedRequire() { -/******/ console.warn("[HMR] unexpected require(" + result.moduleId + ") to disposed module"); -/******/ }; -/******/ -/******/ for(var id in hotUpdate) { -/******/ if(Object.prototype.hasOwnProperty.call(hotUpdate, id)) { -/******/ moduleId = toModuleId(id); -/******/ var result; -/******/ if(hotUpdate[id]) { -/******/ result = getAffectedStuff(moduleId); -/******/ } else { -/******/ result = { -/******/ type: "disposed", -/******/ moduleId: id -/******/ }; -/******/ } -/******/ var abortError = false; -/******/ var doApply = false; -/******/ var doDispose = false; -/******/ var chainInfo = ""; -/******/ if(result.chain) { -/******/ chainInfo = "\nUpdate propagation: " + result.chain.join(" -> "); -/******/ } -/******/ switch(result.type) { -/******/ case "self-declined": -/******/ if(options.onDeclined) -/******/ options.onDeclined(result); -/******/ if(!options.ignoreDeclined) -/******/ abortError = new Error("Aborted because of self decline: " + result.moduleId + chainInfo); -/******/ break; -/******/ case "declined": -/******/ if(options.onDeclined) -/******/ options.onDeclined(result); -/******/ if(!options.ignoreDeclined) -/******/ abortError = new Error("Aborted because of declined dependency: " + result.moduleId + " in " + result.parentId + chainInfo); -/******/ break; -/******/ case "unaccepted": -/******/ if(options.onUnaccepted) -/******/ options.onUnaccepted(result); -/******/ if(!options.ignoreUnaccepted) -/******/ abortError = new Error("Aborted because " + moduleId + " is not accepted" + chainInfo); -/******/ break; -/******/ case "accepted": -/******/ if(options.onAccepted) -/******/ options.onAccepted(result); -/******/ doApply = true; -/******/ break; -/******/ case "disposed": -/******/ if(options.onDisposed) -/******/ options.onDisposed(result); -/******/ doDispose = true; -/******/ break; -/******/ default: -/******/ throw new Error("Unexception type " + result.type); -/******/ } -/******/ if(abortError) { -/******/ hotSetStatus("abort"); -/******/ return Promise.reject(abortError); -/******/ } -/******/ if(doApply) { -/******/ appliedUpdate[moduleId] = hotUpdate[moduleId]; -/******/ addAllToSet(outdatedModules, result.outdatedModules); -/******/ for(moduleId in result.outdatedDependencies) { -/******/ if(Object.prototype.hasOwnProperty.call(result.outdatedDependencies, moduleId)) { -/******/ if(!outdatedDependencies[moduleId]) -/******/ outdatedDependencies[moduleId] = []; -/******/ addAllToSet(outdatedDependencies[moduleId], result.outdatedDependencies[moduleId]); -/******/ } -/******/ } -/******/ } -/******/ if(doDispose) { -/******/ addAllToSet(outdatedModules, [result.moduleId]); -/******/ appliedUpdate[moduleId] = warnUnexpectedRequire; -/******/ } -/******/ } -/******/ } -/******/ -/******/ // Store self accepted outdated modules to require them later by the module system -/******/ var outdatedSelfAcceptedModules = []; -/******/ for(i = 0; i < outdatedModules.length; i++) { -/******/ moduleId = outdatedModules[i]; -/******/ if(installedModules[moduleId] && installedModules[moduleId].hot._selfAccepted) -/******/ outdatedSelfAcceptedModules.push({ -/******/ module: moduleId, -/******/ errorHandler: installedModules[moduleId].hot._selfAccepted -/******/ }); -/******/ } -/******/ -/******/ // Now in "dispose" phase -/******/ hotSetStatus("dispose"); -/******/ Object.keys(hotAvailableFilesMap).forEach(function(chunkId) { -/******/ if(hotAvailableFilesMap[chunkId] === false) { -/******/ hotDisposeChunk(chunkId); -/******/ } -/******/ }); -/******/ -/******/ var idx; -/******/ var queue = outdatedModules.slice(); -/******/ while(queue.length > 0) { -/******/ moduleId = queue.pop(); -/******/ module = installedModules[moduleId]; -/******/ if(!module) continue; -/******/ -/******/ var data = {}; -/******/ -/******/ // Call dispose handlers -/******/ var disposeHandlers = module.hot._disposeHandlers; -/******/ for(j = 0; j < disposeHandlers.length; j++) { -/******/ cb = disposeHandlers[j]; -/******/ cb(data); -/******/ } -/******/ hotCurrentModuleData[moduleId] = data; -/******/ -/******/ // disable module (this disables requires from this module) -/******/ module.hot.active = false; -/******/ -/******/ // remove module from cache -/******/ delete installedModules[moduleId]; -/******/ -/******/ // when disposing there is no need to call dispose handler -/******/ delete outdatedDependencies[moduleId]; -/******/ -/******/ // remove "parents" references from all children -/******/ for(j = 0; j < module.children.length; j++) { -/******/ var child = installedModules[module.children[j]]; -/******/ if(!child) continue; -/******/ idx = child.parents.indexOf(moduleId); -/******/ if(idx >= 0) { -/******/ child.parents.splice(idx, 1); -/******/ } -/******/ } -/******/ } -/******/ -/******/ // remove outdated dependency from module children -/******/ var dependency; -/******/ var moduleOutdatedDependencies; -/******/ for(moduleId in outdatedDependencies) { -/******/ if(Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)) { -/******/ module = installedModules[moduleId]; -/******/ if(module) { -/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; -/******/ for(j = 0; j < moduleOutdatedDependencies.length; j++) { -/******/ dependency = moduleOutdatedDependencies[j]; -/******/ idx = module.children.indexOf(dependency); -/******/ if(idx >= 0) module.children.splice(idx, 1); -/******/ } -/******/ } -/******/ } -/******/ } -/******/ -/******/ // Not in "apply" phase -/******/ hotSetStatus("apply"); -/******/ -/******/ hotCurrentHash = hotUpdateNewHash; -/******/ -/******/ // insert new code -/******/ for(moduleId in appliedUpdate) { -/******/ if(Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) { -/******/ modules[moduleId] = appliedUpdate[moduleId]; -/******/ } -/******/ } -/******/ -/******/ // call accept handlers -/******/ var error = null; -/******/ for(moduleId in outdatedDependencies) { -/******/ if(Object.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)) { -/******/ module = installedModules[moduleId]; -/******/ if(module) { -/******/ moduleOutdatedDependencies = outdatedDependencies[moduleId]; -/******/ var callbacks = []; -/******/ for(i = 0; i < moduleOutdatedDependencies.length; i++) { -/******/ dependency = moduleOutdatedDependencies[i]; -/******/ cb = module.hot._acceptedDependencies[dependency]; -/******/ if(cb) { -/******/ if(callbacks.indexOf(cb) >= 0) continue; -/******/ callbacks.push(cb); -/******/ } -/******/ } -/******/ for(i = 0; i < callbacks.length; i++) { -/******/ cb = callbacks[i]; -/******/ try { -/******/ cb(moduleOutdatedDependencies); -/******/ } catch(err) { -/******/ if(options.onErrored) { -/******/ options.onErrored({ -/******/ type: "accept-errored", -/******/ moduleId: moduleId, -/******/ dependencyId: moduleOutdatedDependencies[i], -/******/ error: err -/******/ }); -/******/ } -/******/ if(!options.ignoreErrored) { -/******/ if(!error) -/******/ error = err; -/******/ } -/******/ } -/******/ } -/******/ } -/******/ } -/******/ } -/******/ -/******/ // Load self accepted modules -/******/ for(i = 0; i < outdatedSelfAcceptedModules.length; i++) { -/******/ var item = outdatedSelfAcceptedModules[i]; -/******/ moduleId = item.module; -/******/ hotCurrentParents = [moduleId]; -/******/ try { -/******/ __webpack_require__(moduleId); -/******/ } catch(err) { -/******/ if(typeof item.errorHandler === "function") { -/******/ try { -/******/ item.errorHandler(err); -/******/ } catch(err2) { -/******/ if(options.onErrored) { -/******/ options.onErrored({ -/******/ type: "self-accept-error-handler-errored", -/******/ moduleId: moduleId, -/******/ error: err2, -/******/ orginalError: err, // TODO remove in webpack 4 -/******/ originalError: err -/******/ }); -/******/ } -/******/ if(!options.ignoreErrored) { -/******/ if(!error) -/******/ error = err2; -/******/ } -/******/ if(!error) -/******/ error = err; -/******/ } -/******/ } else { -/******/ if(options.onErrored) { -/******/ options.onErrored({ -/******/ type: "self-accept-errored", -/******/ moduleId: moduleId, -/******/ error: err -/******/ }); -/******/ } -/******/ if(!options.ignoreErrored) { -/******/ if(!error) -/******/ error = err; -/******/ } -/******/ } -/******/ } -/******/ } -/******/ -/******/ // handle errors in accept handlers and self accepted module load -/******/ if(error) { -/******/ hotSetStatus("fail"); -/******/ return Promise.reject(error); -/******/ } -/******/ -/******/ hotSetStatus("idle"); -/******/ return new Promise(function(resolve) { -/******/ resolve(outdatedModules); -/******/ }); -/******/ } -/******/ -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {}, -/******/ hot: hotCreateModule(moduleId), -/******/ parents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp), -/******/ children: [] -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId)); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = "/static"; -/******/ -/******/ // __webpack_hash__ -/******/ __webpack_require__.h = function() { return hotCurrentHash; }; -/******/ -/******/ // Load entry module and return exports -/******/ return hotCreateRequire("./src/main.js")(__webpack_require__.s = "./src/main.js"); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ "./node_modules/axios/index.js": -/***/ (function(module, exports, __webpack_require__) { - -eval("module.exports = __webpack_require__(\"./node_modules/axios/lib/axios.js\");//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanM/OWFkNSJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vbGliL2F4aW9zJyk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvaW5kZXguanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2luZGV4LmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/index.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/adapters/xhr.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar settle = __webpack_require__(\"./node_modules/axios/lib/core/settle.js\");\nvar buildURL = __webpack_require__(\"./node_modules/axios/lib/helpers/buildURL.js\");\nvar parseHeaders = __webpack_require__(\"./node_modules/axios/lib/helpers/parseHeaders.js\");\nvar isURLSameOrigin = __webpack_require__(\"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\nvar createError = __webpack_require__(\"./node_modules/axios/lib/core/createError.js\");\nvar btoa = (typeof window !== 'undefined' && window.btoa && window.btoa.bind(window)) || __webpack_require__(\"./node_modules/axios/lib/helpers/btoa.js\");\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n var loadEvent = 'onreadystatechange';\n var xDomain = false;\n\n // For IE 8/9 CORS support\n // Only supports POST and GET calls and doesn't returns the response headers.\n // DON'T do this for testing b/c XMLHttpRequest is mocked, not XDomainRequest.\n if (\"development\" !== 'test' &&\n typeof window !== 'undefined' &&\n window.XDomainRequest && !('withCredentials' in request) &&\n !isURLSameOrigin(config.url)) {\n request = new window.XDomainRequest();\n loadEvent = 'onload';\n xDomain = true;\n request.onprogress = function handleProgress() {};\n request.ontimeout = function handleTimeout() {};\n }\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request[loadEvent] = function handleLoad() {\n if (!request || (request.readyState !== 4 && !xDomain)) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n // IE sends 1223 instead of 204 (https://github.com/axios/axios/issues/201)\n status: request.status === 1223 ? 204 : request.status,\n statusText: request.status === 1223 ? 'No Content' : request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = __webpack_require__(\"./node_modules/axios/lib/helpers/cookies.js\");\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2FkYXB0ZXJzL3hoci5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzP2VjNmMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG52YXIgc2V0dGxlID0gcmVxdWlyZSgnLi8uLi9jb3JlL3NldHRsZScpO1xudmFyIGJ1aWxkVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J1aWxkVVJMJyk7XG52YXIgcGFyc2VIZWFkZXJzID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL3BhcnNlSGVhZGVycycpO1xudmFyIGlzVVJMU2FtZU9yaWdpbiA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9pc1VSTFNhbWVPcmlnaW4nKTtcbnZhciBjcmVhdGVFcnJvciA9IHJlcXVpcmUoJy4uL2NvcmUvY3JlYXRlRXJyb3InKTtcbnZhciBidG9hID0gKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5idG9hICYmIHdpbmRvdy5idG9hLmJpbmQod2luZG93KSkgfHwgcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2J0b2EnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB4aHJBZGFwdGVyKGNvbmZpZykge1xuICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gZGlzcGF0Y2hYaHJSZXF1ZXN0KHJlc29sdmUsIHJlamVjdCkge1xuICAgIHZhciByZXF1ZXN0RGF0YSA9IGNvbmZpZy5kYXRhO1xuICAgIHZhciByZXF1ZXN0SGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzO1xuXG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEocmVxdWVzdERhdGEpKSB7XG4gICAgICBkZWxldGUgcmVxdWVzdEhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddOyAvLyBMZXQgdGhlIGJyb3dzZXIgc2V0IGl0XG4gICAgfVxuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICB2YXIgbG9hZEV2ZW50ID0gJ29ucmVhZHlzdGF0ZWNoYW5nZSc7XG4gICAgdmFyIHhEb21haW4gPSBmYWxzZTtcblxuICAgIC8vIEZvciBJRSA4LzkgQ09SUyBzdXBwb3J0XG4gICAgLy8gT25seSBzdXBwb3J0cyBQT1NUIGFuZCBHRVQgY2FsbHMgYW5kIGRvZXNuJ3QgcmV0dXJucyB0aGUgcmVzcG9uc2UgaGVhZGVycy5cbiAgICAvLyBET04nVCBkbyB0aGlzIGZvciB0ZXN0aW5nIGIvYyBYTUxIdHRwUmVxdWVzdCBpcyBtb2NrZWQsIG5vdCBYRG9tYWluUmVxdWVzdC5cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0JyAmJlxuICAgICAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgICB3aW5kb3cuWERvbWFpblJlcXVlc3QgJiYgISgnd2l0aENyZWRlbnRpYWxzJyBpbiByZXF1ZXN0KSAmJlxuICAgICAgICAhaXNVUkxTYW1lT3JpZ2luKGNvbmZpZy51cmwpKSB7XG4gICAgICByZXF1ZXN0ID0gbmV3IHdpbmRvdy5YRG9tYWluUmVxdWVzdCgpO1xuICAgICAgbG9hZEV2ZW50ID0gJ29ubG9hZCc7XG4gICAgICB4RG9tYWluID0gdHJ1ZTtcbiAgICAgIHJlcXVlc3Qub25wcm9ncmVzcyA9IGZ1bmN0aW9uIGhhbmRsZVByb2dyZXNzKCkge307XG4gICAgICByZXF1ZXN0Lm9udGltZW91dCA9IGZ1bmN0aW9uIGhhbmRsZVRpbWVvdXQoKSB7fTtcbiAgICB9XG5cbiAgICAvLyBIVFRQIGJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAgaWYgKGNvbmZpZy5hdXRoKSB7XG4gICAgICB2YXIgdXNlcm5hbWUgPSBjb25maWcuYXV0aC51c2VybmFtZSB8fCAnJztcbiAgICAgIHZhciBwYXNzd29yZCA9IGNvbmZpZy5hdXRoLnBhc3N3b3JkIHx8ICcnO1xuICAgICAgcmVxdWVzdEhlYWRlcnMuQXV0aG9yaXphdGlvbiA9ICdCYXNpYyAnICsgYnRvYSh1c2VybmFtZSArICc6JyArIHBhc3N3b3JkKTtcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9wZW4oY29uZmlnLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBidWlsZFVSTChjb25maWcudXJsLCBjb25maWcucGFyYW1zLCBjb25maWcucGFyYW1zU2VyaWFsaXplciksIHRydWUpO1xuXG4gICAgLy8gU2V0IHRoZSByZXF1ZXN0IHRpbWVvdXQgaW4gTVNcbiAgICByZXF1ZXN0LnRpbWVvdXQgPSBjb25maWcudGltZW91dDtcblxuICAgIC8vIExpc3RlbiBmb3IgcmVhZHkgc3RhdGVcbiAgICByZXF1ZXN0W2xvYWRFdmVudF0gPSBmdW5jdGlvbiBoYW5kbGVMb2FkKCkge1xuICAgICAgaWYgKCFyZXF1ZXN0IHx8IChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQgJiYgIXhEb21haW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gVGhlIHJlcXVlc3QgZXJyb3JlZCBvdXQgYW5kIHdlIGRpZG4ndCBnZXQgYSByZXNwb25zZSwgdGhpcyB3aWxsIGJlXG4gICAgICAvLyBoYW5kbGVkIGJ5IG9uZXJyb3IgaW5zdGVhZFxuICAgICAgLy8gV2l0aCBvbmUgZXhjZXB0aW9uOiByZXF1ZXN0IHRoYXQgdXNpbmcgZmlsZTogcHJvdG9jb2wsIG1vc3QgYnJvd3NlcnNcbiAgICAgIC8vIHdpbGwgcmV0dXJuIHN0YXR1cyBhcyAwIGV2ZW4gdGhvdWdoIGl0J3MgYSBzdWNjZXNzZnVsIHJlcXVlc3RcbiAgICAgIGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCAmJiAhKHJlcXVlc3QucmVzcG9uc2VVUkwgJiYgcmVxdWVzdC5yZXNwb25zZVVSTC5pbmRleE9mKCdmaWxlOicpID09PSAwKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXBhcmUgdGhlIHJlc3BvbnNlXG4gICAgICB2YXIgcmVzcG9uc2VIZWFkZXJzID0gJ2dldEFsbFJlc3BvbnNlSGVhZGVycycgaW4gcmVxdWVzdCA/IHBhcnNlSGVhZGVycyhyZXF1ZXN0LmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGw7XG4gICAgICB2YXIgcmVzcG9uc2VEYXRhID0gIWNvbmZpZy5yZXNwb25zZVR5cGUgfHwgY29uZmlnLnJlc3BvbnNlVHlwZSA9PT0gJ3RleHQnID8gcmVxdWVzdC5yZXNwb25zZVRleHQgOiByZXF1ZXN0LnJlc3BvbnNlO1xuICAgICAgdmFyIHJlc3BvbnNlID0ge1xuICAgICAgICBkYXRhOiByZXNwb25zZURhdGEsXG4gICAgICAgIC8vIElFIHNlbmRzIDEyMjMgaW5zdGVhZCBvZiAyMDQgKGh0dHBzOi8vZ2l0aHViLmNvbS9heGlvcy9heGlvcy9pc3N1ZXMvMjAxKVxuICAgICAgICBzdGF0dXM6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gMjA0IDogcmVxdWVzdC5zdGF0dXMsXG4gICAgICAgIHN0YXR1c1RleHQ6IHJlcXVlc3Quc3RhdHVzID09PSAxMjIzID8gJ05vIENvbnRlbnQnIDogcmVxdWVzdC5zdGF0dXNUZXh0LFxuICAgICAgICBoZWFkZXJzOiByZXNwb25zZUhlYWRlcnMsXG4gICAgICAgIGNvbmZpZzogY29uZmlnLFxuICAgICAgICByZXF1ZXN0OiByZXF1ZXN0XG4gICAgICB9O1xuXG4gICAgICBzZXR0bGUocmVzb2x2ZSwgcmVqZWN0LCByZXNwb25zZSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgbG93IGxldmVsIG5ldHdvcmsgZXJyb3JzXG4gICAgcmVxdWVzdC5vbmVycm9yID0gZnVuY3Rpb24gaGFuZGxlRXJyb3IoKSB7XG4gICAgICAvLyBSZWFsIGVycm9ycyBhcmUgaGlkZGVuIGZyb20gdXMgYnkgdGhlIGJyb3dzZXJcbiAgICAgIC8vIG9uZXJyb3Igc2hvdWxkIG9ubHkgZmlyZSBpZiBpdCdzIGEgbmV0d29yayBlcnJvclxuICAgICAgcmVqZWN0KGNyZWF0ZUVycm9yKCdOZXR3b3JrIEVycm9yJywgY29uZmlnLCBudWxsLCByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgdGltZW91dFxuICAgIHJlcXVlc3Qub250aW1lb3V0ID0gZnVuY3Rpb24gaGFuZGxlVGltZW91dCgpIHtcbiAgICAgIHJlamVjdChjcmVhdGVFcnJvcigndGltZW91dCBvZiAnICsgY29uZmlnLnRpbWVvdXQgKyAnbXMgZXhjZWVkZWQnLCBjb25maWcsICdFQ09OTkFCT1JURUQnLFxuICAgICAgICByZXF1ZXN0KSk7XG5cbiAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgIHJlcXVlc3QgPSBudWxsO1xuICAgIH07XG5cbiAgICAvLyBBZGQgeHNyZiBoZWFkZXJcbiAgICAvLyBUaGlzIGlzIG9ubHkgZG9uZSBpZiBydW5uaW5nIGluIGEgc3RhbmRhcmQgYnJvd3NlciBlbnZpcm9ubWVudC5cbiAgICAvLyBTcGVjaWZpY2FsbHkgbm90IGlmIHdlJ3JlIGluIGEgd2ViIHdvcmtlciwgb3IgcmVhY3QtbmF0aXZlLlxuICAgIGlmICh1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7XG4gICAgICB2YXIgY29va2llcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb29raWVzJyk7XG5cbiAgICAgIC8vIEFkZCB4c3JmIGhlYWRlclxuICAgICAgdmFyIHhzcmZWYWx1ZSA9IChjb25maWcud2l0aENyZWRlbnRpYWxzIHx8IGlzVVJMU2FtZU9yaWdpbihjb25maWcudXJsKSkgJiYgY29uZmlnLnhzcmZDb29raWVOYW1lID9cbiAgICAgICAgICBjb29raWVzLnJlYWQoY29uZmlnLnhzcmZDb29raWVOYW1lKSA6XG4gICAgICAgICAgdW5kZWZpbmVkO1xuXG4gICAgICBpZiAoeHNyZlZhbHVlKSB7XG4gICAgICAgIHJlcXVlc3RIZWFkZXJzW2NvbmZpZy54c3JmSGVhZGVyTmFtZV0gPSB4c3JmVmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3RcbiAgICBpZiAoJ3NldFJlcXVlc3RIZWFkZXInIGluIHJlcXVlc3QpIHtcbiAgICAgIHV0aWxzLmZvckVhY2gocmVxdWVzdEhlYWRlcnMsIGZ1bmN0aW9uIHNldFJlcXVlc3RIZWFkZXIodmFsLCBrZXkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiByZXF1ZXN0RGF0YSA9PT0gJ3VuZGVmaW5lZCcgJiYga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnKSB7XG4gICAgICAgICAgLy8gUmVtb3ZlIENvbnRlbnQtVHlwZSBpZiBkYXRhIGlzIHVuZGVmaW5lZFxuICAgICAgICAgIGRlbGV0ZSByZXF1ZXN0SGVhZGVyc1trZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSBhZGQgaGVhZGVyIHRvIHRoZSByZXF1ZXN0XG4gICAgICAgICAgcmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIHdpdGhDcmVkZW50aWFscyB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcud2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICByZXF1ZXN0LndpdGhDcmVkZW50aWFscyA9IHRydWU7XG4gICAgfVxuXG4gICAgLy8gQWRkIHJlc3BvbnNlVHlwZSB0byByZXF1ZXN0IGlmIG5lZWRlZFxuICAgIGlmIChjb25maWcucmVzcG9uc2VUeXBlKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9IGNvbmZpZy5yZXNwb25zZVR5cGU7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIEV4cGVjdGVkIERPTUV4Y2VwdGlvbiB0aHJvd24gYnkgYnJvd3NlcnMgbm90IGNvbXBhdGlibGUgWE1MSHR0cFJlcXVlc3QgTGV2ZWwgMi5cbiAgICAgICAgLy8gQnV0LCB0aGlzIGNhbiBiZSBzdXBwcmVzc2VkIGZvciAnanNvbicgdHlwZSBhcyBpdCBjYW4gYmUgcGFyc2VkIGJ5IGRlZmF1bHQgJ3RyYW5zZm9ybVJlc3BvbnNlJyBmdW5jdGlvbi5cbiAgICAgICAgaWYgKGNvbmZpZy5yZXNwb25zZVR5cGUgIT09ICdqc29uJykge1xuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgcHJvZ3Jlc3MgaWYgbmVlZGVkXG4gICAgaWYgKHR5cGVvZiBjb25maWcub25Eb3dubG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXF1ZXN0LmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgY29uZmlnLm9uRG93bmxvYWRQcm9ncmVzcyk7XG4gICAgfVxuXG4gICAgLy8gTm90IGFsbCBicm93c2VycyBzdXBwb3J0IHVwbG9hZCBldmVudHNcbiAgICBpZiAodHlwZW9mIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzID09PSAnZnVuY3Rpb24nICYmIHJlcXVlc3QudXBsb2FkKSB7XG4gICAgICByZXF1ZXN0LnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGNvbmZpZy5vblVwbG9hZFByb2dyZXNzKTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmNhbmNlbFRva2VuKSB7XG4gICAgICAvLyBIYW5kbGUgY2FuY2VsbGF0aW9uXG4gICAgICBjb25maWcuY2FuY2VsVG9rZW4ucHJvbWlzZS50aGVuKGZ1bmN0aW9uIG9uQ2FuY2VsZWQoY2FuY2VsKSB7XG4gICAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlcXVlc3QuYWJvcnQoKTtcbiAgICAgICAgcmVqZWN0KGNhbmNlbCk7XG4gICAgICAgIC8vIENsZWFuIHVwIHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdCA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocmVxdWVzdERhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdERhdGEgPSBudWxsO1xuICAgIH1cblxuICAgIC8vIFNlbmQgdGhlIHJlcXVlc3RcbiAgICByZXF1ZXN0LnNlbmQocmVxdWVzdERhdGEpO1xuICB9KTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYWRhcHRlcnMveGhyLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/adapters/xhr.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/axios.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar bind = __webpack_require__(\"./node_modules/axios/lib/helpers/bind.js\");\nvar Axios = __webpack_require__(\"./node_modules/axios/lib/core/Axios.js\");\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(utils.merge(defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = __webpack_require__(\"./node_modules/axios/lib/cancel/Cancel.js\");\naxios.CancelToken = __webpack_require__(\"./node_modules/axios/lib/cancel/CancelToken.js\");\naxios.isCancel = __webpack_require__(\"./node_modules/axios/lib/cancel/isCancel.js\");\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = __webpack_require__(\"./node_modules/axios/lib/helpers/spread.js\");\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2F4aW9zLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qcz9iNDgxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIEF4aW9zID0gcmVxdWlyZSgnLi9jb3JlL0F4aW9zJyk7XG52YXIgZGVmYXVsdHMgPSByZXF1aXJlKCcuL2RlZmF1bHRzJyk7XG5cbi8qKlxuICogQ3JlYXRlIGFuIGluc3RhbmNlIG9mIEF4aW9zXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGRlZmF1bHRDb25maWcgVGhlIGRlZmF1bHQgY29uZmlnIGZvciB0aGUgaW5zdGFuY2VcbiAqIEByZXR1cm4ge0F4aW9zfSBBIG5ldyBpbnN0YW5jZSBvZiBBeGlvc1xuICovXG5mdW5jdGlvbiBjcmVhdGVJbnN0YW5jZShkZWZhdWx0Q29uZmlnKSB7XG4gIHZhciBjb250ZXh0ID0gbmV3IEF4aW9zKGRlZmF1bHRDb25maWcpO1xuICB2YXIgaW5zdGFuY2UgPSBiaW5kKEF4aW9zLnByb3RvdHlwZS5yZXF1ZXN0LCBjb250ZXh0KTtcblxuICAvLyBDb3B5IGF4aW9zLnByb3RvdHlwZSB0byBpbnN0YW5jZVxuICB1dGlscy5leHRlbmQoaW5zdGFuY2UsIEF4aW9zLnByb3RvdHlwZSwgY29udGV4dCk7XG5cbiAgLy8gQ29weSBjb250ZXh0IHRvIGluc3RhbmNlXG4gIHV0aWxzLmV4dGVuZChpbnN0YW5jZSwgY29udGV4dCk7XG5cbiAgcmV0dXJuIGluc3RhbmNlO1xufVxuXG4vLyBDcmVhdGUgdGhlIGRlZmF1bHQgaW5zdGFuY2UgdG8gYmUgZXhwb3J0ZWRcbnZhciBheGlvcyA9IGNyZWF0ZUluc3RhbmNlKGRlZmF1bHRzKTtcblxuLy8gRXhwb3NlIEF4aW9zIGNsYXNzIHRvIGFsbG93IGNsYXNzIGluaGVyaXRhbmNlXG5heGlvcy5BeGlvcyA9IEF4aW9zO1xuXG4vLyBGYWN0b3J5IGZvciBjcmVhdGluZyBuZXcgaW5zdGFuY2VzXG5heGlvcy5jcmVhdGUgPSBmdW5jdGlvbiBjcmVhdGUoaW5zdGFuY2VDb25maWcpIHtcbiAgcmV0dXJuIGNyZWF0ZUluc3RhbmNlKHV0aWxzLm1lcmdlKGRlZmF1bHRzLCBpbnN0YW5jZUNvbmZpZykpO1xufTtcblxuLy8gRXhwb3NlIENhbmNlbCAmIENhbmNlbFRva2VuXG5heGlvcy5DYW5jZWwgPSByZXF1aXJlKCcuL2NhbmNlbC9DYW5jZWwnKTtcbmF4aW9zLkNhbmNlbFRva2VuID0gcmVxdWlyZSgnLi9jYW5jZWwvQ2FuY2VsVG9rZW4nKTtcbmF4aW9zLmlzQ2FuY2VsID0gcmVxdWlyZSgnLi9jYW5jZWwvaXNDYW5jZWwnKTtcblxuLy8gRXhwb3NlIGFsbC9zcHJlYWRcbmF4aW9zLmFsbCA9IGZ1bmN0aW9uIGFsbChwcm9taXNlcykge1xuICByZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xufTtcbmF4aW9zLnNwcmVhZCA9IHJlcXVpcmUoJy4vaGVscGVycy9zcHJlYWQnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBheGlvcztcblxuLy8gQWxsb3cgdXNlIG9mIGRlZmF1bHQgaW1wb3J0IHN5bnRheCBpbiBUeXBlU2NyaXB0XG5tb2R1bGUuZXhwb3J0cy5kZWZhdWx0ID0gYXhpb3M7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvYXhpb3MuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9heGlvcy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/axios.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/cancel/Cancel.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWwuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWwuanM/NzU1MyJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQSBgQ2FuY2VsYCBpcyBhbiBvYmplY3QgdGhhdCBpcyB0aHJvd24gd2hlbiBhbiBvcGVyYXRpb24gaXMgY2FuY2VsZWQuXG4gKlxuICogQGNsYXNzXG4gKiBAcGFyYW0ge3N0cmluZz19IG1lc3NhZ2UgVGhlIG1lc3NhZ2UuXG4gKi9cbmZ1bmN0aW9uIENhbmNlbChtZXNzYWdlKSB7XG4gIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG59XG5cbkNhbmNlbC5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZygpIHtcbiAgcmV0dXJuICdDYW5jZWwnICsgKHRoaXMubWVzc2FnZSA/ICc6ICcgKyB0aGlzLm1lc3NhZ2UgOiAnJyk7XG59O1xuXG5DYW5jZWwucHJvdG90eXBlLl9fQ0FOQ0VMX18gPSB0cnVlO1xuXG5tb2R1bGUuZXhwb3J0cyA9IENhbmNlbDtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/Cancel.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/cancel/CancelToken.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar Cancel = __webpack_require__(\"./node_modules/axios/lib/cancel/Cancel.js\");\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9DYW5jZWxUb2tlbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL0NhbmNlbFRva2VuLmpzPzcxNmMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQ2FuY2VsID0gcmVxdWlyZSgnLi9DYW5jZWwnKTtcblxuLyoqXG4gKiBBIGBDYW5jZWxUb2tlbmAgaXMgYW4gb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQgdG8gcmVxdWVzdCBjYW5jZWxsYXRpb24gb2YgYW4gb3BlcmF0aW9uLlxuICpcbiAqIEBjbGFzc1xuICogQHBhcmFtIHtGdW5jdGlvbn0gZXhlY3V0b3IgVGhlIGV4ZWN1dG9yIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiBDYW5jZWxUb2tlbihleGVjdXRvcikge1xuICBpZiAodHlwZW9mIGV4ZWN1dG9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignZXhlY3V0b3IgbXVzdCBiZSBhIGZ1bmN0aW9uLicpO1xuICB9XG5cbiAgdmFyIHJlc29sdmVQcm9taXNlO1xuICB0aGlzLnByb21pc2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiBwcm9taXNlRXhlY3V0b3IocmVzb2x2ZSkge1xuICAgIHJlc29sdmVQcm9taXNlID0gcmVzb2x2ZTtcbiAgfSk7XG5cbiAgdmFyIHRva2VuID0gdGhpcztcbiAgZXhlY3V0b3IoZnVuY3Rpb24gY2FuY2VsKG1lc3NhZ2UpIHtcbiAgICBpZiAodG9rZW4ucmVhc29uKSB7XG4gICAgICAvLyBDYW5jZWxsYXRpb24gaGFzIGFscmVhZHkgYmVlbiByZXF1ZXN0ZWRcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0b2tlbi5yZWFzb24gPSBuZXcgQ2FuY2VsKG1lc3NhZ2UpO1xuICAgIHJlc29sdmVQcm9taXNlKHRva2VuLnJlYXNvbik7XG4gIH0pO1xufVxuXG4vKipcbiAqIFRocm93cyBhIGBDYW5jZWxgIGlmIGNhbmNlbGxhdGlvbiBoYXMgYmVlbiByZXF1ZXN0ZWQuXG4gKi9cbkNhbmNlbFRva2VuLnByb3RvdHlwZS50aHJvd0lmUmVxdWVzdGVkID0gZnVuY3Rpb24gdGhyb3dJZlJlcXVlc3RlZCgpIHtcbiAgaWYgKHRoaXMucmVhc29uKSB7XG4gICAgdGhyb3cgdGhpcy5yZWFzb247XG4gIH1cbn07XG5cbi8qKlxuICogUmV0dXJucyBhbiBvYmplY3QgdGhhdCBjb250YWlucyBhIG5ldyBgQ2FuY2VsVG9rZW5gIGFuZCBhIGZ1bmN0aW9uIHRoYXQsIHdoZW4gY2FsbGVkLFxuICogY2FuY2VscyB0aGUgYENhbmNlbFRva2VuYC5cbiAqL1xuQ2FuY2VsVG9rZW4uc291cmNlID0gZnVuY3Rpb24gc291cmNlKCkge1xuICB2YXIgY2FuY2VsO1xuICB2YXIgdG9rZW4gPSBuZXcgQ2FuY2VsVG9rZW4oZnVuY3Rpb24gZXhlY3V0b3IoYykge1xuICAgIGNhbmNlbCA9IGM7XG4gIH0pO1xuICByZXR1cm4ge1xuICAgIHRva2VuOiB0b2tlbixcbiAgICBjYW5jZWw6IGNhbmNlbFxuICB9O1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBDYW5jZWxUb2tlbjtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsVG9rZW4uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jYW5jZWwvQ2FuY2VsVG9rZW4uanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/CancelToken.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/cancel/isCancel.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NhbmNlbC9pc0NhbmNlbC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzP2E0MWIiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGlzQ2FuY2VsKHZhbHVlKSB7XG4gIHJldHVybiAhISh2YWx1ZSAmJiB2YWx1ZS5fX0NBTkNFTF9fKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY2FuY2VsL2lzQ2FuY2VsLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/cancel/isCancel.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/Axios.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar InterceptorManager = __webpack_require__(\"./node_modules/axios/lib/core/InterceptorManager.js\");\nvar dispatchRequest = __webpack_require__(\"./node_modules/axios/lib/core/dispatchRequest.js\");\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = utils.merge({\n url: arguments[0]\n }, arguments[1]);\n }\n\n config = utils.merge(defaults, {method: 'get'}, this.defaults, config);\n config.method = config.method.toLowerCase();\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanM/NWU2NSJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciBkZWZhdWx0cyA9IHJlcXVpcmUoJy4vLi4vZGVmYXVsdHMnKTtcbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcbnZhciBJbnRlcmNlcHRvck1hbmFnZXIgPSByZXF1aXJlKCcuL0ludGVyY2VwdG9yTWFuYWdlcicpO1xudmFyIGRpc3BhdGNoUmVxdWVzdCA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hSZXF1ZXN0Jyk7XG5cbi8qKlxuICogQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIEF4aW9zXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGluc3RhbmNlQ29uZmlnIFRoZSBkZWZhdWx0IGNvbmZpZyBmb3IgdGhlIGluc3RhbmNlXG4gKi9cbmZ1bmN0aW9uIEF4aW9zKGluc3RhbmNlQ29uZmlnKSB7XG4gIHRoaXMuZGVmYXVsdHMgPSBpbnN0YW5jZUNvbmZpZztcbiAgdGhpcy5pbnRlcmNlcHRvcnMgPSB7XG4gICAgcmVxdWVzdDogbmV3IEludGVyY2VwdG9yTWFuYWdlcigpLFxuICAgIHJlc3BvbnNlOiBuZXcgSW50ZXJjZXB0b3JNYW5hZ2VyKClcbiAgfTtcbn1cblxuLyoqXG4gKiBEaXNwYXRjaCBhIHJlcXVlc3RcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcgc3BlY2lmaWMgZm9yIHRoaXMgcmVxdWVzdCAobWVyZ2VkIHdpdGggdGhpcy5kZWZhdWx0cylcbiAqL1xuQXhpb3MucHJvdG90eXBlLnJlcXVlc3QgPSBmdW5jdGlvbiByZXF1ZXN0KGNvbmZpZykge1xuICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgLy8gQWxsb3cgZm9yIGF4aW9zKCdleGFtcGxlL3VybCdbLCBjb25maWddKSBhIGxhIGZldGNoIEFQSVxuICBpZiAodHlwZW9mIGNvbmZpZyA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25maWcgPSB1dGlscy5tZXJnZSh7XG4gICAgICB1cmw6IGFyZ3VtZW50c1swXVxuICAgIH0sIGFyZ3VtZW50c1sxXSk7XG4gIH1cblxuICBjb25maWcgPSB1dGlscy5tZXJnZShkZWZhdWx0cywge21ldGhvZDogJ2dldCd9LCB0aGlzLmRlZmF1bHRzLCBjb25maWcpO1xuICBjb25maWcubWV0aG9kID0gY29uZmlnLm1ldGhvZC50b0xvd2VyQ2FzZSgpO1xuXG4gIC8vIEhvb2sgdXAgaW50ZXJjZXB0b3JzIG1pZGRsZXdhcmVcbiAgdmFyIGNoYWluID0gW2Rpc3BhdGNoUmVxdWVzdCwgdW5kZWZpbmVkXTtcbiAgdmFyIHByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoY29uZmlnKTtcblxuICB0aGlzLmludGVyY2VwdG9ycy5yZXF1ZXN0LmZvckVhY2goZnVuY3Rpb24gdW5zaGlmdFJlcXVlc3RJbnRlcmNlcHRvcnMoaW50ZXJjZXB0b3IpIHtcbiAgICBjaGFpbi51bnNoaWZ0KGludGVyY2VwdG9yLmZ1bGZpbGxlZCwgaW50ZXJjZXB0b3IucmVqZWN0ZWQpO1xuICB9KTtcblxuICB0aGlzLmludGVyY2VwdG9ycy5yZXNwb25zZS5mb3JFYWNoKGZ1bmN0aW9uIHB1c2hSZXNwb25zZUludGVyY2VwdG9ycyhpbnRlcmNlcHRvcikge1xuICAgIGNoYWluLnB1c2goaW50ZXJjZXB0b3IuZnVsZmlsbGVkLCBpbnRlcmNlcHRvci5yZWplY3RlZCk7XG4gIH0pO1xuXG4gIHdoaWxlIChjaGFpbi5sZW5ndGgpIHtcbiAgICBwcm9taXNlID0gcHJvbWlzZS50aGVuKGNoYWluLnNoaWZ0KCksIGNoYWluLnNoaWZ0KCkpO1xuICB9XG5cbiAgcmV0dXJuIHByb21pc2U7XG59O1xuXG4vLyBQcm92aWRlIGFsaWFzZXMgZm9yIHN1cHBvcnRlZCByZXF1ZXN0IG1ldGhvZHNcbnV0aWxzLmZvckVhY2goWydkZWxldGUnLCAnZ2V0JywgJ2hlYWQnLCAnb3B0aW9ucyddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kTm9EYXRhKG1ldGhvZCkge1xuICAvKmVzbGludCBmdW5jLW5hbWVzOjAqL1xuICBBeGlvcy5wcm90b3R5cGVbbWV0aG9kXSA9IGZ1bmN0aW9uKHVybCwgY29uZmlnKSB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdCh1dGlscy5tZXJnZShjb25maWcgfHwge30sIHtcbiAgICAgIG1ldGhvZDogbWV0aG9kLFxuICAgICAgdXJsOiB1cmxcbiAgICB9KSk7XG4gIH07XG59KTtcblxudXRpbHMuZm9yRWFjaChbJ3Bvc3QnLCAncHV0JywgJ3BhdGNoJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2RXaXRoRGF0YShtZXRob2QpIHtcbiAgLyplc2xpbnQgZnVuYy1uYW1lczowKi9cbiAgQXhpb3MucHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbih1cmwsIGRhdGEsIGNvbmZpZykge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QodXRpbHMubWVyZ2UoY29uZmlnIHx8IHt9LCB7XG4gICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgIHVybDogdXJsLFxuICAgICAgZGF0YTogZGF0YVxuICAgIH0pKTtcbiAgfTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IEF4aW9zO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvQXhpb3MuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0F4aW9zLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/Axios.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/InterceptorManager.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvSW50ZXJjZXB0b3JNYW5hZ2VyLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0ludGVyY2VwdG9yTWFuYWdlci5qcz83ZWUxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5mdW5jdGlvbiBJbnRlcmNlcHRvck1hbmFnZXIoKSB7XG4gIHRoaXMuaGFuZGxlcnMgPSBbXTtcbn1cblxuLyoqXG4gKiBBZGQgYSBuZXcgaW50ZXJjZXB0b3IgdG8gdGhlIHN0YWNrXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gZnVsZmlsbGVkIFRoZSBmdW5jdGlvbiB0byBoYW5kbGUgYHRoZW5gIGZvciBhIGBQcm9taXNlYFxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVqZWN0ZWQgVGhlIGZ1bmN0aW9uIHRvIGhhbmRsZSBgcmVqZWN0YCBmb3IgYSBgUHJvbWlzZWBcbiAqXG4gKiBAcmV0dXJuIHtOdW1iZXJ9IEFuIElEIHVzZWQgdG8gcmVtb3ZlIGludGVyY2VwdG9yIGxhdGVyXG4gKi9cbkludGVyY2VwdG9yTWFuYWdlci5wcm90b3R5cGUudXNlID0gZnVuY3Rpb24gdXNlKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpIHtcbiAgdGhpcy5oYW5kbGVycy5wdXNoKHtcbiAgICBmdWxmaWxsZWQ6IGZ1bGZpbGxlZCxcbiAgICByZWplY3RlZDogcmVqZWN0ZWRcbiAgfSk7XG4gIHJldHVybiB0aGlzLmhhbmRsZXJzLmxlbmd0aCAtIDE7XG59O1xuXG4vKipcbiAqIFJlbW92ZSBhbiBpbnRlcmNlcHRvciBmcm9tIHRoZSBzdGFja1xuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBpZCBUaGUgSUQgdGhhdCB3YXMgcmV0dXJuZWQgYnkgYHVzZWBcbiAqL1xuSW50ZXJjZXB0b3JNYW5hZ2VyLnByb3RvdHlwZS5lamVjdCA9IGZ1bmN0aW9uIGVqZWN0KGlkKSB7XG4gIGlmICh0aGlzLmhhbmRsZXJzW2lkXSkge1xuICAgIHRoaXMuaGFuZGxlcnNbaWRdID0gbnVsbDtcbiAgfVxufTtcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgYWxsIHRoZSByZWdpc3RlcmVkIGludGVyY2VwdG9yc1xuICpcbiAqIFRoaXMgbWV0aG9kIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIHNraXBwaW5nIG92ZXIgYW55XG4gKiBpbnRlcmNlcHRvcnMgdGhhdCBtYXkgaGF2ZSBiZWNvbWUgYG51bGxgIGNhbGxpbmcgYGVqZWN0YC5cbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgZnVuY3Rpb24gdG8gY2FsbCBmb3IgZWFjaCBpbnRlcmNlcHRvclxuICovXG5JbnRlcmNlcHRvck1hbmFnZXIucHJvdG90eXBlLmZvckVhY2ggPSBmdW5jdGlvbiBmb3JFYWNoKGZuKSB7XG4gIHV0aWxzLmZvckVhY2godGhpcy5oYW5kbGVycywgZnVuY3Rpb24gZm9yRWFjaEhhbmRsZXIoaCkge1xuICAgIGlmIChoICE9PSBudWxsKSB7XG4gICAgICBmbihoKTtcbiAgICB9XG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSBJbnRlcmNlcHRvck1hbmFnZXI7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9JbnRlcmNlcHRvck1hbmFnZXIuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL0ludGVyY2VwdG9yTWFuYWdlci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/InterceptorManager.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/createError.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar enhanceError = __webpack_require__(\"./node_modules/axios/lib/core/enhanceError.js\");\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanM/MTZkMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciBlbmhhbmNlRXJyb3IgPSByZXF1aXJlKCcuL2VuaGFuY2VFcnJvcicpO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBFcnJvciB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSwgY29uZmlnLCBlcnJvciBjb2RlLCByZXF1ZXN0IGFuZCByZXNwb25zZS5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZSBUaGUgZXJyb3IgbWVzc2FnZS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBjb25maWcgVGhlIGNvbmZpZy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbY29kZV0gVGhlIGVycm9yIGNvZGUgKGZvciBleGFtcGxlLCAnRUNPTk5BQk9SVEVEJykuXG4gKiBAcGFyYW0ge09iamVjdH0gW3JlcXVlc3RdIFRoZSByZXF1ZXN0LlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXNwb25zZV0gVGhlIHJlc3BvbnNlLlxuICogQHJldHVybnMge0Vycm9yfSBUaGUgY3JlYXRlZCBlcnJvci5cbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjcmVhdGVFcnJvcihtZXNzYWdlLCBjb25maWcsIGNvZGUsIHJlcXVlc3QsIHJlc3BvbnNlKSB7XG4gIHZhciBlcnJvciA9IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgcmV0dXJuIGVuaGFuY2VFcnJvcihlcnJvciwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvY3JlYXRlRXJyb3IuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2NyZWF0ZUVycm9yLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/createError.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/dispatchRequest.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar transformData = __webpack_require__(\"./node_modules/axios/lib/core/transformData.js\");\nvar isCancel = __webpack_require__(\"./node_modules/axios/lib/cancel/isCancel.js\");\nvar defaults = __webpack_require__(\"./node_modules/axios/lib/defaults.js\");\nvar isAbsoluteURL = __webpack_require__(\"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\nvar combineURLs = __webpack_require__(\"./node_modules/axios/lib/helpers/combineURLs.js\");\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Support baseURL config\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers || {}\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2Rpc3BhdGNoUmVxdWVzdC5qcz9jNGJiIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xudmFyIHRyYW5zZm9ybURhdGEgPSByZXF1aXJlKCcuL3RyYW5zZm9ybURhdGEnKTtcbnZhciBpc0NhbmNlbCA9IHJlcXVpcmUoJy4uL2NhbmNlbC9pc0NhbmNlbCcpO1xudmFyIGRlZmF1bHRzID0gcmVxdWlyZSgnLi4vZGVmYXVsdHMnKTtcbnZhciBpc0Fic29sdXRlVVJMID0gcmVxdWlyZSgnLi8uLi9oZWxwZXJzL2lzQWJzb2x1dGVVUkwnKTtcbnZhciBjb21iaW5lVVJMcyA9IHJlcXVpcmUoJy4vLi4vaGVscGVycy9jb21iaW5lVVJMcycpO1xuXG4vKipcbiAqIFRocm93cyBhIGBDYW5jZWxgIGlmIGNhbmNlbGxhdGlvbiBoYXMgYmVlbiByZXF1ZXN0ZWQuXG4gKi9cbmZ1bmN0aW9uIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKSB7XG4gIGlmIChjb25maWcuY2FuY2VsVG9rZW4pIHtcbiAgICBjb25maWcuY2FuY2VsVG9rZW4udGhyb3dJZlJlcXVlc3RlZCgpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGF0Y2ggYSByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIgdXNpbmcgdGhlIGNvbmZpZ3VyZWQgYWRhcHRlci5cbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gY29uZmlnIFRoZSBjb25maWcgdGhhdCBpcyB0byBiZSB1c2VkIGZvciB0aGUgcmVxdWVzdFxuICogQHJldHVybnMge1Byb21pc2V9IFRoZSBQcm9taXNlIHRvIGJlIGZ1bGZpbGxlZFxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGRpc3BhdGNoUmVxdWVzdChjb25maWcpIHtcbiAgdGhyb3dJZkNhbmNlbGxhdGlvblJlcXVlc3RlZChjb25maWcpO1xuXG4gIC8vIFN1cHBvcnQgYmFzZVVSTCBjb25maWdcbiAgaWYgKGNvbmZpZy5iYXNlVVJMICYmICFpc0Fic29sdXRlVVJMKGNvbmZpZy51cmwpKSB7XG4gICAgY29uZmlnLnVybCA9IGNvbWJpbmVVUkxzKGNvbmZpZy5iYXNlVVJMLCBjb25maWcudXJsKTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBoZWFkZXJzIGV4aXN0XG4gIGNvbmZpZy5oZWFkZXJzID0gY29uZmlnLmhlYWRlcnMgfHwge307XG5cbiAgLy8gVHJhbnNmb3JtIHJlcXVlc3QgZGF0YVxuICBjb25maWcuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgY29uZmlnLmRhdGEsXG4gICAgY29uZmlnLmhlYWRlcnMsXG4gICAgY29uZmlnLnRyYW5zZm9ybVJlcXVlc3RcbiAgKTtcblxuICAvLyBGbGF0dGVuIGhlYWRlcnNcbiAgY29uZmlnLmhlYWRlcnMgPSB1dGlscy5tZXJnZShcbiAgICBjb25maWcuaGVhZGVycy5jb21tb24gfHwge30sXG4gICAgY29uZmlnLmhlYWRlcnNbY29uZmlnLm1ldGhvZF0gfHwge30sXG4gICAgY29uZmlnLmhlYWRlcnMgfHwge31cbiAgKTtcblxuICB1dGlscy5mb3JFYWNoKFxuICAgIFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJywgJ3Bvc3QnLCAncHV0JywgJ3BhdGNoJywgJ2NvbW1vbiddLFxuICAgIGZ1bmN0aW9uIGNsZWFuSGVhZGVyQ29uZmlnKG1ldGhvZCkge1xuICAgICAgZGVsZXRlIGNvbmZpZy5oZWFkZXJzW21ldGhvZF07XG4gICAgfVxuICApO1xuXG4gIHZhciBhZGFwdGVyID0gY29uZmlnLmFkYXB0ZXIgfHwgZGVmYXVsdHMuYWRhcHRlcjtcblxuICByZXR1cm4gYWRhcHRlcihjb25maWcpLnRoZW4oZnVuY3Rpb24gb25BZGFwdGVyUmVzb2x1dGlvbihyZXNwb25zZSkge1xuICAgIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAgIC8vIFRyYW5zZm9ybSByZXNwb25zZSBkYXRhXG4gICAgcmVzcG9uc2UuZGF0YSA9IHRyYW5zZm9ybURhdGEoXG4gICAgICByZXNwb25zZS5kYXRhLFxuICAgICAgcmVzcG9uc2UuaGVhZGVycyxcbiAgICAgIGNvbmZpZy50cmFuc2Zvcm1SZXNwb25zZVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzcG9uc2U7XG4gIH0sIGZ1bmN0aW9uIG9uQWRhcHRlclJlamVjdGlvbihyZWFzb24pIHtcbiAgICBpZiAoIWlzQ2FuY2VsKHJlYXNvbikpIHtcbiAgICAgIHRocm93SWZDYW5jZWxsYXRpb25SZXF1ZXN0ZWQoY29uZmlnKTtcblxuICAgICAgLy8gVHJhbnNmb3JtIHJlc3BvbnNlIGRhdGFcbiAgICAgIGlmIChyZWFzb24gJiYgcmVhc29uLnJlc3BvbnNlKSB7XG4gICAgICAgIHJlYXNvbi5yZXNwb25zZS5kYXRhID0gdHJhbnNmb3JtRGF0YShcbiAgICAgICAgICByZWFzb24ucmVzcG9uc2UuZGF0YSxcbiAgICAgICAgICByZWFzb24ucmVzcG9uc2UuaGVhZGVycyxcbiAgICAgICAgICBjb25maWcudHJhbnNmb3JtUmVzcG9uc2VcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QocmVhc29uKTtcbiAgfSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZGlzcGF0Y2hSZXF1ZXN0LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9kaXNwYXRjaFJlcXVlc3QuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/dispatchRequest.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/enhanceError.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n return error;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvZW5oYW5jZUVycm9yLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2VuaGFuY2VFcnJvci5qcz9iN2NhIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBVcGRhdGUgYW4gRXJyb3Igd2l0aCB0aGUgc3BlY2lmaWVkIGNvbmZpZywgZXJyb3IgY29kZSwgYW5kIHJlc3BvbnNlLlxuICpcbiAqIEBwYXJhbSB7RXJyb3J9IGVycm9yIFRoZSBlcnJvciB0byB1cGRhdGUuXG4gKiBAcGFyYW0ge09iamVjdH0gY29uZmlnIFRoZSBjb25maWcuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2NvZGVdIFRoZSBlcnJvciBjb2RlIChmb3IgZXhhbXBsZSwgJ0VDT05OQUJPUlRFRCcpLlxuICogQHBhcmFtIHtPYmplY3R9IFtyZXF1ZXN0XSBUaGUgcmVxdWVzdC5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbcmVzcG9uc2VdIFRoZSByZXNwb25zZS5cbiAqIEByZXR1cm5zIHtFcnJvcn0gVGhlIGVycm9yLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGVuaGFuY2VFcnJvcihlcnJvciwgY29uZmlnLCBjb2RlLCByZXF1ZXN0LCByZXNwb25zZSkge1xuICBlcnJvci5jb25maWcgPSBjb25maWc7XG4gIGlmIChjb2RlKSB7XG4gICAgZXJyb3IuY29kZSA9IGNvZGU7XG4gIH1cbiAgZXJyb3IucmVxdWVzdCA9IHJlcXVlc3Q7XG4gIGVycm9yLnJlc3BvbnNlID0gcmVzcG9uc2U7XG4gIHJldHVybiBlcnJvcjtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS9lbmhhbmNlRXJyb3IuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL2VuaGFuY2VFcnJvci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/enhanceError.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/settle.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar createError = __webpack_require__(\"./node_modules/axios/lib/core/createError.js\");\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n // Note: status is not exposed by XDomainRequest\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qcz9kYjUyIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGNyZWF0ZUVycm9yID0gcmVxdWlyZSgnLi9jcmVhdGVFcnJvcicpO1xuXG4vKipcbiAqIFJlc29sdmUgb3IgcmVqZWN0IGEgUHJvbWlzZSBiYXNlZCBvbiByZXNwb25zZSBzdGF0dXMuXG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVzb2x2ZSBBIGZ1bmN0aW9uIHRoYXQgcmVzb2x2ZXMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSByZWplY3QgQSBmdW5jdGlvbiB0aGF0IHJlamVjdHMgdGhlIHByb21pc2UuXG4gKiBAcGFyYW0ge29iamVjdH0gcmVzcG9uc2UgVGhlIHJlc3BvbnNlLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIHNldHRsZShyZXNvbHZlLCByZWplY3QsIHJlc3BvbnNlKSB7XG4gIHZhciB2YWxpZGF0ZVN0YXR1cyA9IHJlc3BvbnNlLmNvbmZpZy52YWxpZGF0ZVN0YXR1cztcbiAgLy8gTm90ZTogc3RhdHVzIGlzIG5vdCBleHBvc2VkIGJ5IFhEb21haW5SZXF1ZXN0XG4gIGlmICghcmVzcG9uc2Uuc3RhdHVzIHx8ICF2YWxpZGF0ZVN0YXR1cyB8fCB2YWxpZGF0ZVN0YXR1cyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gIH0gZWxzZSB7XG4gICAgcmVqZWN0KGNyZWF0ZUVycm9yKFxuICAgICAgJ1JlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzIGNvZGUgJyArIHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgIHJlc3BvbnNlLmNvbmZpZyxcbiAgICAgIG51bGwsXG4gICAgICByZXNwb25zZS5yZXF1ZXN0LFxuICAgICAgcmVzcG9uc2VcbiAgICApKTtcbiAgfVxufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9jb3JlL3NldHRsZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvc2V0dGxlLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/settle.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/core/transformData.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvY29yZS90cmFuc2Zvcm1EYXRhLmpzPzRjZDUiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbi8qKlxuICogVHJhbnNmb3JtIHRoZSBkYXRhIGZvciBhIHJlcXVlc3Qgb3IgYSByZXNwb25zZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fFN0cmluZ30gZGF0YSBUaGUgZGF0YSB0byBiZSB0cmFuc2Zvcm1lZFxuICogQHBhcmFtIHtBcnJheX0gaGVhZGVycyBUaGUgaGVhZGVycyBmb3IgdGhlIHJlcXVlc3Qgb3IgcmVzcG9uc2VcbiAqIEBwYXJhbSB7QXJyYXl8RnVuY3Rpb259IGZucyBBIHNpbmdsZSBmdW5jdGlvbiBvciBBcnJheSBvZiBmdW5jdGlvbnNcbiAqIEByZXR1cm5zIHsqfSBUaGUgcmVzdWx0aW5nIHRyYW5zZm9ybWVkIGRhdGFcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRhKGRhdGEsIGhlYWRlcnMsIGZucykge1xuICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgdXRpbHMuZm9yRWFjaChmbnMsIGZ1bmN0aW9uIHRyYW5zZm9ybShmbikge1xuICAgIGRhdGEgPSBmbihkYXRhLCBoZWFkZXJzKTtcbiAgfSk7XG5cbiAgcmV0dXJuIGRhdGE7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2NvcmUvdHJhbnNmb3JtRGF0YS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/core/transformData.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/defaults.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("/* WEBPACK VAR INJECTION */(function(process) {\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\nvar normalizeHeaderName = __webpack_require__(\"./node_modules/axios/lib/helpers/normalizeHeaderName.js\");\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = __webpack_require__(\"./node_modules/axios/lib/adapters/xhr.js\");\n } else if (typeof process !== 'undefined') {\n // For node use HTTP adapter\n adapter = __webpack_require__(\"./node_modules/axios/lib/adapters/xhr.js\");\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(\"./node_modules/process/browser.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9kZWZhdWx0cy5qcz8yODIyIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscycpO1xudmFyIG5vcm1hbGl6ZUhlYWRlck5hbWUgPSByZXF1aXJlKCcuL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZScpO1xuXG52YXIgREVGQVVMVF9DT05URU5UX1RZUEUgPSB7XG4gICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xufTtcblxuZnVuY3Rpb24gc2V0Q29udGVudFR5cGVJZlVuc2V0KGhlYWRlcnMsIHZhbHVlKSB7XG4gIGlmICghdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVycykgJiYgdXRpbHMuaXNVbmRlZmluZWQoaGVhZGVyc1snQ29udGVudC1UeXBlJ10pKSB7XG4gICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSB2YWx1ZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QWRhcHRlcigpIHtcbiAgdmFyIGFkYXB0ZXI7XG4gIGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgLy8gRm9yIGJyb3dzZXJzIHVzZSBYSFIgYWRhcHRlclxuICAgIGFkYXB0ZXIgPSByZXF1aXJlKCcuL2FkYXB0ZXJzL3hocicpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJykge1xuICAgIC8vIEZvciBub2RlIHVzZSBIVFRQIGFkYXB0ZXJcbiAgICBhZGFwdGVyID0gcmVxdWlyZSgnLi9hZGFwdGVycy9odHRwJyk7XG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXI7XG59XG5cbnZhciBkZWZhdWx0cyA9IHtcbiAgYWRhcHRlcjogZ2V0RGVmYXVsdEFkYXB0ZXIoKSxcblxuICB0cmFuc2Zvcm1SZXF1ZXN0OiBbZnVuY3Rpb24gdHJhbnNmb3JtUmVxdWVzdChkYXRhLCBoZWFkZXJzKSB7XG4gICAgbm9ybWFsaXplSGVhZGVyTmFtZShoZWFkZXJzLCAnQ29udGVudC1UeXBlJyk7XG4gICAgaWYgKHV0aWxzLmlzRm9ybURhdGEoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQXJyYXlCdWZmZXIoZGF0YSkgfHxcbiAgICAgIHV0aWxzLmlzQnVmZmVyKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc1N0cmVhbShkYXRhKSB8fFxuICAgICAgdXRpbHMuaXNGaWxlKGRhdGEpIHx8XG4gICAgICB1dGlscy5pc0Jsb2IoZGF0YSlcbiAgICApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNBcnJheUJ1ZmZlclZpZXcoZGF0YSkpIHtcbiAgICAgIHJldHVybiBkYXRhLmJ1ZmZlcjtcbiAgICB9XG4gICAgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKGRhdGEpKSB7XG4gICAgICBzZXRDb250ZW50VHlwZUlmVW5zZXQoaGVhZGVycywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gZGF0YS50b1N0cmluZygpO1xuICAgIH1cbiAgICBpZiAodXRpbHMuaXNPYmplY3QoZGF0YSkpIHtcbiAgICAgIHNldENvbnRlbnRUeXBlSWZVbnNldChoZWFkZXJzLCAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04Jyk7XG4gICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XSxcblxuICB0cmFuc2Zvcm1SZXNwb25zZTogW2Z1bmN0aW9uIHRyYW5zZm9ybVJlc3BvbnNlKGRhdGEpIHtcbiAgICAvKmVzbGludCBuby1wYXJhbS1yZWFzc2lnbjowKi9cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBkYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogSWdub3JlICovIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1dLFxuXG4gIC8qKlxuICAgKiBBIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIHRvIGFib3J0IGEgcmVxdWVzdC4gSWYgc2V0IHRvIDAgKGRlZmF1bHQpIGFcbiAgICogdGltZW91dCBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHRpbWVvdXQ6IDAsXG5cbiAgeHNyZkNvb2tpZU5hbWU6ICdYU1JGLVRPS0VOJyxcbiAgeHNyZkhlYWRlck5hbWU6ICdYLVhTUkYtVE9LRU4nLFxuXG4gIG1heENvbnRlbnRMZW5ndGg6IC0xLFxuXG4gIHZhbGlkYXRlU3RhdHVzOiBmdW5jdGlvbiB2YWxpZGF0ZVN0YXR1cyhzdGF0dXMpIHtcbiAgICByZXR1cm4gc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDA7XG4gIH1cbn07XG5cbmRlZmF1bHRzLmhlYWRlcnMgPSB7XG4gIGNvbW1vbjoge1xuICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJ1xuICB9XG59O1xuXG51dGlscy5mb3JFYWNoKFsnZGVsZXRlJywgJ2dldCcsICdoZWFkJ10sIGZ1bmN0aW9uIGZvckVhY2hNZXRob2ROb0RhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHt9O1xufSk7XG5cbnV0aWxzLmZvckVhY2goWydwb3N0JywgJ3B1dCcsICdwYXRjaCddLCBmdW5jdGlvbiBmb3JFYWNoTWV0aG9kV2l0aERhdGEobWV0aG9kKSB7XG4gIGRlZmF1bHRzLmhlYWRlcnNbbWV0aG9kXSA9IHV0aWxzLm1lcmdlKERFRkFVTFRfQ09OVEVOVF9UWVBFKTtcbn0pO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGRlZmF1bHRzO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2RlZmF1bHRzLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvZGVmYXVsdHMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/defaults.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/bind.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9iaW5kLmpzPzI0ZmYiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJpbmQoZm4sIHRoaXNBcmcpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHdyYXAoKSB7XG4gICAgdmFyIGFyZ3MgPSBuZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcmdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBhcmdzW2ldID0gYXJndW1lbnRzW2ldO1xuICAgIH1cbiAgICByZXR1cm4gZm4uYXBwbHkodGhpc0FyZywgYXJncyk7XG4gIH07XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYmluZC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/bind.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/btoa.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n// btoa polyfill for IE<10 courtesy https://github.com/davidchambers/Base64.js\n\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\nfunction E() {\n this.message = 'String contains an invalid character';\n}\nE.prototype = new Error;\nE.prototype.code = 5;\nE.prototype.name = 'InvalidCharacterError';\n\nfunction btoa(input) {\n var str = String(input);\n var output = '';\n for (\n // initialize result and counter\n var block, charCode, idx = 0, map = chars;\n // if the next str index does not exist:\n // change the mapping table to \"=\"\n // check if d has no fractional digits\n str.charAt(idx | 0) || (map = '=', idx % 1);\n // \"8 - idx % 1 * 8\" generates the sequence 2, 4, 6, 8\n output += map.charAt(63 & block >> 8 - idx % 1 * 8)\n ) {\n charCode = str.charCodeAt(idx += 3 / 4);\n if (charCode > 0xFF) {\n throw new E();\n }\n block = block << 8 | charCode;\n }\n return output;\n}\n\nmodule.exports = btoa;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9idG9hLmpzP2I2MTIiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG4vLyBidG9hIHBvbHlmaWxsIGZvciBJRTwxMCBjb3VydGVzeSBodHRwczovL2dpdGh1Yi5jb20vZGF2aWRjaGFtYmVycy9CYXNlNjQuanNcblxudmFyIGNoYXJzID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89JztcblxuZnVuY3Rpb24gRSgpIHtcbiAgdGhpcy5tZXNzYWdlID0gJ1N0cmluZyBjb250YWlucyBhbiBpbnZhbGlkIGNoYXJhY3Rlcic7XG59XG5FLnByb3RvdHlwZSA9IG5ldyBFcnJvcjtcbkUucHJvdG90eXBlLmNvZGUgPSA1O1xuRS5wcm90b3R5cGUubmFtZSA9ICdJbnZhbGlkQ2hhcmFjdGVyRXJyb3InO1xuXG5mdW5jdGlvbiBidG9hKGlucHV0KSB7XG4gIHZhciBzdHIgPSBTdHJpbmcoaW5wdXQpO1xuICB2YXIgb3V0cHV0ID0gJyc7XG4gIGZvciAoXG4gICAgLy8gaW5pdGlhbGl6ZSByZXN1bHQgYW5kIGNvdW50ZXJcbiAgICB2YXIgYmxvY2ssIGNoYXJDb2RlLCBpZHggPSAwLCBtYXAgPSBjaGFycztcbiAgICAvLyBpZiB0aGUgbmV4dCBzdHIgaW5kZXggZG9lcyBub3QgZXhpc3Q6XG4gICAgLy8gICBjaGFuZ2UgdGhlIG1hcHBpbmcgdGFibGUgdG8gXCI9XCJcbiAgICAvLyAgIGNoZWNrIGlmIGQgaGFzIG5vIGZyYWN0aW9uYWwgZGlnaXRzXG4gICAgc3RyLmNoYXJBdChpZHggfCAwKSB8fCAobWFwID0gJz0nLCBpZHggJSAxKTtcbiAgICAvLyBcIjggLSBpZHggJSAxICogOFwiIGdlbmVyYXRlcyB0aGUgc2VxdWVuY2UgMiwgNCwgNiwgOFxuICAgIG91dHB1dCArPSBtYXAuY2hhckF0KDYzICYgYmxvY2sgPj4gOCAtIGlkeCAlIDEgKiA4KVxuICApIHtcbiAgICBjaGFyQ29kZSA9IHN0ci5jaGFyQ29kZUF0KGlkeCArPSAzIC8gNCk7XG4gICAgaWYgKGNoYXJDb2RlID4gMHhGRikge1xuICAgICAgdGhyb3cgbmV3IEUoKTtcbiAgICB9XG4gICAgYmxvY2sgPSBibG9jayA8PCA4IHwgY2hhckNvZGU7XG4gIH1cbiAgcmV0dXJuIG91dHB1dDtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBidG9hO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnRvYS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/btoa.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/buildURL.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanM/MGQwMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vLi4vdXRpbHMnKTtcblxuZnVuY3Rpb24gZW5jb2RlKHZhbCkge1xuICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHZhbCkuXG4gICAgcmVwbGFjZSgvJTQwL2dpLCAnQCcpLlxuICAgIHJlcGxhY2UoLyUzQS9naSwgJzonKS5cbiAgICByZXBsYWNlKC8lMjQvZywgJyQnKS5cbiAgICByZXBsYWNlKC8lMkMvZ2ksICcsJykuXG4gICAgcmVwbGFjZSgvJTIwL2csICcrJykuXG4gICAgcmVwbGFjZSgvJTVCL2dpLCAnWycpLlxuICAgIHJlcGxhY2UoLyU1RC9naSwgJ10nKTtcbn1cblxuLyoqXG4gKiBCdWlsZCBhIFVSTCBieSBhcHBlbmRpbmcgcGFyYW1zIHRvIHRoZSBlbmRcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gdXJsIFRoZSBiYXNlIG9mIHRoZSB1cmwgKGUuZy4sIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbSlcbiAqIEBwYXJhbSB7b2JqZWN0fSBbcGFyYW1zXSBUaGUgcGFyYW1zIHRvIGJlIGFwcGVuZGVkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgZm9ybWF0dGVkIHVybFxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJ1aWxkVVJMKHVybCwgcGFyYW1zLCBwYXJhbXNTZXJpYWxpemVyKSB7XG4gIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICBpZiAoIXBhcmFtcykge1xuICAgIHJldHVybiB1cmw7XG4gIH1cblxuICB2YXIgc2VyaWFsaXplZFBhcmFtcztcbiAgaWYgKHBhcmFtc1NlcmlhbGl6ZXIpIHtcbiAgICBzZXJpYWxpemVkUGFyYW1zID0gcGFyYW1zU2VyaWFsaXplcihwYXJhbXMpO1xuICB9IGVsc2UgaWYgKHV0aWxzLmlzVVJMU2VhcmNoUGFyYW1zKHBhcmFtcykpIHtcbiAgICBzZXJpYWxpemVkUGFyYW1zID0gcGFyYW1zLnRvU3RyaW5nKCk7XG4gIH0gZWxzZSB7XG4gICAgdmFyIHBhcnRzID0gW107XG5cbiAgICB1dGlscy5mb3JFYWNoKHBhcmFtcywgZnVuY3Rpb24gc2VyaWFsaXplKHZhbCwga2V5KSB7XG4gICAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHV0aWxzLmlzQXJyYXkodmFsKSkge1xuICAgICAgICBrZXkgPSBrZXkgKyAnW10nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFsID0gW3ZhbF07XG4gICAgICB9XG5cbiAgICAgIHV0aWxzLmZvckVhY2godmFsLCBmdW5jdGlvbiBwYXJzZVZhbHVlKHYpIHtcbiAgICAgICAgaWYgKHV0aWxzLmlzRGF0ZSh2KSkge1xuICAgICAgICAgIHYgPSB2LnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodXRpbHMuaXNPYmplY3QodikpIHtcbiAgICAgICAgICB2ID0gSlNPTi5zdHJpbmdpZnkodik7XG4gICAgICAgIH1cbiAgICAgICAgcGFydHMucHVzaChlbmNvZGUoa2V5KSArICc9JyArIGVuY29kZSh2KSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHNlcmlhbGl6ZWRQYXJhbXMgPSBwYXJ0cy5qb2luKCcmJyk7XG4gIH1cblxuICBpZiAoc2VyaWFsaXplZFBhcmFtcykge1xuICAgIHVybCArPSAodXJsLmluZGV4T2YoJz8nKSA9PT0gLTEgPyAnPycgOiAnJicpICsgc2VyaWFsaXplZFBhcmFtcztcbiAgfVxuXG4gIHJldHVybiB1cmw7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvYnVpbGRVUkwuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2J1aWxkVVJMLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/buildURL.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/combineURLs.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanM/YTkxNyJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBVUkwgYnkgY29tYmluaW5nIHRoZSBzcGVjaWZpZWQgVVJMc1xuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlVVJMIFRoZSBiYXNlIFVSTFxuICogQHBhcmFtIHtzdHJpbmd9IHJlbGF0aXZlVVJMIFRoZSByZWxhdGl2ZSBVUkxcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjb21iaW5lZCBVUkxcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBjb21iaW5lVVJMcyhiYXNlVVJMLCByZWxhdGl2ZVVSTCkge1xuICByZXR1cm4gcmVsYXRpdmVVUkxcbiAgICA/IGJhc2VVUkwucmVwbGFjZSgvXFwvKyQvLCAnJykgKyAnLycgKyByZWxhdGl2ZVVSTC5yZXBsYWNlKC9eXFwvKy8sICcnKVxuICAgIDogYmFzZVVSTDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb21iaW5lVVJMcy5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29tYmluZVVSTHMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/combineURLs.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/cookies.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvY29va2llcy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9jb29raWVzLmpzP2E3NTYiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLy4uL3V0aWxzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gKFxuICB1dGlscy5pc1N0YW5kYXJkQnJvd3NlckVudigpID9cblxuICAvLyBTdGFuZGFyZCBicm93c2VyIGVudnMgc3VwcG9ydCBkb2N1bWVudC5jb29raWVcbiAgKGZ1bmN0aW9uIHN0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgd3JpdGU6IGZ1bmN0aW9uIHdyaXRlKG5hbWUsIHZhbHVlLCBleHBpcmVzLCBwYXRoLCBkb21haW4sIHNlY3VyZSkge1xuICAgICAgICB2YXIgY29va2llID0gW107XG4gICAgICAgIGNvb2tpZS5wdXNoKG5hbWUgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcblxuICAgICAgICBpZiAodXRpbHMuaXNOdW1iZXIoZXhwaXJlcykpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgnZXhwaXJlcz0nICsgbmV3IERhdGUoZXhwaXJlcykudG9HTVRTdHJpbmcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcocGF0aCkpIHtcbiAgICAgICAgICBjb29raWUucHVzaCgncGF0aD0nICsgcGF0aCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXRpbHMuaXNTdHJpbmcoZG9tYWluKSkge1xuICAgICAgICAgIGNvb2tpZS5wdXNoKCdkb21haW49JyArIGRvbWFpbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VjdXJlID09PSB0cnVlKSB7XG4gICAgICAgICAgY29va2llLnB1c2goJ3NlY3VyZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgZG9jdW1lbnQuY29va2llID0gY29va2llLmpvaW4oJzsgJyk7XG4gICAgICB9LFxuXG4gICAgICByZWFkOiBmdW5jdGlvbiByZWFkKG5hbWUpIHtcbiAgICAgICAgdmFyIG1hdGNoID0gZG9jdW1lbnQuY29va2llLm1hdGNoKG5ldyBSZWdFeHAoJyhefDtcXFxccyopKCcgKyBuYW1lICsgJyk9KFteO10qKScpKTtcbiAgICAgICAgcmV0dXJuIChtYXRjaCA/IGRlY29kZVVSSUNvbXBvbmVudChtYXRjaFszXSkgOiBudWxsKTtcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogZnVuY3Rpb24gcmVtb3ZlKG5hbWUpIHtcbiAgICAgICAgdGhpcy53cml0ZShuYW1lLCAnJywgRGF0ZS5ub3coKSAtIDg2NDAwMDAwKTtcbiAgICAgIH1cbiAgICB9O1xuICB9KSgpIDpcblxuICAvLyBOb24gc3RhbmRhcmQgYnJvd3NlciBlbnYgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdyaXRlOiBmdW5jdGlvbiB3cml0ZSgpIHt9LFxuICAgICAgcmVhZDogZnVuY3Rpb24gcmVhZCgpIHsgcmV0dXJuIG51bGw7IH0sXG4gICAgICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSgpIHt9XG4gICAgfTtcbiAgfSkoKVxuKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2Nvb2tpZXMuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/cookies.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNBYnNvbHV0ZVVSTC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzPzc0OGMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgc3BlY2lmaWVkIFVSTCBpcyBhYnNvbHV0ZVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgVGhlIFVSTCB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB0aGUgc3BlY2lmaWVkIFVSTCBpcyBhYnNvbHV0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gaXNBYnNvbHV0ZVVSTCh1cmwpIHtcbiAgLy8gQSBVUkwgaXMgY29uc2lkZXJlZCBhYnNvbHV0ZSBpZiBpdCBiZWdpbnMgd2l0aCBcIjxzY2hlbWU+Oi8vXCIgb3IgXCIvL1wiIChwcm90b2NvbC1yZWxhdGl2ZSBVUkwpLlxuICAvLyBSRkMgMzk4NiBkZWZpbmVzIHNjaGVtZSBuYW1lIGFzIGEgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycyBiZWdpbm5pbmcgd2l0aCBhIGxldHRlciBhbmQgZm9sbG93ZWRcbiAgLy8gYnkgYW55IGNvbWJpbmF0aW9uIG9mIGxldHRlcnMsIGRpZ2l0cywgcGx1cywgcGVyaW9kLCBvciBoeXBoZW4uXG4gIHJldHVybiAvXihbYS16XVthLXpcXGRcXCtcXC1cXC5dKjopP1xcL1xcLy9pLnRlc3QodXJsKTtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc0Fic29sdXRlVVJMLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/isAbsoluteURL.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvaXNVUkxTYW1lT3JpZ2luLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzVVJMU2FtZU9yaWdpbi5qcz8xODcwIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IChcbiAgdXRpbHMuaXNTdGFuZGFyZEJyb3dzZXJFbnYoKSA/XG5cbiAgLy8gU3RhbmRhcmQgYnJvd3NlciBlbnZzIGhhdmUgZnVsbCBzdXBwb3J0IG9mIHRoZSBBUElzIG5lZWRlZCB0byB0ZXN0XG4gIC8vIHdoZXRoZXIgdGhlIHJlcXVlc3QgVVJMIGlzIG9mIHRoZSBzYW1lIG9yaWdpbiBhcyBjdXJyZW50IGxvY2F0aW9uLlxuICAoZnVuY3Rpb24gc3RhbmRhcmRCcm93c2VyRW52KCkge1xuICAgIHZhciBtc2llID0gLyhtc2llfHRyaWRlbnQpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbiAgICB2YXIgdXJsUGFyc2luZ05vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgdmFyIG9yaWdpblVSTDtcblxuICAgIC8qKlxuICAgICogUGFyc2UgYSBVUkwgdG8gZGlzY292ZXIgaXQncyBjb21wb25lbnRzXG4gICAgKlxuICAgICogQHBhcmFtIHtTdHJpbmd9IHVybCBUaGUgVVJMIHRvIGJlIHBhcnNlZFxuICAgICogQHJldHVybnMge09iamVjdH1cbiAgICAqL1xuICAgIGZ1bmN0aW9uIHJlc29sdmVVUkwodXJsKSB7XG4gICAgICB2YXIgaHJlZiA9IHVybDtcblxuICAgICAgaWYgKG1zaWUpIHtcbiAgICAgICAgLy8gSUUgbmVlZHMgYXR0cmlidXRlIHNldCB0d2ljZSB0byBub3JtYWxpemUgcHJvcGVydGllc1xuICAgICAgICB1cmxQYXJzaW5nTm9kZS5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBocmVmKTtcbiAgICAgICAgaHJlZiA9IHVybFBhcnNpbmdOb2RlLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIHVybFBhcnNpbmdOb2RlLnNldEF0dHJpYnV0ZSgnaHJlZicsIGhyZWYpO1xuXG4gICAgICAvLyB1cmxQYXJzaW5nTm9kZSBwcm92aWRlcyB0aGUgVXJsVXRpbHMgaW50ZXJmYWNlIC0gaHR0cDovL3VybC5zcGVjLndoYXR3Zy5vcmcvI3VybHV0aWxzXG4gICAgICByZXR1cm4ge1xuICAgICAgICBocmVmOiB1cmxQYXJzaW5nTm9kZS5ocmVmLFxuICAgICAgICBwcm90b2NvbDogdXJsUGFyc2luZ05vZGUucHJvdG9jb2wgPyB1cmxQYXJzaW5nTm9kZS5wcm90b2NvbC5yZXBsYWNlKC86JC8sICcnKSA6ICcnLFxuICAgICAgICBob3N0OiB1cmxQYXJzaW5nTm9kZS5ob3N0LFxuICAgICAgICBzZWFyY2g6IHVybFBhcnNpbmdOb2RlLnNlYXJjaCA/IHVybFBhcnNpbmdOb2RlLnNlYXJjaC5yZXBsYWNlKC9eXFw/LywgJycpIDogJycsXG4gICAgICAgIGhhc2g6IHVybFBhcnNpbmdOb2RlLmhhc2ggPyB1cmxQYXJzaW5nTm9kZS5oYXNoLnJlcGxhY2UoL14jLywgJycpIDogJycsXG4gICAgICAgIGhvc3RuYW1lOiB1cmxQYXJzaW5nTm9kZS5ob3N0bmFtZSxcbiAgICAgICAgcG9ydDogdXJsUGFyc2luZ05vZGUucG9ydCxcbiAgICAgICAgcGF0aG5hbWU6ICh1cmxQYXJzaW5nTm9kZS5wYXRobmFtZS5jaGFyQXQoMCkgPT09ICcvJykgP1xuICAgICAgICAgICAgICAgICAgdXJsUGFyc2luZ05vZGUucGF0aG5hbWUgOlxuICAgICAgICAgICAgICAgICAgJy8nICsgdXJsUGFyc2luZ05vZGUucGF0aG5hbWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgb3JpZ2luVVJMID0gcmVzb2x2ZVVSTCh3aW5kb3cubG9jYXRpb24uaHJlZik7XG5cbiAgICAvKipcbiAgICAqIERldGVybWluZSBpZiBhIFVSTCBzaGFyZXMgdGhlIHNhbWUgb3JpZ2luIGFzIHRoZSBjdXJyZW50IGxvY2F0aW9uXG4gICAgKlxuICAgICogQHBhcmFtIHtTdHJpbmd9IHJlcXVlc3RVUkwgVGhlIFVSTCB0byB0ZXN0XG4gICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBVUkwgc2hhcmVzIHRoZSBzYW1lIG9yaWdpbiwgb3RoZXJ3aXNlIGZhbHNlXG4gICAgKi9cbiAgICByZXR1cm4gZnVuY3Rpb24gaXNVUkxTYW1lT3JpZ2luKHJlcXVlc3RVUkwpIHtcbiAgICAgIHZhciBwYXJzZWQgPSAodXRpbHMuaXNTdHJpbmcocmVxdWVzdFVSTCkpID8gcmVzb2x2ZVVSTChyZXF1ZXN0VVJMKSA6IHJlcXVlc3RVUkw7XG4gICAgICByZXR1cm4gKHBhcnNlZC5wcm90b2NvbCA9PT0gb3JpZ2luVVJMLnByb3RvY29sICYmXG4gICAgICAgICAgICBwYXJzZWQuaG9zdCA9PT0gb3JpZ2luVVJMLmhvc3QpO1xuICAgIH07XG4gIH0pKCkgOlxuXG4gIC8vIE5vbiBzdGFuZGFyZCBicm93c2VyIGVudnMgKHdlYiB3b3JrZXJzLCByZWFjdC1uYXRpdmUpIGxhY2sgbmVlZGVkIHN1cHBvcnQuXG4gIChmdW5jdGlvbiBub25TdGFuZGFyZEJyb3dzZXJFbnYoKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIGlzVVJMU2FtZU9yaWdpbigpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH07XG4gIH0pKClcbik7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9pc1VSTFNhbWVPcmlnaW4uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL2lzVVJMU2FtZU9yaWdpbi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/isURLSameOrigin.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/normalizeHeaderName.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9ub3JtYWxpemVIZWFkZXJOYW1lLmpzP2U1NTQiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG52YXIgdXRpbHMgPSByZXF1aXJlKCcuLi91dGlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIG5vcm1hbGl6ZUhlYWRlck5hbWUoaGVhZGVycywgbm9ybWFsaXplZE5hbWUpIHtcbiAgdXRpbHMuZm9yRWFjaChoZWFkZXJzLCBmdW5jdGlvbiBwcm9jZXNzSGVhZGVyKHZhbHVlLCBuYW1lKSB7XG4gICAgaWYgKG5hbWUgIT09IG5vcm1hbGl6ZWROYW1lICYmIG5hbWUudG9VcHBlckNhc2UoKSA9PT0gbm9ybWFsaXplZE5hbWUudG9VcHBlckNhc2UoKSkge1xuICAgICAgaGVhZGVyc1tub3JtYWxpemVkTmFtZV0gPSB2YWx1ZTtcbiAgICAgIGRlbGV0ZSBoZWFkZXJzW25hbWVdO1xuICAgIH1cbiAgfSk7XG59O1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvbm9ybWFsaXplSGVhZGVyTmFtZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/normalizeHeaderName.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/parseHeaders.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar utils = __webpack_require__(\"./node_modules/axios/lib/utils.js\");\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvcGFyc2VIZWFkZXJzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qcz9hMDk5Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIHV0aWxzID0gcmVxdWlyZSgnLi8uLi91dGlscycpO1xuXG4vLyBIZWFkZXJzIHdob3NlIGR1cGxpY2F0ZXMgYXJlIGlnbm9yZWQgYnkgbm9kZVxuLy8gYy5mLiBodHRwczovL25vZGVqcy5vcmcvYXBpL2h0dHAuaHRtbCNodHRwX21lc3NhZ2VfaGVhZGVyc1xudmFyIGlnbm9yZUR1cGxpY2F0ZU9mID0gW1xuICAnYWdlJywgJ2F1dGhvcml6YXRpb24nLCAnY29udGVudC1sZW5ndGgnLCAnY29udGVudC10eXBlJywgJ2V0YWcnLFxuICAnZXhwaXJlcycsICdmcm9tJywgJ2hvc3QnLCAnaWYtbW9kaWZpZWQtc2luY2UnLCAnaWYtdW5tb2RpZmllZC1zaW5jZScsXG4gICdsYXN0LW1vZGlmaWVkJywgJ2xvY2F0aW9uJywgJ21heC1mb3J3YXJkcycsICdwcm94eS1hdXRob3JpemF0aW9uJyxcbiAgJ3JlZmVyZXInLCAncmV0cnktYWZ0ZXInLCAndXNlci1hZ2VudCdcbl07XG5cbi8qKlxuICogUGFyc2UgaGVhZGVycyBpbnRvIGFuIG9iamVjdFxuICpcbiAqIGBgYFxuICogRGF0ZTogV2VkLCAyNyBBdWcgMjAxNCAwODo1ODo0OSBHTVRcbiAqIENvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvblxuICogQ29ubmVjdGlvbjoga2VlcC1hbGl2ZVxuICogVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWRcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBoZWFkZXJzIEhlYWRlcnMgbmVlZGluZyB0byBiZSBwYXJzZWRcbiAqIEByZXR1cm5zIHtPYmplY3R9IEhlYWRlcnMgcGFyc2VkIGludG8gYW4gb2JqZWN0XG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gcGFyc2VIZWFkZXJzKGhlYWRlcnMpIHtcbiAgdmFyIHBhcnNlZCA9IHt9O1xuICB2YXIga2V5O1xuICB2YXIgdmFsO1xuICB2YXIgaTtcblxuICBpZiAoIWhlYWRlcnMpIHsgcmV0dXJuIHBhcnNlZDsgfVxuXG4gIHV0aWxzLmZvckVhY2goaGVhZGVycy5zcGxpdCgnXFxuJyksIGZ1bmN0aW9uIHBhcnNlcihsaW5lKSB7XG4gICAgaSA9IGxpbmUuaW5kZXhPZignOicpO1xuICAgIGtleSA9IHV0aWxzLnRyaW0obGluZS5zdWJzdHIoMCwgaSkpLnRvTG93ZXJDYXNlKCk7XG4gICAgdmFsID0gdXRpbHMudHJpbShsaW5lLnN1YnN0cihpICsgMSkpO1xuXG4gICAgaWYgKGtleSkge1xuICAgICAgaWYgKHBhcnNlZFtrZXldICYmIGlnbm9yZUR1cGxpY2F0ZU9mLmluZGV4T2Yoa2V5KSA+PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChrZXkgPT09ICdzZXQtY29va2llJykge1xuICAgICAgICBwYXJzZWRba2V5XSA9IChwYXJzZWRba2V5XSA/IHBhcnNlZFtrZXldIDogW10pLmNvbmNhdChbdmFsXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwYXJzZWRba2V5XSA9IHBhcnNlZFtrZXldID8gcGFyc2VkW2tleV0gKyAnLCAnICsgdmFsIDogdmFsO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHBhcnNlZDtcbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvaGVscGVycy9wYXJzZUhlYWRlcnMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3BhcnNlSGVhZGVycy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/parseHeaders.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/spread.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3NwcmVhZC5qcz9hNzExIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBTeW50YWN0aWMgc3VnYXIgZm9yIGludm9raW5nIGEgZnVuY3Rpb24gYW5kIGV4cGFuZGluZyBhbiBhcnJheSBmb3IgYXJndW1lbnRzLlxuICpcbiAqIENvbW1vbiB1c2UgY2FzZSB3b3VsZCBiZSB0byB1c2UgYEZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseWAuXG4gKlxuICogIGBgYGpzXG4gKiAgZnVuY3Rpb24gZih4LCB5LCB6KSB7fVxuICogIHZhciBhcmdzID0gWzEsIDIsIDNdO1xuICogIGYuYXBwbHkobnVsbCwgYXJncyk7XG4gKiAgYGBgXG4gKlxuICogV2l0aCBgc3ByZWFkYCB0aGlzIGV4YW1wbGUgY2FuIGJlIHJlLXdyaXR0ZW4uXG4gKlxuICogIGBgYGpzXG4gKiAgc3ByZWFkKGZ1bmN0aW9uKHgsIHksIHopIHt9KShbMSwgMiwgM10pO1xuICogIGBgYFxuICpcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrXG4gKiBAcmV0dXJucyB7RnVuY3Rpb259XG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gc3ByZWFkKGNhbGxiYWNrKSB7XG4gIHJldHVybiBmdW5jdGlvbiB3cmFwKGFycikge1xuICAgIHJldHVybiBjYWxsYmFjay5hcHBseShudWxsLCBhcnIpO1xuICB9O1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi9oZWxwZXJzL3NwcmVhZC5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL2hlbHBlcnMvc3ByZWFkLmpzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/helpers/spread.js\n"); - -/***/ }), - -/***/ "./node_modules/axios/lib/utils.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("\n\nvar bind = __webpack_require__(\"./node_modules/axios/lib/helpers/bind.js\");\nvar isBuffer = __webpack_require__(\"./node_modules/is-buffer/index.js\");\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYXhpb3MvbGliL3V0aWxzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi91dGlscy5qcz83MDYxIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxudmFyIGJpbmQgPSByZXF1aXJlKCcuL2hlbHBlcnMvYmluZCcpO1xudmFyIGlzQnVmZmVyID0gcmVxdWlyZSgnaXMtYnVmZmVyJyk7XG5cbi8qZ2xvYmFsIHRvU3RyaW5nOnRydWUqL1xuXG4vLyB1dGlscyBpcyBhIGxpYnJhcnkgb2YgZ2VuZXJpYyBoZWxwZXIgZnVuY3Rpb25zIG5vbi1zcGVjaWZpYyB0byBheGlvc1xuXG52YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5XG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXksIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5KHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIEFycmF5QnVmZmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyKHZhbCkge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbCh2YWwpID09PSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRm9ybURhdGFcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhbiBGb3JtRGF0YSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRm9ybURhdGEodmFsKSB7XG4gIHJldHVybiAodHlwZW9mIEZvcm1EYXRhICE9PSAndW5kZWZpbmVkJykgJiYgKHZhbCBpbnN0YW5jZW9mIEZvcm1EYXRhKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXJcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIHZpZXcgb24gYW4gQXJyYXlCdWZmZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc0FycmF5QnVmZmVyVmlldyh2YWwpIHtcbiAgdmFyIHJlc3VsdDtcbiAgaWYgKCh0eXBlb2YgQXJyYXlCdWZmZXIgIT09ICd1bmRlZmluZWQnKSAmJiAoQXJyYXlCdWZmZXIuaXNWaWV3KSkge1xuICAgIHJlc3VsdCA9IEFycmF5QnVmZmVyLmlzVmlldyh2YWwpO1xuICB9IGVsc2Uge1xuICAgIHJlc3VsdCA9ICh2YWwpICYmICh2YWwuYnVmZmVyKSAmJiAodmFsLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgU3RyaW5nXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBTdHJpbmcsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1N0cmluZyh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgTnVtYmVyXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHZhbCBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgdmFsdWUgaXMgYSBOdW1iZXIsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc051bWJlcih2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdudW1iZXInO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIHVuZGVmaW5lZFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSB2YWx1ZSBpcyB1bmRlZmluZWQsIG90aGVyd2lzZSBmYWxzZVxuICovXG5mdW5jdGlvbiBpc1VuZGVmaW5lZCh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICd1bmRlZmluZWQnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGFuIE9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGFuIE9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0KHZhbCkge1xuICByZXR1cm4gdmFsICE9PSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRGF0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRGF0ZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRGF0ZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRGF0ZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRmlsZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgRmlsZSwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzRmlsZSh2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRmlsZV0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgQmxvYlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgQmxvYiwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzQmxvYih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgQmxvYl0nO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgRnVuY3Rpb25cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdmFsIFRoZSB2YWx1ZSB0byB0ZXN0XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB2YWx1ZSBpcyBhIEZ1bmN0aW9uLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNGdW5jdGlvbih2YWwpIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwodmFsKSA9PT0gJ1tvYmplY3QgRnVuY3Rpb25dJztcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSB2YWx1ZSBpcyBhIFN0cmVhbVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgU3RyZWFtLCBvdGhlcndpc2UgZmFsc2VcbiAqL1xuZnVuY3Rpb24gaXNTdHJlYW0odmFsKSB7XG4gIHJldHVybiBpc09iamVjdCh2YWwpICYmIGlzRnVuY3Rpb24odmFsLnBpcGUpO1xufVxuXG4vKipcbiAqIERldGVybWluZSBpZiBhIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSB2YWwgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHZhbHVlIGlzIGEgVVJMU2VhcmNoUGFyYW1zIG9iamVjdCwgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmZ1bmN0aW9uIGlzVVJMU2VhcmNoUGFyYW1zKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIFVSTFNlYXJjaFBhcmFtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsIGluc3RhbmNlb2YgVVJMU2VhcmNoUGFyYW1zO1xufVxuXG4vKipcbiAqIFRyaW0gZXhjZXNzIHdoaXRlc3BhY2Ugb2ZmIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiBhIHN0cmluZ1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgVGhlIFN0cmluZyB0byB0cmltXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBUaGUgU3RyaW5nIGZyZWVkIG9mIGV4Y2VzcyB3aGl0ZXNwYWNlXG4gKi9cbmZ1bmN0aW9uIHRyaW0oc3RyKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvXlxccyovLCAnJykucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lIGlmIHdlJ3JlIHJ1bm5pbmcgaW4gYSBzdGFuZGFyZCBicm93c2VyIGVudmlyb25tZW50XG4gKlxuICogVGhpcyBhbGxvd3MgYXhpb3MgdG8gcnVuIGluIGEgd2ViIHdvcmtlciwgYW5kIHJlYWN0LW5hdGl2ZS5cbiAqIEJvdGggZW52aXJvbm1lbnRzIHN1cHBvcnQgWE1MSHR0cFJlcXVlc3QsIGJ1dCBub3QgZnVsbHkgc3RhbmRhcmQgZ2xvYmFscy5cbiAqXG4gKiB3ZWIgd29ya2VyczpcbiAqICB0eXBlb2Ygd2luZG93IC0+IHVuZGVmaW5lZFxuICogIHR5cGVvZiBkb2N1bWVudCAtPiB1bmRlZmluZWRcbiAqXG4gKiByZWFjdC1uYXRpdmU6XG4gKiAgbmF2aWdhdG9yLnByb2R1Y3QgLT4gJ1JlYWN0TmF0aXZlJ1xuICovXG5mdW5jdGlvbiBpc1N0YW5kYXJkQnJvd3NlckVudigpIHtcbiAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvci5wcm9kdWN0ID09PSAnUmVhY3ROYXRpdmUnKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnXG4gICk7XG59XG5cbi8qKlxuICogSXRlcmF0ZSBvdmVyIGFuIEFycmF5IG9yIGFuIE9iamVjdCBpbnZva2luZyBhIGZ1bmN0aW9uIGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgYG9iamAgaXMgYW4gQXJyYXkgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgcGFzc2luZ1xuICogdGhlIHZhbHVlLCBpbmRleCwgYW5kIGNvbXBsZXRlIGFycmF5IGZvciBlYWNoIGl0ZW0uXG4gKlxuICogSWYgJ29iaicgaXMgYW4gT2JqZWN0IGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIHBhc3NpbmdcbiAqIHRoZSB2YWx1ZSwga2V5LCBhbmQgY29tcGxldGUgb2JqZWN0IGZvciBlYWNoIHByb3BlcnR5LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fEFycmF5fSBvYmogVGhlIG9iamVjdCB0byBpdGVyYXRlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBUaGUgY2FsbGJhY2sgdG8gaW52b2tlIGZvciBlYWNoIGl0ZW1cbiAqL1xuZnVuY3Rpb24gZm9yRWFjaChvYmosIGZuKSB7XG4gIC8vIERvbid0IGJvdGhlciBpZiBubyB2YWx1ZSBwcm92aWRlZFxuICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy8gRm9yY2UgYW4gYXJyYXkgaWYgbm90IGFscmVhZHkgc29tZXRoaW5nIGl0ZXJhYmxlXG4gIGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuICAgIC8qZXNsaW50IG5vLXBhcmFtLXJlYXNzaWduOjAqL1xuICAgIG9iaiA9IFtvYmpdO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkob2JqKSkge1xuICAgIC8vIEl0ZXJhdGUgb3ZlciBhcnJheSB2YWx1ZXNcbiAgICBmb3IgKHZhciBpID0gMCwgbCA9IG9iai5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGZuLmNhbGwobnVsbCwgb2JqW2ldLCBpLCBvYmopO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgb2JqZWN0IGtleXNcbiAgICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICBmbi5jYWxsKG51bGwsIG9ialtrZXldLCBrZXksIG9iaik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQWNjZXB0cyB2YXJhcmdzIGV4cGVjdGluZyBlYWNoIGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCwgdGhlblxuICogaW1tdXRhYmx5IG1lcmdlcyB0aGUgcHJvcGVydGllcyBvZiBlYWNoIG9iamVjdCBhbmQgcmV0dXJucyByZXN1bHQuXG4gKlxuICogV2hlbiBtdWx0aXBsZSBvYmplY3RzIGNvbnRhaW4gdGhlIHNhbWUga2V5IHRoZSBsYXRlciBvYmplY3QgaW5cbiAqIHRoZSBhcmd1bWVudHMgbGlzdCB3aWxsIHRha2UgcHJlY2VkZW5jZS5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYGpzXG4gKiB2YXIgcmVzdWx0ID0gbWVyZ2Uoe2ZvbzogMTIzfSwge2ZvbzogNDU2fSk7XG4gKiBjb25zb2xlLmxvZyhyZXN1bHQuZm9vKTsgLy8gb3V0cHV0cyA0NTZcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmoxIE9iamVjdCB0byBtZXJnZVxuICogQHJldHVybnMge09iamVjdH0gUmVzdWx0IG9mIGFsbCBtZXJnZSBwcm9wZXJ0aWVzXG4gKi9cbmZ1bmN0aW9uIG1lcmdlKC8qIG9iajEsIG9iajIsIG9iajMsIC4uLiAqLykge1xuICB2YXIgcmVzdWx0ID0ge307XG4gIGZ1bmN0aW9uIGFzc2lnblZhbHVlKHZhbCwga2V5KSB7XG4gICAgaWYgKHR5cGVvZiByZXN1bHRba2V5XSA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJlc3VsdFtrZXldID0gbWVyZ2UocmVzdWx0W2tleV0sIHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdFtrZXldID0gdmFsO1xuICAgIH1cbiAgfVxuXG4gIGZvciAodmFyIGkgPSAwLCBsID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGZvckVhY2goYXJndW1lbnRzW2ldLCBhc3NpZ25WYWx1ZSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBFeHRlbmRzIG9iamVjdCBhIGJ5IG11dGFibHkgYWRkaW5nIHRvIGl0IHRoZSBwcm9wZXJ0aWVzIG9mIG9iamVjdCBiLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhIFRoZSBvYmplY3QgdG8gYmUgZXh0ZW5kZWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBiIFRoZSBvYmplY3QgdG8gY29weSBwcm9wZXJ0aWVzIGZyb21cbiAqIEBwYXJhbSB7T2JqZWN0fSB0aGlzQXJnIFRoZSBvYmplY3QgdG8gYmluZCBmdW5jdGlvbiB0b1xuICogQHJldHVybiB7T2JqZWN0fSBUaGUgcmVzdWx0aW5nIHZhbHVlIG9mIG9iamVjdCBhXG4gKi9cbmZ1bmN0aW9uIGV4dGVuZChhLCBiLCB0aGlzQXJnKSB7XG4gIGZvckVhY2goYiwgZnVuY3Rpb24gYXNzaWduVmFsdWUodmFsLCBrZXkpIHtcbiAgICBpZiAodGhpc0FyZyAmJiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBhW2tleV0gPSBiaW5kKHZhbCwgdGhpc0FyZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFba2V5XSA9IHZhbDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gYTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQXJyYXk6IGlzQXJyYXksXG4gIGlzQXJyYXlCdWZmZXI6IGlzQXJyYXlCdWZmZXIsXG4gIGlzQnVmZmVyOiBpc0J1ZmZlcixcbiAgaXNGb3JtRGF0YTogaXNGb3JtRGF0YSxcbiAgaXNBcnJheUJ1ZmZlclZpZXc6IGlzQXJyYXlCdWZmZXJWaWV3LFxuICBpc1N0cmluZzogaXNTdHJpbmcsXG4gIGlzTnVtYmVyOiBpc051bWJlcixcbiAgaXNPYmplY3Q6IGlzT2JqZWN0LFxuICBpc1VuZGVmaW5lZDogaXNVbmRlZmluZWQsXG4gIGlzRGF0ZTogaXNEYXRlLFxuICBpc0ZpbGU6IGlzRmlsZSxcbiAgaXNCbG9iOiBpc0Jsb2IsXG4gIGlzRnVuY3Rpb246IGlzRnVuY3Rpb24sXG4gIGlzU3RyZWFtOiBpc1N0cmVhbSxcbiAgaXNVUkxTZWFyY2hQYXJhbXM6IGlzVVJMU2VhcmNoUGFyYW1zLFxuICBpc1N0YW5kYXJkQnJvd3NlckVudjogaXNTdGFuZGFyZEJyb3dzZXJFbnYsXG4gIGZvckVhY2g6IGZvckVhY2gsXG4gIG1lcmdlOiBtZXJnZSxcbiAgZXh0ZW5kOiBleHRlbmQsXG4gIHRyaW06IHRyaW1cbn07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9heGlvcy9saWIvdXRpbHMuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2F4aW9zL2xpYi91dGlscy5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/axios/lib/utils.js\n"); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'App'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vQXBwLnZ1ZT8yNmNkIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPHYtYXBwIGRhcms+XG4gICAgPHJvdXRlci12aWV3Lz5cbiAgPC92LWFwcD5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdBcHAnXG59XG48L3NjcmlwdD5cblxuPHN0eWxlPlxuQGltcG9ydCBcIi4vc3R5bGVzaGVldC9tYWluLnNjc3NcIjtcbjwvc3R5bGU+XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIEFwcC52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFPQTtBQUNBO0FBREEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue\n"); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__login_loginForm__ = __webpack_require__(\"./src/components/login/loginForm.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__login_registerForm__ = __webpack_require__(\"./src/components/login/registerForm.vue\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tdata() {\n\t\treturn {\n\t\t\temail: \"\",\n\t\t\tisRegister: false,\n\t\t\tconfirmMatch: true\n\t\t};\n\t},\n\tcomponents: {\n\t\tloginForm: __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */], registerForm: __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */]\n\t},\n\tcomputed: {\n\t\tform: function () {\n\t\t\tif (this.isRegister) {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_1__login_registerForm__[\"a\" /* default */];\n\t\t\t} else {\n\t\t\t\treturn __WEBPACK_IMPORTED_MODULE_0__login_loginForm__[\"a\" /* default */];\n\t\t\t}\n\t\t}\n\t},\n\twatch: {\n\t\tisRegister: function () {\n\t\t\tconsole.log(this.isRegister);\n\t\t}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL0xvZ0luLnZ1ZT9mNmEzIl0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cblx0PHYtY29udGFpbmVyIGZsdWlkPlxuXHRcdDx2LWxheW91dCBcblx0XHRcdHJvdyB3cmFwIFxuXHRcdFx0ZmlsbC1oZWlnaHRcblx0XHQ+XG5cdFx0ICBcdDx2LWZsZXggbGc3PlxuXHRcdFx0XHQ8di1sYXlvdXQgXG5cdFx0XHRcdFx0YWxpZ24tY2VudGVyIFxuXHRcdFx0XHRcdGp1c3RpZnktY2VudGVyXG5cdFx0XHRcdFx0IGZpbGwtaGVpZ2h0XG5cdFx0XHRcdCA+XG5cdFx0XHRcdFx0PGRpdj5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGRpc3BsYXktNFwiPmVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCI+ZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb248L3A+XG5cdFx0XHRcdFx0XHQ8cCBjbGFzcz1cInRleHQtbGctbGVmdCBoZWFkbGluZVwiPmVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uPC9wPlxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIj5lQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbjwvcD5cblx0XHQgIFx0XHRcdDwvZGl2PlxuXHRcdCAgXHRcdDwvdi1sYXlvdXQ+XG5cdFx0ICBcdDwvdi1mbGV4PlxuXHRcdCAgXHQ8di1mbGV4IFxuXHRcdCAgXHRcdGxnNSBcblx0XHQgIFx0XHRjbGFzcz1cInJpZ2h0IGFtYmVyIGRhcmtlbi0zXCJcblx0ICBcdFx0PlxuXHRcdFx0XHQ8di1sYXlvdXQgXG5cdFx0XHRcdFx0cm93XG5cdFx0XHRcdFx0d3JhcFxuXHRcdFx0XHQ+XG5cdFx0XHRcdFx0PHYtZmxleCBsZzY+XG5cdFx0XHRcdFx0XHQ8di1idG4gXG5cdFx0XHRcdFx0XHRcdGRlcHJlc3NlZFxuXHRcdFx0XHRcdFx0XHRmbGF0XG5cdFx0XHRcdFx0XHRcdGJsb2NrXG5cdFx0XHRcdFx0XHRcdDpyaXBwbGU9XCJmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdEBjbGljaz1cImlzUmVnaXN0ZXIgPSBmYWxzZVwiXG5cdFx0XHRcdFx0XHRcdDpjbGFzcz1cInsnYW1iZXIgZGFya2VuLTMnOiAhaXNSZWdpc3RlciwgJ3llbGxvdyBkYXJrZW4tMyc6IGlzUmVnaXN0ZXJ9XCJcblx0XHRcdFx0XHRcdD5cblx0XHRcdFx0XHRcdFx0TG9nIEluXG5cdFx0XHRcdFx0XHQ8L3YtYnRuPlxuXHRcdFx0XHRcdDwvdi1mbGV4PlxuXHRcdFx0XHRcdDx2LWZsZXggbGc2ID5cblx0XHRcdFx0XHRcdDx2LWJ0biBcblx0XHRcdFx0XHRcdFx0ZGVwcmVzc2VkXG5cdFx0XHRcdFx0XHRcdGZsYXRcblx0XHRcdFx0XHRcdFx0YmxvY2tcblx0XHRcdFx0XHRcdFx0OnJpcHBsZT1cImZhbHNlXCJcblx0XHRcdFx0XHRcdFx0QGNsaWNrPVwiaXNSZWdpc3RlciA9IHRydWVcIiBcblx0XHRcdFx0XHRcdFx0OmNsYXNzPVwieydhbWJlciBkYXJrZW4tMyc6IGlzUmVnaXN0ZXIsICd5ZWxsb3cgZGFya2VuLTMnOiAhaXNSZWdpc3Rlcn1cIlxuXHRcdFx0XHRcdFx0PlxuXHRcdFx0XHRcdFx0XHRSZWdpc3RlclxuXHRcdFx0XHRcdFx0PC92LWJ0bj5cblx0XHRcdFx0XHQ8L3YtZmxleD5cblx0XHRcdFx0PC92LWxheW91dD5cblx0XHRcdFx0PGNvbXBvbmVudCA6aXM9XCJmb3JtXCI+XG5cdFx0XHRcdDwvY29tcG9uZW50PlxuXHRcdCAgXHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXHQ8L3YtY29udGFpbmVyPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cblx0aW1wb3J0IGxvZ2luRm9ybSBmcm9tICcuL2xvZ2luL2xvZ2luRm9ybSc7XG5cdGltcG9ydCByZWdpc3RlckZvcm0gZnJvbSAnLi9sb2dpbi9yZWdpc3RlckZvcm0nO1xuXG5cdGV4cG9ydCBkZWZhdWx0IHtcblx0XHRkYXRhKCl7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRlbWFpbDogXCJcIixcblx0XHRcdFx0aXNSZWdpc3RlcjogZmFsc2UsXG5cdFx0XHRcdGNvbmZpcm1NYXRjaDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSxcblx0XHRjb21wb25lbnRzOiB7XG5cdFx0XHRsb2dpbkZvcm0sIHJlZ2lzdGVyRm9ybVxuXHRcdH0sXG5cdFx0Y29tcHV0ZWQ6IHtcblx0XHRcdGZvcm06IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGlmKHRoaXMuaXNSZWdpc3Rlcil7XG5cdFx0XHRcdFx0cmV0dXJuIHJlZ2lzdGVyRm9ybTtcblx0XHRcdFx0fWVsc2V7XG5cdFx0XHRcdFx0cmV0dXJuIGxvZ2luRm9ybTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sXG5cdFx0d2F0Y2g6IHtcblx0XHRcdGlzUmVnaXN0ZXI6IGZ1bmN0aW9uKCl7XG5cdFx0XHRcdGNvbnNvbGUubG9nKHRoaXMuaXNSZWdpc3Rlcik7XG5cdFx0XHR9XG5cdFx0fSxcblx0fVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cblxuXHRidXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGhlaWdodDogNWVtO1xuXHR9XG5cbjwvc3R5bGU+XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gTG9nSW4udnVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBOERBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBS0E7QUFDQTtBQUNBO0FBREE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBUEE7QUFTQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBcEJBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(\"./node_modules/axios/index.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie__ = __webpack_require__(\"./node_modules/js-cookie/src/js.cookie.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_js_cookie__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'loginForm',\n\tdata() {\n\t\treturn {\n\t\t\tname: \"\",\n\t\t\tpassword: \"\",\n\t\t\tvisible: false\n\t\t};\n\t},\n\tmethods: {\n\t\tlogin: function () {}\n\t}\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9sb2dpbkZvcm0udnVlP2NiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlVzZXJuYW1lXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cIm5hbWVcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di10ZXh0LWZpZWxkXG5cdFx0ICBuYW1lPVwibmFtZVwiXG5cdFx0ICBsYWJlbD1cIlBhc3N3b3JkXCJcblx0XHQgIGlkPVwiaWRcIlxuXHRcdCAgdi1tb2RlbD1cInBhc3N3b3JkXCJcblx0XHQgIDphcHBlbmQtaWNvbj1cInZpc2libGUgPyAndmlzaWJpbGl0eV9vZmYnOiAndmlzaWJpbGl0eSdcIlxuICAgICAgICAgIDphcHBlbmQtaWNvbi1jYj1cIigpID0+ICh2aXNpYmxlID0gIXZpc2libGUpXCJcbiAgICAgICAgICA6dHlwZT1cInZpc2libGUgPyAndGV4dCc6ICdwYXNzd29yZCcgXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtYnRuIEBjbGljaz1cImxvZ2luXCI+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5cdGltcG9ydCBDb29raWVzIGZyb20gJ2pzLWNvb2tpZSdcblx0ZXhwb3J0IGRlZmF1bHQge1xuXHRcdG5hbWU6ICdsb2dpbkZvcm0nLFxuXHRcdGRhdGEoKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRuYW1lOiBcIlwiLFxuXHRcdFx0XHRwYXNzd29yZDogXCJcIixcblx0XHRcdFx0dmlzaWJsZTogZmFsc2UsXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRtZXRob2RzOiB7XG5cdFx0XHRsb2dpbjogZnVuY3Rpb24oKXtcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cblx0LmxvZ2luIHtcblx0XHRwYWRkaW5nOiAyZW07XG5cdH1cbjwvc3R5bGU+XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIGxvZ2luRm9ybS52dWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0JBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBS0E7QUFDQTtBQUNBO0FBREE7QUFUQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/loginForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/registerForm.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n\tname: 'registerForm'\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXNjcmlwdCZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy9yZWdpc3RlckZvcm0udnVlP2FiOTciXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuXHQ8di1mb3JtIGNsYXNzPVwibG9naW5cIj5cblx0XHQ8di1sYXlvdXQgcm93IHdyYXAganVzdGlmeS1zcGFjZS1iZXR3ZWVuPlxuXHRcdFx0PHYtZmxleCBsZzU+XG5cdFx0XHRcdDx2LXRleHQtZmllbGRcblx0XHRcdFx0ICBuYW1lPVwiZm5hbWVcIlxuXHRcdFx0XHQgIGxhYmVsPVwiRmlyc3RuYW1lXCJcblx0XHRcdFx0ICBpZD1cImZuXCJcblx0XHRcdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdFx0PC92LWZsZXg+XG5cdFx0XHQ8di1mbGV4IGxnNT5cblx0XHRcdFx0PHYtdGV4dC1maWVsZFxuXHRcdFx0XHQgIG5hbWU9XCJsbmFtZVwiXG5cdFx0XHRcdCAgbGFiZWw9XCJMYXN0IE5hbWVcIlxuXHRcdFx0XHQgIGlkPVwibG5cIlxuXHRcdFx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0XHQ8L3YtZmxleD5cblx0XHQ8L3YtbGF5b3V0PlxuXG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cInVzZXJcIlxuXHRcdCAgbGFiZWw9XCJVc2VybmFtZVwiXG5cdFx0ICBpZD1cInVuXCJcblx0XHQ+PC92LXRleHQtZmllbGQ+XG5cdFx0PHYtdGV4dC1maWVsZFxuXHRcdCAgbmFtZT1cImVtYWlsXCJcblx0XHQgIGxhYmVsPVwiRW1haWxcIlxuXHRcdCAgaWQ9XCJlbVwiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJwYXNzXCJcblx0XHQgIGxhYmVsPVwiUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJwc1wiXG5cdFx0Pjwvdi10ZXh0LWZpZWxkPlxuXHRcdDx2LXRleHQtZmllbGRcblx0XHQgIG5hbWU9XCJjb25maXJtcGFzc1wiXG5cdFx0ICBsYWJlbD1cIkNvbmZpcm0gUGFzc3dvcmRcIlxuXHRcdCAgaWQ9XCJjcHNcIlxuXHRcdD48L3YtdGV4dC1maWVsZD5cblx0XHQ8di1idG4+U3VibWl0PC92LWJ0bj5cblx0PC92LWZvcm0+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXHRleHBvcnQgZGVmYXVsdCB7XG5cdFx0bmFtZTogJ3JlZ2lzdGVyRm9ybScsXG5cdH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXHQubG9naW4ge1xuXHRcdHBhZGRpbmc6IDJlbTtcblx0fVxuPC9zdHlsZT5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gcmVnaXN0ZXJGb3JtLnZ1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE0Q0E7QUFDQTtBQURBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/login/registerForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vuetify/dist/vuetify.min.css": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"/*!\\n* Vuetify v1.0.17\\n* Forged by John Leider\\n* Released under the MIT License.\\n*/ \\n@-webkit-keyframes a{59%{margin-left:0}60%,80%{margin-left:2px}70%,90%{margin-left:-2px}} \\n@keyframes a{59%{margin-left:0}60%,80%{margin-left:2px}70%,90%{margin-left:-2px}} \\n.black{background-color:#000!important;border-color:#000!important} \\n.black--text{color:#000!important} \\n.black--text input,.black--text textarea{caret-color:#000!important} \\n.black--after:after{background:#000!important} \\n.white{background-color:#fff!important;border-color:#fff!important} \\n.white--text{color:#fff!important} \\n.white--text input,.white--text textarea{caret-color:#fff!important} \\n.white--after:after{background:#fff!important} \\n.transparent{background-color:transparent!important;border-color:transparent!important} \\n.transparent--text{color:transparent!important} \\n.transparent--text input,.transparent--text textarea{caret-color:transparent!important} \\n.transparent--after:after{background:transparent!important} \\n.red{background-color:#f44336!important;border-color:#f44336!important} \\n.red--text{color:#f44336!important} \\n.red--text input,.red--text textarea{caret-color:#f44336!important} \\n.red--after:after{background:#f44336!important} \\n.red.lighten-5{border-color:#ffebee!important} \\n.red.lighten-5,.red.lighten-5--after:after{background-color:#ffebee!important} \\n.red--text.text--lighten-5{color:#ffebee!important} \\n.red--text.text--lighten-5 input,.red--text.text--lighten-5 textarea{caret-color:#ffebee!important} \\n.red.lighten-4{border-color:#ffcdd2!important} \\n.red.lighten-4,.red.lighten-4--after:after{background-color:#ffcdd2!important} \\n.red--text.text--lighten-4{color:#ffcdd2!important} \\n.red--text.text--lighten-4 input,.red--text.text--lighten-4 textarea{caret-color:#ffcdd2!important} \\n.red.lighten-3{border-color:#ef9a9a!important} \\n.red.lighten-3,.red.lighten-3--after:after{background-color:#ef9a9a!important} \\n.red--text.text--lighten-3{color:#ef9a9a!important} \\n.red--text.text--lighten-3 input,.red--text.text--lighten-3 textarea{caret-color:#ef9a9a!important} \\n.red.lighten-2{border-color:#e57373!important} \\n.red.lighten-2,.red.lighten-2--after:after{background-color:#e57373!important} \\n.red--text.text--lighten-2{color:#e57373!important} \\n.red--text.text--lighten-2 input,.red--text.text--lighten-2 textarea{caret-color:#e57373!important} \\n.red.lighten-1{border-color:#ef5350!important} \\n.red.lighten-1,.red.lighten-1--after:after{background-color:#ef5350!important} \\n.red--text.text--lighten-1{color:#ef5350!important} \\n.red--text.text--lighten-1 input,.red--text.text--lighten-1 textarea{caret-color:#ef5350!important} \\n.red.darken-1{border-color:#e53935!important} \\n.red.darken-1,.red.darken-1--after:after{background-color:#e53935!important} \\n.red--text.text--darken-1{color:#e53935!important} \\n.red--text.text--darken-1 input,.red--text.text--darken-1 textarea{caret-color:#e53935!important} \\n.red.darken-2{border-color:#d32f2f!important} \\n.red.darken-2,.red.darken-2--after:after{background-color:#d32f2f!important} \\n.red--text.text--darken-2{color:#d32f2f!important} \\n.red--text.text--darken-2 input,.red--text.text--darken-2 textarea{caret-color:#d32f2f!important} \\n.red.darken-3{border-color:#c62828!important} \\n.red.darken-3,.red.darken-3--after:after{background-color:#c62828!important} \\n.red--text.text--darken-3{color:#c62828!important} \\n.red--text.text--darken-3 input,.red--text.text--darken-3 textarea{caret-color:#c62828!important} \\n.red.darken-4{border-color:#b71c1c!important} \\n.red.darken-4,.red.darken-4--after:after{background-color:#b71c1c!important} \\n.red--text.text--darken-4{color:#b71c1c!important} \\n.red--text.text--darken-4 input,.red--text.text--darken-4 textarea{caret-color:#b71c1c!important} \\n.red.accent-1{border-color:#ff8a80!important} \\n.red.accent-1,.red.accent-1--after:after{background-color:#ff8a80!important} \\n.red--text.text--accent-1{color:#ff8a80!important} \\n.red--text.text--accent-1 input,.red--text.text--accent-1 textarea{caret-color:#ff8a80!important} \\n.red.accent-2{border-color:#ff5252!important} \\n.red.accent-2,.red.accent-2--after:after{background-color:#ff5252!important} \\n.red--text.text--accent-2{color:#ff5252!important} \\n.red--text.text--accent-2 input,.red--text.text--accent-2 textarea{caret-color:#ff5252!important} \\n.red.accent-3{border-color:#ff1744!important} \\n.red.accent-3,.red.accent-3--after:after{background-color:#ff1744!important} \\n.red--text.text--accent-3{color:#ff1744!important} \\n.red--text.text--accent-3 input,.red--text.text--accent-3 textarea{caret-color:#ff1744!important} \\n.red.accent-4{border-color:#d50000!important} \\n.red.accent-4,.red.accent-4--after:after{background-color:#d50000!important} \\n.red--text.text--accent-4{color:#d50000!important} \\n.red--text.text--accent-4 input,.red--text.text--accent-4 textarea{caret-color:#d50000!important} \\n.pink{background-color:#e91e63!important;border-color:#e91e63!important} \\n.pink--text{color:#e91e63!important} \\n.pink--text input,.pink--text textarea{caret-color:#e91e63!important} \\n.pink--after:after{background:#e91e63!important} \\n.pink.lighten-5{border-color:#fce4ec!important} \\n.pink.lighten-5,.pink.lighten-5--after:after{background-color:#fce4ec!important} \\n.pink--text.text--lighten-5{color:#fce4ec!important} \\n.pink--text.text--lighten-5 input,.pink--text.text--lighten-5 textarea{caret-color:#fce4ec!important} \\n.pink.lighten-4{border-color:#f8bbd0!important} \\n.pink.lighten-4,.pink.lighten-4--after:after{background-color:#f8bbd0!important} \\n.pink--text.text--lighten-4{color:#f8bbd0!important} \\n.pink--text.text--lighten-4 input,.pink--text.text--lighten-4 textarea{caret-color:#f8bbd0!important} \\n.pink.lighten-3{border-color:#f48fb1!important} \\n.pink.lighten-3,.pink.lighten-3--after:after{background-color:#f48fb1!important} \\n.pink--text.text--lighten-3{color:#f48fb1!important} \\n.pink--text.text--lighten-3 input,.pink--text.text--lighten-3 textarea{caret-color:#f48fb1!important} \\n.pink.lighten-2{border-color:#f06292!important} \\n.pink.lighten-2,.pink.lighten-2--after:after{background-color:#f06292!important} \\n.pink--text.text--lighten-2{color:#f06292!important} \\n.pink--text.text--lighten-2 input,.pink--text.text--lighten-2 textarea{caret-color:#f06292!important} \\n.pink.lighten-1{border-color:#ec407a!important} \\n.pink.lighten-1,.pink.lighten-1--after:after{background-color:#ec407a!important} \\n.pink--text.text--lighten-1{color:#ec407a!important} \\n.pink--text.text--lighten-1 input,.pink--text.text--lighten-1 textarea{caret-color:#ec407a!important} \\n.pink.darken-1{border-color:#d81b60!important} \\n.pink.darken-1,.pink.darken-1--after:after{background-color:#d81b60!important} \\n.pink--text.text--darken-1{color:#d81b60!important} \\n.pink--text.text--darken-1 input,.pink--text.text--darken-1 textarea{caret-color:#d81b60!important} \\n.pink.darken-2{border-color:#c2185b!important} \\n.pink.darken-2,.pink.darken-2--after:after{background-color:#c2185b!important} \\n.pink--text.text--darken-2{color:#c2185b!important} \\n.pink--text.text--darken-2 input,.pink--text.text--darken-2 textarea{caret-color:#c2185b!important} \\n.pink.darken-3{border-color:#ad1457!important} \\n.pink.darken-3,.pink.darken-3--after:after{background-color:#ad1457!important} \\n.pink--text.text--darken-3{color:#ad1457!important} \\n.pink--text.text--darken-3 input,.pink--text.text--darken-3 textarea{caret-color:#ad1457!important} \\n.pink.darken-4{border-color:#880e4f!important} \\n.pink.darken-4,.pink.darken-4--after:after{background-color:#880e4f!important} \\n.pink--text.text--darken-4{color:#880e4f!important} \\n.pink--text.text--darken-4 input,.pink--text.text--darken-4 textarea{caret-color:#880e4f!important} \\n.pink.accent-1{border-color:#ff80ab!important} \\n.pink.accent-1,.pink.accent-1--after:after{background-color:#ff80ab!important} \\n.pink--text.text--accent-1{color:#ff80ab!important} \\n.pink--text.text--accent-1 input,.pink--text.text--accent-1 textarea{caret-color:#ff80ab!important} \\n.pink.accent-2{border-color:#ff4081!important} \\n.pink.accent-2,.pink.accent-2--after:after{background-color:#ff4081!important} \\n.pink--text.text--accent-2{color:#ff4081!important} \\n.pink--text.text--accent-2 input,.pink--text.text--accent-2 textarea{caret-color:#ff4081!important} \\n.pink.accent-3{border-color:#f50057!important} \\n.pink.accent-3,.pink.accent-3--after:after{background-color:#f50057!important} \\n.pink--text.text--accent-3{color:#f50057!important} \\n.pink--text.text--accent-3 input,.pink--text.text--accent-3 textarea{caret-color:#f50057!important} \\n.pink.accent-4{border-color:#c51162!important} \\n.pink.accent-4,.pink.accent-4--after:after{background-color:#c51162!important} \\n.pink--text.text--accent-4{color:#c51162!important} \\n.pink--text.text--accent-4 input,.pink--text.text--accent-4 textarea{caret-color:#c51162!important} \\n.purple{background-color:#9c27b0!important;border-color:#9c27b0!important} \\n.purple--text{color:#9c27b0!important} \\n.purple--text input,.purple--text textarea{caret-color:#9c27b0!important} \\n.purple--after:after{background:#9c27b0!important} \\n.purple.lighten-5{border-color:#f3e5f5!important} \\n.purple.lighten-5,.purple.lighten-5--after:after{background-color:#f3e5f5!important} \\n.purple--text.text--lighten-5{color:#f3e5f5!important} \\n.purple--text.text--lighten-5 input,.purple--text.text--lighten-5 textarea{caret-color:#f3e5f5!important} \\n.purple.lighten-4{border-color:#e1bee7!important} \\n.purple.lighten-4,.purple.lighten-4--after:after{background-color:#e1bee7!important} \\n.purple--text.text--lighten-4{color:#e1bee7!important} \\n.purple--text.text--lighten-4 input,.purple--text.text--lighten-4 textarea{caret-color:#e1bee7!important} \\n.purple.lighten-3{border-color:#ce93d8!important} \\n.purple.lighten-3,.purple.lighten-3--after:after{background-color:#ce93d8!important} \\n.purple--text.text--lighten-3{color:#ce93d8!important} \\n.purple--text.text--lighten-3 input,.purple--text.text--lighten-3 textarea{caret-color:#ce93d8!important} \\n.purple.lighten-2{border-color:#ba68c8!important} \\n.purple.lighten-2,.purple.lighten-2--after:after{background-color:#ba68c8!important} \\n.purple--text.text--lighten-2{color:#ba68c8!important} \\n.purple--text.text--lighten-2 input,.purple--text.text--lighten-2 textarea{caret-color:#ba68c8!important} \\n.purple.lighten-1{border-color:#ab47bc!important} \\n.purple.lighten-1,.purple.lighten-1--after:after{background-color:#ab47bc!important} \\n.purple--text.text--lighten-1{color:#ab47bc!important} \\n.purple--text.text--lighten-1 input,.purple--text.text--lighten-1 textarea{caret-color:#ab47bc!important} \\n.purple.darken-1{border-color:#8e24aa!important} \\n.purple.darken-1,.purple.darken-1--after:after{background-color:#8e24aa!important} \\n.purple--text.text--darken-1{color:#8e24aa!important} \\n.purple--text.text--darken-1 input,.purple--text.text--darken-1 textarea{caret-color:#8e24aa!important} \\n.purple.darken-2{border-color:#7b1fa2!important} \\n.purple.darken-2,.purple.darken-2--after:after{background-color:#7b1fa2!important} \\n.purple--text.text--darken-2{color:#7b1fa2!important} \\n.purple--text.text--darken-2 input,.purple--text.text--darken-2 textarea{caret-color:#7b1fa2!important} \\n.purple.darken-3{border-color:#6a1b9a!important} \\n.purple.darken-3,.purple.darken-3--after:after{background-color:#6a1b9a!important} \\n.purple--text.text--darken-3{color:#6a1b9a!important} \\n.purple--text.text--darken-3 input,.purple--text.text--darken-3 textarea{caret-color:#6a1b9a!important} \\n.purple.darken-4{border-color:#4a148c!important} \\n.purple.darken-4,.purple.darken-4--after:after{background-color:#4a148c!important} \\n.purple--text.text--darken-4{color:#4a148c!important} \\n.purple--text.text--darken-4 input,.purple--text.text--darken-4 textarea{caret-color:#4a148c!important} \\n.purple.accent-1{border-color:#ea80fc!important} \\n.purple.accent-1,.purple.accent-1--after:after{background-color:#ea80fc!important} \\n.purple--text.text--accent-1{color:#ea80fc!important} \\n.purple--text.text--accent-1 input,.purple--text.text--accent-1 textarea{caret-color:#ea80fc!important} \\n.purple.accent-2{border-color:#e040fb!important} \\n.purple.accent-2,.purple.accent-2--after:after{background-color:#e040fb!important} \\n.purple--text.text--accent-2{color:#e040fb!important} \\n.purple--text.text--accent-2 input,.purple--text.text--accent-2 textarea{caret-color:#e040fb!important} \\n.purple.accent-3{border-color:#d500f9!important} \\n.purple.accent-3,.purple.accent-3--after:after{background-color:#d500f9!important} \\n.purple--text.text--accent-3{color:#d500f9!important} \\n.purple--text.text--accent-3 input,.purple--text.text--accent-3 textarea{caret-color:#d500f9!important} \\n.purple.accent-4{border-color:#a0f!important} \\n.purple.accent-4,.purple.accent-4--after:after{background-color:#a0f!important} \\n.purple--text.text--accent-4{color:#a0f!important} \\n.purple--text.text--accent-4 input,.purple--text.text--accent-4 textarea{caret-color:#a0f!important} \\n.deep-purple{background-color:#673ab7!important;border-color:#673ab7!important} \\n.deep-purple--text{color:#673ab7!important} \\n.deep-purple--text input,.deep-purple--text textarea{caret-color:#673ab7!important} \\n.deep-purple--after:after{background:#673ab7!important} \\n.deep-purple.lighten-5{border-color:#ede7f6!important} \\n.deep-purple.lighten-5,.deep-purple.lighten-5--after:after{background-color:#ede7f6!important} \\n.deep-purple--text.text--lighten-5{color:#ede7f6!important} \\n.deep-purple--text.text--lighten-5 input,.deep-purple--text.text--lighten-5 textarea{caret-color:#ede7f6!important} \\n.deep-purple.lighten-4{border-color:#d1c4e9!important} \\n.deep-purple.lighten-4,.deep-purple.lighten-4--after:after{background-color:#d1c4e9!important} \\n.deep-purple--text.text--lighten-4{color:#d1c4e9!important} \\n.deep-purple--text.text--lighten-4 input,.deep-purple--text.text--lighten-4 textarea{caret-color:#d1c4e9!important} \\n.deep-purple.lighten-3{border-color:#b39ddb!important} \\n.deep-purple.lighten-3,.deep-purple.lighten-3--after:after{background-color:#b39ddb!important} \\n.deep-purple--text.text--lighten-3{color:#b39ddb!important} \\n.deep-purple--text.text--lighten-3 input,.deep-purple--text.text--lighten-3 textarea{caret-color:#b39ddb!important} \\n.deep-purple.lighten-2{border-color:#9575cd!important} \\n.deep-purple.lighten-2,.deep-purple.lighten-2--after:after{background-color:#9575cd!important} \\n.deep-purple--text.text--lighten-2{color:#9575cd!important} \\n.deep-purple--text.text--lighten-2 input,.deep-purple--text.text--lighten-2 textarea{caret-color:#9575cd!important} \\n.deep-purple.lighten-1{border-color:#7e57c2!important} \\n.deep-purple.lighten-1,.deep-purple.lighten-1--after:after{background-color:#7e57c2!important} \\n.deep-purple--text.text--lighten-1{color:#7e57c2!important} \\n.deep-purple--text.text--lighten-1 input,.deep-purple--text.text--lighten-1 textarea{caret-color:#7e57c2!important} \\n.deep-purple.darken-1{border-color:#5e35b1!important} \\n.deep-purple.darken-1,.deep-purple.darken-1--after:after{background-color:#5e35b1!important} \\n.deep-purple--text.text--darken-1{color:#5e35b1!important} \\n.deep-purple--text.text--darken-1 input,.deep-purple--text.text--darken-1 textarea{caret-color:#5e35b1!important} \\n.deep-purple.darken-2{border-color:#512da8!important} \\n.deep-purple.darken-2,.deep-purple.darken-2--after:after{background-color:#512da8!important} \\n.deep-purple--text.text--darken-2{color:#512da8!important} \\n.deep-purple--text.text--darken-2 input,.deep-purple--text.text--darken-2 textarea{caret-color:#512da8!important} \\n.deep-purple.darken-3{border-color:#4527a0!important} \\n.deep-purple.darken-3,.deep-purple.darken-3--after:after{background-color:#4527a0!important} \\n.deep-purple--text.text--darken-3{color:#4527a0!important} \\n.deep-purple--text.text--darken-3 input,.deep-purple--text.text--darken-3 textarea{caret-color:#4527a0!important} \\n.deep-purple.darken-4{border-color:#311b92!important} \\n.deep-purple.darken-4,.deep-purple.darken-4--after:after{background-color:#311b92!important} \\n.deep-purple--text.text--darken-4{color:#311b92!important} \\n.deep-purple--text.text--darken-4 input,.deep-purple--text.text--darken-4 textarea{caret-color:#311b92!important} \\n.deep-purple.accent-1{border-color:#b388ff!important} \\n.deep-purple.accent-1,.deep-purple.accent-1--after:after{background-color:#b388ff!important} \\n.deep-purple--text.text--accent-1{color:#b388ff!important} \\n.deep-purple--text.text--accent-1 input,.deep-purple--text.text--accent-1 textarea{caret-color:#b388ff!important} \\n.deep-purple.accent-2{border-color:#7c4dff!important} \\n.deep-purple.accent-2,.deep-purple.accent-2--after:after{background-color:#7c4dff!important} \\n.deep-purple--text.text--accent-2{color:#7c4dff!important} \\n.deep-purple--text.text--accent-2 input,.deep-purple--text.text--accent-2 textarea{caret-color:#7c4dff!important} \\n.deep-purple.accent-3{border-color:#651fff!important} \\n.deep-purple.accent-3,.deep-purple.accent-3--after:after{background-color:#651fff!important} \\n.deep-purple--text.text--accent-3{color:#651fff!important} \\n.deep-purple--text.text--accent-3 input,.deep-purple--text.text--accent-3 textarea{caret-color:#651fff!important} \\n.deep-purple.accent-4{border-color:#6200ea!important} \\n.deep-purple.accent-4,.deep-purple.accent-4--after:after{background-color:#6200ea!important} \\n.deep-purple--text.text--accent-4{color:#6200ea!important} \\n.deep-purple--text.text--accent-4 input,.deep-purple--text.text--accent-4 textarea{caret-color:#6200ea!important} \\n.indigo{background-color:#3f51b5!important;border-color:#3f51b5!important} \\n.indigo--text{color:#3f51b5!important} \\n.indigo--text input,.indigo--text textarea{caret-color:#3f51b5!important} \\n.indigo--after:after{background:#3f51b5!important} \\n.indigo.lighten-5{border-color:#e8eaf6!important} \\n.indigo.lighten-5,.indigo.lighten-5--after:after{background-color:#e8eaf6!important} \\n.indigo--text.text--lighten-5{color:#e8eaf6!important} \\n.indigo--text.text--lighten-5 input,.indigo--text.text--lighten-5 textarea{caret-color:#e8eaf6!important} \\n.indigo.lighten-4{border-color:#c5cae9!important} \\n.indigo.lighten-4,.indigo.lighten-4--after:after{background-color:#c5cae9!important} \\n.indigo--text.text--lighten-4{color:#c5cae9!important} \\n.indigo--text.text--lighten-4 input,.indigo--text.text--lighten-4 textarea{caret-color:#c5cae9!important} \\n.indigo.lighten-3{border-color:#9fa8da!important} \\n.indigo.lighten-3,.indigo.lighten-3--after:after{background-color:#9fa8da!important} \\n.indigo--text.text--lighten-3{color:#9fa8da!important} \\n.indigo--text.text--lighten-3 input,.indigo--text.text--lighten-3 textarea{caret-color:#9fa8da!important} \\n.indigo.lighten-2{border-color:#7986cb!important} \\n.indigo.lighten-2,.indigo.lighten-2--after:after{background-color:#7986cb!important} \\n.indigo--text.text--lighten-2{color:#7986cb!important} \\n.indigo--text.text--lighten-2 input,.indigo--text.text--lighten-2 textarea{caret-color:#7986cb!important} \\n.indigo.lighten-1{border-color:#5c6bc0!important} \\n.indigo.lighten-1,.indigo.lighten-1--after:after{background-color:#5c6bc0!important} \\n.indigo--text.text--lighten-1{color:#5c6bc0!important} \\n.indigo--text.text--lighten-1 input,.indigo--text.text--lighten-1 textarea{caret-color:#5c6bc0!important} \\n.indigo.darken-1{border-color:#3949ab!important} \\n.indigo.darken-1,.indigo.darken-1--after:after{background-color:#3949ab!important} \\n.indigo--text.text--darken-1{color:#3949ab!important} \\n.indigo--text.text--darken-1 input,.indigo--text.text--darken-1 textarea{caret-color:#3949ab!important} \\n.indigo.darken-2{border-color:#303f9f!important} \\n.indigo.darken-2,.indigo.darken-2--after:after{background-color:#303f9f!important} \\n.indigo--text.text--darken-2{color:#303f9f!important} \\n.indigo--text.text--darken-2 input,.indigo--text.text--darken-2 textarea{caret-color:#303f9f!important} \\n.indigo.darken-3{border-color:#283593!important} \\n.indigo.darken-3,.indigo.darken-3--after:after{background-color:#283593!important} \\n.indigo--text.text--darken-3{color:#283593!important} \\n.indigo--text.text--darken-3 input,.indigo--text.text--darken-3 textarea{caret-color:#283593!important} \\n.indigo.darken-4{border-color:#1a237e!important} \\n.indigo.darken-4,.indigo.darken-4--after:after{background-color:#1a237e!important} \\n.indigo--text.text--darken-4{color:#1a237e!important} \\n.indigo--text.text--darken-4 input,.indigo--text.text--darken-4 textarea{caret-color:#1a237e!important} \\n.indigo.accent-1{border-color:#8c9eff!important} \\n.indigo.accent-1,.indigo.accent-1--after:after{background-color:#8c9eff!important} \\n.indigo--text.text--accent-1{color:#8c9eff!important} \\n.indigo--text.text--accent-1 input,.indigo--text.text--accent-1 textarea{caret-color:#8c9eff!important} \\n.indigo.accent-2{border-color:#536dfe!important} \\n.indigo.accent-2,.indigo.accent-2--after:after{background-color:#536dfe!important} \\n.indigo--text.text--accent-2{color:#536dfe!important} \\n.indigo--text.text--accent-2 input,.indigo--text.text--accent-2 textarea{caret-color:#536dfe!important} \\n.indigo.accent-3{border-color:#3d5afe!important} \\n.indigo.accent-3,.indigo.accent-3--after:after{background-color:#3d5afe!important} \\n.indigo--text.text--accent-3{color:#3d5afe!important} \\n.indigo--text.text--accent-3 input,.indigo--text.text--accent-3 textarea{caret-color:#3d5afe!important} \\n.indigo.accent-4{border-color:#304ffe!important} \\n.indigo.accent-4,.indigo.accent-4--after:after{background-color:#304ffe!important} \\n.indigo--text.text--accent-4{color:#304ffe!important} \\n.indigo--text.text--accent-4 input,.indigo--text.text--accent-4 textarea{caret-color:#304ffe!important} \\n.blue{background-color:#2196f3!important;border-color:#2196f3!important} \\n.blue--text{color:#2196f3!important} \\n.blue--text input,.blue--text textarea{caret-color:#2196f3!important} \\n.blue--after:after{background:#2196f3!important} \\n.blue.lighten-5{border-color:#e3f2fd!important} \\n.blue.lighten-5,.blue.lighten-5--after:after{background-color:#e3f2fd!important} \\n.blue--text.text--lighten-5{color:#e3f2fd!important} \\n.blue--text.text--lighten-5 input,.blue--text.text--lighten-5 textarea{caret-color:#e3f2fd!important} \\n.blue.lighten-4{border-color:#bbdefb!important} \\n.blue.lighten-4,.blue.lighten-4--after:after{background-color:#bbdefb!important} \\n.blue--text.text--lighten-4{color:#bbdefb!important} \\n.blue--text.text--lighten-4 input,.blue--text.text--lighten-4 textarea{caret-color:#bbdefb!important} \\n.blue.lighten-3{border-color:#90caf9!important} \\n.blue.lighten-3,.blue.lighten-3--after:after{background-color:#90caf9!important} \\n.blue--text.text--lighten-3{color:#90caf9!important} \\n.blue--text.text--lighten-3 input,.blue--text.text--lighten-3 textarea{caret-color:#90caf9!important} \\n.blue.lighten-2{border-color:#64b5f6!important} \\n.blue.lighten-2,.blue.lighten-2--after:after{background-color:#64b5f6!important} \\n.blue--text.text--lighten-2{color:#64b5f6!important} \\n.blue--text.text--lighten-2 input,.blue--text.text--lighten-2 textarea{caret-color:#64b5f6!important} \\n.blue.lighten-1{border-color:#42a5f5!important} \\n.blue.lighten-1,.blue.lighten-1--after:after{background-color:#42a5f5!important} \\n.blue--text.text--lighten-1{color:#42a5f5!important} \\n.blue--text.text--lighten-1 input,.blue--text.text--lighten-1 textarea{caret-color:#42a5f5!important} \\n.blue.darken-1{border-color:#1e88e5!important} \\n.blue.darken-1,.blue.darken-1--after:after{background-color:#1e88e5!important} \\n.blue--text.text--darken-1{color:#1e88e5!important} \\n.blue--text.text--darken-1 input,.blue--text.text--darken-1 textarea{caret-color:#1e88e5!important} \\n.blue.darken-2{border-color:#1976d2!important} \\n.blue.darken-2,.blue.darken-2--after:after{background-color:#1976d2!important} \\n.blue--text.text--darken-2{color:#1976d2!important} \\n.blue--text.text--darken-2 input,.blue--text.text--darken-2 textarea{caret-color:#1976d2!important} \\n.blue.darken-3{border-color:#1565c0!important} \\n.blue.darken-3,.blue.darken-3--after:after{background-color:#1565c0!important} \\n.blue--text.text--darken-3{color:#1565c0!important} \\n.blue--text.text--darken-3 input,.blue--text.text--darken-3 textarea{caret-color:#1565c0!important} \\n.blue.darken-4{border-color:#0d47a1!important} \\n.blue.darken-4,.blue.darken-4--after:after{background-color:#0d47a1!important} \\n.blue--text.text--darken-4{color:#0d47a1!important} \\n.blue--text.text--darken-4 input,.blue--text.text--darken-4 textarea{caret-color:#0d47a1!important} \\n.blue.accent-1{border-color:#82b1ff!important} \\n.blue.accent-1,.blue.accent-1--after:after{background-color:#82b1ff!important} \\n.blue--text.text--accent-1{color:#82b1ff!important} \\n.blue--text.text--accent-1 input,.blue--text.text--accent-1 textarea{caret-color:#82b1ff!important} \\n.blue.accent-2{border-color:#448aff!important} \\n.blue.accent-2,.blue.accent-2--after:after{background-color:#448aff!important} \\n.blue--text.text--accent-2{color:#448aff!important} \\n.blue--text.text--accent-2 input,.blue--text.text--accent-2 textarea{caret-color:#448aff!important} \\n.blue.accent-3{border-color:#2979ff!important} \\n.blue.accent-3,.blue.accent-3--after:after{background-color:#2979ff!important} \\n.blue--text.text--accent-3{color:#2979ff!important} \\n.blue--text.text--accent-3 input,.blue--text.text--accent-3 textarea{caret-color:#2979ff!important} \\n.blue.accent-4{border-color:#2962ff!important} \\n.blue.accent-4,.blue.accent-4--after:after{background-color:#2962ff!important} \\n.blue--text.text--accent-4{color:#2962ff!important} \\n.blue--text.text--accent-4 input,.blue--text.text--accent-4 textarea{caret-color:#2962ff!important} \\n.light-blue{background-color:#03a9f4!important;border-color:#03a9f4!important} \\n.light-blue--text{color:#03a9f4!important} \\n.light-blue--text input,.light-blue--text textarea{caret-color:#03a9f4!important} \\n.light-blue--after:after{background:#03a9f4!important} \\n.light-blue.lighten-5{border-color:#e1f5fe!important} \\n.light-blue.lighten-5,.light-blue.lighten-5--after:after{background-color:#e1f5fe!important} \\n.light-blue--text.text--lighten-5{color:#e1f5fe!important} \\n.light-blue--text.text--lighten-5 input,.light-blue--text.text--lighten-5 textarea{caret-color:#e1f5fe!important} \\n.light-blue.lighten-4{border-color:#b3e5fc!important} \\n.light-blue.lighten-4,.light-blue.lighten-4--after:after{background-color:#b3e5fc!important} \\n.light-blue--text.text--lighten-4{color:#b3e5fc!important} \\n.light-blue--text.text--lighten-4 input,.light-blue--text.text--lighten-4 textarea{caret-color:#b3e5fc!important} \\n.light-blue.lighten-3{border-color:#81d4fa!important} \\n.light-blue.lighten-3,.light-blue.lighten-3--after:after{background-color:#81d4fa!important} \\n.light-blue--text.text--lighten-3{color:#81d4fa!important} \\n.light-blue--text.text--lighten-3 input,.light-blue--text.text--lighten-3 textarea{caret-color:#81d4fa!important} \\n.light-blue.lighten-2{border-color:#4fc3f7!important} \\n.light-blue.lighten-2,.light-blue.lighten-2--after:after{background-color:#4fc3f7!important} \\n.light-blue--text.text--lighten-2{color:#4fc3f7!important} \\n.light-blue--text.text--lighten-2 input,.light-blue--text.text--lighten-2 textarea{caret-color:#4fc3f7!important} \\n.light-blue.lighten-1{border-color:#29b6f6!important} \\n.light-blue.lighten-1,.light-blue.lighten-1--after:after{background-color:#29b6f6!important} \\n.light-blue--text.text--lighten-1{color:#29b6f6!important} \\n.light-blue--text.text--lighten-1 input,.light-blue--text.text--lighten-1 textarea{caret-color:#29b6f6!important} \\n.light-blue.darken-1{border-color:#039be5!important} \\n.light-blue.darken-1,.light-blue.darken-1--after:after{background-color:#039be5!important} \\n.light-blue--text.text--darken-1{color:#039be5!important} \\n.light-blue--text.text--darken-1 input,.light-blue--text.text--darken-1 textarea{caret-color:#039be5!important} \\n.light-blue.darken-2{border-color:#0288d1!important} \\n.light-blue.darken-2,.light-blue.darken-2--after:after{background-color:#0288d1!important} \\n.light-blue--text.text--darken-2{color:#0288d1!important} \\n.light-blue--text.text--darken-2 input,.light-blue--text.text--darken-2 textarea{caret-color:#0288d1!important} \\n.light-blue.darken-3{border-color:#0277bd!important} \\n.light-blue.darken-3,.light-blue.darken-3--after:after{background-color:#0277bd!important} \\n.light-blue--text.text--darken-3{color:#0277bd!important} \\n.light-blue--text.text--darken-3 input,.light-blue--text.text--darken-3 textarea{caret-color:#0277bd!important} \\n.light-blue.darken-4{border-color:#01579b!important} \\n.light-blue.darken-4,.light-blue.darken-4--after:after{background-color:#01579b!important} \\n.light-blue--text.text--darken-4{color:#01579b!important} \\n.light-blue--text.text--darken-4 input,.light-blue--text.text--darken-4 textarea{caret-color:#01579b!important} \\n.light-blue.accent-1{border-color:#80d8ff!important} \\n.light-blue.accent-1,.light-blue.accent-1--after:after{background-color:#80d8ff!important} \\n.light-blue--text.text--accent-1{color:#80d8ff!important} \\n.light-blue--text.text--accent-1 input,.light-blue--text.text--accent-1 textarea{caret-color:#80d8ff!important} \\n.light-blue.accent-2{border-color:#40c4ff!important} \\n.light-blue.accent-2,.light-blue.accent-2--after:after{background-color:#40c4ff!important} \\n.light-blue--text.text--accent-2{color:#40c4ff!important} \\n.light-blue--text.text--accent-2 input,.light-blue--text.text--accent-2 textarea{caret-color:#40c4ff!important} \\n.light-blue.accent-3{border-color:#00b0ff!important} \\n.light-blue.accent-3,.light-blue.accent-3--after:after{background-color:#00b0ff!important} \\n.light-blue--text.text--accent-3{color:#00b0ff!important} \\n.light-blue--text.text--accent-3 input,.light-blue--text.text--accent-3 textarea{caret-color:#00b0ff!important} \\n.light-blue.accent-4{border-color:#0091ea!important} \\n.light-blue.accent-4,.light-blue.accent-4--after:after{background-color:#0091ea!important} \\n.light-blue--text.text--accent-4{color:#0091ea!important} \\n.light-blue--text.text--accent-4 input,.light-blue--text.text--accent-4 textarea{caret-color:#0091ea!important} \\n.cyan{background-color:#00bcd4!important;border-color:#00bcd4!important} \\n.cyan--text{color:#00bcd4!important} \\n.cyan--text input,.cyan--text textarea{caret-color:#00bcd4!important} \\n.cyan--after:after{background:#00bcd4!important} \\n.cyan.lighten-5{border-color:#e0f7fa!important} \\n.cyan.lighten-5,.cyan.lighten-5--after:after{background-color:#e0f7fa!important} \\n.cyan--text.text--lighten-5{color:#e0f7fa!important} \\n.cyan--text.text--lighten-5 input,.cyan--text.text--lighten-5 textarea{caret-color:#e0f7fa!important} \\n.cyan.lighten-4{border-color:#b2ebf2!important} \\n.cyan.lighten-4,.cyan.lighten-4--after:after{background-color:#b2ebf2!important} \\n.cyan--text.text--lighten-4{color:#b2ebf2!important} \\n.cyan--text.text--lighten-4 input,.cyan--text.text--lighten-4 textarea{caret-color:#b2ebf2!important} \\n.cyan.lighten-3{border-color:#80deea!important} \\n.cyan.lighten-3,.cyan.lighten-3--after:after{background-color:#80deea!important} \\n.cyan--text.text--lighten-3{color:#80deea!important} \\n.cyan--text.text--lighten-3 input,.cyan--text.text--lighten-3 textarea{caret-color:#80deea!important} \\n.cyan.lighten-2{border-color:#4dd0e1!important} \\n.cyan.lighten-2,.cyan.lighten-2--after:after{background-color:#4dd0e1!important} \\n.cyan--text.text--lighten-2{color:#4dd0e1!important} \\n.cyan--text.text--lighten-2 input,.cyan--text.text--lighten-2 textarea{caret-color:#4dd0e1!important} \\n.cyan.lighten-1{border-color:#26c6da!important} \\n.cyan.lighten-1,.cyan.lighten-1--after:after{background-color:#26c6da!important} \\n.cyan--text.text--lighten-1{color:#26c6da!important} \\n.cyan--text.text--lighten-1 input,.cyan--text.text--lighten-1 textarea{caret-color:#26c6da!important} \\n.cyan.darken-1{border-color:#00acc1!important} \\n.cyan.darken-1,.cyan.darken-1--after:after{background-color:#00acc1!important} \\n.cyan--text.text--darken-1{color:#00acc1!important} \\n.cyan--text.text--darken-1 input,.cyan--text.text--darken-1 textarea{caret-color:#00acc1!important} \\n.cyan.darken-2{border-color:#0097a7!important} \\n.cyan.darken-2,.cyan.darken-2--after:after{background-color:#0097a7!important} \\n.cyan--text.text--darken-2{color:#0097a7!important} \\n.cyan--text.text--darken-2 input,.cyan--text.text--darken-2 textarea{caret-color:#0097a7!important} \\n.cyan.darken-3{border-color:#00838f!important} \\n.cyan.darken-3,.cyan.darken-3--after:after{background-color:#00838f!important} \\n.cyan--text.text--darken-3{color:#00838f!important} \\n.cyan--text.text--darken-3 input,.cyan--text.text--darken-3 textarea{caret-color:#00838f!important} \\n.cyan.darken-4{border-color:#006064!important} \\n.cyan.darken-4,.cyan.darken-4--after:after{background-color:#006064!important} \\n.cyan--text.text--darken-4{color:#006064!important} \\n.cyan--text.text--darken-4 input,.cyan--text.text--darken-4 textarea{caret-color:#006064!important} \\n.cyan.accent-1{border-color:#84ffff!important} \\n.cyan.accent-1,.cyan.accent-1--after:after{background-color:#84ffff!important} \\n.cyan--text.text--accent-1{color:#84ffff!important} \\n.cyan--text.text--accent-1 input,.cyan--text.text--accent-1 textarea{caret-color:#84ffff!important} \\n.cyan.accent-2{border-color:#18ffff!important} \\n.cyan.accent-2,.cyan.accent-2--after:after{background-color:#18ffff!important} \\n.cyan--text.text--accent-2{color:#18ffff!important} \\n.cyan--text.text--accent-2 input,.cyan--text.text--accent-2 textarea{caret-color:#18ffff!important} \\n.cyan.accent-3{border-color:#00e5ff!important} \\n.cyan.accent-3,.cyan.accent-3--after:after{background-color:#00e5ff!important} \\n.cyan--text.text--accent-3{color:#00e5ff!important} \\n.cyan--text.text--accent-3 input,.cyan--text.text--accent-3 textarea{caret-color:#00e5ff!important} \\n.cyan.accent-4{border-color:#00b8d4!important} \\n.cyan.accent-4,.cyan.accent-4--after:after{background-color:#00b8d4!important} \\n.cyan--text.text--accent-4{color:#00b8d4!important} \\n.cyan--text.text--accent-4 input,.cyan--text.text--accent-4 textarea{caret-color:#00b8d4!important} \\n.teal{background-color:#009688!important;border-color:#009688!important} \\n.teal--text{color:#009688!important} \\n.teal--text input,.teal--text textarea{caret-color:#009688!important} \\n.teal--after:after{background:#009688!important} \\n.teal.lighten-5{border-color:#e0f2f1!important} \\n.teal.lighten-5,.teal.lighten-5--after:after{background-color:#e0f2f1!important} \\n.teal--text.text--lighten-5{color:#e0f2f1!important} \\n.teal--text.text--lighten-5 input,.teal--text.text--lighten-5 textarea{caret-color:#e0f2f1!important} \\n.teal.lighten-4{border-color:#b2dfdb!important} \\n.teal.lighten-4,.teal.lighten-4--after:after{background-color:#b2dfdb!important} \\n.teal--text.text--lighten-4{color:#b2dfdb!important} \\n.teal--text.text--lighten-4 input,.teal--text.text--lighten-4 textarea{caret-color:#b2dfdb!important} \\n.teal.lighten-3{border-color:#80cbc4!important} \\n.teal.lighten-3,.teal.lighten-3--after:after{background-color:#80cbc4!important} \\n.teal--text.text--lighten-3{color:#80cbc4!important} \\n.teal--text.text--lighten-3 input,.teal--text.text--lighten-3 textarea{caret-color:#80cbc4!important} \\n.teal.lighten-2{border-color:#4db6ac!important} \\n.teal.lighten-2,.teal.lighten-2--after:after{background-color:#4db6ac!important} \\n.teal--text.text--lighten-2{color:#4db6ac!important} \\n.teal--text.text--lighten-2 input,.teal--text.text--lighten-2 textarea{caret-color:#4db6ac!important} \\n.teal.lighten-1{border-color:#26a69a!important} \\n.teal.lighten-1,.teal.lighten-1--after:after{background-color:#26a69a!important} \\n.teal--text.text--lighten-1{color:#26a69a!important} \\n.teal--text.text--lighten-1 input,.teal--text.text--lighten-1 textarea{caret-color:#26a69a!important} \\n.teal.darken-1{border-color:#00897b!important} \\n.teal.darken-1,.teal.darken-1--after:after{background-color:#00897b!important} \\n.teal--text.text--darken-1{color:#00897b!important} \\n.teal--text.text--darken-1 input,.teal--text.text--darken-1 textarea{caret-color:#00897b!important} \\n.teal.darken-2{border-color:#00796b!important} \\n.teal.darken-2,.teal.darken-2--after:after{background-color:#00796b!important} \\n.teal--text.text--darken-2{color:#00796b!important} \\n.teal--text.text--darken-2 input,.teal--text.text--darken-2 textarea{caret-color:#00796b!important} \\n.teal.darken-3{border-color:#00695c!important} \\n.teal.darken-3,.teal.darken-3--after:after{background-color:#00695c!important} \\n.teal--text.text--darken-3{color:#00695c!important} \\n.teal--text.text--darken-3 input,.teal--text.text--darken-3 textarea{caret-color:#00695c!important} \\n.teal.darken-4{border-color:#004d40!important} \\n.teal.darken-4,.teal.darken-4--after:after{background-color:#004d40!important} \\n.teal--text.text--darken-4{color:#004d40!important} \\n.teal--text.text--darken-4 input,.teal--text.text--darken-4 textarea{caret-color:#004d40!important} \\n.teal.accent-1{border-color:#a7ffeb!important} \\n.teal.accent-1,.teal.accent-1--after:after{background-color:#a7ffeb!important} \\n.teal--text.text--accent-1{color:#a7ffeb!important} \\n.teal--text.text--accent-1 input,.teal--text.text--accent-1 textarea{caret-color:#a7ffeb!important} \\n.teal.accent-2{border-color:#64ffda!important} \\n.teal.accent-2,.teal.accent-2--after:after{background-color:#64ffda!important} \\n.teal--text.text--accent-2{color:#64ffda!important} \\n.teal--text.text--accent-2 input,.teal--text.text--accent-2 textarea{caret-color:#64ffda!important} \\n.teal.accent-3{border-color:#1de9b6!important} \\n.teal.accent-3,.teal.accent-3--after:after{background-color:#1de9b6!important} \\n.teal--text.text--accent-3{color:#1de9b6!important} \\n.teal--text.text--accent-3 input,.teal--text.text--accent-3 textarea{caret-color:#1de9b6!important} \\n.teal.accent-4{border-color:#00bfa5!important} \\n.teal.accent-4,.teal.accent-4--after:after{background-color:#00bfa5!important} \\n.teal--text.text--accent-4{color:#00bfa5!important} \\n.teal--text.text--accent-4 input,.teal--text.text--accent-4 textarea{caret-color:#00bfa5!important} \\n.green{background-color:#4caf50!important;border-color:#4caf50!important} \\n.green--text{color:#4caf50!important} \\n.green--text input,.green--text textarea{caret-color:#4caf50!important} \\n.green--after:after{background:#4caf50!important} \\n.green.lighten-5{border-color:#e8f5e9!important} \\n.green.lighten-5,.green.lighten-5--after:after{background-color:#e8f5e9!important} \\n.green--text.text--lighten-5{color:#e8f5e9!important} \\n.green--text.text--lighten-5 input,.green--text.text--lighten-5 textarea{caret-color:#e8f5e9!important} \\n.green.lighten-4{border-color:#c8e6c9!important} \\n.green.lighten-4,.green.lighten-4--after:after{background-color:#c8e6c9!important} \\n.green--text.text--lighten-4{color:#c8e6c9!important} \\n.green--text.text--lighten-4 input,.green--text.text--lighten-4 textarea{caret-color:#c8e6c9!important} \\n.green.lighten-3{border-color:#a5d6a7!important} \\n.green.lighten-3,.green.lighten-3--after:after{background-color:#a5d6a7!important} \\n.green--text.text--lighten-3{color:#a5d6a7!important} \\n.green--text.text--lighten-3 input,.green--text.text--lighten-3 textarea{caret-color:#a5d6a7!important} \\n.green.lighten-2{border-color:#81c784!important} \\n.green.lighten-2,.green.lighten-2--after:after{background-color:#81c784!important} \\n.green--text.text--lighten-2{color:#81c784!important} \\n.green--text.text--lighten-2 input,.green--text.text--lighten-2 textarea{caret-color:#81c784!important} \\n.green.lighten-1{border-color:#66bb6a!important} \\n.green.lighten-1,.green.lighten-1--after:after{background-color:#66bb6a!important} \\n.green--text.text--lighten-1{color:#66bb6a!important} \\n.green--text.text--lighten-1 input,.green--text.text--lighten-1 textarea{caret-color:#66bb6a!important} \\n.green.darken-1{border-color:#43a047!important} \\n.green.darken-1,.green.darken-1--after:after{background-color:#43a047!important} \\n.green--text.text--darken-1{color:#43a047!important} \\n.green--text.text--darken-1 input,.green--text.text--darken-1 textarea{caret-color:#43a047!important} \\n.green.darken-2{border-color:#388e3c!important} \\n.green.darken-2,.green.darken-2--after:after{background-color:#388e3c!important} \\n.green--text.text--darken-2{color:#388e3c!important} \\n.green--text.text--darken-2 input,.green--text.text--darken-2 textarea{caret-color:#388e3c!important} \\n.green.darken-3{border-color:#2e7d32!important} \\n.green.darken-3,.green.darken-3--after:after{background-color:#2e7d32!important} \\n.green--text.text--darken-3{color:#2e7d32!important} \\n.green--text.text--darken-3 input,.green--text.text--darken-3 textarea{caret-color:#2e7d32!important} \\n.green.darken-4{border-color:#1b5e20!important} \\n.green.darken-4,.green.darken-4--after:after{background-color:#1b5e20!important} \\n.green--text.text--darken-4{color:#1b5e20!important} \\n.green--text.text--darken-4 input,.green--text.text--darken-4 textarea{caret-color:#1b5e20!important} \\n.green.accent-1{border-color:#b9f6ca!important} \\n.green.accent-1,.green.accent-1--after:after{background-color:#b9f6ca!important} \\n.green--text.text--accent-1{color:#b9f6ca!important} \\n.green--text.text--accent-1 input,.green--text.text--accent-1 textarea{caret-color:#b9f6ca!important} \\n.green.accent-2{border-color:#69f0ae!important} \\n.green.accent-2,.green.accent-2--after:after{background-color:#69f0ae!important} \\n.green--text.text--accent-2{color:#69f0ae!important} \\n.green--text.text--accent-2 input,.green--text.text--accent-2 textarea{caret-color:#69f0ae!important} \\n.green.accent-3{border-color:#00e676!important} \\n.green.accent-3,.green.accent-3--after:after{background-color:#00e676!important} \\n.green--text.text--accent-3{color:#00e676!important} \\n.green--text.text--accent-3 input,.green--text.text--accent-3 textarea{caret-color:#00e676!important} \\n.green.accent-4{border-color:#00c853!important} \\n.green.accent-4,.green.accent-4--after:after{background-color:#00c853!important} \\n.green--text.text--accent-4{color:#00c853!important} \\n.green--text.text--accent-4 input,.green--text.text--accent-4 textarea{caret-color:#00c853!important} \\n.light-green{background-color:#8bc34a!important;border-color:#8bc34a!important} \\n.light-green--text{color:#8bc34a!important} \\n.light-green--text input,.light-green--text textarea{caret-color:#8bc34a!important} \\n.light-green--after:after{background:#8bc34a!important} \\n.light-green.lighten-5{border-color:#f1f8e9!important} \\n.light-green.lighten-5,.light-green.lighten-5--after:after{background-color:#f1f8e9!important} \\n.light-green--text.text--lighten-5{color:#f1f8e9!important} \\n.light-green--text.text--lighten-5 input,.light-green--text.text--lighten-5 textarea{caret-color:#f1f8e9!important} \\n.light-green.lighten-4{border-color:#dcedc8!important} \\n.light-green.lighten-4,.light-green.lighten-4--after:after{background-color:#dcedc8!important} \\n.light-green--text.text--lighten-4{color:#dcedc8!important} \\n.light-green--text.text--lighten-4 input,.light-green--text.text--lighten-4 textarea{caret-color:#dcedc8!important} \\n.light-green.lighten-3{border-color:#c5e1a5!important} \\n.light-green.lighten-3,.light-green.lighten-3--after:after{background-color:#c5e1a5!important} \\n.light-green--text.text--lighten-3{color:#c5e1a5!important} \\n.light-green--text.text--lighten-3 input,.light-green--text.text--lighten-3 textarea{caret-color:#c5e1a5!important} \\n.light-green.lighten-2{border-color:#aed581!important} \\n.light-green.lighten-2,.light-green.lighten-2--after:after{background-color:#aed581!important} \\n.light-green--text.text--lighten-2{color:#aed581!important} \\n.light-green--text.text--lighten-2 input,.light-green--text.text--lighten-2 textarea{caret-color:#aed581!important} \\n.light-green.lighten-1{border-color:#9ccc65!important} \\n.light-green.lighten-1,.light-green.lighten-1--after:after{background-color:#9ccc65!important} \\n.light-green--text.text--lighten-1{color:#9ccc65!important} \\n.light-green--text.text--lighten-1 input,.light-green--text.text--lighten-1 textarea{caret-color:#9ccc65!important} \\n.light-green.darken-1{border-color:#7cb342!important} \\n.light-green.darken-1,.light-green.darken-1--after:after{background-color:#7cb342!important} \\n.light-green--text.text--darken-1{color:#7cb342!important} \\n.light-green--text.text--darken-1 input,.light-green--text.text--darken-1 textarea{caret-color:#7cb342!important} \\n.light-green.darken-2{border-color:#689f38!important} \\n.light-green.darken-2,.light-green.darken-2--after:after{background-color:#689f38!important} \\n.light-green--text.text--darken-2{color:#689f38!important} \\n.light-green--text.text--darken-2 input,.light-green--text.text--darken-2 textarea{caret-color:#689f38!important} \\n.light-green.darken-3{border-color:#558b2f!important} \\n.light-green.darken-3,.light-green.darken-3--after:after{background-color:#558b2f!important} \\n.light-green--text.text--darken-3{color:#558b2f!important} \\n.light-green--text.text--darken-3 input,.light-green--text.text--darken-3 textarea{caret-color:#558b2f!important} \\n.light-green.darken-4{border-color:#33691e!important} \\n.light-green.darken-4,.light-green.darken-4--after:after{background-color:#33691e!important} \\n.light-green--text.text--darken-4{color:#33691e!important} \\n.light-green--text.text--darken-4 input,.light-green--text.text--darken-4 textarea{caret-color:#33691e!important} \\n.light-green.accent-1{border-color:#ccff90!important} \\n.light-green.accent-1,.light-green.accent-1--after:after{background-color:#ccff90!important} \\n.light-green--text.text--accent-1{color:#ccff90!important} \\n.light-green--text.text--accent-1 input,.light-green--text.text--accent-1 textarea{caret-color:#ccff90!important} \\n.light-green.accent-2{border-color:#b2ff59!important} \\n.light-green.accent-2,.light-green.accent-2--after:after{background-color:#b2ff59!important} \\n.light-green--text.text--accent-2{color:#b2ff59!important} \\n.light-green--text.text--accent-2 input,.light-green--text.text--accent-2 textarea{caret-color:#b2ff59!important} \\n.light-green.accent-3{border-color:#76ff03!important} \\n.light-green.accent-3,.light-green.accent-3--after:after{background-color:#76ff03!important} \\n.light-green--text.text--accent-3{color:#76ff03!important} \\n.light-green--text.text--accent-3 input,.light-green--text.text--accent-3 textarea{caret-color:#76ff03!important} \\n.light-green.accent-4{border-color:#64dd17!important} \\n.light-green.accent-4,.light-green.accent-4--after:after{background-color:#64dd17!important} \\n.light-green--text.text--accent-4{color:#64dd17!important} \\n.light-green--text.text--accent-4 input,.light-green--text.text--accent-4 textarea{caret-color:#64dd17!important} \\n.lime{background-color:#cddc39!important;border-color:#cddc39!important} \\n.lime--text{color:#cddc39!important} \\n.lime--text input,.lime--text textarea{caret-color:#cddc39!important} \\n.lime--after:after{background:#cddc39!important} \\n.lime.lighten-5{border-color:#f9fbe7!important} \\n.lime.lighten-5,.lime.lighten-5--after:after{background-color:#f9fbe7!important} \\n.lime--text.text--lighten-5{color:#f9fbe7!important} \\n.lime--text.text--lighten-5 input,.lime--text.text--lighten-5 textarea{caret-color:#f9fbe7!important} \\n.lime.lighten-4{border-color:#f0f4c3!important} \\n.lime.lighten-4,.lime.lighten-4--after:after{background-color:#f0f4c3!important} \\n.lime--text.text--lighten-4{color:#f0f4c3!important} \\n.lime--text.text--lighten-4 input,.lime--text.text--lighten-4 textarea{caret-color:#f0f4c3!important} \\n.lime.lighten-3{border-color:#e6ee9c!important} \\n.lime.lighten-3,.lime.lighten-3--after:after{background-color:#e6ee9c!important} \\n.lime--text.text--lighten-3{color:#e6ee9c!important} \\n.lime--text.text--lighten-3 input,.lime--text.text--lighten-3 textarea{caret-color:#e6ee9c!important} \\n.lime.lighten-2{border-color:#dce775!important} \\n.lime.lighten-2,.lime.lighten-2--after:after{background-color:#dce775!important} \\n.lime--text.text--lighten-2{color:#dce775!important} \\n.lime--text.text--lighten-2 input,.lime--text.text--lighten-2 textarea{caret-color:#dce775!important} \\n.lime.lighten-1{border-color:#d4e157!important} \\n.lime.lighten-1,.lime.lighten-1--after:after{background-color:#d4e157!important} \\n.lime--text.text--lighten-1{color:#d4e157!important} \\n.lime--text.text--lighten-1 input,.lime--text.text--lighten-1 textarea{caret-color:#d4e157!important} \\n.lime.darken-1{border-color:#c0ca33!important} \\n.lime.darken-1,.lime.darken-1--after:after{background-color:#c0ca33!important} \\n.lime--text.text--darken-1{color:#c0ca33!important} \\n.lime--text.text--darken-1 input,.lime--text.text--darken-1 textarea{caret-color:#c0ca33!important} \\n.lime.darken-2{border-color:#afb42b!important} \\n.lime.darken-2,.lime.darken-2--after:after{background-color:#afb42b!important} \\n.lime--text.text--darken-2{color:#afb42b!important} \\n.lime--text.text--darken-2 input,.lime--text.text--darken-2 textarea{caret-color:#afb42b!important} \\n.lime.darken-3{border-color:#9e9d24!important} \\n.lime.darken-3,.lime.darken-3--after:after{background-color:#9e9d24!important} \\n.lime--text.text--darken-3{color:#9e9d24!important} \\n.lime--text.text--darken-3 input,.lime--text.text--darken-3 textarea{caret-color:#9e9d24!important} \\n.lime.darken-4{border-color:#827717!important} \\n.lime.darken-4,.lime.darken-4--after:after{background-color:#827717!important} \\n.lime--text.text--darken-4{color:#827717!important} \\n.lime--text.text--darken-4 input,.lime--text.text--darken-4 textarea{caret-color:#827717!important} \\n.lime.accent-1{border-color:#f4ff81!important} \\n.lime.accent-1,.lime.accent-1--after:after{background-color:#f4ff81!important} \\n.lime--text.text--accent-1{color:#f4ff81!important} \\n.lime--text.text--accent-1 input,.lime--text.text--accent-1 textarea{caret-color:#f4ff81!important} \\n.lime.accent-2{border-color:#eeff41!important} \\n.lime.accent-2,.lime.accent-2--after:after{background-color:#eeff41!important} \\n.lime--text.text--accent-2{color:#eeff41!important} \\n.lime--text.text--accent-2 input,.lime--text.text--accent-2 textarea{caret-color:#eeff41!important} \\n.lime.accent-3{border-color:#c6ff00!important} \\n.lime.accent-3,.lime.accent-3--after:after{background-color:#c6ff00!important} \\n.lime--text.text--accent-3{color:#c6ff00!important} \\n.lime--text.text--accent-3 input,.lime--text.text--accent-3 textarea{caret-color:#c6ff00!important} \\n.lime.accent-4{border-color:#aeea00!important} \\n.lime.accent-4,.lime.accent-4--after:after{background-color:#aeea00!important} \\n.lime--text.text--accent-4{color:#aeea00!important} \\n.lime--text.text--accent-4 input,.lime--text.text--accent-4 textarea{caret-color:#aeea00!important} \\n.yellow{background-color:#ffeb3b!important;border-color:#ffeb3b!important} \\n.yellow--text{color:#ffeb3b!important} \\n.yellow--text input,.yellow--text textarea{caret-color:#ffeb3b!important} \\n.yellow--after:after{background:#ffeb3b!important} \\n.yellow.lighten-5{border-color:#fffde7!important} \\n.yellow.lighten-5,.yellow.lighten-5--after:after{background-color:#fffde7!important} \\n.yellow--text.text--lighten-5{color:#fffde7!important} \\n.yellow--text.text--lighten-5 input,.yellow--text.text--lighten-5 textarea{caret-color:#fffde7!important} \\n.yellow.lighten-4{border-color:#fff9c4!important} \\n.yellow.lighten-4,.yellow.lighten-4--after:after{background-color:#fff9c4!important} \\n.yellow--text.text--lighten-4{color:#fff9c4!important} \\n.yellow--text.text--lighten-4 input,.yellow--text.text--lighten-4 textarea{caret-color:#fff9c4!important} \\n.yellow.lighten-3{border-color:#fff59d!important} \\n.yellow.lighten-3,.yellow.lighten-3--after:after{background-color:#fff59d!important} \\n.yellow--text.text--lighten-3{color:#fff59d!important} \\n.yellow--text.text--lighten-3 input,.yellow--text.text--lighten-3 textarea{caret-color:#fff59d!important} \\n.yellow.lighten-2{border-color:#fff176!important} \\n.yellow.lighten-2,.yellow.lighten-2--after:after{background-color:#fff176!important} \\n.yellow--text.text--lighten-2{color:#fff176!important} \\n.yellow--text.text--lighten-2 input,.yellow--text.text--lighten-2 textarea{caret-color:#fff176!important} \\n.yellow.lighten-1{border-color:#ffee58!important} \\n.yellow.lighten-1,.yellow.lighten-1--after:after{background-color:#ffee58!important} \\n.yellow--text.text--lighten-1{color:#ffee58!important} \\n.yellow--text.text--lighten-1 input,.yellow--text.text--lighten-1 textarea{caret-color:#ffee58!important} \\n.yellow.darken-1{border-color:#fdd835!important} \\n.yellow.darken-1,.yellow.darken-1--after:after{background-color:#fdd835!important} \\n.yellow--text.text--darken-1{color:#fdd835!important} \\n.yellow--text.text--darken-1 input,.yellow--text.text--darken-1 textarea{caret-color:#fdd835!important} \\n.yellow.darken-2{border-color:#fbc02d!important} \\n.yellow.darken-2,.yellow.darken-2--after:after{background-color:#fbc02d!important} \\n.yellow--text.text--darken-2{color:#fbc02d!important} \\n.yellow--text.text--darken-2 input,.yellow--text.text--darken-2 textarea{caret-color:#fbc02d!important} \\n.yellow.darken-3{border-color:#f9a825!important} \\n.yellow.darken-3,.yellow.darken-3--after:after{background-color:#f9a825!important} \\n.yellow--text.text--darken-3{color:#f9a825!important} \\n.yellow--text.text--darken-3 input,.yellow--text.text--darken-3 textarea{caret-color:#f9a825!important} \\n.yellow.darken-4{border-color:#f57f17!important} \\n.yellow.darken-4,.yellow.darken-4--after:after{background-color:#f57f17!important} \\n.yellow--text.text--darken-4{color:#f57f17!important} \\n.yellow--text.text--darken-4 input,.yellow--text.text--darken-4 textarea{caret-color:#f57f17!important} \\n.yellow.accent-1{border-color:#ffff8d!important} \\n.yellow.accent-1,.yellow.accent-1--after:after{background-color:#ffff8d!important} \\n.yellow--text.text--accent-1{color:#ffff8d!important} \\n.yellow--text.text--accent-1 input,.yellow--text.text--accent-1 textarea{caret-color:#ffff8d!important} \\n.yellow.accent-2{border-color:#ff0!important} \\n.yellow.accent-2,.yellow.accent-2--after:after{background-color:#ff0!important} \\n.yellow--text.text--accent-2{color:#ff0!important} \\n.yellow--text.text--accent-2 input,.yellow--text.text--accent-2 textarea{caret-color:#ff0!important} \\n.yellow.accent-3{border-color:#ffea00!important} \\n.yellow.accent-3,.yellow.accent-3--after:after{background-color:#ffea00!important} \\n.yellow--text.text--accent-3{color:#ffea00!important} \\n.yellow--text.text--accent-3 input,.yellow--text.text--accent-3 textarea{caret-color:#ffea00!important} \\n.yellow.accent-4{border-color:#ffd600!important} \\n.yellow.accent-4,.yellow.accent-4--after:after{background-color:#ffd600!important} \\n.yellow--text.text--accent-4{color:#ffd600!important} \\n.yellow--text.text--accent-4 input,.yellow--text.text--accent-4 textarea{caret-color:#ffd600!important} \\n.amber{background-color:#ffc107!important;border-color:#ffc107!important} \\n.amber--text{color:#ffc107!important} \\n.amber--text input,.amber--text textarea{caret-color:#ffc107!important} \\n.amber--after:after{background:#ffc107!important} \\n.amber.lighten-5{border-color:#fff8e1!important} \\n.amber.lighten-5,.amber.lighten-5--after:after{background-color:#fff8e1!important} \\n.amber--text.text--lighten-5{color:#fff8e1!important} \\n.amber--text.text--lighten-5 input,.amber--text.text--lighten-5 textarea{caret-color:#fff8e1!important} \\n.amber.lighten-4{border-color:#ffecb3!important} \\n.amber.lighten-4,.amber.lighten-4--after:after{background-color:#ffecb3!important} \\n.amber--text.text--lighten-4{color:#ffecb3!important} \\n.amber--text.text--lighten-4 input,.amber--text.text--lighten-4 textarea{caret-color:#ffecb3!important} \\n.amber.lighten-3{border-color:#ffe082!important} \\n.amber.lighten-3,.amber.lighten-3--after:after{background-color:#ffe082!important} \\n.amber--text.text--lighten-3{color:#ffe082!important} \\n.amber--text.text--lighten-3 input,.amber--text.text--lighten-3 textarea{caret-color:#ffe082!important} \\n.amber.lighten-2{border-color:#ffd54f!important} \\n.amber.lighten-2,.amber.lighten-2--after:after{background-color:#ffd54f!important} \\n.amber--text.text--lighten-2{color:#ffd54f!important} \\n.amber--text.text--lighten-2 input,.amber--text.text--lighten-2 textarea{caret-color:#ffd54f!important} \\n.amber.lighten-1{border-color:#ffca28!important} \\n.amber.lighten-1,.amber.lighten-1--after:after{background-color:#ffca28!important} \\n.amber--text.text--lighten-1{color:#ffca28!important} \\n.amber--text.text--lighten-1 input,.amber--text.text--lighten-1 textarea{caret-color:#ffca28!important} \\n.amber.darken-1{border-color:#ffb300!important} \\n.amber.darken-1,.amber.darken-1--after:after{background-color:#ffb300!important} \\n.amber--text.text--darken-1{color:#ffb300!important} \\n.amber--text.text--darken-1 input,.amber--text.text--darken-1 textarea{caret-color:#ffb300!important} \\n.amber.darken-2{border-color:#ffa000!important} \\n.amber.darken-2,.amber.darken-2--after:after{background-color:#ffa000!important} \\n.amber--text.text--darken-2{color:#ffa000!important} \\n.amber--text.text--darken-2 input,.amber--text.text--darken-2 textarea{caret-color:#ffa000!important} \\n.amber.darken-3{border-color:#ff8f00!important} \\n.amber.darken-3,.amber.darken-3--after:after{background-color:#ff8f00!important} \\n.amber--text.text--darken-3{color:#ff8f00!important} \\n.amber--text.text--darken-3 input,.amber--text.text--darken-3 textarea{caret-color:#ff8f00!important} \\n.amber.darken-4{border-color:#ff6f00!important} \\n.amber.darken-4,.amber.darken-4--after:after{background-color:#ff6f00!important} \\n.amber--text.text--darken-4{color:#ff6f00!important} \\n.amber--text.text--darken-4 input,.amber--text.text--darken-4 textarea{caret-color:#ff6f00!important} \\n.amber.accent-1{border-color:#ffe57f!important} \\n.amber.accent-1,.amber.accent-1--after:after{background-color:#ffe57f!important} \\n.amber--text.text--accent-1{color:#ffe57f!important} \\n.amber--text.text--accent-1 input,.amber--text.text--accent-1 textarea{caret-color:#ffe57f!important} \\n.amber.accent-2{border-color:#ffd740!important} \\n.amber.accent-2,.amber.accent-2--after:after{background-color:#ffd740!important} \\n.amber--text.text--accent-2{color:#ffd740!important} \\n.amber--text.text--accent-2 input,.amber--text.text--accent-2 textarea{caret-color:#ffd740!important} \\n.amber.accent-3{border-color:#ffc400!important} \\n.amber.accent-3,.amber.accent-3--after:after{background-color:#ffc400!important} \\n.amber--text.text--accent-3{color:#ffc400!important} \\n.amber--text.text--accent-3 input,.amber--text.text--accent-3 textarea{caret-color:#ffc400!important} \\n.amber.accent-4{border-color:#ffab00!important} \\n.amber.accent-4,.amber.accent-4--after:after{background-color:#ffab00!important} \\n.amber--text.text--accent-4{color:#ffab00!important} \\n.amber--text.text--accent-4 input,.amber--text.text--accent-4 textarea{caret-color:#ffab00!important} \\n.orange{background-color:#ff9800!important;border-color:#ff9800!important} \\n.orange--text{color:#ff9800!important} \\n.orange--text input,.orange--text textarea{caret-color:#ff9800!important} \\n.orange--after:after{background:#ff9800!important} \\n.orange.lighten-5{border-color:#fff3e0!important} \\n.orange.lighten-5,.orange.lighten-5--after:after{background-color:#fff3e0!important} \\n.orange--text.text--lighten-5{color:#fff3e0!important} \\n.orange--text.text--lighten-5 input,.orange--text.text--lighten-5 textarea{caret-color:#fff3e0!important} \\n.orange.lighten-4{border-color:#ffe0b2!important} \\n.orange.lighten-4,.orange.lighten-4--after:after{background-color:#ffe0b2!important} \\n.orange--text.text--lighten-4{color:#ffe0b2!important} \\n.orange--text.text--lighten-4 input,.orange--text.text--lighten-4 textarea{caret-color:#ffe0b2!important} \\n.orange.lighten-3{border-color:#ffcc80!important} \\n.orange.lighten-3,.orange.lighten-3--after:after{background-color:#ffcc80!important} \\n.orange--text.text--lighten-3{color:#ffcc80!important} \\n.orange--text.text--lighten-3 input,.orange--text.text--lighten-3 textarea{caret-color:#ffcc80!important} \\n.orange.lighten-2{border-color:#ffb74d!important} \\n.orange.lighten-2,.orange.lighten-2--after:after{background-color:#ffb74d!important} \\n.orange--text.text--lighten-2{color:#ffb74d!important} \\n.orange--text.text--lighten-2 input,.orange--text.text--lighten-2 textarea{caret-color:#ffb74d!important} \\n.orange.lighten-1{border-color:#ffa726!important} \\n.orange.lighten-1,.orange.lighten-1--after:after{background-color:#ffa726!important} \\n.orange--text.text--lighten-1{color:#ffa726!important} \\n.orange--text.text--lighten-1 input,.orange--text.text--lighten-1 textarea{caret-color:#ffa726!important} \\n.orange.darken-1{border-color:#fb8c00!important} \\n.orange.darken-1,.orange.darken-1--after:after{background-color:#fb8c00!important} \\n.orange--text.text--darken-1{color:#fb8c00!important} \\n.orange--text.text--darken-1 input,.orange--text.text--darken-1 textarea{caret-color:#fb8c00!important} \\n.orange.darken-2{border-color:#f57c00!important} \\n.orange.darken-2,.orange.darken-2--after:after{background-color:#f57c00!important} \\n.orange--text.text--darken-2{color:#f57c00!important} \\n.orange--text.text--darken-2 input,.orange--text.text--darken-2 textarea{caret-color:#f57c00!important} \\n.orange.darken-3{border-color:#ef6c00!important} \\n.orange.darken-3,.orange.darken-3--after:after{background-color:#ef6c00!important} \\n.orange--text.text--darken-3{color:#ef6c00!important} \\n.orange--text.text--darken-3 input,.orange--text.text--darken-3 textarea{caret-color:#ef6c00!important} \\n.orange.darken-4{border-color:#e65100!important} \\n.orange.darken-4,.orange.darken-4--after:after{background-color:#e65100!important} \\n.orange--text.text--darken-4{color:#e65100!important} \\n.orange--text.text--darken-4 input,.orange--text.text--darken-4 textarea{caret-color:#e65100!important} \\n.orange.accent-1{border-color:#ffd180!important} \\n.orange.accent-1,.orange.accent-1--after:after{background-color:#ffd180!important} \\n.orange--text.text--accent-1{color:#ffd180!important} \\n.orange--text.text--accent-1 input,.orange--text.text--accent-1 textarea{caret-color:#ffd180!important} \\n.orange.accent-2{border-color:#ffab40!important} \\n.orange.accent-2,.orange.accent-2--after:after{background-color:#ffab40!important} \\n.orange--text.text--accent-2{color:#ffab40!important} \\n.orange--text.text--accent-2 input,.orange--text.text--accent-2 textarea{caret-color:#ffab40!important} \\n.orange.accent-3{border-color:#ff9100!important} \\n.orange.accent-3,.orange.accent-3--after:after{background-color:#ff9100!important} \\n.orange--text.text--accent-3{color:#ff9100!important} \\n.orange--text.text--accent-3 input,.orange--text.text--accent-3 textarea{caret-color:#ff9100!important} \\n.orange.accent-4{border-color:#ff6d00!important} \\n.orange.accent-4,.orange.accent-4--after:after{background-color:#ff6d00!important} \\n.orange--text.text--accent-4{color:#ff6d00!important} \\n.orange--text.text--accent-4 input,.orange--text.text--accent-4 textarea{caret-color:#ff6d00!important} \\n.deep-orange{background-color:#ff5722!important;border-color:#ff5722!important} \\n.deep-orange--text{color:#ff5722!important} \\n.deep-orange--text input,.deep-orange--text textarea{caret-color:#ff5722!important} \\n.deep-orange--after:after{background:#ff5722!important} \\n.deep-orange.lighten-5{border-color:#fbe9e7!important} \\n.deep-orange.lighten-5,.deep-orange.lighten-5--after:after{background-color:#fbe9e7!important} \\n.deep-orange--text.text--lighten-5{color:#fbe9e7!important} \\n.deep-orange--text.text--lighten-5 input,.deep-orange--text.text--lighten-5 textarea{caret-color:#fbe9e7!important} \\n.deep-orange.lighten-4{border-color:#ffccbc!important} \\n.deep-orange.lighten-4,.deep-orange.lighten-4--after:after{background-color:#ffccbc!important} \\n.deep-orange--text.text--lighten-4{color:#ffccbc!important} \\n.deep-orange--text.text--lighten-4 input,.deep-orange--text.text--lighten-4 textarea{caret-color:#ffccbc!important} \\n.deep-orange.lighten-3{border-color:#ffab91!important} \\n.deep-orange.lighten-3,.deep-orange.lighten-3--after:after{background-color:#ffab91!important} \\n.deep-orange--text.text--lighten-3{color:#ffab91!important} \\n.deep-orange--text.text--lighten-3 input,.deep-orange--text.text--lighten-3 textarea{caret-color:#ffab91!important} \\n.deep-orange.lighten-2{border-color:#ff8a65!important} \\n.deep-orange.lighten-2,.deep-orange.lighten-2--after:after{background-color:#ff8a65!important} \\n.deep-orange--text.text--lighten-2{color:#ff8a65!important} \\n.deep-orange--text.text--lighten-2 input,.deep-orange--text.text--lighten-2 textarea{caret-color:#ff8a65!important} \\n.deep-orange.lighten-1{border-color:#ff7043!important} \\n.deep-orange.lighten-1,.deep-orange.lighten-1--after:after{background-color:#ff7043!important} \\n.deep-orange--text.text--lighten-1{color:#ff7043!important} \\n.deep-orange--text.text--lighten-1 input,.deep-orange--text.text--lighten-1 textarea{caret-color:#ff7043!important} \\n.deep-orange.darken-1{border-color:#f4511e!important} \\n.deep-orange.darken-1,.deep-orange.darken-1--after:after{background-color:#f4511e!important} \\n.deep-orange--text.text--darken-1{color:#f4511e!important} \\n.deep-orange--text.text--darken-1 input,.deep-orange--text.text--darken-1 textarea{caret-color:#f4511e!important} \\n.deep-orange.darken-2{border-color:#e64a19!important} \\n.deep-orange.darken-2,.deep-orange.darken-2--after:after{background-color:#e64a19!important} \\n.deep-orange--text.text--darken-2{color:#e64a19!important} \\n.deep-orange--text.text--darken-2 input,.deep-orange--text.text--darken-2 textarea{caret-color:#e64a19!important} \\n.deep-orange.darken-3{border-color:#d84315!important} \\n.deep-orange.darken-3,.deep-orange.darken-3--after:after{background-color:#d84315!important} \\n.deep-orange--text.text--darken-3{color:#d84315!important} \\n.deep-orange--text.text--darken-3 input,.deep-orange--text.text--darken-3 textarea{caret-color:#d84315!important} \\n.deep-orange.darken-4{border-color:#bf360c!important} \\n.deep-orange.darken-4,.deep-orange.darken-4--after:after{background-color:#bf360c!important} \\n.deep-orange--text.text--darken-4{color:#bf360c!important} \\n.deep-orange--text.text--darken-4 input,.deep-orange--text.text--darken-4 textarea{caret-color:#bf360c!important} \\n.deep-orange.accent-1{border-color:#ff9e80!important} \\n.deep-orange.accent-1,.deep-orange.accent-1--after:after{background-color:#ff9e80!important} \\n.deep-orange--text.text--accent-1{color:#ff9e80!important} \\n.deep-orange--text.text--accent-1 input,.deep-orange--text.text--accent-1 textarea{caret-color:#ff9e80!important} \\n.deep-orange.accent-2{border-color:#ff6e40!important} \\n.deep-orange.accent-2,.deep-orange.accent-2--after:after{background-color:#ff6e40!important} \\n.deep-orange--text.text--accent-2{color:#ff6e40!important} \\n.deep-orange--text.text--accent-2 input,.deep-orange--text.text--accent-2 textarea{caret-color:#ff6e40!important} \\n.deep-orange.accent-3{border-color:#ff3d00!important} \\n.deep-orange.accent-3,.deep-orange.accent-3--after:after{background-color:#ff3d00!important} \\n.deep-orange--text.text--accent-3{color:#ff3d00!important} \\n.deep-orange--text.text--accent-3 input,.deep-orange--text.text--accent-3 textarea{caret-color:#ff3d00!important} \\n.deep-orange.accent-4{border-color:#dd2c00!important} \\n.deep-orange.accent-4,.deep-orange.accent-4--after:after{background-color:#dd2c00!important} \\n.deep-orange--text.text--accent-4{color:#dd2c00!important} \\n.deep-orange--text.text--accent-4 input,.deep-orange--text.text--accent-4 textarea{caret-color:#dd2c00!important} \\n.brown{background-color:#795548!important;border-color:#795548!important} \\n.brown--text{color:#795548!important} \\n.brown--text input,.brown--text textarea{caret-color:#795548!important} \\n.brown--after:after{background:#795548!important} \\n.brown.lighten-5{border-color:#efebe9!important} \\n.brown.lighten-5,.brown.lighten-5--after:after{background-color:#efebe9!important} \\n.brown--text.text--lighten-5{color:#efebe9!important} \\n.brown--text.text--lighten-5 input,.brown--text.text--lighten-5 textarea{caret-color:#efebe9!important} \\n.brown.lighten-4{border-color:#d7ccc8!important} \\n.brown.lighten-4,.brown.lighten-4--after:after{background-color:#d7ccc8!important} \\n.brown--text.text--lighten-4{color:#d7ccc8!important} \\n.brown--text.text--lighten-4 input,.brown--text.text--lighten-4 textarea{caret-color:#d7ccc8!important} \\n.brown.lighten-3{border-color:#bcaaa4!important} \\n.brown.lighten-3,.brown.lighten-3--after:after{background-color:#bcaaa4!important} \\n.brown--text.text--lighten-3{color:#bcaaa4!important} \\n.brown--text.text--lighten-3 input,.brown--text.text--lighten-3 textarea{caret-color:#bcaaa4!important} \\n.brown.lighten-2{border-color:#a1887f!important} \\n.brown.lighten-2,.brown.lighten-2--after:after{background-color:#a1887f!important} \\n.brown--text.text--lighten-2{color:#a1887f!important} \\n.brown--text.text--lighten-2 input,.brown--text.text--lighten-2 textarea{caret-color:#a1887f!important} \\n.brown.lighten-1{border-color:#8d6e63!important} \\n.brown.lighten-1,.brown.lighten-1--after:after{background-color:#8d6e63!important} \\n.brown--text.text--lighten-1{color:#8d6e63!important} \\n.brown--text.text--lighten-1 input,.brown--text.text--lighten-1 textarea{caret-color:#8d6e63!important} \\n.brown.darken-1{border-color:#6d4c41!important} \\n.brown.darken-1,.brown.darken-1--after:after{background-color:#6d4c41!important} \\n.brown--text.text--darken-1{color:#6d4c41!important} \\n.brown--text.text--darken-1 input,.brown--text.text--darken-1 textarea{caret-color:#6d4c41!important} \\n.brown.darken-2{border-color:#5d4037!important} \\n.brown.darken-2,.brown.darken-2--after:after{background-color:#5d4037!important} \\n.brown--text.text--darken-2{color:#5d4037!important} \\n.brown--text.text--darken-2 input,.brown--text.text--darken-2 textarea{caret-color:#5d4037!important} \\n.brown.darken-3{border-color:#4e342e!important} \\n.brown.darken-3,.brown.darken-3--after:after{background-color:#4e342e!important} \\n.brown--text.text--darken-3{color:#4e342e!important} \\n.brown--text.text--darken-3 input,.brown--text.text--darken-3 textarea{caret-color:#4e342e!important} \\n.brown.darken-4{border-color:#3e2723!important} \\n.brown.darken-4,.brown.darken-4--after:after{background-color:#3e2723!important} \\n.brown--text.text--darken-4{color:#3e2723!important} \\n.brown--text.text--darken-4 input,.brown--text.text--darken-4 textarea{caret-color:#3e2723!important} \\n.blue-grey{background-color:#607d8b!important;border-color:#607d8b!important} \\n.blue-grey--text{color:#607d8b!important} \\n.blue-grey--text input,.blue-grey--text textarea{caret-color:#607d8b!important} \\n.blue-grey--after:after{background:#607d8b!important} \\n.blue-grey.lighten-5{border-color:#eceff1!important} \\n.blue-grey.lighten-5,.blue-grey.lighten-5--after:after{background-color:#eceff1!important} \\n.blue-grey--text.text--lighten-5{color:#eceff1!important} \\n.blue-grey--text.text--lighten-5 input,.blue-grey--text.text--lighten-5 textarea{caret-color:#eceff1!important} \\n.blue-grey.lighten-4{border-color:#cfd8dc!important} \\n.blue-grey.lighten-4,.blue-grey.lighten-4--after:after{background-color:#cfd8dc!important} \\n.blue-grey--text.text--lighten-4{color:#cfd8dc!important} \\n.blue-grey--text.text--lighten-4 input,.blue-grey--text.text--lighten-4 textarea{caret-color:#cfd8dc!important} \\n.blue-grey.lighten-3{border-color:#b0bec5!important} \\n.blue-grey.lighten-3,.blue-grey.lighten-3--after:after{background-color:#b0bec5!important} \\n.blue-grey--text.text--lighten-3{color:#b0bec5!important} \\n.blue-grey--text.text--lighten-3 input,.blue-grey--text.text--lighten-3 textarea{caret-color:#b0bec5!important} \\n.blue-grey.lighten-2{border-color:#90a4ae!important} \\n.blue-grey.lighten-2,.blue-grey.lighten-2--after:after{background-color:#90a4ae!important} \\n.blue-grey--text.text--lighten-2{color:#90a4ae!important} \\n.blue-grey--text.text--lighten-2 input,.blue-grey--text.text--lighten-2 textarea{caret-color:#90a4ae!important} \\n.blue-grey.lighten-1{border-color:#78909c!important} \\n.blue-grey.lighten-1,.blue-grey.lighten-1--after:after{background-color:#78909c!important} \\n.blue-grey--text.text--lighten-1{color:#78909c!important} \\n.blue-grey--text.text--lighten-1 input,.blue-grey--text.text--lighten-1 textarea{caret-color:#78909c!important} \\n.blue-grey.darken-1{border-color:#546e7a!important} \\n.blue-grey.darken-1,.blue-grey.darken-1--after:after{background-color:#546e7a!important} \\n.blue-grey--text.text--darken-1{color:#546e7a!important} \\n.blue-grey--text.text--darken-1 input,.blue-grey--text.text--darken-1 textarea{caret-color:#546e7a!important} \\n.blue-grey.darken-2{border-color:#455a64!important} \\n.blue-grey.darken-2,.blue-grey.darken-2--after:after{background-color:#455a64!important} \\n.blue-grey--text.text--darken-2{color:#455a64!important} \\n.blue-grey--text.text--darken-2 input,.blue-grey--text.text--darken-2 textarea{caret-color:#455a64!important} \\n.blue-grey.darken-3{border-color:#37474f!important} \\n.blue-grey.darken-3,.blue-grey.darken-3--after:after{background-color:#37474f!important} \\n.blue-grey--text.text--darken-3{color:#37474f!important} \\n.blue-grey--text.text--darken-3 input,.blue-grey--text.text--darken-3 textarea{caret-color:#37474f!important} \\n.blue-grey.darken-4{border-color:#263238!important} \\n.blue-grey.darken-4,.blue-grey.darken-4--after:after{background-color:#263238!important} \\n.blue-grey--text.text--darken-4{color:#263238!important} \\n.blue-grey--text.text--darken-4 input,.blue-grey--text.text--darken-4 textarea{caret-color:#263238!important} \\n.grey{background-color:#9e9e9e!important;border-color:#9e9e9e!important} \\n.grey--text{color:#9e9e9e!important} \\n.grey--text input,.grey--text textarea{caret-color:#9e9e9e!important} \\n.grey--after:after{background:#9e9e9e!important} \\n.grey.lighten-5{border-color:#fafafa!important} \\n.grey.lighten-5,.grey.lighten-5--after:after{background-color:#fafafa!important} \\n.grey--text.text--lighten-5{color:#fafafa!important} \\n.grey--text.text--lighten-5 input,.grey--text.text--lighten-5 textarea{caret-color:#fafafa!important} \\n.grey.lighten-4{border-color:#f5f5f5!important} \\n.grey.lighten-4,.grey.lighten-4--after:after{background-color:#f5f5f5!important} \\n.grey--text.text--lighten-4{color:#f5f5f5!important} \\n.grey--text.text--lighten-4 input,.grey--text.text--lighten-4 textarea{caret-color:#f5f5f5!important} \\n.grey.lighten-3{border-color:#eee!important} \\n.grey.lighten-3,.grey.lighten-3--after:after{background-color:#eee!important} \\n.grey--text.text--lighten-3{color:#eee!important} \\n.grey--text.text--lighten-3 input,.grey--text.text--lighten-3 textarea{caret-color:#eee!important} \\n.grey.lighten-2{border-color:#e0e0e0!important} \\n.grey.lighten-2,.grey.lighten-2--after:after{background-color:#e0e0e0!important} \\n.grey--text.text--lighten-2{color:#e0e0e0!important} \\n.grey--text.text--lighten-2 input,.grey--text.text--lighten-2 textarea{caret-color:#e0e0e0!important} \\n.grey.lighten-1{border-color:#bdbdbd!important} \\n.grey.lighten-1,.grey.lighten-1--after:after{background-color:#bdbdbd!important} \\n.grey--text.text--lighten-1{color:#bdbdbd!important} \\n.grey--text.text--lighten-1 input,.grey--text.text--lighten-1 textarea{caret-color:#bdbdbd!important} \\n.grey.darken-1{border-color:#757575!important} \\n.grey.darken-1,.grey.darken-1--after:after{background-color:#757575!important} \\n.grey--text.text--darken-1{color:#757575!important} \\n.grey--text.text--darken-1 input,.grey--text.text--darken-1 textarea{caret-color:#757575!important} \\n.grey.darken-2{border-color:#616161!important} \\n.grey.darken-2,.grey.darken-2--after:after{background-color:#616161!important} \\n.grey--text.text--darken-2{color:#616161!important} \\n.grey--text.text--darken-2 input,.grey--text.text--darken-2 textarea{caret-color:#616161!important} \\n.grey.darken-3{border-color:#424242!important} \\n.grey.darken-3,.grey.darken-3--after:after{background-color:#424242!important} \\n.grey--text.text--darken-3{color:#424242!important} \\n.grey--text.text--darken-3 input,.grey--text.text--darken-3 textarea{caret-color:#424242!important} \\n.grey.darken-4{border-color:#212121!important} \\n.grey.darken-4,.grey.darken-4--after:after{background-color:#212121!important} \\n.grey--text.text--darken-4{color:#212121!important} \\n.grey--text.text--darken-4 input,.grey--text.text--darken-4 textarea{caret-color:#212121!important} \\n.shades.black{border-color:#000!important} \\n.shades.black,.shades.black--after:after{background-color:#000!important} \\n.shades--text.text--black{color:#000!important} \\n.shades--text.text--black input,.shades--text.text--black textarea{caret-color:#000!important} \\n.shades.white{border-color:#fff!important} \\n.shades.white,.shades.white--after:after{background-color:#fff!important} \\n.shades--text.text--white{color:#fff!important} \\n.shades--text.text--white input,.shades--text.text--white textarea{caret-color:#fff!important} \\n.shades.transparent{border-color:transparent!important} \\n.shades.transparent,.shades.transparent--after:after{background-color:transparent!important} \\n.shades--text.text--transparent{color:transparent!important} \\n.shades--text.text--transparent input,.shades--text.text--transparent textarea{caret-color:transparent!important} \\n.elevation-0{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)!important;box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)!important} \\n.elevation-1{-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)!important;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)!important} \\n.elevation-2{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)!important;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)!important} \\n.elevation-3{-webkit-box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)!important;box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)!important} \\n.elevation-4{-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)!important;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)!important} \\n.elevation-5{-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)!important;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)!important} \\n.elevation-6{-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)!important;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)!important} \\n.elevation-7{-webkit-box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)!important;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)!important} \\n.elevation-8{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)!important;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)!important} \\n.elevation-9{-webkit-box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)!important;box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)!important} \\n.elevation-10{-webkit-box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important;box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important} \\n.elevation-11{-webkit-box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)!important;box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)!important} \\n.elevation-12{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)!important;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)!important} \\n.elevation-13{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)!important;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)!important} \\n.elevation-14{-webkit-box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)!important;box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)!important} \\n.elevation-15{-webkit-box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)!important;box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)!important} \\n.elevation-16{-webkit-box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)!important;box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)!important} \\n.elevation-17{-webkit-box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)!important;box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)!important} \\n.elevation-18{-webkit-box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)!important;box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)!important} \\n.elevation-19{-webkit-box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)!important;box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)!important} \\n.elevation-20{-webkit-box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)!important;box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)!important} \\n.elevation-21{-webkit-box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)!important;box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)!important} \\n.elevation-22{-webkit-box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)!important;box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)!important} \\n.elevation-23{-webkit-box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)!important;box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)!important} \\n.elevation-24{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)!important;box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)!important} \\nhtml{-webkit-box-sizing:border-box;box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%} \\n*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit} \\n:after,:before{text-decoration:inherit;vertical-align:inherit} \\n*{background-repeat:no-repeat;padding:0;margin:0} \\naudio:not([controls]){display:none;height:0} \\nhr{overflow:visible} \\narticle,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block} \\nsummary{display:list-item} \\nsmall{font-size:80%} \\n[hidden],template{display:none} \\nabbr[title]{border-bottom:1px dotted;text-decoration:none} \\na{background-color:transparent;-webkit-text-decoration-skip:objects} \\na:active,a:hover{outline-width:0} \\ncode,kbd,pre,samp{font-family:monospace,monospace} \\nb,strong{font-weight:bolder} \\ndfn{font-style:italic} \\nmark{background-color:#ff0;color:#000} \\nsub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} \\nsub{bottom:-.25em} \\nsup{top:-.5em} \\ninput{border-radius:0} \\n[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer} \\n[disabled]{cursor:default} \\n[type=number]{width:auto} \\n[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none} \\ntextarea{overflow:auto;resize:vertical} \\nbutton,input,optgroup,select,textarea{font:inherit} \\noptgroup{font-weight:700} \\nbutton{overflow:visible} \\n[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0} \\n[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:0;border:0} \\n[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button} \\nbutton,select{text-transform:none} \\nbutton,input,select,textarea{background-color:transparent;border-style:none;color:inherit} \\nselect{-moz-appearance:none;-webkit-appearance:none} \\nselect::-ms-expand{display:none} \\nselect::-ms-value{color:currentColor} \\nlegend{border:0;color:inherit;display:table;max-width:100%;white-space:normal} \\n::-webkit-file-upload-button{-webkit-appearance:button;font:inherit} \\n[type=search]{-webkit-appearance:textfield;outline-offset:-2px} \\nimg{border-style:none} \\nprogress{vertical-align:baseline} \\nsvg:not(:root){overflow:hidden} \\naudio,canvas,progress,video{display:inline-block} \\n[aria-busy=true]{cursor:progress} \\n[aria-controls]{cursor:pointer} \\n[aria-disabled]{cursor:default} \\n::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none} \\n::selection{background-color:#b3d4fc;color:#000;text-shadow:none} \\n.bottom-sheet-transition-enter,.bottom-sheet-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)} \\n.carousel-transition-enter{-webkit-transform:translate(100%);transform:translate(100%)} \\n.carousel-transition-leave,.carousel-transition-leave-to{position:absolute;top:0} \\n.carousel-reverse-transition-enter,.carousel-transition-leave,.carousel-transition-leave-to{-webkit-transform:translate(-100%);transform:translate(-100%)} \\n.carousel-reverse-transition-leave,.carousel-reverse-transition-leave-to{position:absolute;top:0;-webkit-transform:translate(100%);transform:translate(100%)} \\n.dialog-transition-enter,.dialog-transition-leave-to{-webkit-transform:scale(.5);transform:scale(.5);opacity:0} \\n.dialog-transition-enter-to,.dialog-transition-leave{opacity:1} \\n.dialog-bottom-transition-enter,.dialog-bottom-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)} \\n.picker-reverse-transition-enter-active,.picker-reverse-transition-leave-active,.picker-transition-enter-active,.picker-transition-leave-active{-webkit-transition:.3s cubic-bezier(0,0,.2,1);transition:.3s cubic-bezier(0,0,.2,1)} \\n.picker-reverse-transition-enter,.picker-reverse-transition-leave-to,.picker-transition-enter,.picker-transition-leave-to{opacity:0} \\n.picker-reverse-transition-enter-to,.picker-transition-enter-to{transtion:translate(0,0)} \\n.picker-reverse-transition-leave,.picker-reverse-transition-leave-active,.picker-reverse-transition-leave-to,.picker-transition-leave,.picker-transition-leave-active,.picker-transition-leave-to{position:absolute!important} \\n.picker-transition-enter{-webkit-transform:translateY(100%);transform:translateY(100%)} \\n.picker-reverse-transition-enter,.picker-transition-leave-to{-webkit-transform:translateY(-100%);transform:translateY(-100%)} \\n.picker-reverse-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)} \\n.picker-title-transition-enter-to,.picker-title-transition-leave{-webkit-transform:translate(0);transform:translate(0)} \\n.picker-title-transition-enter{-webkit-transform:translate(-100%);transform:translate(-100%)} \\n.picker-title-transition-leave-to{opacity:0;-webkit-transform:translate(100%);transform:translate(100%)} \\n.picker-title-transition-leave,.picker-title-transition-leave-active,.picker-title-transition-leave-to{position:absolute!important} \\n.tab-transition-enter{-webkit-transform:translate(100%);transform:translate(100%)} \\n.tab-transition-enter-to{-webkit-transform:translate(0);transform:translate(0)} \\n.tab-transition-leave,.tab-transition-leave-active{position:absolute;top:0} \\n.tab-transition-leave-to{position:absolute} \\n.tab-reverse-transition-enter,.tab-transition-leave-to{-webkit-transform:translate(-100%);transform:translate(-100%)} \\n.tab-reverse-transition-leave,.tab-reverse-transition-leave-to{top:0;position:absolute;-webkit-transform:translate(100%);transform:translate(100%)} \\n.scale-transition-enter-active,.scale-transition-leave-active{-webkit-transition:.2s cubic-bezier(.4,0,.6,1);transition:.2s cubic-bezier(.4,0,.6,1)} \\n.scale-transition-enter,.scale-transition-leave,.scale-transition-leave-to{opacity:0;-webkit-transform:scale(0);transform:scale(0)} \\n.slide-y-transition-enter-active,.slide-y-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.slide-y-transition-enter,.slide-y-transition-leave-to{opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px)} \\n.slide-y-reverse-transition-enter-active,.slide-y-reverse-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.slide-y-reverse-transition-enter,.slide-y-reverse-transition-leave-to{opacity:0;-webkit-transform:translateY(15px);transform:translateY(15px)} \\n.slide-x-transition-enter-active,.slide-x-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.slide-x-transition-enter,.slide-x-transition-leave-to{opacity:0;-webkit-transform:translateX(-15px);transform:translateX(-15px)} \\n.slide-x-reverse-transition-enter-active,.slide-x-reverse-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.slide-x-reverse-transition-enter,.slide-x-reverse-transition-leave-to{opacity:0;-webkit-transform:translateX(15px);transform:translateX(15px)} \\n.fade-transition-enter-active,.fade-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.fade-transition-enter,.fade-transition-leave-to{opacity:0} \\n.fab-transition-enter-active,.fab-transition-leave-active{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.fab-transition-enter,.fab-transition-leave-to{-webkit-transform:scale(0) rotate(-45deg);transform:scale(0) rotate(-45deg)} \\n.blockquote{padding:16px 0 16px 24px;font-size:18px;font-weight:300} \\ncode,kbd{display:inline-block;border-radius:3px;white-space:pre-wrap;font-size:85%;font-weight:900} \\ncode:after,code:before,kbd:after,kbd:before{content:\\\"\\\\A0\\\";letter-spacing:-1px} \\ncode{background-color:#f5f5f5;color:#bd4147;-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)} \\nkbd{background:#424242;color:#fff} \\nhtml{font-size:14px;overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:rgba(0,0,0,0)} \\n.application{font-family:Roboto,sans-serif;line-height:1.5} \\n::-ms-clear,::-ms-reveal{display:none} \\n.browser-list{padding-left:24px} \\n.browser-list--unstyled{list-style-type:none} \\n.display-4{font-size:112px!important;font-weight:300;line-height:1!important;letter-spacing:-.04em!important} \\n.display-3{font-size:56px!important;font-weight:400;line-height:1.35!important;letter-spacing:-.02em!important} \\n.display-2{font-size:45px!important;line-height:48px!important} \\n.display-1,.display-2{font-weight:400;letter-spacing:normal!important} \\n.display-1{font-size:34px!important;line-height:40px!important} \\n.headline{font-size:24px!important;font-weight:400;line-height:32px!important;letter-spacing:normal!important} \\n.title{font-size:20px!important;font-weight:500;line-height:1!important;letter-spacing:.02em!important} \\n.subheading{font-size:16px!important;font-weight:400} \\n.body-2{font-weight:500} \\n.body-1,.body-2{font-size:14px!important} \\n.body-1,.caption{font-weight:400} \\n.caption{font-size:12px!important} \\np{margin-bottom:16px} \\n.overflow-hidden{overflow:hidden} \\n.overflow-x-hidden{overflow-x:hidden} \\n.overflow-y-hidden{overflow-y:hidden} \\n.right{float:right!important} \\n.left{float:left!important} \\n.mx-auto{margin-left:auto!important;margin-right:auto!important} \\n.mt-0{margin-top:0!important} \\n.mr-0{margin-right:0!important} \\n.mb-0{margin-bottom:0!important} \\n.ml-0,.mx-0{margin-left:0!important} \\n.mx-0{margin-right:0!important} \\n.my-0{margin-top:0!important;margin-bottom:0!important} \\n.ma-0{margin:0!important} \\n.pt-0{padding-top:0!important} \\n.pr-0{padding-right:0!important} \\n.pb-0{padding-bottom:0!important} \\n.pl-0,.px-0{padding-left:0!important} \\n.px-0{padding-right:0!important} \\n.py-0{padding-top:0!important;padding-bottom:0!important} \\n.pa-0{padding:0!important} \\n.mt-1{margin-top:4px!important} \\n.mr-1{margin-right:4px!important} \\n.mb-1{margin-bottom:4px!important} \\n.ml-1,.mx-1{margin-left:4px!important} \\n.mx-1{margin-right:4px!important} \\n.my-1{margin-top:4px!important;margin-bottom:4px!important} \\n.ma-1{margin:4px!important} \\n.pt-1{padding-top:4px!important} \\n.pr-1{padding-right:4px!important} \\n.pb-1{padding-bottom:4px!important} \\n.pl-1,.px-1{padding-left:4px!important} \\n.px-1{padding-right:4px!important} \\n.py-1{padding-top:4px!important;padding-bottom:4px!important} \\n.pa-1{padding:4px!important} \\n.mt-2{margin-top:8px!important} \\n.mr-2{margin-right:8px!important} \\n.mb-2{margin-bottom:8px!important} \\n.ml-2,.mx-2{margin-left:8px!important} \\n.mx-2{margin-right:8px!important} \\n.my-2{margin-top:8px!important;margin-bottom:8px!important} \\n.ma-2{margin:8px!important} \\n.pt-2{padding-top:8px!important} \\n.pr-2{padding-right:8px!important} \\n.pb-2{padding-bottom:8px!important} \\n.pl-2,.px-2{padding-left:8px!important} \\n.px-2{padding-right:8px!important} \\n.py-2{padding-top:8px!important;padding-bottom:8px!important} \\n.pa-2{padding:8px!important} \\n.mt-3{margin-top:16px!important} \\n.mr-3{margin-right:16px!important} \\n.mb-3{margin-bottom:16px!important} \\n.ml-3,.mx-3{margin-left:16px!important} \\n.mx-3{margin-right:16px!important} \\n.my-3{margin-top:16px!important;margin-bottom:16px!important} \\n.ma-3{margin:16px!important} \\n.pt-3{padding-top:16px!important} \\n.pr-3{padding-right:16px!important} \\n.pb-3{padding-bottom:16px!important} \\n.pl-3,.px-3{padding-left:16px!important} \\n.px-3{padding-right:16px!important} \\n.py-3{padding-top:16px!important;padding-bottom:16px!important} \\n.pa-3{padding:16px!important} \\n.mt-4{margin-top:24px!important} \\n.mr-4{margin-right:24px!important} \\n.mb-4{margin-bottom:24px!important} \\n.ml-4,.mx-4{margin-left:24px!important} \\n.mx-4{margin-right:24px!important} \\n.my-4{margin-top:24px!important;margin-bottom:24px!important} \\n.ma-4{margin:24px!important} \\n.pt-4{padding-top:24px!important} \\n.pr-4{padding-right:24px!important} \\n.pb-4{padding-bottom:24px!important} \\n.pl-4,.px-4{padding-left:24px!important} \\n.px-4{padding-right:24px!important} \\n.py-4{padding-top:24px!important;padding-bottom:24px!important} \\n.pa-4{padding:24px!important} \\n.mt-5{margin-top:48px!important} \\n.mr-5{margin-right:48px!important} \\n.mb-5{margin-bottom:48px!important} \\n.ml-5,.mx-5{margin-left:48px!important} \\n.mx-5{margin-right:48px!important} \\n.my-5{margin-top:48px!important;margin-bottom:48px!important} \\n.ma-5{margin:48px!important} \\n.pt-5{padding-top:48px!important} \\n.pr-5{padding-right:48px!important} \\n.pb-5{padding-bottom:48px!important} \\n.pl-5,.px-5{padding-left:48px!important} \\n.px-5{padding-right:48px!important} \\n.py-5{padding-top:48px!important;padding-bottom:48px!important} \\n.pa-5{padding:48px!important} \\n@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}} \\n@media only screen and (max-width:599px){.hidden-xs-only{display:none!important}} \\n@media only screen and (min-width:600px) and (max-width:959px){.hidden-sm-only{display:none!important}} \\n@media only screen and (max-width:959px){.hidden-sm-and-down{display:none!important}} \\n@media only screen and (min-width:600px){.hidden-sm-and-up{display:none!important}} \\n@media only screen and (min-width:960px) and (max-width:1263px){.hidden-md-only{display:none!important}} \\n@media only screen and (max-width:1263px){.hidden-md-and-down{display:none!important}} \\n@media only screen and (min-width:960px){.hidden-md-and-up{display:none!important}} \\n@media only screen and (min-width:1264px) and (max-width:1903px){.hidden-lg-only{display:none!important}} \\n@media only screen and (max-width:1903px){.hidden-lg-and-down{display:none!important}} \\n@media only screen and (min-width:1264px){.hidden-lg-and-up{display:none!important}} \\n@media only screen and (min-width:1904px){.hidden-xl-only{display:none!important}} \\n@media (min-width:0){.text-xs-left{text-align:left!important}.text-xs-center{text-align:center!important}.text-xs-right{text-align:right!important}.text-xs-justify{text-align:justify!important}} \\n@media (min-width:600px){.text-sm-left{text-align:left!important}.text-sm-center{text-align:center!important}.text-sm-right{text-align:right!important}.text-sm-justify{text-align:justify!important}} \\n@media (min-width:960px){.text-md-left{text-align:left!important}.text-md-center{text-align:center!important}.text-md-right{text-align:right!important}.text-md-justify{text-align:justify!important}} \\n@media (min-width:1264px){.text-lg-left{text-align:left!important}.text-lg-center{text-align:center!important}.text-lg-right{text-align:right!important}.text-lg-justify{text-align:justify!important}} \\n@media (min-width:1904px){.text-xl-left{text-align:left!important}.text-xl-center{text-align:center!important}.text-xl-right{text-align:right!important}.text-xl-justify{text-align:justify!important}} \\n.application,.application--wrap{display:-webkit-box;display:-ms-flexbox;display:flex} \\n.application--wrap{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100vh;max-width:100%;position:relative} \\n.application.theme--light{background:#fafafa;color:rgba(0,0,0,.87)} \\n.application.theme--light a{cursor:pointer} \\n.application.theme--light .text--primary{color:rgba(0,0,0,.87)!important} \\n.application.theme--light .text--secondary{color:rgba(0,0,0,.54)!important} \\n.application.theme--light .text--disabled{color:rgba(0,0,0,.38)!important} \\n.application.theme--dark{background:#303030;color:#fff} \\n.application.theme--dark a{cursor:pointer} \\n.application.theme--dark .text--primary{color:#fff!important} \\n.application.theme--dark .text--secondary{color:hsla(0,0%,100%,.7)!important} \\n.application.theme--dark .text--disabled{color:hsla(0,0%,100%,.5)!important} \\n@media print{@-moz-document url-prefix(){.application,.application--wrap{display:block}}} \\n.alert{border-radius:0;border-width:4px 0 0;border-style:solid;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;margin:4px auto;padding:16px;position:relative;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.alert .alert__icon.icon,.alert__dismissible .icon{-ms-flex-item-align:center;align-self:center;color:rgba(0,0,0,.3);font-size:24px} \\n.alert--outline .icon{color:inherit!important} \\n.alert__icon{margin-right:16px} \\n.alert__dismissible{-ms-flex-item-align:start;align-self:flex-start;color:inherit;margin-left:16px;margin-right:0;text-decoration:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.alert__dismissible:hover{opacity:.8} \\n.alert--no-icon .alert__icon{display:none} \\n.alert>div{-ms-flex-item-align:center;align-self:center;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1} \\n.alert.alert{border-color:rgba(0,0,0,.12)!important} \\n.alert.alert--outline{border:1px solid currentColor!important} \\n@media screen and (max-width:600px){.alert__icon{display:none}} \\n.application .theme--light.icon,.theme--light .icon{color:rgba(0,0,0,.54)} \\n.application .theme--light.icon.icon--disabled:not(.input-group__append-icon),.theme--light .icon.icon--disabled:not(.input-group__append-icon){color:rgba(0,0,0,.38)!important} \\n.application .theme--dark.icon,.theme--dark .icon{color:#fff} \\n.application .theme--dark.icon.icon--disabled:not(.input-group__append-icon),.theme--dark .icon.icon--disabled:not(.input-group__append-icon){color:hsla(0,0%,100%,.5)!important} \\n.icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-size:24px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;line-height:1;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);vertical-align:middle} \\n.icon.icon--large{font-size:2.5rem} \\n.icon.icon--medium{font-size:2rem} \\n.icon.icon--x-large{font-size:3rem} \\n.icon.icon--disabled{pointer-events:none} \\n.avatar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;text-align:center;vertical-align:middle} \\n.avatar,.avatar .icon,.avatar img{border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex} \\n.avatar .icon,.avatar img{height:inherit;width:inherit} \\n.avatar--tile,.avatar--tile .icon,.avatar--tile img{border-radius:0} \\n.badge{display:inline-block;position:relative} \\n.badge__badge{color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;top:-11px;right:-22px;border-radius:50%;height:22px;width:22px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.badge__badge,.badge__badge .icon{font-size:14px} \\n.badge--overlap .badge__badge{top:-8px;right:-8px} \\n.badge--overlap.badge--left .badge__badge{left:-8px;right:auto} \\n.badge--overlap.badge--bottom .badge__badge{bottom:-8px;top:auto} \\n.badge--left .badge__badge{left:-22px} \\n.badge--bottom .badge__badge{bottom:-11px;top:auto} \\n.application .theme--light.bottom-nav,.theme--light .bottom-nav{background-color:#fff} \\n.application .theme--dark.bottom-nav,.theme--dark .bottom-nav{background-color:#424242} \\n.bottom-nav{bottom:0;-webkit-box-shadow:0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 3px 14px 2px rgba(0,0,0,.12);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform:translateY(60px);transform:translateY(60px);-webkit-transition:all .4s cubic-bezier(.25,.8,.5,1);transition:all .4s cubic-bezier(.25,.8,.5,1);width:100%;z-index:4} \\n.bottom-nav--absolute{position:absolute} \\n.bottom-nav--active{-webkit-transform:translate(0);transform:translate(0)} \\n.bottom-nav--fixed{position:fixed} \\n.bottom-nav .btn{background:transparent!important;border-radius:0;-webkit-box-shadow:none!important;box-shadow:none!important;font-weight:400;height:100%;margin:0;max-width:168px;min-width:80px;padding:6px 0 10px;text-transform:none;opacity:.5;width:100%} \\n.bottom-nav .btn .btn__content{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;font-size:12px;white-space:nowrap;will-change:font-size} \\n.bottom-nav .btn .btn__content i.icon{color:inherit;margin-bottom:4px;-webkit-transition:all .4s cubic-bezier(.25,.8,.5,1);transition:all .4s cubic-bezier(.25,.8,.5,1)} \\n.bottom-nav .btn .btn__content span{line-height:1} \\n.bottom-nav .btn--active{opacity:1} \\n.bottom-nav .btn--active .btn__content{font-size:14px} \\n.bottom-nav .btn--active .btn__content:before{opacity:0} \\n.bottom-nav .btn--active .btn__content .icon{-webkit-transform:none;transform:none} \\n.bottom-nav .btn:not(.btn--active){-webkit-filter:grayscale(100%);filter:grayscale(100%)} \\n.bottom-nav--shift .btn__content{font-size:14px} \\n.bottom-nav--shift .btn{-webkit-transition:all .3s;transition:all .3s;min-width:56px;max-width:96px} \\n.bottom-nav--shift .btn--active{min-width:96px;max-width:168px} \\n.bottom-nav--shift .btn:not(.btn--active) .btn__content .icon{-webkit-transform:scale(1) translateY(10px);transform:scale(1) translateY(10px)} \\n.bottom-nav--shift .btn:not(.btn--active) .btn__content span{color:transparent} \\n.bottom-sheet.dialog{-ms-flex-item-align:end;align-self:flex-end;border-radius:0;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;margin:0;min-width:100%;overflow:visible;-webkit-transition:.4s cubic-bezier(.25,.8,.5,1);transition:.4s cubic-bezier(.25,.8,.5,1)} \\n.bottom-sheet.dialog.bottom-sheet--inset{max-width:70%;min-width:0} \\n@media only screen and (max-width:599px){.bottom-sheet.dialog.bottom-sheet--inset{max-width:none}} \\n.dialog{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);border-radius:2px;margin:24px;overflow-y:auto;pointer-events:auto;z-index:inherit} \\n.dialog,.dialog__content{-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:100%} \\n.dialog__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;top:0;z-index:6;outline:none} \\n.dialog:not(.dialog--fullscreen){max-height:90%} \\n.dialog__container{display:inline-block;vertical-align:middle} \\n.dialog--fullscreen{margin:0;height:100%;position:fixed;overflow-y:auto;top:0;left:0} \\n.dialog--fullscreen>.card{min-height:100%;min-width:100%;margin:0!important;padding:0!important} \\n.dialog--scrollable,.dialog--scrollable>.card{display:-webkit-box;display:-ms-flexbox;display:flex} \\n.dialog--scrollable>.card{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column} \\n.dialog--scrollable>.card>.card__actions,.dialog--scrollable>.card>.card__title{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto} \\n.dialog--scrollable>.card>.card__text{overflow-y:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden} \\n.overlay{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;-webkit-transition:.5s cubic-bezier(.25,.8,.5,1);transition:.5s cubic-bezier(.25,.8,.5,1);z-index:5} \\n.overlay--absolute,.overlay:before{position:absolute} \\n.overlay:before{background-color:#212121;bottom:0;content:\\\"\\\";height:100%;left:0;opacity:0;right:0;top:0;-webkit-transition:inherit;transition:inherit;-webkit-transition-delay:.15s;transition-delay:.15s;width:100%} \\n.overlay--active{pointer-events:auto;-ms-touch-action:none;touch-action:none} \\n.overlay--active:before{opacity:.46} \\n.application .theme--light.breadcrumbs li.breadcrumbs__divider,.application .theme--light.breadcrumbs li .breadcrumbs__item--disabled,.application .theme--light.breadcrumbs li:last-child .breadcrumbs__item,.theme--light .breadcrumbs li.breadcrumbs__divider,.theme--light .breadcrumbs li .breadcrumbs__item--disabled,.theme--light .breadcrumbs li:last-child .breadcrumbs__item{color:rgba(0,0,0,.38)} \\n.application .theme--dark.breadcrumbs li.breadcrumbs__divider,.application .theme--dark.breadcrumbs li .breadcrumbs__item--disabled,.application .theme--dark.breadcrumbs li:last-child .breadcrumbs__item,.theme--dark .breadcrumbs li.breadcrumbs__divider,.theme--dark .breadcrumbs li .breadcrumbs__item--disabled,.theme--dark .breadcrumbs li:last-child .breadcrumbs__item{color:hsla(0,0%,100%,.5)} \\n.breadcrumbs{-ms-flex-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;list-style-type:none;margin:0;padding:18px 12px} \\n.breadcrumbs,.breadcrumbs li{-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.breadcrumbs li{-ms-flex-align:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:14px} \\n.breadcrumbs li .icon{font-size:16px} \\n.breadcrumbs li:last-child a{cursor:default;pointer-events:none} \\n.breadcrumbs li:nth-child(2n){padding:0 12px} \\n.breadcrumbs--large li,.breadcrumbs--large li .icon{font-size:16px} \\n.breadcrumbs__item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;text-decoration:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.breadcrumbs__item--disabled{pointer-events:none} \\n.ripple__container{border-radius:inherit;width:100%;height:100%;z-index:0;contain:strict} \\n.ripple__animation,.ripple__container{color:inherit;position:absolute;left:0;top:0;overflow:hidden;pointer-events:none} \\n.ripple__animation{border-radius:50%;background:currentColor;opacity:0;-webkit-transition:.4s cubic-bezier(0,0,.2,1);transition:.4s cubic-bezier(0,0,.2,1);will-change:transform,opacity} \\n.ripple__animation--enter{-webkit-transition:none;transition:none} \\n.ripple__animation--visible{opacity:.15} \\n.application .theme--light.btn,.theme--light .btn{color:rgba(0,0,0,.87)} \\n.application .theme--light.btn.btn--disabled,.application .theme--light.btn.btn--disabled .icon,.theme--light .btn.btn--disabled,.theme--light .btn.btn--disabled .icon{color:rgba(0,0,0,.26)!important} \\n.application .theme--light.btn.btn--disabled:not(.btn--icon):not(.btn--flat),.theme--light .btn.btn--disabled:not(.btn--icon):not(.btn--flat){background-color:rgba(0,0,0,.12)!important} \\n.application .theme--light.btn:not(.btn--icon):not(.btn--flat),.theme--light .btn:not(.btn--icon):not(.btn--flat){background-color:#f5f5f5} \\n.application .theme--dark.btn,.theme--dark .btn{color:#fff} \\n.application .theme--dark.btn.btn--disabled,.application .theme--dark.btn.btn--disabled .icon,.theme--dark .btn.btn--disabled,.theme--dark .btn.btn--disabled .icon{color:hsla(0,0%,100%,.3)!important} \\n.application .theme--dark.btn.btn--disabled:not(.btn--icon):not(.btn--flat),.theme--dark .btn.btn--disabled:not(.btn--icon):not(.btn--flat){background-color:hsla(0,0%,100%,.12)!important} \\n.application .theme--dark.btn:not(.btn--icon):not(.btn--flat),.theme--dark .btn:not(.btn--icon):not(.btn--flat){background-color:#212121} \\n.btn{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:2px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:36px;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;font-size:14px;font-weight:500;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:6px 8px;min-width:88px;outline:0;text-transform:uppercase;text-decoration:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1),color 1ms;transition:.3s cubic-bezier(.25,.8,.5,1),color 1ms;position:relative;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.btn__content:before{border-radius:inherit;color:inherit;content:\\\"\\\";position:absolute;left:0;top:0;height:100%;opacity:.12;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:100%} \\n.btn--small{font-size:13px;height:28px} \\n.btn--small .btn__content{padding:0 8px} \\n.btn--large{font-size:15px;height:44px} \\n.btn--large .btn__content{padding:0 32px} \\n.btn--active .btn__content:before,.btn:focus .btn__content:before,.btn:hover .btn__content:before{background-color:currentColor} \\n.btn__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:inherit;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;height:inherit;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 auto;padding:0 16px;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);white-space:nowrap;width:inherit} \\n.btn .btn__content .icon{color:inherit} \\n.btn--flat{background-color:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important} \\n.btn:not(.btn--depressed){will-change:box-shadow;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.btn:not(.btn--depressed):active{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)} \\n.btn:not(.btn--depressed):active .btn__content,.btn:not(.btn--depressed):focus .btn__content{position:relative;top:0;left:0} \\n.btn--icon{background:transparent;-webkit-box-shadow:none!important;box-shadow:none!important;border-radius:50%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:0;width:36px} \\n.btn--icon.btn--small{width:28px} \\n.btn--icon.btn--large{width:44px} \\n.btn--floating,.btn--icon .btn__content:before{border-radius:50%} \\n.btn--floating{min-width:0;height:56px;width:56px;padding:0} \\n.btn--floating.btn--absolute,.btn--floating.btn--fixed{z-index:4} \\n.btn--floating:not(.btn--depressed){-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)} \\n.btn--floating:not(.btn--depressed):active{-webkit-box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12);box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)} \\n.btn--floating .btn__content{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;margin:0;padding:0} \\n.btn--floating:after{border-radius:50%} \\n.btn--floating .btn__content :not(:only-child){-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.btn--floating .btn__content :not(:only-child):first-child{opacity:1} \\n.btn--floating .btn__content :not(:only-child):last-child{opacity:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)} \\n.btn--floating .btn__content :not(:only-child):first-child,.btn--floating .btn__content :not(:only-child):last-child{-webkit-backface-visibility:hidden;position:absolute;left:0;top:0} \\n.btn--floating.btn--active .btn__content :not(:only-child):first-child{opacity:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)} \\n.btn--floating.btn--active .btn__content :not(:only-child):last-child{opacity:1;-webkit-transform:rotate(0);transform:rotate(0)} \\n.btn--floating .icon{height:inherit;width:inherit} \\n.btn--floating.btn--small{height:40px;width:40px} \\n.btn--floating.btn--small .icon{font-size:18px} \\n.btn--floating.btn--large{height:72px;width:72px} \\n.btn--floating.btn--large .icon{font-size:30px} \\n.btn--reverse .btn__content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse} \\n.btn--reverse.btn--column .btn__content{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse} \\n.btn--absolute,.btn--fixed{margin:0} \\n.btn.btn--absolute{position:absolute} \\n.btn.btn--fixed{position:fixed} \\n.btn--top:not(.btn--absolute){top:16px} \\n.btn--top.btn--absolute{top:-28px} \\n.btn--top.btn--absolute.btn--small{top:-20px} \\n.btn--top.btn--absolute.btn--large{top:-36px} \\n.btn--bottom:not(.btn--absolute){bottom:16px} \\n.btn--bottom.btn--absolute{bottom:-28px} \\n.btn--bottom.btn--absolute.btn--small{bottom:-20px} \\n.btn--bottom.btn--absolute.btn--large{bottom:-36px} \\n.btn--left{left:16px} \\n.btn--right{right:16px} \\n.btn.btn--disabled{-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none} \\n.btn--icon .btn__content{padding:0} \\n.btn--loader{pointer-events:none} \\n.btn--loader .btn__content{opacity:0} \\n.btn__loading{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;position:absolute;top:0;width:100%} \\n.btn__loading .icon--left{margin-right:1rem;line-height:inherit} \\n.btn__loading .icon--right{margin-left:1rem;line-height:inherit} \\n.btn.btn--outline{border:1px solid currentColor;background:transparent!important;-webkit-box-shadow:none;box-shadow:none} \\n.btn.btn--outline:hover{-webkit-box-shadow:none;box-shadow:none} \\n.btn--block{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;margin:6px 0;width:100%} \\n.btn--round,.btn--round:after{border-radius:28px} \\n.btn .icon--right{margin-left:16px} \\n.btn .icon--left{margin-right:16px} \\n.btn.accent,.btn.error,.btn.info,.btn.primary,.btn.secondary,.btn.success,.btn.warning{color:#fff} \\n.progress-circular{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex} \\n.progress-circular svg{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:0} \\n.progress-circular--indeterminate svg{-webkit-animation:c 1.4s linear infinite;animation:c 1.4s linear infinite;-webkit-transform-origin:center center;transform-origin:center center;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out} \\n.progress-circular--indeterminate .progress-circular__overlay{-webkit-animation:b 1.4s ease-in-out infinite;animation:b 1.4s ease-in-out infinite;stroke-linecap:round;stroke-dasharray:80,200;stroke-dashoffset:0px} \\n.progress-circular__underlay{stroke:rgba(0,0,0,.1);z-index:1} \\n.progress-circular__overlay{stroke:currentColor;z-index:2;-webkit-transition:all .6s ease-in-out;transition:all .6s ease-in-out} \\n.progress-circular__info{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)} \\n@-webkit-keyframes b{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-125px}} \\n@keyframes b{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-125px}} \\n@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} \\n@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} \\n.application .theme--light.btn-toggle,.theme--light .btn-toggle{background:#fff} \\n.application .theme--light.btn-toggle .btn,.theme--light .btn-toggle .btn{color:rgba(0,0,0,.87)} \\n.application .theme--light.btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]),.theme--light .btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]){border-right-color:rgba(0,0,0,.26)} \\n.application .theme--dark.btn-toggle,.theme--dark .btn-toggle{background:#424242} \\n.application .theme--dark.btn-toggle .btn,.theme--dark .btn-toggle .btn{color:#fff} \\n.application .theme--dark.btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]),.theme--dark .btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]){border-right-color:hsla(0,0%,100%,.3)} \\n.btn-toggle{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;border-radius:2px;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);will-change:background,box-shadow} \\n.btn-toggle .btn{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:auto;width:auto;padding:0 8px;margin:0;opacity:.4;border-radius:0} \\n.btn-toggle .btn:not(:last-child){border-right:1px solid transparent} \\n.btn-toggle .btn:after{display:none} \\n.btn-toggle .btn.btn--active{opacity:1} \\n.btn-toggle .btn__content{padding:0} \\n.btn-toggle .btn span+.icon{font-size:medium;margin-left:10px} \\n.btn-toggle .btn:first-child{border-radius:2px 0 0 2px} \\n.btn-toggle .btn:last-child{border-radius:0 2px 2px 0} \\n.btn-toggle--selected{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.application .theme--light.card,.theme--light .card{background-color:#fff;color:rgba(0,0,0,.87)} \\n.application .theme--dark.card,.theme--dark .card{background-color:#424242;color:#fff} \\n.card{display:block;border-radius:2px;min-width:0;position:relative;text-decoration:none;-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)} \\n.card>:first-child:not(.btn){border-top-left-radius:inherit;border-top-right-radius:inherit} \\n.card>:last-child:not(.btn){border-bottom-left-radius:inherit;border-bottom-right-radius:inherit} \\n.card--raised{-webkit-box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12);box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)} \\n.card--tile{border-radius:0} \\n.card--flat{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)} \\n.card--hover{cursor:pointer;-webkit-transition:all .4s cubic-bezier(.25,.8,.25,1);transition:all .4s cubic-bezier(.25,.8,.25,1);-webkit-transition-property:-webkit-box-shadow;transition-property:-webkit-box-shadow;transition-property:box-shadow;transition-property:box-shadow, -webkit-box-shadow} \\n.card--hover:hover{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)} \\n.card__title{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:16px} \\n.card__title--primary{padding-top:24px} \\n.card__text{padding:16px;width:100%} \\n.card__media{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;position:relative} \\n.card__media img{width:100%} \\n.card__media__background{border-radius:inherit;position:absolute;left:0;top:0;width:100%;height:100%} \\n.card__media__content{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;position:relative} \\n.card__actions,.card__media__content{display:-webkit-box;display:-ms-flexbox;display:flex} \\n.card__actions{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:8px 4px} \\n.card__actions .btn,.card__actions>*{margin:0 4px} \\n.carousel{height:500px;width:100%;position:relative;overflow:hidden;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.carousel__left,.carousel__right{position:absolute;top:50%;z-index:1;-webkit-transform:translateY(-50%);transform:translateY(-50%)} \\n.carousel__left .btn,.carousel__right .btn{color:#fff;margin:0!important;height:auto;width:auto} \\n.carousel__left .btn i,.carousel__right .btn i{font-size:48px} \\n.carousel__left .btn:hover,.carousel__right .btn:hover{background:none} \\n.carousel__left{left:5px} \\n.carousel__right{right:5px} \\n.carousel__controls{background:rgba(0,0,0,.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;position:absolute;height:50px;list-style-type:none;width:100%;z-index:1} \\n.carousel__controls__item{color:#fff;margin:0 8px!important} \\n.carousel__controls__item i{opacity:.5;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.carousel__controls__item--active i{opacity:1;vertical-align:middle} \\n.carousel__controls__item:hover{background:none} \\n.carousel__controls__item:hover i{opacity:.8} \\n.application .theme--light.jumbotron__content,.theme--light .jumbotron__content{color:rgba(0,0,0,.87)} \\n.application .theme--dark.jumbotron__content,.theme--dark .jumbotron__content{color:#fff} \\n.jumbotron{display:block;top:0;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:100%} \\n.jumbotron__wrapper{height:100%;overflow:hidden;position:relative;-webkit-transition:inherit;transition:inherit;width:100%} \\n.jumbotron__background{position:absolute;top:0;left:0;right:0;bottom:0;contain:strict;-webkit-transition:inherit;transition:inherit} \\n.jumbotron__image{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);min-width:100%;will-change:transform;-webkit-transition:inherit;transition:inherit} \\n.jumbotron__content{height:100%;position:relative;-webkit-transition:inherit;transition:inherit} \\n.application .theme--light.input-group input,.application .theme--light.input-group textarea,.theme--light .input-group input,.theme--light .input-group textarea{color:rgba(0,0,0,.87)} \\n.application .theme--light.input-group input:disabled,.application .theme--light.input-group textarea:disabled,.theme--light .input-group input:disabled,.theme--light .input-group textarea:disabled{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group:not(.input-group--error) .input-group__messages,.theme--light .input-group:not(.input-group--error) .input-group__messages{color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--light .input-group.input-group--textarea:not(.input-group--full-width) .input-group__input{border:2px solid rgba(0,0,0,.54)} \\n.application .theme--light.input-group.input-group--solo,.theme--light .input-group.input-group--solo{background:#fff} \\n.application .theme--light.input-group.input-group--solo-inverted,.theme--light .input-group.input-group--solo-inverted{background:rgba(0,0,0,.16)} \\n.application .theme--light.input-group.input-group--solo-inverted.input-group--focused,.theme--light .input-group.input-group--solo-inverted.input-group--focused{background:#424242} \\n.application .theme--light.input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused input,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused label,.theme--light .input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.theme--light .input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.theme--light .input-group.input-group--solo-inverted.input-group--focused input,.theme--light .input-group.input-group--solo-inverted.input-group--focused label{color:#fff} \\n.application .theme--light.input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active),.theme--light .input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active){color:rgba(0,0,0,.87)} \\n.application .theme--light.input-group:not(.input-group--error) label,.theme--light .input-group:not(.input-group--error) label{color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.application .theme--light.input-group:not(.input-group--error).input-group--disabled label,.theme--light .input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.theme--light .input-group:not(.input-group--error).input-group--disabled label{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group:not(.input-group--error) .input-group__details:before,.theme--light .input-group:not(.input-group--error) .input-group__details:before{background-color:rgba(0,0,0,.42)} \\n.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover),.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover){color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before,.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before{background-color:rgba(0,0,0,.87)} \\n.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input{border-color:rgba(0,0,0,.87)} \\n.application .theme--light.input-group.input-group--editable .input-group__details:before,.application .theme--light.input-group.input-group--editable .input-group__input:before,.application .theme--light.input-group.input-group--overflow .input-group__details:before,.application .theme--light.input-group.input-group--overflow .input-group__input:before,.application .theme--light.input-group.input-group--segmented .input-group__details:before,.application .theme--light.input-group.input-group--segmented .input-group__input:before,.theme--light .input-group.input-group--editable .input-group__details:before,.theme--light .input-group.input-group--editable .input-group__input:before,.theme--light .input-group.input-group--overflow .input-group__details:before,.theme--light .input-group.input-group--overflow .input-group__input:before,.theme--light .input-group.input-group--segmented .input-group__details:before,.theme--light .input-group.input-group--segmented .input-group__input:before{background-color:rgba(0,0,0,.12)} \\n.application .theme--light.input-group.input-group--disabled .input-group__input .input-group__append-icon,.application .theme--light.input-group.input-group--disabled .input-group__input .input-group__prepend-icon,.theme--light .input-group.input-group--disabled .input-group__input .input-group__append-icon,.theme--light .input-group.input-group--disabled .input-group__input .input-group__prepend-icon{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group.input-group--disabled .input-group__details:before,.theme--light .input-group.input-group--disabled .input-group__details:before{background-color:transparent;background-image:-webkit-gradient(linear,left top, right top,color-stop(0, rgba(0,0,0,.38)),color-stop(33%, rgba(0,0,0,.38)),color-stop(0, transparent));background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0,rgba(0,0,0,.38) 33%,transparent 0)} \\n.application .theme--light.input-group .input-group--text-field__prefix,.application .theme--light.input-group .input-group--text-field__suffix,.theme--light .input-group .input-group--text-field__prefix,.theme--light .input-group .input-group--text-field__suffix{color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group .input-group--text-field.input-group--disabled__prefix,.application .theme--light.input-group .input-group--text-field.input-group--disabled__suffix,.theme--light .input-group .input-group--text-field.input-group--disabled__prefix,.theme--light .input-group .input-group--text-field.input-group--disabled__suffix{color:rgba(0,0,0,.38)} \\n.application .theme--dark.input-group input,.application .theme--dark.input-group textarea,.theme--dark .input-group input,.theme--dark .input-group textarea{color:#fff} \\n.application .theme--dark.input-group input:disabled,.application .theme--dark.input-group textarea:disabled,.theme--dark .input-group input:disabled,.theme--dark .input-group textarea:disabled{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group:not(.input-group--error) .input-group__messages,.theme--dark .input-group:not(.input-group--error) .input-group__messages{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--dark .input-group.input-group--textarea:not(.input-group--full-width) .input-group__input{border:2px solid hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group.input-group--solo,.theme--dark .input-group.input-group--solo{background:#424242} \\n.application .theme--dark.input-group.input-group--solo-inverted,.theme--dark .input-group.input-group--solo-inverted{background:hsla(0,0%,100%,.16)} \\n.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused,.theme--dark .input-group.input-group--solo-inverted.input-group--focused{background:#fff} \\n.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused input,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused label,.theme--dark .input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.theme--dark .input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.theme--dark .input-group.input-group--solo-inverted.input-group--focused input,.theme--dark .input-group.input-group--solo-inverted.input-group--focused label{color:rgba(0,0,0,.87)} \\n.application .theme--dark.input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active),.theme--dark .input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active){color:#fff} \\n.application .theme--dark.input-group:not(.input-group--error) label,.theme--dark .input-group:not(.input-group--error) label{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.application .theme--dark.input-group:not(.input-group--error).input-group--disabled label,.theme--dark .input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.theme--dark .input-group:not(.input-group--error).input-group--disabled label{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group:not(.input-group--error) .input-group__details:before,.theme--dark .input-group:not(.input-group--error) .input-group__details:before{background-color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover),.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover){color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before,.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before{background-color:#fff} \\n.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input{border-color:#fff} \\n.application .theme--dark.input-group.input-group--editable .input-group__details:before,.application .theme--dark.input-group.input-group--editable .input-group__input:before,.application .theme--dark.input-group.input-group--overflow .input-group__details:before,.application .theme--dark.input-group.input-group--overflow .input-group__input:before,.application .theme--dark.input-group.input-group--segmented .input-group__details:before,.application .theme--dark.input-group.input-group--segmented .input-group__input:before,.theme--dark .input-group.input-group--editable .input-group__details:before,.theme--dark .input-group.input-group--editable .input-group__input:before,.theme--dark .input-group.input-group--overflow .input-group__details:before,.theme--dark .input-group.input-group--overflow .input-group__input:before,.theme--dark .input-group.input-group--segmented .input-group__details:before,.theme--dark .input-group.input-group--segmented .input-group__input:before{background-color:hsla(0,0%,100%,.12)} \\n.application .theme--dark.input-group.input-group--disabled .input-group__input .input-group__append-icon,.application .theme--dark.input-group.input-group--disabled .input-group__input .input-group__prepend-icon,.theme--dark .input-group.input-group--disabled .input-group__input .input-group__append-icon,.theme--dark .input-group.input-group--disabled .input-group__input .input-group__prepend-icon{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group.input-group--disabled .input-group__details:before,.theme--dark .input-group.input-group--disabled .input-group__details:before{background-color:transparent;background-image:-webkit-gradient(linear,left top, right top,color-stop(0, hsla(0,0%,100%,.5)),color-stop(33%, hsla(0,0%,100%,.5)),color-stop(0, transparent));background-image:linear-gradient(90deg,hsla(0,0%,100%,.5) 0,hsla(0,0%,100%,.5) 33%,transparent 0)} \\n.application .theme--dark.input-group .input-group--text-field__prefix,.application .theme--dark.input-group .input-group--text-field__suffix,.theme--dark .input-group .input-group--text-field__prefix,.theme--dark .input-group .input-group--text-field__suffix{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group .input-group--text-field.input-group--disabled__prefix,.application .theme--dark.input-group .input-group--text-field.input-group--disabled__suffix,.theme--dark .input-group .input-group--text-field.input-group--disabled__prefix,.theme--dark .input-group .input-group--text-field.input-group--disabled__suffix{color:hsla(0,0%,100%,.5)} \\n.input-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1;-ms-flex-wrap:wrap;flex-wrap:wrap;min-width:24px;padding:18px 0 0;position:relative;width:100%;outline:none;-webkit-transition:-webkit-box-shadow .3s cubic-bezier(.25,.8,.5,1);transition:-webkit-box-shadow .3s cubic-bezier(.25,.8,.5,1);transition:box-shadow .3s cubic-bezier(.25,.8,.5,1);transition:box-shadow .3s cubic-bezier(.25,.8,.5,1), -webkit-box-shadow .3s cubic-bezier(.25,.8,.5,1)} \\n.input-group input{width:100%} \\n.input-group label{display:inline-block;font-size:16px;line-height:30px;height:30px;max-width:90%;min-width:0;overflow:hidden;pointer-events:none;text-align:left;text-overflow:ellipsis;-webkit-transform-origin:top left;transform-origin:top left;-webkit-transition:.4s cubic-bezier(.25,.8,.25,1);transition:.4s cubic-bezier(.25,.8,.25,1);white-space:nowrap;width:100%;z-index:0} \\n.input-group__input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;min-width:0;min-height:30px} \\n.input-group__icon-cb{cursor:pointer} \\n.input-group.input-group--error .input-group__append-icon,.input-group.input-group--error .input-group__prepend-icon,.input-group.input-group--focused .input-group__append-icon,.input-group.input-group--focused .input-group__prepend-icon{color:inherit} \\n.input-group.input-group--append-icon label,.input-group.input-group--prepend-icon label,.input-group.input-group--selection-controls label{max-width:75%} \\n.input-group.input-group--append-icon.input-group--prepend-icon label{max-width:65%} \\n.input-group .input-group__append-icon{padding:0 6px} \\n.input-group .input-group__append-icon,.input-group .input-group__prepend-icon{-ms-flex-item-align:center;align-self:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.input-group.input-group--single-line.input-group--dirty label,.input-group.input-group--solo.input-group--dirty label{display:none} \\n.input-group.input-group--solo{min-height:46px;border-radius:2px;padding:0;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.input-group.input-group--solo label{top:8px;padding-left:16px;-webkit-transform:none!important;transform:none!important} \\n.input-group.input-group--solo .input-group__input{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:8px 16px} \\n.input-group.input-group--solo .input-group__details{display:none} \\n.input-group--disabled{pointer-events:none} \\n.input-group--disabled .input-group__details:before{background-color:transparent;background-position:bottom;background-size:3px 1px;background-repeat:repeat-x} \\n.input-group.input-group--text-field:not(.input-group--single-line):not(.input-group--error).input-group--focused label{color:inherit} \\n.input-group.input-group--text-field:not(.input-group--single-line):not(.input-group--error).input-group--focused .input-group__input{border-color:inherit} \\n.input-group.input-group--text-field.input-group--focused:not(.input-group--disabled) .input-group__details:after{-webkit-transform:scaleX(1);transform:scaleX(1)} \\n.input-group--required label:after{content:\\\"*\\\"} \\n.input-group.input-group--error label{-webkit-animation:a .6s cubic-bezier(.25,.8,.5,1);animation:a .6s cubic-bezier(.25,.8,.5,1)} \\n.input-group.input-group--error .input-group__messages{color:inherit} \\n.input-group.input-group--error .input-group__details:before{background-color:currentColor} \\n.input-group .slide-y-transition-leave,.input-group .slide-y-transition-leave-to{position:absolute} \\n.input-group__details{color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;padding-top:4px;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;font-size:12px;min-height:26px;overflow:hidden;position:relative;width:100%} \\n.input-group__details:after,.input-group__details:before{content:\\\"\\\";position:absolute;left:0;-webkit-transition:.3s cubic-bezier(.4,0,.2,1);transition:.3s cubic-bezier(.4,0,.2,1)} \\n.input-group__details:after{background-color:currentColor;color:inherit;top:0;height:2px;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:center center 0;transform-origin:center center 0;width:100%;z-index:1} \\n.input-group__details:before{top:0;height:1px;width:100%;z-index:0} \\n.input-group--hide-details .input-group__details{min-height:2px;padding:0} \\n.input-group--async-loading .input-group__details:after,.input-group--async-loading .input-group__details:before{display:none} \\n.input-group .progress-linear{position:absolute;top:0;left:0;margin:0} \\n.input-group__error,.input-group__hint{-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1)} \\n.input-group__error{color:inherit} \\n.input-group--editable.input-group--active,.input-group--overflow.input-group--active,.input-group--segmented.input-group--active{background-color:#fff} \\n.application .theme--light.input-group--selection-controls label,.theme--light .input-group--selection-controls label{color:rgba(0,0,0,.87)} \\n.application .theme--light.input-group--selection-controls .icon--selection-control,.theme--light .input-group--selection-controls .icon--selection-control{color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group--selection-controls.input-group--active .icon--selection-control,.theme--light .input-group--selection-controls.input-group--active .icon--selection-control{color:inherit} \\n.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input .icon--radio,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input .icon--radio{color:inherit} \\n.application .theme--dark.input-group--selection-controls label,.theme--dark .input-group--selection-controls label{color:#fff} \\n.application .theme--dark.input-group--selection-controls .icon--selection-control,.theme--dark .input-group--selection-controls .icon--selection-control{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group--selection-controls.input-group--active .icon--selection-control,.theme--dark .input-group--selection-controls.input-group--active .icon--selection-control{color:inherit} \\n.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input .icon--radio,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input .icon--radio{color:inherit} \\n.input-group--selection-controls.input-group--tab-focused .input-group--selection-controls__ripple:before,.input-group--tab-focused .input-group:focus .input-group--selection-controls__ripple:before{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:.15} \\n.input-group.input-group--selection-controls{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0} \\n.input-group.input-group--selection-controls .icon--selection-control{cursor:pointer;position:absolute;left:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:.3s cubic-bezier(.4,0,.6,1);transition:.3s cubic-bezier(.4,0,.6,1)} \\n.input-group.input-group--selection-controls .input-group__details:after,.input-group.input-group--selection-controls .input-group__details:before{display:none} \\n.input-group.input-group--selection-controls .input-group__input{color:inherit;width:100%;position:relative} \\n.input-group.input-group--selection-controls .input-group__input .icon--selection-control{-ms-flex-item-align:center;align-self:center;height:30px;margin:auto} \\n.input-group.input-group--selection-controls.input-group--error .input-group__input .icon--selection-control,.input-group.input-group--selection-controls.input-group--error label{color:inherit} \\n.input-group.input-group--selection-controls label{cursor:pointer;position:absolute;left:32px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1} \\n.input-group.input-group--selection-controls:not(.input-group--disabled) label{pointer-events:all} \\n.input-group--selection-controls__ripple{border-radius:50%;height:48px;width:48px;cursor:pointer;position:absolute;-webkit-transform:translate(-12px,-50%);transform:translate(-12px,-50%);-webkit-transform-origin:center center;transform-origin:center center;top:50%;left:0} \\n.input-group--selection-controls__ripple:before{content:\\\"\\\";position:absolute;width:36px;height:36px;background:currentColor;border-radius:50%;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(.3);transform:translate(-50%,-50%) scale(.3);opacity:0;-webkit-transition:.4s cubic-bezier(0,0,.2,1);transition:.4s cubic-bezier(0,0,.2,1);-webkit-transform-origin:center center;transform-origin:center center} \\n.input-group--prepend-icon.input-group--selection-controls .icon--selection-control,.input-group--prepend-icon.input-group--selection-controls .input-group--selection-controls__ripple{left:38px} \\n.input-group--prepend-icon.input-group--selection-controls label{left:76px} \\n.input-group--append-icon.input-group--selection-controls .input-group__append-icon{position:absolute;left:32px} \\n.input-group--append-icon.input-group--selection-controls.input-group--selection-controls label{left:76px} \\n.input-group--append-icon.input-group--prepend-icon.input-group--selection-controls .input-group__append-icon{left:72px} \\n.input-group--append-icon.input-group--prepend-icon.input-group--selection-controls.input-group--selection-controls label{left:112px} \\n.input-group--prepend-icon.radio-group--row .icon--selection-control,.input-group--prepend-icon.radio-group--row .input-group--selection-controls__ripple{left:14px} \\n.input-group--prepend-icon.radio-group--row label{left:52px} \\n.progress-linear{background:transparent;margin:1rem 0;overflow:hidden;width:100%;position:relative} \\n.progress-linear__bar{width:100%;position:relative;z-index:1} \\n.progress-linear__bar,.progress-linear__bar__determinate{height:inherit;-webkit-transition:.2s;transition:.2s} \\n.progress-linear__bar__indeterminate .long,.progress-linear__bar__indeterminate .short{height:inherit;position:absolute;left:0;top:0;bottom:0;will-change:left,right;width:auto;background-color:inherit} \\n.progress-linear__bar__indeterminate--active .long{-webkit-animation:d;animation:d;-webkit-animation-duration:2.2s;animation-duration:2.2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite} \\n.progress-linear__bar__indeterminate--active .short{-webkit-animation:e;animation:e;-webkit-animation-duration:2.2s;animation-duration:2.2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite} \\n.progress-linear__background{position:absolute;top:0;left:0;bottom:0;-webkit-transition:.3s ease-in;transition:.3s ease-in} \\n.progress-linear--query .progress-linear__bar__indeterminate--active .long{-webkit-animation:f;animation:f;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite} \\n.progress-linear--query .progress-linear__bar__indeterminate--active .short{-webkit-animation:g;animation:g;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite} \\n@-webkit-keyframes d{0%{left:-90%;right:100%}60%{left:-90%;right:100%}to{left:100%;right:-35%}} \\n@keyframes d{0%{left:-90%;right:100%}60%{left:-90%;right:100%}to{left:100%;right:-35%}} \\n@-webkit-keyframes e{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}} \\n@keyframes e{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}} \\n@-webkit-keyframes f{0%{right:-90%;left:100%}60%{right:-90%;left:100%}to{right:100%;left:-35%}} \\n@keyframes f{0%{right:-90%;left:100%}60%{right:-90%;left:100%}to{right:100%;left:-35%}} \\n@-webkit-keyframes g{0%{right:-200%;left:100%}60%{right:107%;left:-8%}to{right:107%;left:-8%}} \\n@keyframes g{0%{right:-200%;left:100%}60%{right:107%;left:-8%}to{right:107%;left:-8%}} \\n.application .theme--light.chip,.theme--light .chip{background:#e0e0e0;color:rgba(0,0,0,.87)} \\n.application .theme--dark.chip,.theme--dark .chip{background:#fff;color:rgba(0,0,0,.87)} \\n.chip{border-radius:28px;border:1px solid transparent;font-size:13px;margin:4px;outline:none;position:relative;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.chip,.chip .chip__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle} \\n.chip .chip__content{border-radius:28px;cursor:default;height:32px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 12px;white-space:nowrap;z-index:1} \\n.chip--removable .chip__content{padding:0 4px 0 12px} \\n.chip .avatar{height:32px!important;margin-left:-12px;margin-right:8px;min-width:32px;width:32px!important} \\n.chip .avatar img{height:100%;width:100%} \\n.chip--active:not(.chip--disabled),.chip--selected:not(.chip--disabled),.chip:focus:not(.chip--disabled){border-color:rgba(0,0,0,.13);overflow:hidden;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.chip--active:not(.chip--disabled):after,.chip--selected:not(.chip--disabled):after,.chip:focus:not(.chip--disabled):after{background:currentColor;border-radius:inherit;content:\\\"\\\";height:100%;position:absolute;top:0;left:0;-webkit-transition:inherit;transition:inherit;width:100%;pointer-events:none;opacity:.13} \\n.chip--label,.chip--label .chip__content{border-radius:2px} \\n.chip.chip.chip--outline{background:transparent!important;border-color:currentColor;color:#9e9e9e} \\n.chip--small{height:26px} \\n.chip--small .avatar{height:26px;min-width:26px;width:26px} \\n.chip--small .icon,.chip__close{font-size:20px} \\n.chip__close{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:inherit;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 2px 0 8px;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.chip__close>.icon{color:inherit!important;font-size:20px;opacity:.5} \\n.chip__close>.icon:hover{opacity:1} \\n.chip--select-multi{margin:4px 4px 4px 0} \\n.chip .icon{color:inherit} \\n.chip .icon--right{margin-left:12px;margin-right:-8px} \\n.chip .icon--left{margin-left:-8px;margin-right:12px} \\n.application .theme--light.data-iterator .data-iterator__actions,.theme--light .data-iterator .data-iterator__actions{color:rgba(0,0,0,.54)} \\n.application .theme--light.data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.application .theme--light.data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma,.theme--light .data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.theme--light .data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma{color:rgba(0,0,0,.54)!important} \\n.application .theme--dark.data-iterator .data-iterator__actions,.theme--dark .data-iterator .data-iterator__actions{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.application .theme--dark.data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma,.theme--dark .data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.theme--dark .data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma{color:hsla(0,0%,100%,.7)!important} \\n.data-iterator__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:12px;-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse} \\n.data-iterator__actions .btn{color:inherit} \\n.data-iterator__actions .btn:last-of-type{margin-left:14px} \\n.data-iterator__actions__range-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:48px} \\n.data-iterator__actions__pagination{display:block;text-align:center;margin:0 32px 0 24px} \\n.data-iterator__actions__select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:14px} \\n.data-iterator__actions__select .input-group--select{margin:13px 0 13px 34px;padding:0;position:static} \\n.data-iterator__actions__select .input-group--select .input-group__selections__comma{font-size:12px} \\n.application .theme--light.input-group--text-field.input-group--text-field-box .input-group__input,.theme--light .input-group--text-field.input-group--text-field-box .input-group__input{background:hsla(0,0%,100%,.6)} \\n.application .theme--light.input-group--text-field input::-webkit-input-placeholder,.application .theme--light.input-group--text-field textarea::-webkit-input-placeholder,.theme--light .input-group--text-field input::-webkit-input-placeholder,.theme--light .input-group--text-field textarea::-webkit-input-placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field input:-ms-input-placeholder,.application .theme--light.input-group--text-field input::-ms-input-placeholder,.application .theme--light.input-group--text-field textarea:-ms-input-placeholder,.application .theme--light.input-group--text-field textarea::-ms-input-placeholder,.theme--light .input-group--text-field input:-ms-input-placeholder,.theme--light .input-group--text-field input::-ms-input-placeholder,.theme--light .input-group--text-field textarea:-ms-input-placeholder,.theme--light .input-group--text-field textarea::-ms-input-placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field input::-webkit-input-placeholder,.application .theme--light.input-group--text-field textarea::-webkit-input-placeholder,.theme--light .input-group--text-field input::-webkit-input-placeholder,.theme--light .input-group--text-field textarea::-webkit-input-placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field input:-ms-input-placeholder,.application .theme--light.input-group--text-field textarea:-ms-input-placeholder,.theme--light .input-group--text-field input:-ms-input-placeholder,.theme--light .input-group--text-field textarea:-ms-input-placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field input::-ms-input-placeholder,.application .theme--light.input-group--text-field textarea::-ms-input-placeholder,.theme--light .input-group--text-field input::-ms-input-placeholder,.theme--light .input-group--text-field textarea::-ms-input-placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field input::placeholder,.application .theme--light.input-group--text-field textarea::placeholder,.theme--light .input-group--text-field input::placeholder,.theme--light .input-group--text-field textarea::placeholder{color:rgba(0,0,0,.38)} \\n.application .theme--light.input-group--text-field:not(.input-group--error) .input-group__counter,.theme--light .input-group--text-field:not(.input-group--error) .input-group__counter{color:rgba(0,0,0,.54)} \\n.application .theme--dark.input-group--text-field.input-group--text-field-box .input-group__input,.theme--dark .input-group--text-field.input-group--text-field-box .input-group__input{background:hsla(0,0%,100%,.1)} \\n.application .theme--dark.input-group--text-field input::-webkit-input-placeholder,.application .theme--dark.input-group--text-field textarea::-webkit-input-placeholder,.theme--dark .input-group--text-field input::-webkit-input-placeholder,.theme--dark .input-group--text-field textarea::-webkit-input-placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field input:-ms-input-placeholder,.application .theme--dark.input-group--text-field input::-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea:-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea::-ms-input-placeholder,.theme--dark .input-group--text-field input:-ms-input-placeholder,.theme--dark .input-group--text-field input::-ms-input-placeholder,.theme--dark .input-group--text-field textarea:-ms-input-placeholder,.theme--dark .input-group--text-field textarea::-ms-input-placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field input::-webkit-input-placeholder,.application .theme--dark.input-group--text-field textarea::-webkit-input-placeholder,.theme--dark .input-group--text-field input::-webkit-input-placeholder,.theme--dark .input-group--text-field textarea::-webkit-input-placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field input:-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea:-ms-input-placeholder,.theme--dark .input-group--text-field input:-ms-input-placeholder,.theme--dark .input-group--text-field textarea:-ms-input-placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field input::-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea::-ms-input-placeholder,.theme--dark .input-group--text-field input::-ms-input-placeholder,.theme--dark .input-group--text-field textarea::-ms-input-placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field input::placeholder,.application .theme--dark.input-group--text-field textarea::placeholder,.theme--dark .input-group--text-field input::placeholder,.theme--dark .input-group--text-field textarea::placeholder{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.input-group--text-field:not(.input-group--error) .input-group__counter,.theme--dark .input-group--text-field:not(.input-group--error) .input-group__counter{color:hsla(0,0%,100%,.7)} \\n.input-group--text-field label{position:absolute;top:18px;left:0} \\n.input-group--text-field input{padding-bottom:1px} \\n.input-group--text-field input,.input-group--text-field textarea{font-size:16px} \\n.input-group--text-field input::-webkit-input-placeholder,.input-group--text-field textarea::-webkit-input-placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input:-ms-input-placeholder,.input-group--text-field input::-ms-input-placeholder,.input-group--text-field textarea:-ms-input-placeholder,.input-group--text-field textarea::-ms-input-placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input::-webkit-input-placeholder,.input-group--text-field textarea::-webkit-input-placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input:-ms-input-placeholder,.input-group--text-field textarea:-ms-input-placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input::-ms-input-placeholder,.input-group--text-field textarea::-ms-input-placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input::placeholder,.input-group--text-field textarea::placeholder{color:inherit;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field input{-webkit-box-shadow:none;box-shadow:none;-webkit-box-flex:1;-ms-flex:1;flex:1;height:30px;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} \\n.input-group--text-field input:focus{outline:none} \\n.input-group--text-field input:disabled{pointer-events:none} \\n.input-group--text-field textarea{-webkit-box-flex:1;-ms-flex:1 1;flex:1 1} \\n.input-group--text-field textarea:focus{outline:none} \\n.input-group--text-field.input-group--textarea label{top:13px} \\n.input-group--text-field.input-group--textarea .input-group__input{border-radius:2px;-webkit-transition:.4s cubic-bezier(.25,.8,.25,1);transition:.4s cubic-bezier(.25,.8,.25,1)} \\n.input-group--text-field.input-group--textarea textarea{font-size:16px;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group--text-field.input-group--textarea:not(.input-group--full-width) label{top:30px;left:15px} \\n.input-group--text-field.input-group--textarea:not(.input-group--full-width) .input-group__input{padding:30px 0 0 13px} \\n.input-group--text-field.input-group--textarea .input-group__details:after,.input-group--text-field.input-group--textarea .input-group__details:before{opacity:0} \\n.input-group--text-field .input-group__counter{margin-left:auto;white-space:nowrap} \\n.input-group--text-field .input-group__counter--error{color:inherit} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input::-webkit-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-webkit-input-placeholder{opacity:0} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input:-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty input::-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea:-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-ms-input-placeholder{opacity:0} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input::-webkit-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-webkit-input-placeholder{opacity:0} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input:-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea:-ms-input-placeholder{opacity:0} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input::-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-ms-input-placeholder{opacity:0} \\n.input-group--text-field.input-group--placeholder.input-group--dirty input::placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::placeholder{opacity:0} \\n.input-group--text-field.input-group--no-resize textarea{resize:none} \\n.input-group--text-field.input-group--prepend-icon .input-group__prepend-icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:40px} \\n.input-group--text-field.input-group--prepend-icon .input-group__details{margin-left:auto;max-width:calc(100% - 40px)} \\n.input-group--text-field.input-group--prepend-icon label{left:40px} \\n.input-group--text-field:not(.input-group--single-line).input-group--focused label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder label{opacity:1} \\n.input-group--text-field:not(.input-group--single-line).input-group--focused:not(.input-group--textarea) label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder:not(.input-group--textarea) label{-webkit-transform:translateY(-18px) scale(.75);transform:translateY(-18px) scale(.75)} \\n.input-group--text-field:not(.input-group--single-line).input-group--focused:not(.input-group--full-width).input-group--textarea label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder:not(.input-group--full-width).input-group--textarea label{-webkit-transform:translateY(-8px) scale(.75);transform:translateY(-8px) scale(.75)} \\n.input-group--text-field:not(.input-group--single-line).input-group--focused.input-group--text-field-box label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder.input-group--text-field-box label{-webkit-transform:translateY(-10px) scale(.75);transform:translateY(-10px) scale(.75)} \\n.input-group--text-field.input-group--dirty.input-group--select label,.input-group--text-field.input-group--dirty:not(.input-group--textarea) label{-webkit-transform:translateY(-18px) scale(.75);transform:translateY(-18px) scale(.75)} \\n.input-group--text-field.input-group--dirty:not(.input-group--full-width).input-group--textarea label{-webkit-transform:translateY(-8px) scale(.75);transform:translateY(-8px) scale(.75)} \\n.input-group--text-field.input-group--multi-line textarea{padding-top:4px} \\n.input-group--text-field.input-group--full-width{padding:16px} \\n.input-group--text-field.input-group--full-width label{margin-left:16px} \\n.input-group--text-field.input-group--full-width .input-group__details:after,.input-group--text-field.input-group--full-width .input-group__details:before{display:none} \\n.input-group--prefix:not(.input-group--focused):not(.input-group--dirty) label{left:16px} \\n.input-group--prefix .input-group--text-field__prefix,.input-group--prefix .input-group--text-field__suffix,.input-group--suffix .input-group--text-field__prefix,.input-group--suffix .input-group--text-field__suffix{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:16px;margin-top:1px} \\n.input-group--prefix .input-group--text-field__prefix,.input-group--suffix .input-group--text-field__prefix{margin-right:3px} \\n.input-group--prefix .input-group--text-field__suffix,.input-group--suffix .input-group--text-field__suffix{margin-left:3px} \\n.input-group--text-field-box input,.input-group--text-field-box textarea{cursor:pointer} \\n.input-group--text-field-box label{left:16px} \\n.input-group--text-field-box .input-group__input{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;border-radius:4px 4px 0 0;cursor:pointer;min-height:56px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.input-group--text-field-box .input-group__details{padding:8px 16px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.input-group--text-field-box .input-group__details:after,.input-group--text-field-box .input-group__details:before{height:2px;border-bottom-left-radius:4px;border-bottom-right-radius:4px} \\n.input-group--text-field-box.input-group--multi-line textarea{padding-left:24px;padding-right:24px} \\n.input-group--text-field-box:not(.input-group--textarea).input-group--multi-line .input-group__input{padding-top:26px} \\n.input-group--text-field-box:not(.input-group--textarea).input-group--multi-line label{top:26px} \\n.input-group--text-field-box:not(.input-group--textarea):not(.input-group--multi-line) .input-group__input{padding-left:16px;padding-right:16px} \\n.input-group--text-field-box:not(.input-group--textarea):not(.input-group--multi-line) label{top:32px} \\n.input-group--text-field-box:not(.input-group--textarea):not(.input-group--single-line).input-group--dirty label,.input-group--text-field-box:not(.input-group--textarea):not(.input-group--single-line).input-group--focused label{-webkit-transform:translateY(-10px) scale(.75);transform:translateY(-10px) scale(.75)} \\n.input-group--text-field-box.input-group--prepend-icon .input-group__details:after,.input-group--text-field-box.input-group--prepend-icon .input-group__details:before{margin-left:56px;max-width:calc(100% - 56px)} \\n.input-group--text-field-box.input-group--prepend-icon label{left:56px} \\n.application .theme--light.input-group--select.input-group--editable.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--editable .input-group__input:hover,.application .theme--light.input-group--select.input-group--overflow.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--overflow .input-group__input:hover,.application .theme--light.input-group--select.input-group--segmented.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--segmented .input-group__input:hover,.theme--light .input-group--select.input-group--editable.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--editable .input-group__input:hover,.theme--light .input-group--select.input-group--overflow.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--overflow .input-group__input:hover,.theme--light .input-group--select.input-group--segmented.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--segmented .input-group__input:hover{background:#fff} \\n.application .theme--dark.input-group--select.input-group--editable.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--editable .input-group__input:hover,.application .theme--dark.input-group--select.input-group--overflow.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--overflow .input-group__input:hover,.application .theme--dark.input-group--select.input-group--segmented.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--segmented .input-group__input:hover,.theme--dark .input-group--select.input-group--editable.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--editable .input-group__input:hover,.theme--dark .input-group--select.input-group--overflow.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--overflow .input-group__input:hover,.theme--dark .input-group--select.input-group--segmented.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--segmented .input-group__input:hover{background:#424242} \\n.input-group--select .input-group--select__autocomplete{display:block;height:0} \\n.input-group--select .input-group--select__autocomplete--index{background-color:transparent!important} \\n.input-group--select .input-group__append-icon{-webkit-transition:.3s cubic-bezier(0,0,.2,1);transition:.3s cubic-bezier(0,0,.2,1)} \\n.input-group--select .input-group__append-icon.input-group__icon-clearable{-webkit-transition:none;transition:none} \\n.input-group--select.input-group--focused .input-group--select__autocomplete,.input-group--select:not(.input-group--dirty) .input-group--select__autocomplete{padding-bottom:1px;height:30px} \\n.input-group--select.input-group--focused .input-group--select__autocomplete{display:inline-block;opacity:1} \\n.input-group--select.input-group--focused.input-group--select--selecting-index .input-group--select__autocomplete{opacity:0} \\n.input-group--select.input-group--focused.input-group--open .input-group__append-icon:not(.input-group__icon-clearable){-webkit-transform:rotate(-180deg);transform:rotate(-180deg)} \\n.input-group--select .input-group__input{cursor:pointer} \\n.input-group--select.input-group--disabled{cursor:default;pointer-events:none} \\n.input-group--select .input-group__selections{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;width:100%} \\n.input-group--select .input-group__selections__comma{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:16px;padding:3px 4px 3px 0} \\n.input-group--select .input-group__selections__comma--active{color:inherit} \\n.input-group--select .menu{display:inline} \\n.input-group--select .fade-transition-leave-active{position:absolute;left:0} \\n.input-group--select.input-group--autocomplete.input-group--search-focused .input-group__selections__comma{display:none} \\n.input-group--autocomplete .input-group__selections{cursor:text} \\n.input-group.input-group--chips .input-group__input{padding-top:0;padding-bottom:0} \\n.input-group.input-group--editable,.input-group.input-group--editable .input-group__append-icon,.input-group.input-group--overflow,.input-group.input-group--overflow .input-group__append-icon,.input-group.input-group--segmented,.input-group.input-group--segmented .input-group__append-icon{padding:0} \\n.input-group.input-group--editable .input-group__selections,.input-group.input-group--editable input,.input-group.input-group--overflow .input-group__selections,.input-group.input-group--overflow input,.input-group.input-group--segmented .input-group__selections,.input-group.input-group--segmented input{height:48px} \\n.input-group.input-group--editable .input-group__selections__comma,.input-group.input-group--editable input,.input-group.input-group--overflow .input-group__selections__comma,.input-group.input-group--overflow input,.input-group.input-group--segmented .input-group__selections__comma,.input-group.input-group--segmented input{top:0;left:0;padding-left:16px} \\n.input-group.input-group--editable .input-group__selections,.input-group.input-group--overflow .input-group__selections,.input-group.input-group--segmented .input-group__selections{width:calc(100% - 55px)} \\n.input-group.input-group--editable .input-group__selections .btn,.input-group.input-group--overflow .input-group__selections .btn,.input-group.input-group--segmented .input-group__selections .btn{border-radius:0;margin:0;height:48px;width:100%} \\n.input-group.input-group--editable .input-group__selections .btn .btn__content,.input-group.input-group--overflow .input-group__selections .btn .btn__content,.input-group.input-group--segmented .input-group__selections .btn .btn__content{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:start} \\n.input-group.input-group--editable .input-group__input,.input-group.input-group--overflow .input-group__input,.input-group.input-group--segmented .input-group__input{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group.input-group--editable.input-group--focused .input-group__input,.input-group.input-group--overflow.input-group--focused .input-group__input,.input-group.input-group--segmented.input-group--focused .input-group__input{-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)} \\n.input-group.input-group--editable label,.input-group.input-group--overflow label,.input-group.input-group--segmented label{left:16px!important;top:9px!important} \\n.input-group.input-group--editable .input-group__details:after,.input-group.input-group--overflow .input-group__details:after,.input-group.input-group--segmented .input-group__details:after{display:none} \\n.input-group.input-group--editable .input-group__input,.input-group.input-group--overflow .input-group__input,.input-group.input-group--segmented .input-group__input{padding:0} \\n.input-group.input-group--editable .input-group__input:before,.input-group.input-group--overflow .input-group__input:before,.input-group.input-group--segmented .input-group__input:before{content:\\\"\\\";position:absolute;left:0;width:100%;height:1px;top:0;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.input-group.input-group--editable .input-group__append-icon,.input-group.input-group--overflow .input-group__append-icon,.input-group.input-group--segmented .input-group__append-icon{width:55px} \\n.input-group--editable .input-group__input:hover:after,.input-group--segmented .input-group__input:after,.input-group.input-group--focused.input-group--editable .input-group__input:after{background-color:rgba(0,0,0,.12);content:\\\"\\\";position:absolute;right:55px;height:48px;top:0;width:1px} \\n.menu__content--select .input-group--selection-controls__ripple{display:none} \\n.menu__content--autocomplete,.menu__content--autocomplete>.card{border-radius:0} \\n.application .theme--light.divider,.theme--light .divider{background-color:rgba(0,0,0,.12)} \\n.application .theme--dark.divider,.theme--dark .divider{background-color:hsla(0,0%,100%,.12)} \\n.divider{border:none;display:block;height:1px;min-height:1px;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%} \\n.divider--inset{margin-left:72px;width:calc(100% - 72px)} \\n.menu{display:inline-block;position:relative;vertical-align:middle} \\n.menu--disabled{cursor:default} \\n.menu--disabled .menu__activator,.menu--disabled .menu__activator>*{cursor:default;pointer-events:none} \\n.menu__activator{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;height:inherit;position:relative} \\n.menu__activator input[readonly]{cursor:pointer} \\n.menu__content{position:absolute;display:inline-block;border-radius:2px;max-width:80%;overflow-y:auto;overflow-x:hidden;contain:content;will-change:transform;-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)} \\n.menu__content--active{pointer-events:none} \\n.menu__content--dropdown{border-top-left-radius:0;border-top-right-radius:0;border-top:1px solid rgba(0,0,0,.12)} \\n.menu__content>.card{contain:content;-webkit-backface-visibility:hidden;backface-visibility:hidden} \\n.menu>.menu__content{max-width:none} \\n.menu-transition-enter .list__tile{min-width:0;-webkit-transition-delay:.4s;transition-delay:.4s;opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px);pointer-events:none} \\n.menu-transition-enter-to .list__tile{pointer-events:auto;opacity:1} \\n.menu-transition-enter-to .list__tile--active{-webkit-transform:none!important;transform:none!important} \\n.menu-transition-leave-to{-webkit-transform:translateY(-10px);transform:translateY(-10px)} \\n.menu-transition-leave-active,.menu-transition-leave-to{pointer-events:none} \\n.menu-transition-enter,.menu-transition-leave-to{opacity:0} \\n.menu-transition-enter-to,.menu-transition-leave{opacity:1} \\n.menu-transition-enter-active,.menu-transition-leave-active{-webkit-transition:all .5s cubic-bezier(.25,.8,.5,1);transition:all .5s cubic-bezier(.25,.8,.5,1)} \\n.menu-transition-enter.menu__content--auto .list__tile--active{opacity:1;-webkit-transform:none!important;transform:none!important;pointer-events:auto} \\n.application .theme--light.subheader,.theme--light .subheader{color:rgba(0,0,0,.54)} \\n.application .theme--dark.subheader,.theme--dark .subheader{color:hsla(0,0%,100%,.7)} \\n.subheader{height:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;font-weight:500;padding:0 16px} \\n.subheader--inset{margin-left:56px} \\n.application .theme--light.list,.theme--light .list{background:#fff;color:rgba(0,0,0,.87)} \\n.application .theme--light.list .list__tile__sub-title,.theme--light .list .list__tile__sub-title{color:rgba(0,0,0,.54)} \\n.application .theme--light.list .list__tile__mask,.theme--light .list .list__tile__mask{color:rgba(0,0,0,.38);background:#eee} \\n.application .theme--light.list .list__group--active:after,.application .theme--light.list .list__group--active:before,.application .theme--light.list .list__group__header:hover,.application .theme--light.list .list__tile--highlighted,.application .theme--light.list .list__tile--link:hover,.theme--light .list .list__group--active:after,.theme--light .list .list__group--active:before,.theme--light .list .list__group__header:hover,.theme--light .list .list__tile--highlighted,.theme--light .list .list__tile--link:hover{background:rgba(0,0,0,.12)} \\n.application .theme--light.list .list__group--disabled .list__group__header__prepend-icon .icon,.application .theme--light.list .list__group--disabled .list__tile,.theme--light .list .list__group--disabled .list__group__header__prepend-icon .icon,.theme--light .list .list__group--disabled .list__tile{color:rgba(0,0,0,.38)!important} \\n.application .theme--dark.list,.theme--dark .list{background:#424242;color:#fff} \\n.application .theme--dark.list .list__tile__sub-title,.theme--dark .list .list__tile__sub-title{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.list .list__tile__mask,.theme--dark .list .list__tile__mask{color:hsla(0,0%,100%,.5);background:rgba(0,0,0,.7)} \\n.application .theme--dark.list .list__group--active:after,.application .theme--dark.list .list__group--active:before,.application .theme--dark.list .list__group__header:hover,.application .theme--dark.list .list__tile--highlighted,.application .theme--dark.list .list__tile--link:hover,.theme--dark .list .list__group--active:after,.theme--dark .list .list__group--active:before,.theme--dark .list .list__group__header:hover,.theme--dark .list .list__tile--highlighted,.theme--dark .list .list__tile--link:hover{background:hsla(0,0%,100%,.12)} \\n.application .theme--dark.list .list__group--disabled .list__group__header__prepend-icon .icon,.application .theme--dark.list .list__group--disabled .list__tile,.theme--dark .list .list__group--disabled .list__group__header__prepend-icon .icon,.theme--dark .list .list__group--disabled .list__tile{color:hsla(0,0%,100%,.5)!important} \\n.list{list-style-type:none;padding:8px 0;-webkit-transition:height .3s cubic-bezier(.4,0,.2,1);transition:height .3s cubic-bezier(.4,0,.2,1)} \\n.list .input-group{margin:0} \\n.list__tile{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:16px;font-weight:400;height:48px;margin:0;padding:0 16px;position:relative;text-decoration:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.list__tile--link{cursor:pointer} \\n.list__tile__action,.list__tile__content{height:100%} \\n.list__tile__sub-title,.list__tile__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:100%} \\n.list__tile__title{height:24px;line-height:24px;position:relative;text-align:left} \\n.list__tile__sub-title{font-size:14px} \\n.list__tile__action,.list__tile__avatar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:56px} \\n.list__tile__action,.list__tile__action .input-group--selection-controls{-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.list__tile__action .input-group--selection-controls{-webkit-box-flex:0;-ms-flex:0 1;flex:0 1;padding:0} \\n.list__tile__action .input-group__details{display:none} \\n.list__tile__action .btn{padding:0;margin:0} \\n.list__tile__action .btn--icon{margin:-8px} \\n.list__tile__action-text{color:#9e9e9e;font-size:12px} \\n.list__tile__action--stack{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-top:8px;padding-bottom:8px;white-space:nowrap;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column} \\n.list__tile__action--stack,.list__tile__content{-webkit-box-orient:vertical;-webkit-box-direction:normal} \\n.list__tile__content{text-align:left;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column} \\n.list__tile__content~.list__tile__action:not(.list__tile__action--stack),.list__tile__content~.list__tile__avatar{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end} \\n.list__tile--active .list__tile__action:first-of-type .icon{color:inherit} \\n.list__tile--disabled{opacity:.4!important;pointer-events:none!important} \\n.list__tile--avatar{height:56px} \\n.list--dense{padding-top:4px;padding-bottom:4px} \\n.list--dense .subheader{font-size:13px;height:40px} \\n.list--dense .list__group .subheader{height:40px} \\n.list--dense .list__tile{font-size:13px} \\n.list--dense .list__tile--avatar{height:48px} \\n.list--dense .list__tile:not(.list__tile--avatar){height:40px} \\n.list--dense .list__tile .icon{font-size:22px} \\n.list--dense .list__tile__sub-title{font-size:13px} \\n.list--two-line .list__tile{height:72px} \\n.list--two-line.list--dense .list__tile{height:60px} \\n.list--three-line .list__tile{height:88px} \\n.list--three-line .list__tile__avatar{margin-top:-18px} \\n.list--three-line .list__tile__sub-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box} \\n.list--three-line.list--dense .list__tile{height:76px} \\n.list>.list__group:before{top:0} \\n.list>.list__group:before .list__tile__avatar{margin-top:-14px} \\n.list__group{padding:0;position:relative;-webkit-transition:inherit;transition:inherit} \\n.list__group:after,.list__group:before{content:\\\"\\\";height:1px;position:absolute;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:100%} \\n.list__group--active~.list__group:before{display:none} \\n.list__group__header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;list-style-type:none} \\n.list__group__header>div:not(.list__group__header__prepend-icon):not(.list__group__header__append-icon){-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto} \\n.list__group__header .list__group__header__append-icon,.list__group__header .list__group__header__prepend-icon{padding:0 16px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.list__group__header--sub-group{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex} \\n.list__group__header--sub-group div .list__tile{padding-left:0} \\n.list__group__header--sub-group .list__group__header__prepend-icon{padding:0 0 0 40px;margin-right:8px} \\n.list__group__header .list__group__header__prepend-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:56px} \\n.list__group__header--active .list__group__header__append-icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)} \\n.list__group__header--active .list__group__header__prepend-icon .icon{color:inherit} \\n.list__group__header--active.list__group__header--sub-group .list__group__header__prepend-icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)} \\n.list__group__items{position:relative;padding:0;-webkit-transition:inherit;transition:inherit} \\n.list__group__items>div{display:block} \\n.list__group__items--no-action .list__tile{padding-left:72px} \\n.list__group--disabled{pointer-events:none} \\n.list--subheader{padding-top:0} \\n.application .theme--light.table,.theme--light .table{background-color:#fff;color:rgba(0,0,0,.87)} \\n.application .theme--light.table thead tr:first-child,.theme--light .table thead tr:first-child{border-bottom:1px solid rgba(0,0,0,.12)} \\n.application .theme--light.table thead th,.theme--light .table thead th{color:rgba(0,0,0,.54)} \\n.application .theme--light.table tbody tr:not(:last-child),.theme--light .table tbody tr:not(:last-child){border-bottom:1px solid rgba(0,0,0,.12)} \\n.application .theme--light.table tbody tr[active],.theme--light .table tbody tr[active]{background:#f5f5f5} \\n.application .theme--light.table tbody tr:hover:not(.datatable__expand-row),.theme--light .table tbody tr:hover:not(.datatable__expand-row){background:#eee} \\n.application .theme--light.table tfoot tr,.theme--light .table tfoot tr{border-top:1px solid rgba(0,0,0,.12)} \\n.application .theme--dark.table,.theme--dark .table{background-color:#424242;color:#fff} \\n.application .theme--dark.table thead tr:first-child,.theme--dark .table thead tr:first-child{border-bottom:1px solid hsla(0,0%,100%,.12)} \\n.application .theme--dark.table thead th,.theme--dark .table thead th{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.table tbody tr:not(:last-child),.theme--dark .table tbody tr:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.12)} \\n.application .theme--dark.table tbody tr[active],.theme--dark .table tbody tr[active]{background:#505050} \\n.application .theme--dark.table tbody tr:hover:not(.datatable__expand-row),.theme--dark .table tbody tr:hover:not(.datatable__expand-row){background:#616161} \\n.application .theme--dark.table tfoot tr,.theme--dark .table tfoot tr{border-top:1px solid hsla(0,0%,100%,.12)} \\n.table__overflow{width:100%;overflow-x:auto;overflow-y:hidden} \\ntable.table{border-radius:2px;border-collapse:collapse;border-spacing:0;width:100%;max-width:100%} \\ntable.table tbody td:first-child,table.table tbody td:not(:first-child),table.table tbody th:first-child,table.table tbody th:not(:first-child),table.table thead td:first-child,table.table thead td:not(:first-child),table.table thead th:first-child,table.table thead th:not(:first-child){padding:0 24px} \\ntable.table thead tr{height:56px} \\ntable.table thead th{font-weight:500;font-size:12px;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\ntable.table thead th.sortable{pointer-events:auto} \\ntable.table thead th>div{width:100%} \\ntable.table tbody tr{-webkit-transition:background .3s cubic-bezier(.25,.8,.5,1);transition:background .3s cubic-bezier(.25,.8,.5,1);will-change:background} \\ntable.table tbody td,table.table tbody th{height:48px} \\ntable.table tbody td{font-weight:400;font-size:13px} \\ntable.table .input-group--selection-controls{padding:0} \\ntable.table .input-group--selection-controls .input-group__details{display:none} \\ntable.table .input-group--selection-controls.checkbox .icon{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)} \\ntable.table .input-group--selection-controls.checkbox .input-group--selection-controls__ripple{left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)} \\ntable.table tfoot tr{height:48px} \\ntable.table tfoot tr td{padding:0 24px} \\n.application .theme--light.datatable thead th.column.sortable i,.theme--light .datatable thead th.column.sortable i{color:rgba(0,0,0,.38)} \\n.application .theme--light.datatable thead th.column.sortable.active,.application .theme--light.datatable thead th.column.sortable.active i,.application .theme--light.datatable thead th.column.sortable:hover,.theme--light .datatable thead th.column.sortable.active,.theme--light .datatable thead th.column.sortable.active i,.theme--light .datatable thead th.column.sortable:hover{color:rgba(0,0,0,.87)} \\n.application .theme--light.datatable .datatable__actions,.theme--light .datatable .datatable__actions{background-color:#fff;color:rgba(0,0,0,.54);border-top:1px solid rgba(0,0,0,.12)} \\n.application .theme--light.datatable .datatable__actions__select .input-group--select .input-group__append-icon,.application .theme--light.datatable .datatable__actions__select .input-group--select .input-group__selections__comma,.theme--light .datatable .datatable__actions__select .input-group--select .input-group__append-icon,.theme--light .datatable .datatable__actions__select .input-group--select .input-group__selections__comma{color:rgba(0,0,0,.54)!important} \\n.application .theme--dark.datatable thead th.column.sortable i,.theme--dark .datatable thead th.column.sortable i{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.datatable thead th.column.sortable.active,.application .theme--dark.datatable thead th.column.sortable.active i,.application .theme--dark.datatable thead th.column.sortable:hover,.theme--dark .datatable thead th.column.sortable.active,.theme--dark .datatable thead th.column.sortable.active i,.theme--dark .datatable thead th.column.sortable:hover{color:#fff} \\n.application .theme--dark.datatable .datatable__actions,.theme--dark .datatable .datatable__actions{background-color:#424242;color:hsla(0,0%,100%,.7);border-top:1px solid hsla(0,0%,100%,.12)} \\n.application .theme--dark.datatable .datatable__actions__select .input-group--select .input-group__append-icon,.application .theme--dark.datatable .datatable__actions__select .input-group--select .input-group__selections__comma,.theme--dark .datatable .datatable__actions__select .input-group--select .input-group__append-icon,.theme--dark .datatable .datatable__actions__select .input-group--select .input-group__selections__comma{color:hsla(0,0%,100%,.7)!important} \\n.datatable thead th.column.sortable{cursor:pointer} \\n.datatable thead th.column.sortable i{font-size:16px;vertical-align:sub;display:inline-block;opacity:0;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.datatable thead th.column.sortable:hover i{opacity:.6} \\n.datatable thead th.column.sortable.active{-webkit-transform:none;transform:none} \\n.datatable thead th.column.sortable.active i{opacity:1} \\n.datatable thead th.column.sortable.active.desc i{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)} \\n.datatable__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:12px;-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse} \\n.datatable__actions .btn{color:inherit} \\n.datatable__actions .btn:last-of-type{margin-left:14px} \\n.datatable__actions__range-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:48px} \\n.datatable__actions__pagination{display:block;text-align:center;margin:0 32px 0 24px} \\n.datatable__actions__select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:14px} \\n.datatable__actions__select .input-group--select{margin:13px 0 13px 34px;padding:0;position:static} \\n.datatable__actions__select .input-group--select .input-group__selections__comma{font-size:12px} \\n.datatable__progress,.datatable__progress td,.datatable__progress th,.datatable__progress tr{height:auto!important} \\n.datatable__progress th{padding:0!important} \\n.datatable__progress th .progress-linear{top:-2px;margin:0 0 -2px} \\n.datatable__expand-row{border:none!important} \\n.datatable__expand-col{padding:0!important;height:0!important} \\n.datatable__expand-col--expanded{border-bottom:1px solid rgba(0,0,0,.12)} \\n.datatable__expand-content{-webkit-transition:height .3s cubic-bezier(.25,.8,.5,1);transition:height .3s cubic-bezier(.25,.8,.5,1)} \\n.datatable__expand-content>.card{border-radius:0;-webkit-box-shadow:none;box-shadow:none} \\n.application .theme--light.small-dialog__actions,.application .theme--light.small-dialog__content,.theme--light .small-dialog__actions,.theme--light .small-dialog__content{background:#fff} \\n.application .theme--light.small-dialog a,.theme--light .small-dialog a{color:rgba(0,0,0,.87)} \\n.application .theme--dark.small-dialog__actions,.application .theme--dark.small-dialog__content,.theme--dark .small-dialog__actions,.theme--dark .small-dialog__content{background:#424242} \\n.application .theme--dark.small-dialog a,.theme--dark .small-dialog a{color:#fff} \\n.small-dialog{display:block;width:100%;height:100%} \\n.small-dialog__content{padding:0 24px} \\n.small-dialog__actions{text-align:right} \\n.small-dialog a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;text-decoration:none} \\n.small-dialog a>*{width:100%} \\n.small-dialog .menu__activator{height:100%} \\n.date-picker-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;line-height:1} \\n.date-picker-title__year{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:14px;font-weight:500;margin-bottom:8px} \\n.date-picker-title__date{font-size:34px;text-align:left;font-weight:500;position:relative;overflow:hidden} \\n.date-picker-title__date>div{position:relative} \\n.application .theme--light.date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover),.theme--light .date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover){color:rgba(0,0,0,.87)!important} \\n.application .theme--light.date-picker-header .date-picker-header__value--disabled strong,.theme--light .date-picker-header .date-picker-header__value--disabled strong{color:rgba(0,0,0,.38)} \\n.application .theme--dark.date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover),.theme--dark .date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover){color:#fff!important} \\n.application .theme--dark.date-picker-header .date-picker-header__value--disabled strong,.theme--dark .date-picker-header .date-picker-header__value--disabled strong{color:hsla(0,0%,100%,.5)} \\n.date-picker-header{padding:4px 16px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:relative} \\n.date-picker-header .btn{margin:0;z-index:auto} \\n.date-picker-header .icon{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.date-picker-header__value{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;position:relative;overflow:hidden} \\n.date-picker-header__value strong{cursor:pointer;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);display:block;width:100%} \\n.application .theme--light.date-picker-table th,.theme--light .date-picker-table th{color:rgba(0,0,0,.38)} \\n.application .theme--light.date-picker-table .btn,.theme--light .date-picker-table .btn{color:rgba(0,0,0,.87)} \\n.application .theme--dark.date-picker-table th,.theme--dark .date-picker-table th{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.date-picker-table .btn,.theme--dark .date-picker-table .btn{color:#fff} \\n.date-picker-table{position:relative;padding:0 12px;height:242px} \\n.date-picker-table table{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);top:0;table-layout:fixed;width:100%} \\n.date-picker-table td,.date-picker-table th{text-align:center;position:relative} \\n.date-picker-table th{font-size:12px} \\n.date-picker-table--date .btn{height:32px;width:32px} \\n.date-picker-table .btn{z-index:auto;margin:0;font-size:12px} \\n.date-picker-table .btn.btn--active{color:#fff} \\n.date-picker-table--month td{width:33.333333%;height:56px;vertical-align:middle;text-align:center} \\n.date-picker-table--month td .btn{margin:0 auto;max-width:160px;min-width:40px;width:100%} \\n.date-picker-table--date th{padding:8px 0;font-weight:600} \\n.date-picker-table--date td{width:45px} \\n.date-picker-table__event{border-radius:50%;bottom:2px;content:\\\"\\\";display:block;height:8px;left:50%;position:absolute;-webkit-transform:translateX(-4px);transform:translateX(-4px);width:8px} \\n.date-picker-years{font-size:16px;font-weight:400;height:334px;list-style-type:none;overflow:auto;padding:0;text-align:center} \\n.date-picker-years li{cursor:pointer;padding:8px 0;-webkit-transition:none;transition:none} \\n.date-picker-years li.active{font-size:26px;font-weight:500;padding:10px 0} \\n.date-picker-years li:hover{background:rgba(0,0,0,.12)} \\n.picker--landscape .date-picker-years{height:286px} \\n.application .theme--dark.picker,.theme--dark .picker{color:#fff} \\n.application .theme--dark.picker .picker__body,.theme--dark .picker .picker__body{background:#424242} \\n.application .theme--light.picker .picker__title,.theme--light .picker .picker__title{background:#e0e0e0} \\n.application .theme--dark.picker .picker__title,.theme--dark .picker .picker__title{background:#616161} \\n.picker{border-radius:2px;contain:layout style;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;vertical-align:top} \\n.picker .card__row--actions{border:none;margin-top:-20px} \\n.picker--full-width{display:-webkit-box;display:-ms-flexbox;display:flex} \\n.picker__title{color:#fff;border-top-left-radius:2px;border-top-right-radius:2px;padding:16px} \\n.picker__title__btn{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.picker__title__btn.active{opacity:1} \\n.picker__title__btn:not(.active){opacity:.6;cursor:pointer} \\n.picker__title__btn:not(.active):hover{opacity:1} \\n.picker__body{height:auto;overflow:hidden;position:relative;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.picker__body>div{width:100%} \\n.picker__body>div.fade-transition-leave-active{position:absolute} \\n.picker--landscape .picker__title{border-top-right-radius:0;border-bottom-right-radius:0;width:170px;position:absolute;top:0;left:0;height:100%;z-index:1} \\n.picker--landscape .picker__actions,.picker--landscape .picker__body{margin-left:170px} \\n.application .theme--light.expansion-panel .expansion-panel__container,.theme--light .expansion-panel .expansion-panel__container{border-top:1px solid rgba(0,0,0,.12);background-color:#fff;color:rgba(0,0,0,.87)} \\n.application .theme--light.expansion-panel .expansion-panel__container .expansion-panel__header .icon,.theme--light .expansion-panel .expansion-panel__container .expansion-panel__header .icon{color:rgba(0,0,0,.54)} \\n.application .theme--light.expansion-panel--focusable .expansion-panel__container:focus,.theme--light .expansion-panel--focusable .expansion-panel__container:focus{background-color:#eee} \\n.application .theme--dark.expansion-panel .expansion-panel__container,.theme--dark .expansion-panel .expansion-panel__container{border-top:1px solid hsla(0,0%,100%,.12);background-color:#424242;color:#fff} \\n.application .theme--dark.expansion-panel .expansion-panel__container .expansion-panel__header .icon,.theme--dark .expansion-panel .expansion-panel__container .expansion-panel__header .icon{color:#fff} \\n.application .theme--dark.expansion-panel--focusable .expansion-panel__container:focus,.theme--dark .expansion-panel--focusable .expansion-panel__container:focus{background-color:rgba(0,0,0,.7)} \\n.expansion-panel{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style-type:none;padding:0;text-align:left;width:100%;-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)} \\n.expansion-panel__container{-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;max-width:100%;outline:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.expansion-panel__container:first-child{border-top:none!important} \\n.expansion-panel__container .header__icon{margin-left:auto} \\n.expansion-panel__container .header__icon .icon{-webkit-transition:none;transition:none} \\n.expansion-panel__container--active>.expansion-panel__header .header__icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)} \\n.expansion-panel__header{display:-webkit-box;display:-ms-flexbox;display:flex;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;padding:12px 24px} \\n.expansion-panel__header>:not(.header__icon){-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto} \\n.expansion-panel__body{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.expansion-panel__body .card{border-radius:0} \\n.expansion-panel--inset,.expansion-panel--popout,.expansion-panel__body .card{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)} \\n.expansion-panel--inset .expansion-panel__container--active,.expansion-panel--popout .expansion-panel__container--active{margin:16px;-webkit-box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12);box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)} \\n.expansion-panel--inset .expansion-panel__container,.expansion-panel--popout .expansion-panel__container{max-width:95%} \\n.expansion-panel--popout .expansion-panel__container--active{max-width:100%} \\n.expansion-panel--inset .expansion-panel__container--active{max-width:85%} \\n.application .theme--light.footer,.theme--light .footer{background:#f5f5f5;color:rgba(0,0,0,.87)} \\n.application .theme--dark.footer,.theme--dark .footer{background:#212121;color:#fff} \\n.footer{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0!important;-ms-flex:0 1 auto!important;flex:0 1 auto!important;min-height:36px;-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1)} \\n.footer--absolute,.footer--fixed{bottom:0;left:0;width:100%;z-index:3} \\n.footer--inset{z-index:2} \\n.footer--absolute{position:absolute} \\n.footer--fixed{position:fixed} \\n.content{-webkit-transition:none;transition:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;max-width:100%;will-change:padding} \\n.content[data-booted=true]{-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1)} \\n.content--wrap{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;max-width:100%} \\n@media print{@-moz-document url-prefix(){.content{display:block}}} \\n.container{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin:auto;padding:16px;width:100%} \\n.container.fluid{max-width:100%} \\n.container.fill-height{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex} \\n.container.fill-height .layout{height:100%;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto} \\n.container.grid-list-xs{padding:2px} \\n.container.grid-list-xs .layout .flex{padding:1px} \\n.container.grid-list-xs .layout:only-child{margin:-1px} \\n.container.grid-list-xs .layout:not(:only-child){margin:auto -1px} \\n.container.grid-list-xs :not(:only-child) .layout:first-child{margin-top:-1px} \\n.container.grid-list-xs :not(:only-child) .layout:last-child{margin-bottom:-1px} \\n.container.grid-list-sm{padding:4px} \\n.container.grid-list-sm .layout .flex{padding:2px} \\n.container.grid-list-sm .layout:only-child{margin:-2px} \\n.container.grid-list-sm .layout:not(:only-child){margin:auto -2px} \\n.container.grid-list-sm :not(:only-child) .layout:first-child{margin-top:-2px} \\n.container.grid-list-sm :not(:only-child) .layout:last-child{margin-bottom:-2px} \\n.container.grid-list-md{padding:8px} \\n.container.grid-list-md .layout .flex{padding:4px} \\n.container.grid-list-md .layout:only-child{margin:-4px} \\n.container.grid-list-md .layout:not(:only-child){margin:auto -4px} \\n.container.grid-list-md :not(:only-child) .layout:first-child{margin-top:-4px} \\n.container.grid-list-md :not(:only-child) .layout:last-child{margin-bottom:-4px} \\n.container.grid-list-lg{padding:16px} \\n.container.grid-list-lg .layout .flex{padding:8px} \\n.container.grid-list-lg .layout:only-child{margin:-8px} \\n.container.grid-list-lg .layout:not(:only-child){margin:auto -8px} \\n.container.grid-list-lg :not(:only-child) .layout:first-child{margin-top:-8px} \\n.container.grid-list-lg :not(:only-child) .layout:last-child{margin-bottom:-8px} \\n.container.grid-list-xl{padding:24px} \\n.container.grid-list-xl .layout .flex{padding:12px} \\n.container.grid-list-xl .layout:only-child{margin:-12px} \\n.container.grid-list-xl .layout:not(:only-child){margin:auto -12px} \\n.container.grid-list-xl :not(:only-child) .layout:first-child{margin-top:-12px} \\n.container.grid-list-xl :not(:only-child) .layout:last-child{margin-bottom:-12px} \\n.layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-wrap:nowrap;flex-wrap:nowrap;min-width:0} \\n.layout.row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row} \\n.layout.row.reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse} \\n.layout.column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column} \\n.layout.column>.flex{max-width:100%} \\n.layout.column.reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse} \\n.layout.wrap{-ms-flex-wrap:wrap;flex-wrap:wrap} \\n.child-flex>*,.flex{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto} \\n.align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start} \\n.align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end} \\n.align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.align-baseline{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline} \\n.align-content-start{-ms-flex-line-pack:start;align-content:flex-start} \\n.align-content-end{-ms-flex-line-pack:end;align-content:flex-end} \\n.align-content-center{-ms-flex-line-pack:center;align-content:center} \\n.align-content-space-between{-ms-flex-line-pack:justify;align-content:space-between} \\n.align-content-space-around{-ms-flex-line-pack:distribute;align-content:space-around} \\n.justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start} \\n.justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end} \\n.justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center} \\n.justify-space-around{-ms-flex-pack:distribute;justify-content:space-around} \\n.justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between} \\n.grow,.spacer{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important} \\n.grow{-ms-flex-negative:0!important;flex-shrink:0!important} \\n.shrink{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important;-ms-flex-negative:1!important;flex-shrink:1!important} \\n.scroll-y{overflow-y:auto} \\n.fill-height{height:100%} \\n.hide-overflow{overflow:hidden!important} \\n.show-overflow{overflow:visible!important} \\n.ellipsis,.no-wrap{white-space:nowrap} \\n.ellipsis{overflow:hidden;text-overflow:ellipsis} \\n.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important} \\n.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important} \\n.d-flex>*,.d-inline-flex>*{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important} \\n.d-block{display:block!important} \\n.d-inline-block{display:inline-block!important} \\n.d-inline{display:inline!important} \\n@media only screen and (min-width:960px){.container{max-width:900px}} \\n@media only screen and (min-width:1264px){.container{max-width:1185px}} \\n@media only screen and (min-width:1904px){.container{max-width:1785px}} \\n@media only screen and (max-width:599px){.container{padding:24px}} \\n@media (min-width:0){.flex.xs1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-xs1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.xs2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-xs2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.xs3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-xs3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.xs4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-xs4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.xs5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-xs5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.xs6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-xs6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.xs7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-xs7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.xs8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-xs8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.xs9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-xs9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.xs10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-xs10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.xs11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-xs11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.xs12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-xs12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-xs0{margin-left:0}.flex.offset-xs1{margin-left:8.333333333333332%}.flex.offset-xs2{margin-left:16.666666666666664%}.flex.offset-xs3{margin-left:25%}.flex.offset-xs4{margin-left:33.33333333333333%}.flex.offset-xs5{margin-left:41.66666666666667%}.flex.offset-xs6{margin-left:50%}.flex.offset-xs7{margin-left:58.333333333333336%}.flex.offset-xs8{margin-left:66.66666666666666%}.flex.offset-xs9{margin-left:75%}.flex.offset-xs10{margin-left:83.33333333333334%}.flex.offset-xs11{margin-left:91.66666666666666%}.flex.offset-xs12{margin-left:100%}} \\n@media (min-width:600px){.flex.sm1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-sm1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.sm2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-sm2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.sm3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-sm3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.sm4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-sm4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.sm5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-sm5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.sm6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-sm6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.sm7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-sm7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.sm8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-sm8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.sm9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-sm9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.sm10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-sm10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.sm11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-sm11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.sm12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-sm12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-sm0{margin-left:0}.flex.offset-sm1{margin-left:8.333333333333332%}.flex.offset-sm2{margin-left:16.666666666666664%}.flex.offset-sm3{margin-left:25%}.flex.offset-sm4{margin-left:33.33333333333333%}.flex.offset-sm5{margin-left:41.66666666666667%}.flex.offset-sm6{margin-left:50%}.flex.offset-sm7{margin-left:58.333333333333336%}.flex.offset-sm8{margin-left:66.66666666666666%}.flex.offset-sm9{margin-left:75%}.flex.offset-sm10{margin-left:83.33333333333334%}.flex.offset-sm11{margin-left:91.66666666666666%}.flex.offset-sm12{margin-left:100%}} \\n@media (min-width:960px){.flex.md1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-md1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.md2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-md2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.md3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-md3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.md4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-md4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.md5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-md5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.md6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-md6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.md7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-md7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.md8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-md8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.md9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-md9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.md10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-md10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.md11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-md11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.md12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-md12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-md0{margin-left:0}.flex.offset-md1{margin-left:8.333333333333332%}.flex.offset-md2{margin-left:16.666666666666664%}.flex.offset-md3{margin-left:25%}.flex.offset-md4{margin-left:33.33333333333333%}.flex.offset-md5{margin-left:41.66666666666667%}.flex.offset-md6{margin-left:50%}.flex.offset-md7{margin-left:58.333333333333336%}.flex.offset-md8{margin-left:66.66666666666666%}.flex.offset-md9{margin-left:75%}.flex.offset-md10{margin-left:83.33333333333334%}.flex.offset-md11{margin-left:91.66666666666666%}.flex.offset-md12{margin-left:100%}} \\n@media (min-width:1264px){.flex.lg1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-lg1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.lg2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-lg2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.lg3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-lg3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.lg4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-lg4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.lg5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-lg5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.lg6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-lg6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.lg7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-lg7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.lg8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-lg8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.lg9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-lg9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.lg10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-lg10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.lg11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-lg11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.lg12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-lg12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-lg0{margin-left:0}.flex.offset-lg1{margin-left:8.333333333333332%}.flex.offset-lg2{margin-left:16.666666666666664%}.flex.offset-lg3{margin-left:25%}.flex.offset-lg4{margin-left:33.33333333333333%}.flex.offset-lg5{margin-left:41.66666666666667%}.flex.offset-lg6{margin-left:50%}.flex.offset-lg7{margin-left:58.333333333333336%}.flex.offset-lg8{margin-left:66.66666666666666%}.flex.offset-lg9{margin-left:75%}.flex.offset-lg10{margin-left:83.33333333333334%}.flex.offset-lg11{margin-left:91.66666666666666%}.flex.offset-lg12{margin-left:100%}} \\n@media (min-width:1904px){.flex.xl1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-xl1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.xl2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-xl2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.xl3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-xl3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.xl4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-xl4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.xl5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-xl5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.xl6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-xl6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.xl7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-xl7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.xl8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-xl8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.xl9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-xl9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.xl10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-xl10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.xl11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-xl11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.xl12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-xl12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-xl0{margin-left:0}.flex.offset-xl1{margin-left:8.333333333333332%}.flex.offset-xl2{margin-left:16.666666666666664%}.flex.offset-xl3{margin-left:25%}.flex.offset-xl4{margin-left:33.33333333333333%}.flex.offset-xl5{margin-left:41.66666666666667%}.flex.offset-xl6{margin-left:50%}.flex.offset-xl7{margin-left:58.333333333333336%}.flex.offset-xl8{margin-left:66.66666666666666%}.flex.offset-xl9{margin-left:75%}.flex.offset-xl10{margin-left:83.33333333333334%}.flex.offset-xl11{margin-left:91.66666666666666%}.flex.offset-xl12{margin-left:100%}} \\n.application .theme--light.navigation-drawer,.theme--light .navigation-drawer{background-color:#fff} \\n.application .theme--light.navigation-drawer .divider,.application .theme--light.navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border,.theme--light .navigation-drawer .divider,.theme--light .navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border{background-color:rgba(0,0,0,.12)} \\n.application .theme--dark.navigation-drawer,.theme--dark .navigation-drawer{background-color:#424242} \\n.application .theme--dark.navigation-drawer .divider,.application .theme--dark.navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border,.theme--dark .navigation-drawer .divider,.theme--dark .navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border{background-color:hsla(0,0%,100%,.12)} \\n.navigation-drawer{-webkit-transition:none;transition:none;display:block;left:0;max-width:100%;overflow-y:auto;overflow-x:hidden;padding:0 0 100px;pointer-events:auto;top:0;will-change:transform;z-index:3;-webkit-overflow-scrolling:touch} \\n.navigation-drawer[data-booted=true]{-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1);-webkit-transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,width,-webkit-box-shadow,-webkit-transform,-webkit-transform-origin;transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,width,-webkit-box-shadow,-webkit-transform,-webkit-transform-origin;transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,box-shadow,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,transform,transform-origin,width;transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,box-shadow,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,transform,transform-origin,width,-webkit-box-shadow,-webkit-transform,-webkit-transform-origin;transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,box-shadow,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,transform,transform-origin,width,-webkit-transform,-webkit-transform-origin} \\n.navigation-drawer__border{position:absolute;right:0;top:0;height:100%;width:1px} \\n.navigation-drawer.navigation-drawer--right:after{left:0;right:auto} \\n.navigation-drawer--right{left:auto;right:0} \\n.navigation-drawer--right>.navigation-drawer__border{right:auto;left:0} \\n.navigation-drawer--absolute{position:absolute} \\n.navigation-drawer--fixed{position:fixed} \\n.navigation-drawer--floating:after{display:none} \\n.navigation-drawer--mini-variant{overflow:hidden} \\n.navigation-drawer--mini-variant .list__group__header__prepend-icon{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%} \\n.navigation-drawer--mini-variant .list__tile__action,.navigation-drawer--mini-variant .list__tile__avatar{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:48px} \\n.navigation-drawer--mini-variant .list__tile:after,.navigation-drawer--mini-variant .list__tile__content{opacity:0} \\n.navigation-drawer--mini-variant .divider,.navigation-drawer--mini-variant .list--group,.navigation-drawer--mini-variant .subheader{display:none!important} \\n.navigation-drawer--is-mobile,.navigation-drawer--temporary{z-index:6} \\n.navigation-drawer--is-mobile:not(.navigation-drawer--close),.navigation-drawer--temporary:not(.navigation-drawer--close){-webkit-box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)} \\n.navigation-drawer .list{background:inherit} \\n.navigation-drawer>.list .list__tile{-webkit-transition:none;transition:none;font-weight:500} \\n.navigation-drawer>.list .list__tile--active .list__tile__title{color:inherit} \\n.navigation-drawer>.list .list--group .list__tile{font-weight:400} \\n.navigation-drawer>.list .list--group__header--active:after{background:transparent} \\n.navigation-drawer>.list:not(.list--dense) .list__tile{font-size:14px} \\n.application .theme--light.pagination__item,.theme--light .pagination__item{background:#fff;color:#000} \\n.application .theme--light.pagination__item--active,.theme--light .pagination__item--active{color:#fff} \\n.application .theme--light.pagination__navigation,.theme--light .pagination__navigation{background:#fff} \\n.application .theme--light.pagination__navigation .icon,.theme--light .pagination__navigation .icon{color:rgba(0,0,0,.54)} \\n.application .theme--dark.pagination__item,.theme--dark .pagination__item{background:#424242;color:#fff} \\n.application .theme--dark.pagination__item--active,.theme--dark .pagination__item--active{color:#fff} \\n.application .theme--dark.pagination__navigation,.theme--dark .pagination__navigation{background:#424242} \\n.application .theme--dark.pagination__navigation .icon,.theme--dark .pagination__navigation .icon{color:#fff} \\n.pagination{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;list-style-type:none;margin:0;max-width:100%;padding:0} \\n.pagination,.pagination>li{-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.pagination>li{display:-webkit-box;display:-ms-flexbox;display:flex} \\n.pagination--circle .pagination__item,.pagination--circle .pagination__more,.pagination--circle .pagination__navigation{border-radius:50%} \\n.pagination--disabled{pointer-events:none;opacity:.6} \\n.pagination__item{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);border-radius:4px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;background:transparent;height:34px;width:34px;margin:.3rem;text-decoration:none;-webkit-transition:.3s cubic-bezier(0,0,.2,1);transition:.3s cubic-bezier(0,0,.2,1)} \\n.pagination__item--active{-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)} \\n.pagination__navigation{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-decoration:none;height:2rem;border-radius:4px;width:2rem;margin:.3rem 10px} \\n.pagination__navigation .icon{font-size:2rem;-webkit-transition:.2s cubic-bezier(.4,0,.6,1);transition:.2s cubic-bezier(.4,0,.6,1);vertical-align:middle} \\n.pagination__navigation--disabled{opacity:.6;pointer-events:none} \\n.pagination__more{margin:.3rem;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:2rem;width:2rem} \\n.parallax{position:relative;overflow:hidden;z-index:0} \\n.parallax__image-container{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;contain:strict} \\n.parallax__image{position:absolute;bottom:0;left:50%;min-width:100%;min-height:100%;display:none;-webkit-transform:translate(-50%);transform:translate(-50%);will-change:transform;-webkit-transition:opacity .3s cubic-bezier(.25,.8,.5,1);transition:opacity .3s cubic-bezier(.25,.8,.5,1);z-index:1} \\n.parallax__content{color:#fff;height:100%;z-index:2;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0 1rem} \\n.radio-group .input-group__details:after,.radio-group .input-group__details:before{display:none} \\n.radio-group .input-group{padding:0} \\n.radio-group--column .input-group__input{display:block} \\n.radio-group--row .input-group__input{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row} \\n.radio-group.input-group--error .radio .icon--selection-control,.radio-group.input-group--error .radio label{color:inherit} \\n.application .theme--light.input-group--slider label,.theme--light .input-group--slider label{color:rgba(0,0,0,.54)} \\n.application .theme--light.input-group--slider .slider__track,.application .theme--light.input-group--slider .slider__track-fill,.theme--light .input-group--slider .slider__track,.theme--light .input-group--slider .slider__track-fill{background:rgba(0,0,0,.26)} \\n.application .theme--light.input-group--slider .slider__tick,.application .theme--light.input-group--slider .slider__track__container:after,.theme--light .input-group--slider .slider__tick,.theme--light .input-group--slider .slider__track__container:after{border:1px solid rgba(0,0,0,.87)} \\n.application .theme--light.input-group--slider:not(.input-group--dirty) .slider__thumb--label,.theme--light .input-group--slider:not(.input-group--dirty) .slider__thumb--label{background:rgba(0,0,0,.26)} \\n.application .theme--light.input-group--slider:not(.input-group--dirty) .slider__thumb,.theme--light .input-group--slider:not(.input-group--dirty) .slider__thumb{border:3px solid rgba(0,0,0,.26)} \\n.application .theme--light.input-group--slider:not(.input-group--dirty):focus .slider__thumb,.theme--light .input-group--slider:not(.input-group--dirty):focus .slider__thumb{border:3px solid rgba(0,0,0,.38)} \\n.application .theme--light.input-group--slider.input-group--disabled .slider__thumb,.theme--light .input-group--slider.input-group--disabled .slider__thumb{background:none;border:3px solid rgba(0,0,0,.26)} \\n.application .theme--light.input-group--slider.input-group--disabled.input-group--dirty .slider__thumb,.theme--light .input-group--slider.input-group--disabled.input-group--dirty .slider__thumb{background:rgba(0,0,0,.26);border:0 solid transparent} \\n.application .theme--light.input-group--slider:focus .slider__track,.theme--light .input-group--slider:focus .slider__track{background:rgba(0,0,0,.38)} \\n.application .theme--dark.input-group--slider label,.theme--dark .input-group--slider label{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.input-group--slider .slider__track,.application .theme--dark.input-group--slider .slider__track-fill,.theme--dark .input-group--slider .slider__track,.theme--dark .input-group--slider .slider__track-fill{background:hsla(0,0%,100%,.2)} \\n.application .theme--dark.input-group--slider .slider__tick,.application .theme--dark.input-group--slider .slider__track__container:after,.theme--dark .input-group--slider .slider__tick,.theme--dark .input-group--slider .slider__track__container:after{border:1px solid #fff} \\n.application .theme--dark.input-group--slider:not(.input-group--dirty) .slider__thumb--label,.theme--dark .input-group--slider:not(.input-group--dirty) .slider__thumb--label{background:hsla(0,0%,100%,.2)} \\n.application .theme--dark.input-group--slider:not(.input-group--dirty) .slider__thumb,.theme--dark .input-group--slider:not(.input-group--dirty) .slider__thumb{border:3px solid hsla(0,0%,100%,.2)} \\n.application .theme--dark.input-group--slider:not(.input-group--dirty):focus .slider__thumb,.theme--dark .input-group--slider:not(.input-group--dirty):focus .slider__thumb{border:3px solid hsla(0,0%,100%,.3)} \\n.application .theme--dark.input-group--slider.input-group--disabled .slider__thumb,.theme--dark .input-group--slider.input-group--disabled .slider__thumb{background:none;border:3px solid hsla(0,0%,100%,.2)} \\n.application .theme--dark.input-group--slider.input-group--disabled.input-group--dirty .slider__thumb,.theme--dark .input-group--slider.input-group--disabled.input-group--dirty .slider__thumb{background:hsla(0,0%,100%,.2);border:0 solid transparent} \\n.application .theme--dark.input-group--slider:focus .slider__track,.theme--dark .input-group--slider:focus .slider__track{background:hsla(0,0%,100%,.3)} \\n.input-group.input-group--slider{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-right:16px} \\n.input-group.input-group--slider .input-group__details:after,.input-group.input-group--slider .input-group__details:before{display:none} \\n.input-group.input-group--slider .input-group__input{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%} \\n.input-group.input-group--slider label{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:auto;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:18px;-webkit-transform:none;transform:none} \\n.input-group.input-group--slider label+.input-group__input{margin-left:16px;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto} \\n.input-group.input-group--slider.input-group--active .slider__thumb{-webkit-transform:translateY(-50%) scale(1.2);transform:translateY(-50%) scale(1.2)} \\n.input-group.input-group--slider.input-group--active .slider__track{-webkit-transition:none;transition:none} \\n.input-group.input-group--slider.input-group--active .slider__thumb-container--label .slider__thumb,.input-group.input-group--slider.input-group--active .slider__thumb-container--label .slider__thumb:hover{-webkit-transform:translateY(-50%) scale(0);transform:translateY(-50%) scale(0)} \\n.input-group.input-group--slider.input-group--active .slider__thumb-container,.input-group.input-group--slider.input-group--active .slider__track-fill{-webkit-transition:none;transition:none} \\n.input-group.input-group--slider.input-group--active.input-group--ticks .slider__tick,.input-group.input-group--slider.input-group--active.input-group--ticks .slider__track__container:after{opacity:1} \\n.input-group.input-group--slider.input-group--disabled{pointer-events:none} \\n.input-group.input-group--slider.input-group--disabled .slider__thumb{-webkit-transform:translateY(-50%) scale(.5);transform:translateY(-50%) scale(.5);background:transparent} \\n.input-group.input-group--slider.input-group--disabled.input-group--dirty{border-color:transparent} \\n.input-group.input-group--slider.input-group--prepend-icon .slider{margin-left:40px} \\n.input-group.input-group--slider.input-group--append-icon .slider{margin-right:40px} \\n.slider{cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;height:30px;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.slider__track__container{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);height:2px;width:100%;overflow:hidden} \\n.slider__track__container:after{content:\\\"\\\";position:absolute;right:0;top:0;height:2px;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:2px;opacity:0} \\n.slider__thumb,.slider__tick,.slider__track{position:absolute;top:0} \\n.slider__track{-webkit-transform-origin:right;transform-origin:right;overflow:hidden} \\n.slider__track,.slider__track-fill{height:2px;left:0;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);width:100%} \\n.slider__track-fill{position:absolute;-webkit-transform-origin:left;transform-origin:left} \\n.slider__ticks-container{position:absolute;left:0;height:2px;width:100%;top:50%;overflow:hidden} \\n.slider__tick{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);opacity:0} \\n.slider__thumb-container{position:absolute} \\n.slider__thumb,.slider__thumb-container{top:50%;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.slider__thumb{width:16px;height:16px;left:-8px;border-radius:50%;background:transparent;-webkit-transform:translateY(-50%) scale(.8);transform:translateY(-50%) scale(.8);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.slider__thumb--label__container{position:absolute;left:0;top:0;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out} \\n.slider__thumb--label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:12px;color:#fff;width:28px;height:28px;border-radius:50% 50% 0;position:absolute;left:-14px;top:-40px;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out} \\n.slider__thumb--label span{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)} \\n.slider__track,.slider__track-fill{position:absolute} \\n.snack{position:fixed;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;pointer-events:none;z-index:1000;font-size:14px;left:0;right:0} \\n.snack--absolute{position:absolute} \\n.snack--top{top:0} \\n.snack--bottom{bottom:0} \\n.snack__wrapper{background-color:#323232;pointer-events:auto;-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)} \\n.snack__content,.snack__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%} \\n.snack__content{height:48px;padding:14px 24px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;overflow:hidden} \\n.snack__content .btn{color:#fff;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0 0 0 24px;height:auto;min-width:auto;width:auto} \\n.snack__content .btn__content{padding:8px;margin:-8px} \\n.snack__content .btn__content:before{display:none} \\n.snack--multi-line .snack__content{height:80px;padding:24px} \\n.snack--vertical .snack__content{height:112px;padding:24px 24px 14px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch} \\n.snack--vertical .snack__content .btn.btn{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-left:0;margin-top:24px} \\n.snack--vertical .snack__content .btn__content{padding:0;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0} \\n.snack--auto-height .snack__content{height:auto} \\n.snack-transition-enter-active,.snack-transition-leave-active{transition:-webkit-transform .4s cubic-bezier(.25,.8,.5,1);-webkit-transition:-webkit-transform .4s cubic-bezier(.25,.8,.5,1);transition:transform .4s cubic-bezier(.25,.8,.5,1);transition:transform .4s cubic-bezier(.25,.8,.5,1), -webkit-transform .4s cubic-bezier(.25,.8,.5,1);transition:transform .4s cubic-bezier(.25,.8,.5,1),-webkit-transform .4s cubic-bezier(.25,.8,.5,1)} \\n.snack-transition-enter-active .snack__content,.snack-transition-leave-active .snack__content{-webkit-transition:opacity .3s linear .1s;transition:opacity .3s linear .1s} \\n.snack-transition-enter .snack__content{opacity:0} \\n.snack-transition-enter-to .snack__content,.snack-transition-leave .snack__content{opacity:1} \\n.snack-transition-enter.snack.snack--top,.snack-transition-leave-to.snack.snack--top{-webkit-transform:translateY(calc(-100% - 8px));transform:translateY(calc(-100% - 8px))} \\n.snack-transition-enter.snack.snack--bottom,.snack-transition-leave-to.snack.snack--bottom{-webkit-transform:translateY(100%);transform:translateY(100%)} \\n@media only screen and (min-width:600px){.snack__wrapper{width:auto;max-width:568px;min-width:288px;margin:0 auto;border-radius:2px}.snack--left .snack__wrapper{margin-left:0}.snack--right .snack__wrapper{margin-right:0}.snack--left,.snack--right{margin:0 24px}.snack--left.snack--top,.snack--right.snack--top{-webkit-transform:translateY(24px);transform:translateY(24px)}.snack--left.snack--bottom,.snack--right.snack--bottom{-webkit-transform:translateY(-24px);transform:translateY(-24px)}.snack__content .btn:first-of-type{margin-left:48px}} \\n.speed-dial{position:relative} \\n.speed-dial--absolute{position:absolute} \\n.speed-dial--fixed{position:fixed} \\n.speed-dial--absolute,.speed-dial--fixed{z-index:4} \\n.speed-dial--absolute>.btn--floating,.speed-dial--fixed>.btn--floating{margin:0} \\n.speed-dial--top:not(.speed-dial--absolute){top:16px} \\n.speed-dial--top.speed-dial--absolute{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)} \\n.speed-dial--bottom:not(.speed-dial--absolute){bottom:16px} \\n.speed-dial--bottom.speed-dial--absolute{bottom:50%;-webkit-transform:translateY(50%);transform:translateY(50%)} \\n.speed-dial--left{left:16px} \\n.speed-dial--right{right:16px} \\n.speed-dial--direction-left .speed-dial__list,.speed-dial--direction-right .speed-dial__list{height:100%;top:0} \\n.speed-dial--direction-bottom .speed-dial__list,.speed-dial--direction-top .speed-dial__list{left:0;width:100%} \\n.speed-dial--direction-top .speed-dial__list{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;bottom:100%} \\n.speed-dial--direction-right .speed-dial__list{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;left:100%} \\n.speed-dial--direction-bottom .speed-dial__list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;top:100%} \\n.speed-dial--direction-left .speed-dial__list{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;right:100%} \\n.speed-dial__list{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute} \\n.speed-dial__list .btn:first-child{-webkit-transition-delay:.05s;transition-delay:.05s} \\n.speed-dial__list .btn:nth-child(2){-webkit-transition-delay:.1s;transition-delay:.1s} \\n.speed-dial__list .btn:nth-child(3){-webkit-transition-delay:.15s;transition-delay:.15s} \\n.speed-dial__list .btn:nth-child(4){-webkit-transition-delay:.2s;transition-delay:.2s} \\n.speed-dial__list .btn:nth-child(5){-webkit-transition-delay:.25s;transition-delay:.25s} \\n.speed-dial__list .btn:nth-child(6){-webkit-transition-delay:.3s;transition-delay:.3s} \\n.speed-dial__list .btn:nth-child(7){-webkit-transition-delay:.35s;transition-delay:.35s} \\n.application .theme--light.stepper,.theme--light .stepper{background:#fff} \\n.application .theme--light.stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step,.theme--light .stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step{background:rgba(0,0,0,.38)} \\n.application .theme--light.stepper .stepper__step__step,.application .theme--light.stepper .stepper__step__step .icon,.theme--light .stepper .stepper__step__step,.theme--light .stepper .stepper__step__step .icon{color:#fff} \\n.application .theme--light.stepper .stepper__header .divider,.theme--light .stepper .stepper__header .divider{background:rgba(0,0,0,.12)} \\n.application .theme--light.stepper .stepper__step--active .stepper__label,.theme--light .stepper .stepper__step--active .stepper__label{text-shadow:0 0 0 #000} \\n.application .theme--light.stepper .stepper__step--editable:hover,.theme--light .stepper .stepper__step--editable:hover{background:rgba(0,0,0,.06)} \\n.application .theme--light.stepper .stepper__step--editable:hover .stepper__label,.theme--light .stepper .stepper__step--editable:hover .stepper__label{text-shadow:0 0 0 #000} \\n.application .theme--light.stepper .stepper__step--complete .stepper__label,.theme--light .stepper .stepper__step--complete .stepper__label{color:rgba(0,0,0,.87)} \\n.application .theme--light.stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step,.theme--light .stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step{background:rgba(0,0,0,.54)} \\n.application .theme--light.stepper .stepper__label,.theme--light .stepper .stepper__label{color:rgba(0,0,0,.38)} \\n.application .theme--light.stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.application .theme--light.stepper .stepper__label small,.theme--light .stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.theme--light .stepper .stepper__label small{color:rgba(0,0,0,.54)} \\n.application .theme--light.stepper--vertical .stepper__content:not(:last-child),.theme--light .stepper--vertical .stepper__content:not(:last-child){border-left:1px solid rgba(0,0,0,.12)} \\n.application .theme--dark.stepper,.theme--dark .stepper{background:#303030} \\n.application .theme--dark.stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step,.theme--dark .stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step{background:hsla(0,0%,100%,.5)} \\n.application .theme--dark.stepper .stepper__step__step,.application .theme--dark.stepper .stepper__step__step .icon,.theme--dark .stepper .stepper__step__step,.theme--dark .stepper .stepper__step__step .icon{color:#fff} \\n.application .theme--dark.stepper .stepper__header .divider,.theme--dark .stepper .stepper__header .divider{background:hsla(0,0%,100%,.12)} \\n.application .theme--dark.stepper .stepper__step--active .stepper__label,.theme--dark .stepper .stepper__step--active .stepper__label{text-shadow:0 0 0 #fff} \\n.application .theme--dark.stepper .stepper__step--editable:hover,.theme--dark .stepper .stepper__step--editable:hover{background:hsla(0,0%,100%,.06)} \\n.application .theme--dark.stepper .stepper__step--editable:hover .stepper__label,.theme--dark .stepper .stepper__step--editable:hover .stepper__label{text-shadow:0 0 0 #fff} \\n.application .theme--dark.stepper .stepper__step--complete .stepper__label,.theme--dark .stepper .stepper__step--complete .stepper__label{color:hsla(0,0%,100%,.87)} \\n.application .theme--dark.stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step,.theme--dark .stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step{background:hsla(0,0%,100%,.75)} \\n.application .theme--dark.stepper .stepper__label,.theme--dark .stepper .stepper__label{color:hsla(0,0%,100%,.5)} \\n.application .theme--dark.stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.application .theme--dark.stepper .stepper__label small,.theme--dark .stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.theme--dark .stepper .stepper__label small{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.stepper--vertical .stepper__content:not(:last-child),.theme--dark .stepper--vertical .stepper__content:not(:last-child){border-left:1px solid hsla(0,0%,100%,.12)} \\n.stepper{overflow:hidden;position:relative} \\n.stepper,.stepper__header{-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.stepper__header{height:72px;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between} \\n.stepper__header .divider{-ms-flex-item-align:center;align-self:center;margin:0 -16px} \\n.stepper__items{position:relative;overflow:hidden} \\n.stepper__step__step{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:12px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:24px;margin-right:8px;min-width:24px;width:24px;-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1)} \\n.stepper__step__step .icon{font-size:18px} \\n.stepper__step{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding:24px;position:relative} \\n.stepper__step--active .stepper__label{-webkit-transition:.3s cubic-bezier(.4,0,.6,1);transition:.3s cubic-bezier(.4,0,.6,1)} \\n.stepper__step--editable{cursor:pointer} \\n.stepper__step.stepper__step--error .stepper__step__step{background:transparent;color:inherit} \\n.stepper__step.stepper__step--error .stepper__step__step .icon{font-size:24px;color:inherit} \\n.stepper__step.stepper__step--error .stepper__label{color:inherit;text-shadow:none;font-weight:500} \\n.stepper__step.stepper__step--error .stepper__label small{color:inherit} \\n.stepper__label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-align:left} \\n.stepper__label small{font-size:12px;font-weight:300;text-shadow:none} \\n.stepper__wrapper{overflow:hidden;-webkit-transition:none;transition:none} \\n.stepper__content{top:0;padding:24px 24px 16px;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;width:100%} \\n.stepper__content>.btn{margin:24px 8px 8px 0} \\n.stepper--is-booted .stepper__content,.stepper--is-booted .stepper__wrapper{-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.stepper--vertical{padding-bottom:36px} \\n.stepper--vertical .stepper__content{margin:-8px -36px -16px 36px;padding:16px 60px 16px 23px;width:auto} \\n.stepper--vertical .stepper__step{padding:24px 24px 16px} \\n.stepper--vertical .stepper__step__step{margin-right:12px} \\n.stepper--alt-labels .stepper__header{height:auto} \\n.stepper--alt-labels .stepper__header .divider{margin:35px -67px 0;-ms-flex-item-align:start;align-self:flex-start} \\n.stepper--alt-labels .stepper__step{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-preferred-size:175px;flex-basis:175px} \\n.stepper--alt-labels .stepper__step small{-ms-flex-item-align:center;align-self:center} \\n.stepper--alt-labels .stepper__step__step{margin-right:0;margin-bottom:11px} \\n@media only screen and (max-width:959px){.stepper:not(.stepper--vertical) .stepper__label{display:none}.stepper:not(.stepper--vertical) .stepper__step__step{margin-right:0}} \\n.application .theme--light.switch:not(.input-group--dirty) .input-group--selection-controls__container,.theme--light .switch:not(.input-group--dirty) .input-group--selection-controls__container{color:rgba(0,0,0,.38)!important} \\n.application .theme--light.switch .input-group--selection-controls__ripple:after,.theme--light .switch .input-group--selection-controls__ripple:after{background-color:#fafafa} \\n.application .theme--light.switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active),.theme--light .switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active){color:rgba(0,0,0,.38)} \\n.application .theme--light.switch .input-group--selection-controls__ripple--active:after,.theme--light .switch .input-group--selection-controls__ripple--active:after{background-color:currentColor} \\n.application .theme--light.switch .input-group--selection-controls__toggle,.theme--light .switch .input-group--selection-controls__toggle{color:rgba(0,0,0,.38)} \\n.application .theme--light.switch .input-group--selection-controls__toggle--active,.theme--light .switch .input-group--selection-controls__toggle--active{color:inherit} \\n.application .theme--light.switch.input-group--disabled .input-group--selection-controls__ripple:after,.theme--light .switch.input-group--disabled .input-group--selection-controls__ripple:after{background-color:#bdbdbd!important} \\n.application .theme--light.switch.input-group--disabled .input-group--selection-controls__toggle,.theme--light .switch.input-group--disabled .input-group--selection-controls__toggle{color:rgba(0,0,0,.12)!important} \\n.application .theme--dark.switch:not(.input-group--dirty) .input-group--selection-controls__container,.theme--dark .switch:not(.input-group--dirty) .input-group--selection-controls__container{color:hsla(0,0%,100%,.3)!important} \\n.application .theme--dark.switch .input-group--selection-controls__ripple:after,.theme--dark .switch .input-group--selection-controls__ripple:after{background-color:#bdbdbd} \\n.application .theme--dark.switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active),.theme--dark .switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active){color:hsla(0,0%,100%,.3)} \\n.application .theme--dark.switch .input-group--selection-controls__ripple--active:after,.theme--dark .switch .input-group--selection-controls__ripple--active:after{background-color:currentColor} \\n.application .theme--dark.switch .input-group--selection-controls__toggle,.theme--dark .switch .input-group--selection-controls__toggle{color:hsla(0,0%,100%,.3)} \\n.application .theme--dark.switch .input-group--selection-controls__toggle--active,.theme--dark .switch .input-group--selection-controls__toggle--active{color:inherit} \\n.application .theme--dark.switch.input-group--disabled .input-group--selection-controls__ripple:after,.theme--dark .switch.input-group--disabled .input-group--selection-controls__ripple:after{background-color:#424242!important} \\n.application .theme--dark.switch.input-group--disabled .input-group--selection-controls__toggle,.theme--dark .switch.input-group--disabled .input-group--selection-controls__toggle{color:hsla(0,0%,100%,.1)!important} \\n.input-group.input-group--selection-controls{z-index:0} \\n.input-group.input-group--selection-controls.switch.input-group--append-icon label,.input-group.input-group--selection-controls.switch.input-group--prepend-icon label{left:62px} \\n.input-group.input-group--selection-controls.switch.input-group--prepend-icon .input-group--selection-controls__container{margin-left:6px} \\n.input-group.input-group--selection-controls.switch.input-group--append-icon .input-group__append-icon{left:40px} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__container{color:inherit;position:relative;width:36px} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__container[class*=\\\"--text\\\"] .input-group--selection-controls__ripple--active:after{background-color:currentColor} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__toggle{background-color:currentColor;color:inherit;position:absolute;height:14px;top:50%;left:0;width:34px;border-radius:8px;-webkit-transform:translateY(-50%);transform:translateY(-50%)} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__toggle.input-group--selection-controls__toggle--active{opacity:.5} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple{-webkit-transform:translate(-15px,-24px);transform:translate(-15px,-24px);-webkit-transition:.3s cubic-bezier(.25,.8,.25,1);transition:.3s cubic-bezier(.25,.8,.25,1);z-index:1;left:0} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple:after{content:\\\"\\\";position:absolute;display:inline-block;cursor:pointer;width:20px;border-radius:50%;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);height:20px;-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)} \\n.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple--active{-webkit-transform:translate(2px,-24px);transform:translate(2px,-24px)} \\n.input-group.input-group--selection-controls.switch label{padding-left:14px} \\n.application .theme--light.system-bar,.theme--light .system-bar{background-color:#e0e0e0;color:rgba(0,0,0,.54)} \\n.application .theme--light.system-bar .icon,.theme--light .system-bar .icon{color:rgba(0,0,0,.54)} \\n.application .theme--light.system-bar--lights-out,.theme--light .system-bar--lights-out{background-color:hsla(0,0%,100%,.7)!important} \\n.application .theme--dark.system-bar,.theme--dark .system-bar{background-color:#000;color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.system-bar .icon,.theme--dark .system-bar .icon{color:hsla(0,0%,100%,.7)} \\n.application .theme--dark.system-bar--lights-out,.theme--dark .system-bar--lights-out{background-color:rgba(0,0,0,.2)!important} \\n.system-bar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;font-weight:500;padding:0 8px} \\n.system-bar .icon{font-size:16px} \\n.system-bar--absolute,.system-bar--fixed{left:0;top:0;width:100%;z-index:3} \\n.system-bar--fixed{position:fixed} \\n.system-bar--absolute{position:absolute} \\n.system-bar--status .icon{margin-right:4px} \\n.system-bar--window .icon{font-size:20px;margin-right:8px} \\n.application .theme--light.tabs__bar,.theme--light .tabs__bar{background-color:#fff} \\n.application .theme--light.tabs__bar .tabs__div,.theme--light .tabs__bar .tabs__div{color:rgba(0,0,0,.87)} \\n.application .theme--light.tabs__bar .tabs__item--disabled,.theme--light .tabs__bar .tabs__item--disabled{color:rgba(0,0,0,.26)} \\n.application .theme--dark.tabs__bar,.theme--dark .tabs__bar{background-color:#424242} \\n.application .theme--dark.tabs__bar .tabs__div,.theme--dark .tabs__bar .tabs__div{color:#fff} \\n.application .theme--dark.tabs__bar .tabs__item--disabled,.theme--dark .tabs__bar .tabs__item--disabled{color:hsla(0,0%,100%,.3)} \\n.tabs,.tabs__bar{position:relative} \\n.tabs__icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:100%;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:32px} \\n.tabs__icon--prev{left:4px} \\n.tabs__icon--next{right:4px} \\n.tabs__wrapper{overflow:hidden;contain:content;display:-webkit-box;display:-ms-flexbox;display:flex} \\n.tabs__wrapper--show-arrows{margin-left:40px;margin-right:40px} \\n.tabs__wrapper--show-arrows .tabs__container--align-with-title{padding-left:16px} \\n.tabs__container{display:-webkit-box;display:-ms-flexbox;display:flex;height:48px;list-style-type:none;transition:-webkit-transform .6s cubic-bezier(.86,0,.07,1);-webkit-transition:-webkit-transform .6s cubic-bezier(.86,0,.07,1);transition:transform .6s cubic-bezier(.86,0,.07,1);transition:transform .6s cubic-bezier(.86,0,.07,1), -webkit-transform .6s cubic-bezier(.86,0,.07,1);transition:transform .6s cubic-bezier(.86,0,.07,1),-webkit-transform .6s cubic-bezier(.86,0,.07,1);white-space:nowrap;position:relative} \\n.tabs__container,.tabs__container--grow .tabs__div,.tabs__container--overflow .tabs__div{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto} \\n.tabs__container--grow .tabs__div{max-width:none} \\n.tabs__container--icons-and-text{height:72px} \\n.tabs__container--align-with-title{padding-left:56px} \\n.tabs__container--centered .tabs__div,.tabs__container--fixed-tabs .tabs__div,.tabs__container--icons-and-text .tabs__div{min-width:72px} \\n.tabs__container--centered .tabs__slider-wrapper+.tabs__div,.tabs__container--centered>.tabs__div:first-child,.tabs__container--fixed-tabs .tabs__slider-wrapper+.tabs__div,.tabs__container--fixed-tabs>.tabs__div:first-child,.tabs__container--right .tabs__slider-wrapper+.tabs__div,.tabs__container--right>.tabs__div:first-child{margin-left:auto} \\n.tabs__container--centered>.tabs__div:last-child,.tabs__container--fixed-tabs>.tabs__div:last-child{margin-right:auto} \\n.tabs__container--icons-and-text .tabs__item{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse} \\n.tabs__container--icons-and-text .tabs__item .icon{margin-bottom:6px} \\n.tabs__div{-ms-flex-align:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;font-size:14px;font-weight:500;line-height:normal;height:inherit;max-width:264px;text-align:center;text-transform:uppercase;vertical-align:middle} \\n.tabs__div,.tabs__item{-webkit-box-align:center;-ms-flex-align:center;align-items:center} \\n.tabs__item{-ms-flex-align:center;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1;-ms-flex-preferred-size:264px;flex-basis:264px;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;max-width:inherit;padding:6px 12px;text-decoration:none;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:normal} \\n.tabs__item:not(.tabs__item--active){opacity:.7} \\n.tabs__item--disabled{pointer-events:none} \\n.tabs__slider{height:2px;width:100%} \\n.tabs__slider-wrapper{bottom:0;margin:0!important;position:absolute;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1)} \\n.tabs__items{overflow:hidden;position:relative} \\n.tabs__content{width:100%;transition:-webkit-transform .4s cubic-bezier(.86,0,.07,1);-webkit-transition:-webkit-transform .4s cubic-bezier(.86,0,.07,1);transition:transform .4s cubic-bezier(.86,0,.07,1);transition:transform .4s cubic-bezier(.86,0,.07,1), -webkit-transform .4s cubic-bezier(.86,0,.07,1);transition:transform .4s cubic-bezier(.86,0,.07,1),-webkit-transform .4s cubic-bezier(.86,0,.07,1)} \\n@media only screen and (max-width:599px){.tabs__wrapper--show-arrows .tabs__container--align-with-title{padding-left:24px}.tabs__container--align-with-title{padding-left:64px}.tabs__container--fixed-tabs .tabs__div{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}} \\n@media only screen and (min-width:600px){.tabs__container--centered .tabs__div,.tabs__container--fixed-tabs .tabs__div,.tabs__container--icons-and-text .tabs__div{min-width:160px}} \\n.time-picker-title{color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:1;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end} \\n.time-picker-title__time{white-space:nowrap} \\n.time-picker-title__time .picker__title__btn,.time-picker-title__time span{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:70px;font-size:70px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center} \\n.time-picker-title__ampm{-ms-flex-item-align:end;align-self:flex-end;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;font-size:16px;margin:8px 0 6px 8px;text-transform:uppercase} \\n.time-picker-title__ampm div:only-child{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row} \\n.picker__title--landscape .time-picker-title{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%} \\n.picker__title--landscape .time-picker-title__time{text-align:right} \\n.picker__title--landscape .time-picker-title__time .picker__title__btn,.picker__title--landscape .time-picker-title__time span{height:55px;font-size:55px} \\n.picker__title--landscape .time-picker-title__ampm{margin:16px 0 0;-ms-flex-item-align:initial;align-self:auto;text-align:center} \\n.application .theme--light.time-picker-clock,.theme--light .time-picker-clock{background:#e0e0e0} \\n.application .theme--light.time-picker-clock>span.disabled,.theme--light .time-picker-clock>span.disabled{color:rgba(0,0,0,.26)} \\n.application .theme--light.time-picker-clock>span.disabled.active,.theme--light .time-picker-clock>span.disabled.active{color:hsla(0,0%,100%,.3)} \\n.application .theme--light.time-picker-clock--indeterminate .time-picker-clock__hand,.theme--light .time-picker-clock--indeterminate .time-picker-clock__hand{background-color:#bdbdbd} \\n.application .theme--light.time-picker-clock--indeterminate .time-picker-clock__hand:after,.theme--light .time-picker-clock--indeterminate .time-picker-clock__hand:after{color:#bdbdbd} \\n.application .theme--light.time-picker-clock--indeterminate>span.active,.theme--light .time-picker-clock--indeterminate>span.active{background-color:#bdbdbd} \\n.application .theme--dark.time-picker-clock,.theme--dark .time-picker-clock{background:#616161} \\n.application .theme--dark.time-picker-clock>span.disabled,.application .theme--dark.time-picker-clock>span.disabled.active,.theme--dark .time-picker-clock>span.disabled,.theme--dark .time-picker-clock>span.disabled.active{color:hsla(0,0%,100%,.3)} \\n.application .theme--dark.time-picker-clock--indeterminate .time-picker-clock__hand,.theme--dark .time-picker-clock--indeterminate .time-picker-clock__hand{background-color:#757575} \\n.application .theme--dark.time-picker-clock--indeterminate .time-picker-clock__hand:after,.theme--dark .time-picker-clock--indeterminate .time-picker-clock__hand:after{color:#757575} \\n.application .theme--dark.time-picker-clock--indeterminate>span.active,.theme--dark .time-picker-clock--indeterminate>span.active{background-color:#757575} \\n.time-picker-clock{border-radius:100%;position:relative;-webkit-transition:.3s cubic-bezier(.25,.8,.5,1);transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.time-picker-clock__container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:10px} \\n.time-picker-clock__hand{height:calc(50% - 28px);width:2px;bottom:50%;left:calc(50% - 1px);-webkit-transform-origin:center bottom;transform-origin:center bottom;position:absolute;will-change:transform;z-index:1} \\n.time-picker-clock__hand:before{background:transparent;border-width:2px;width:10px;height:10px;top:-3%} \\n.time-picker-clock__hand:after,.time-picker-clock__hand:before{border-style:solid;border-color:inherit;border-radius:100%;content:\\\"\\\";position:absolute;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)} \\n.time-picker-clock__hand:after{height:8px;width:8px;top:100%;background-color:inherit} \\n.time-picker-clock>span{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:100%;cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:16px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:calc(50% - 40px / 2);height:40px;position:absolute;text-align:center;top:calc(50% - 40px / 2);width:40px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} \\n.time-picker-clock>span>span{z-index:1} \\n.time-picker-clock>span:after,.time-picker-clock>span:before{content:\\\"\\\";border-radius:100%;position:absolute;top:50%;left:50%;height:14px;width:14px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);height:40px;width:40px} \\n.time-picker-clock>span.active{color:#fff;cursor:default;z-index:2} \\n.time-picker-clock>span.disabled{pointer-events:none} \\n.application .theme--light.toolbar,.theme--light .toolbar{background-color:#f5f5f5;color:rgba(0,0,0,.87)} \\n.application .theme--dark.toolbar,.theme--dark .toolbar{background-color:#212121;color:#fff} \\n.toolbar{-webkit-transition:none;transition:none;-webkit-box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);display:block;position:relative;width:100%;will-change:padding-left} \\n.toolbar[data-booted=true]{-webkit-transition:.2s cubic-bezier(.4,0,.2,1);transition:.2s cubic-bezier(.4,0,.2,1)} \\n.toolbar .input-group--solo .input-group__details{display:none} \\n.toolbar .input-group--single-line:not(.input-group--solo){padding:0} \\n.toolbar .input-group--single-line:not(.input-group--solo) label{top:auto} \\n.toolbar .tabs{width:100%} \\n.toolbar__title{font-size:20px;font-weight:500;letter-spacing:.02em;margin-left:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} \\n.toolbar__content,.toolbar__extension{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex} \\n.toolbar__content>.list,.toolbar__extension>.list{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;margin:0!important;max-height:100%} \\n.toolbar__content>.btn:last-child,.toolbar__content>.menu:last-child,.toolbar__extension>.btn:last-child,.toolbar__extension>.menu:last-child{margin-right:8px} \\n.toolbar__content>.btn:first-child,.toolbar__content>.menu:first-child,.toolbar__extension>.btn:first-child,.toolbar__extension>.menu:first-child{margin-left:8px} \\n.toolbar__content>:not(.btn):not(.menu):first-child:not(:only-child),.toolbar__extension>:not(.btn):not(.menu):first-child:not(:only-child){margin-left:16px} \\n.toolbar__content>:not(.btn):not(.menu):last-child:not(:only-child),.toolbar__extension>:not(.btn):not(.menu):last-child:not(:only-child){margin-right:16px} \\n.toolbar__items{display:-webkit-box;display:-ms-flexbox;display:flex;height:inherit;max-width:100%;padding:0} \\n.toolbar__items .btn{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch} \\n.toolbar__items .tooltip,.toolbar__items .tooltip>span{height:inherit} \\n.toolbar__items .btn,.toolbar__items .menu,.toolbar__items .menu__activator{height:inherit;margin:0} \\n.toolbar--card{border-radius:2px 2px 0 0;-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)} \\n.toolbar--fixed{position:fixed;z-index:2} \\n.toolbar--absolute,.toolbar--fixed{top:0;left:0} \\n.toolbar--absolute{position:absolute;z-index:2} \\n.toolbar--floating{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin:16px;width:auto} \\n.toolbar--clipped{z-index:3} \\n@media only screen and (max-width:599px){.toolbar .toolbar__content>.btn:last-child,.toolbar .toolbar__extension>.btn:last-child{margin-right:17px}.toolbar .toolbar__content>.btn:first-child,.toolbar .toolbar__extension>.btn:first-child{margin-left:17px}.toolbar .toolbar__content>:not(.btn):not(.menu):first-child:not(:only-child),.toolbar .toolbar__extension>:not(.btn):not(.menu):first-child:not(:only-child){margin-left:24px}.toolbar .toolbar__content>:not(.btn):not(.menu):last-child:not(:only-child),.toolbar .toolbar__extension>:not(.btn):not(.menu):last-child:not(:only-child){margin-right:24px}} \\n.tooltip{position:relative} \\n.tooltip__content{background:#616161;border-radius:2px;color:#fff;font-size:12px;display:inline-block;padding:5px 8px;position:absolute;text-transform:none;-webkit-transition:.15s cubic-bezier(.25,.8,.5,1);transition:.15s cubic-bezier(.25,.8,.5,1);width:auto;-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)} \\n.tooltip__content[class*=-active]{pointer-events:none} \\n@media only screen and (max-width:959px){.tooltip .tooltip__content{padding:10px 16px}}\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/node_modules/vuetify/dist/vuetify.min.css\"],\"names\":[],\"mappings\":\"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\",\"file\":\"vuetify.min.css\",\"sourcesContent\":[\"/*!\\n* Vuetify v1.0.17\\n* Forged by John Leider\\n* Released under the MIT License.\\n*/ \\n@-webkit-keyframes a{59%{margin-left:0}60%,80%{margin-left:2px}70%,90%{margin-left:-2px}}@keyframes a{59%{margin-left:0}60%,80%{margin-left:2px}70%,90%{margin-left:-2px}}.black{background-color:#000!important;border-color:#000!important}.black--text{color:#000!important}.black--text input,.black--text textarea{caret-color:#000!important}.black--after:after{background:#000!important}.white{background-color:#fff!important;border-color:#fff!important}.white--text{color:#fff!important}.white--text input,.white--text textarea{caret-color:#fff!important}.white--after:after{background:#fff!important}.transparent{background-color:transparent!important;border-color:transparent!important}.transparent--text{color:transparent!important}.transparent--text input,.transparent--text textarea{caret-color:transparent!important}.transparent--after:after{background:transparent!important}.red{background-color:#f44336!important;border-color:#f44336!important}.red--text{color:#f44336!important}.red--text input,.red--text textarea{caret-color:#f44336!important}.red--after:after{background:#f44336!important}.red.lighten-5{border-color:#ffebee!important}.red.lighten-5,.red.lighten-5--after:after{background-color:#ffebee!important}.red--text.text--lighten-5{color:#ffebee!important}.red--text.text--lighten-5 input,.red--text.text--lighten-5 textarea{caret-color:#ffebee!important}.red.lighten-4{border-color:#ffcdd2!important}.red.lighten-4,.red.lighten-4--after:after{background-color:#ffcdd2!important}.red--text.text--lighten-4{color:#ffcdd2!important}.red--text.text--lighten-4 input,.red--text.text--lighten-4 textarea{caret-color:#ffcdd2!important}.red.lighten-3{border-color:#ef9a9a!important}.red.lighten-3,.red.lighten-3--after:after{background-color:#ef9a9a!important}.red--text.text--lighten-3{color:#ef9a9a!important}.red--text.text--lighten-3 input,.red--text.text--lighten-3 textarea{caret-color:#ef9a9a!important}.red.lighten-2{border-color:#e57373!important}.red.lighten-2,.red.lighten-2--after:after{background-color:#e57373!important}.red--text.text--lighten-2{color:#e57373!important}.red--text.text--lighten-2 input,.red--text.text--lighten-2 textarea{caret-color:#e57373!important}.red.lighten-1{border-color:#ef5350!important}.red.lighten-1,.red.lighten-1--after:after{background-color:#ef5350!important}.red--text.text--lighten-1{color:#ef5350!important}.red--text.text--lighten-1 input,.red--text.text--lighten-1 textarea{caret-color:#ef5350!important}.red.darken-1{border-color:#e53935!important}.red.darken-1,.red.darken-1--after:after{background-color:#e53935!important}.red--text.text--darken-1{color:#e53935!important}.red--text.text--darken-1 input,.red--text.text--darken-1 textarea{caret-color:#e53935!important}.red.darken-2{border-color:#d32f2f!important}.red.darken-2,.red.darken-2--after:after{background-color:#d32f2f!important}.red--text.text--darken-2{color:#d32f2f!important}.red--text.text--darken-2 input,.red--text.text--darken-2 textarea{caret-color:#d32f2f!important}.red.darken-3{border-color:#c62828!important}.red.darken-3,.red.darken-3--after:after{background-color:#c62828!important}.red--text.text--darken-3{color:#c62828!important}.red--text.text--darken-3 input,.red--text.text--darken-3 textarea{caret-color:#c62828!important}.red.darken-4{border-color:#b71c1c!important}.red.darken-4,.red.darken-4--after:after{background-color:#b71c1c!important}.red--text.text--darken-4{color:#b71c1c!important}.red--text.text--darken-4 input,.red--text.text--darken-4 textarea{caret-color:#b71c1c!important}.red.accent-1{border-color:#ff8a80!important}.red.accent-1,.red.accent-1--after:after{background-color:#ff8a80!important}.red--text.text--accent-1{color:#ff8a80!important}.red--text.text--accent-1 input,.red--text.text--accent-1 textarea{caret-color:#ff8a80!important}.red.accent-2{border-color:#ff5252!important}.red.accent-2,.red.accent-2--after:after{background-color:#ff5252!important}.red--text.text--accent-2{color:#ff5252!important}.red--text.text--accent-2 input,.red--text.text--accent-2 textarea{caret-color:#ff5252!important}.red.accent-3{border-color:#ff1744!important}.red.accent-3,.red.accent-3--after:after{background-color:#ff1744!important}.red--text.text--accent-3{color:#ff1744!important}.red--text.text--accent-3 input,.red--text.text--accent-3 textarea{caret-color:#ff1744!important}.red.accent-4{border-color:#d50000!important}.red.accent-4,.red.accent-4--after:after{background-color:#d50000!important}.red--text.text--accent-4{color:#d50000!important}.red--text.text--accent-4 input,.red--text.text--accent-4 textarea{caret-color:#d50000!important}.pink{background-color:#e91e63!important;border-color:#e91e63!important}.pink--text{color:#e91e63!important}.pink--text input,.pink--text textarea{caret-color:#e91e63!important}.pink--after:after{background:#e91e63!important}.pink.lighten-5{border-color:#fce4ec!important}.pink.lighten-5,.pink.lighten-5--after:after{background-color:#fce4ec!important}.pink--text.text--lighten-5{color:#fce4ec!important}.pink--text.text--lighten-5 input,.pink--text.text--lighten-5 textarea{caret-color:#fce4ec!important}.pink.lighten-4{border-color:#f8bbd0!important}.pink.lighten-4,.pink.lighten-4--after:after{background-color:#f8bbd0!important}.pink--text.text--lighten-4{color:#f8bbd0!important}.pink--text.text--lighten-4 input,.pink--text.text--lighten-4 textarea{caret-color:#f8bbd0!important}.pink.lighten-3{border-color:#f48fb1!important}.pink.lighten-3,.pink.lighten-3--after:after{background-color:#f48fb1!important}.pink--text.text--lighten-3{color:#f48fb1!important}.pink--text.text--lighten-3 input,.pink--text.text--lighten-3 textarea{caret-color:#f48fb1!important}.pink.lighten-2{border-color:#f06292!important}.pink.lighten-2,.pink.lighten-2--after:after{background-color:#f06292!important}.pink--text.text--lighten-2{color:#f06292!important}.pink--text.text--lighten-2 input,.pink--text.text--lighten-2 textarea{caret-color:#f06292!important}.pink.lighten-1{border-color:#ec407a!important}.pink.lighten-1,.pink.lighten-1--after:after{background-color:#ec407a!important}.pink--text.text--lighten-1{color:#ec407a!important}.pink--text.text--lighten-1 input,.pink--text.text--lighten-1 textarea{caret-color:#ec407a!important}.pink.darken-1{border-color:#d81b60!important}.pink.darken-1,.pink.darken-1--after:after{background-color:#d81b60!important}.pink--text.text--darken-1{color:#d81b60!important}.pink--text.text--darken-1 input,.pink--text.text--darken-1 textarea{caret-color:#d81b60!important}.pink.darken-2{border-color:#c2185b!important}.pink.darken-2,.pink.darken-2--after:after{background-color:#c2185b!important}.pink--text.text--darken-2{color:#c2185b!important}.pink--text.text--darken-2 input,.pink--text.text--darken-2 textarea{caret-color:#c2185b!important}.pink.darken-3{border-color:#ad1457!important}.pink.darken-3,.pink.darken-3--after:after{background-color:#ad1457!important}.pink--text.text--darken-3{color:#ad1457!important}.pink--text.text--darken-3 input,.pink--text.text--darken-3 textarea{caret-color:#ad1457!important}.pink.darken-4{border-color:#880e4f!important}.pink.darken-4,.pink.darken-4--after:after{background-color:#880e4f!important}.pink--text.text--darken-4{color:#880e4f!important}.pink--text.text--darken-4 input,.pink--text.text--darken-4 textarea{caret-color:#880e4f!important}.pink.accent-1{border-color:#ff80ab!important}.pink.accent-1,.pink.accent-1--after:after{background-color:#ff80ab!important}.pink--text.text--accent-1{color:#ff80ab!important}.pink--text.text--accent-1 input,.pink--text.text--accent-1 textarea{caret-color:#ff80ab!important}.pink.accent-2{border-color:#ff4081!important}.pink.accent-2,.pink.accent-2--after:after{background-color:#ff4081!important}.pink--text.text--accent-2{color:#ff4081!important}.pink--text.text--accent-2 input,.pink--text.text--accent-2 textarea{caret-color:#ff4081!important}.pink.accent-3{border-color:#f50057!important}.pink.accent-3,.pink.accent-3--after:after{background-color:#f50057!important}.pink--text.text--accent-3{color:#f50057!important}.pink--text.text--accent-3 input,.pink--text.text--accent-3 textarea{caret-color:#f50057!important}.pink.accent-4{border-color:#c51162!important}.pink.accent-4,.pink.accent-4--after:after{background-color:#c51162!important}.pink--text.text--accent-4{color:#c51162!important}.pink--text.text--accent-4 input,.pink--text.text--accent-4 textarea{caret-color:#c51162!important}.purple{background-color:#9c27b0!important;border-color:#9c27b0!important}.purple--text{color:#9c27b0!important}.purple--text input,.purple--text textarea{caret-color:#9c27b0!important}.purple--after:after{background:#9c27b0!important}.purple.lighten-5{border-color:#f3e5f5!important}.purple.lighten-5,.purple.lighten-5--after:after{background-color:#f3e5f5!important}.purple--text.text--lighten-5{color:#f3e5f5!important}.purple--text.text--lighten-5 input,.purple--text.text--lighten-5 textarea{caret-color:#f3e5f5!important}.purple.lighten-4{border-color:#e1bee7!important}.purple.lighten-4,.purple.lighten-4--after:after{background-color:#e1bee7!important}.purple--text.text--lighten-4{color:#e1bee7!important}.purple--text.text--lighten-4 input,.purple--text.text--lighten-4 textarea{caret-color:#e1bee7!important}.purple.lighten-3{border-color:#ce93d8!important}.purple.lighten-3,.purple.lighten-3--after:after{background-color:#ce93d8!important}.purple--text.text--lighten-3{color:#ce93d8!important}.purple--text.text--lighten-3 input,.purple--text.text--lighten-3 textarea{caret-color:#ce93d8!important}.purple.lighten-2{border-color:#ba68c8!important}.purple.lighten-2,.purple.lighten-2--after:after{background-color:#ba68c8!important}.purple--text.text--lighten-2{color:#ba68c8!important}.purple--text.text--lighten-2 input,.purple--text.text--lighten-2 textarea{caret-color:#ba68c8!important}.purple.lighten-1{border-color:#ab47bc!important}.purple.lighten-1,.purple.lighten-1--after:after{background-color:#ab47bc!important}.purple--text.text--lighten-1{color:#ab47bc!important}.purple--text.text--lighten-1 input,.purple--text.text--lighten-1 textarea{caret-color:#ab47bc!important}.purple.darken-1{border-color:#8e24aa!important}.purple.darken-1,.purple.darken-1--after:after{background-color:#8e24aa!important}.purple--text.text--darken-1{color:#8e24aa!important}.purple--text.text--darken-1 input,.purple--text.text--darken-1 textarea{caret-color:#8e24aa!important}.purple.darken-2{border-color:#7b1fa2!important}.purple.darken-2,.purple.darken-2--after:after{background-color:#7b1fa2!important}.purple--text.text--darken-2{color:#7b1fa2!important}.purple--text.text--darken-2 input,.purple--text.text--darken-2 textarea{caret-color:#7b1fa2!important}.purple.darken-3{border-color:#6a1b9a!important}.purple.darken-3,.purple.darken-3--after:after{background-color:#6a1b9a!important}.purple--text.text--darken-3{color:#6a1b9a!important}.purple--text.text--darken-3 input,.purple--text.text--darken-3 textarea{caret-color:#6a1b9a!important}.purple.darken-4{border-color:#4a148c!important}.purple.darken-4,.purple.darken-4--after:after{background-color:#4a148c!important}.purple--text.text--darken-4{color:#4a148c!important}.purple--text.text--darken-4 input,.purple--text.text--darken-4 textarea{caret-color:#4a148c!important}.purple.accent-1{border-color:#ea80fc!important}.purple.accent-1,.purple.accent-1--after:after{background-color:#ea80fc!important}.purple--text.text--accent-1{color:#ea80fc!important}.purple--text.text--accent-1 input,.purple--text.text--accent-1 textarea{caret-color:#ea80fc!important}.purple.accent-2{border-color:#e040fb!important}.purple.accent-2,.purple.accent-2--after:after{background-color:#e040fb!important}.purple--text.text--accent-2{color:#e040fb!important}.purple--text.text--accent-2 input,.purple--text.text--accent-2 textarea{caret-color:#e040fb!important}.purple.accent-3{border-color:#d500f9!important}.purple.accent-3,.purple.accent-3--after:after{background-color:#d500f9!important}.purple--text.text--accent-3{color:#d500f9!important}.purple--text.text--accent-3 input,.purple--text.text--accent-3 textarea{caret-color:#d500f9!important}.purple.accent-4{border-color:#a0f!important}.purple.accent-4,.purple.accent-4--after:after{background-color:#a0f!important}.purple--text.text--accent-4{color:#a0f!important}.purple--text.text--accent-4 input,.purple--text.text--accent-4 textarea{caret-color:#a0f!important}.deep-purple{background-color:#673ab7!important;border-color:#673ab7!important}.deep-purple--text{color:#673ab7!important}.deep-purple--text input,.deep-purple--text textarea{caret-color:#673ab7!important}.deep-purple--after:after{background:#673ab7!important}.deep-purple.lighten-5{border-color:#ede7f6!important}.deep-purple.lighten-5,.deep-purple.lighten-5--after:after{background-color:#ede7f6!important}.deep-purple--text.text--lighten-5{color:#ede7f6!important}.deep-purple--text.text--lighten-5 input,.deep-purple--text.text--lighten-5 textarea{caret-color:#ede7f6!important}.deep-purple.lighten-4{border-color:#d1c4e9!important}.deep-purple.lighten-4,.deep-purple.lighten-4--after:after{background-color:#d1c4e9!important}.deep-purple--text.text--lighten-4{color:#d1c4e9!important}.deep-purple--text.text--lighten-4 input,.deep-purple--text.text--lighten-4 textarea{caret-color:#d1c4e9!important}.deep-purple.lighten-3{border-color:#b39ddb!important}.deep-purple.lighten-3,.deep-purple.lighten-3--after:after{background-color:#b39ddb!important}.deep-purple--text.text--lighten-3{color:#b39ddb!important}.deep-purple--text.text--lighten-3 input,.deep-purple--text.text--lighten-3 textarea{caret-color:#b39ddb!important}.deep-purple.lighten-2{border-color:#9575cd!important}.deep-purple.lighten-2,.deep-purple.lighten-2--after:after{background-color:#9575cd!important}.deep-purple--text.text--lighten-2{color:#9575cd!important}.deep-purple--text.text--lighten-2 input,.deep-purple--text.text--lighten-2 textarea{caret-color:#9575cd!important}.deep-purple.lighten-1{border-color:#7e57c2!important}.deep-purple.lighten-1,.deep-purple.lighten-1--after:after{background-color:#7e57c2!important}.deep-purple--text.text--lighten-1{color:#7e57c2!important}.deep-purple--text.text--lighten-1 input,.deep-purple--text.text--lighten-1 textarea{caret-color:#7e57c2!important}.deep-purple.darken-1{border-color:#5e35b1!important}.deep-purple.darken-1,.deep-purple.darken-1--after:after{background-color:#5e35b1!important}.deep-purple--text.text--darken-1{color:#5e35b1!important}.deep-purple--text.text--darken-1 input,.deep-purple--text.text--darken-1 textarea{caret-color:#5e35b1!important}.deep-purple.darken-2{border-color:#512da8!important}.deep-purple.darken-2,.deep-purple.darken-2--after:after{background-color:#512da8!important}.deep-purple--text.text--darken-2{color:#512da8!important}.deep-purple--text.text--darken-2 input,.deep-purple--text.text--darken-2 textarea{caret-color:#512da8!important}.deep-purple.darken-3{border-color:#4527a0!important}.deep-purple.darken-3,.deep-purple.darken-3--after:after{background-color:#4527a0!important}.deep-purple--text.text--darken-3{color:#4527a0!important}.deep-purple--text.text--darken-3 input,.deep-purple--text.text--darken-3 textarea{caret-color:#4527a0!important}.deep-purple.darken-4{border-color:#311b92!important}.deep-purple.darken-4,.deep-purple.darken-4--after:after{background-color:#311b92!important}.deep-purple--text.text--darken-4{color:#311b92!important}.deep-purple--text.text--darken-4 input,.deep-purple--text.text--darken-4 textarea{caret-color:#311b92!important}.deep-purple.accent-1{border-color:#b388ff!important}.deep-purple.accent-1,.deep-purple.accent-1--after:after{background-color:#b388ff!important}.deep-purple--text.text--accent-1{color:#b388ff!important}.deep-purple--text.text--accent-1 input,.deep-purple--text.text--accent-1 textarea{caret-color:#b388ff!important}.deep-purple.accent-2{border-color:#7c4dff!important}.deep-purple.accent-2,.deep-purple.accent-2--after:after{background-color:#7c4dff!important}.deep-purple--text.text--accent-2{color:#7c4dff!important}.deep-purple--text.text--accent-2 input,.deep-purple--text.text--accent-2 textarea{caret-color:#7c4dff!important}.deep-purple.accent-3{border-color:#651fff!important}.deep-purple.accent-3,.deep-purple.accent-3--after:after{background-color:#651fff!important}.deep-purple--text.text--accent-3{color:#651fff!important}.deep-purple--text.text--accent-3 input,.deep-purple--text.text--accent-3 textarea{caret-color:#651fff!important}.deep-purple.accent-4{border-color:#6200ea!important}.deep-purple.accent-4,.deep-purple.accent-4--after:after{background-color:#6200ea!important}.deep-purple--text.text--accent-4{color:#6200ea!important}.deep-purple--text.text--accent-4 input,.deep-purple--text.text--accent-4 textarea{caret-color:#6200ea!important}.indigo{background-color:#3f51b5!important;border-color:#3f51b5!important}.indigo--text{color:#3f51b5!important}.indigo--text input,.indigo--text textarea{caret-color:#3f51b5!important}.indigo--after:after{background:#3f51b5!important}.indigo.lighten-5{border-color:#e8eaf6!important}.indigo.lighten-5,.indigo.lighten-5--after:after{background-color:#e8eaf6!important}.indigo--text.text--lighten-5{color:#e8eaf6!important}.indigo--text.text--lighten-5 input,.indigo--text.text--lighten-5 textarea{caret-color:#e8eaf6!important}.indigo.lighten-4{border-color:#c5cae9!important}.indigo.lighten-4,.indigo.lighten-4--after:after{background-color:#c5cae9!important}.indigo--text.text--lighten-4{color:#c5cae9!important}.indigo--text.text--lighten-4 input,.indigo--text.text--lighten-4 textarea{caret-color:#c5cae9!important}.indigo.lighten-3{border-color:#9fa8da!important}.indigo.lighten-3,.indigo.lighten-3--after:after{background-color:#9fa8da!important}.indigo--text.text--lighten-3{color:#9fa8da!important}.indigo--text.text--lighten-3 input,.indigo--text.text--lighten-3 textarea{caret-color:#9fa8da!important}.indigo.lighten-2{border-color:#7986cb!important}.indigo.lighten-2,.indigo.lighten-2--after:after{background-color:#7986cb!important}.indigo--text.text--lighten-2{color:#7986cb!important}.indigo--text.text--lighten-2 input,.indigo--text.text--lighten-2 textarea{caret-color:#7986cb!important}.indigo.lighten-1{border-color:#5c6bc0!important}.indigo.lighten-1,.indigo.lighten-1--after:after{background-color:#5c6bc0!important}.indigo--text.text--lighten-1{color:#5c6bc0!important}.indigo--text.text--lighten-1 input,.indigo--text.text--lighten-1 textarea{caret-color:#5c6bc0!important}.indigo.darken-1{border-color:#3949ab!important}.indigo.darken-1,.indigo.darken-1--after:after{background-color:#3949ab!important}.indigo--text.text--darken-1{color:#3949ab!important}.indigo--text.text--darken-1 input,.indigo--text.text--darken-1 textarea{caret-color:#3949ab!important}.indigo.darken-2{border-color:#303f9f!important}.indigo.darken-2,.indigo.darken-2--after:after{background-color:#303f9f!important}.indigo--text.text--darken-2{color:#303f9f!important}.indigo--text.text--darken-2 input,.indigo--text.text--darken-2 textarea{caret-color:#303f9f!important}.indigo.darken-3{border-color:#283593!important}.indigo.darken-3,.indigo.darken-3--after:after{background-color:#283593!important}.indigo--text.text--darken-3{color:#283593!important}.indigo--text.text--darken-3 input,.indigo--text.text--darken-3 textarea{caret-color:#283593!important}.indigo.darken-4{border-color:#1a237e!important}.indigo.darken-4,.indigo.darken-4--after:after{background-color:#1a237e!important}.indigo--text.text--darken-4{color:#1a237e!important}.indigo--text.text--darken-4 input,.indigo--text.text--darken-4 textarea{caret-color:#1a237e!important}.indigo.accent-1{border-color:#8c9eff!important}.indigo.accent-1,.indigo.accent-1--after:after{background-color:#8c9eff!important}.indigo--text.text--accent-1{color:#8c9eff!important}.indigo--text.text--accent-1 input,.indigo--text.text--accent-1 textarea{caret-color:#8c9eff!important}.indigo.accent-2{border-color:#536dfe!important}.indigo.accent-2,.indigo.accent-2--after:after{background-color:#536dfe!important}.indigo--text.text--accent-2{color:#536dfe!important}.indigo--text.text--accent-2 input,.indigo--text.text--accent-2 textarea{caret-color:#536dfe!important}.indigo.accent-3{border-color:#3d5afe!important}.indigo.accent-3,.indigo.accent-3--after:after{background-color:#3d5afe!important}.indigo--text.text--accent-3{color:#3d5afe!important}.indigo--text.text--accent-3 input,.indigo--text.text--accent-3 textarea{caret-color:#3d5afe!important}.indigo.accent-4{border-color:#304ffe!important}.indigo.accent-4,.indigo.accent-4--after:after{background-color:#304ffe!important}.indigo--text.text--accent-4{color:#304ffe!important}.indigo--text.text--accent-4 input,.indigo--text.text--accent-4 textarea{caret-color:#304ffe!important}.blue{background-color:#2196f3!important;border-color:#2196f3!important}.blue--text{color:#2196f3!important}.blue--text input,.blue--text textarea{caret-color:#2196f3!important}.blue--after:after{background:#2196f3!important}.blue.lighten-5{border-color:#e3f2fd!important}.blue.lighten-5,.blue.lighten-5--after:after{background-color:#e3f2fd!important}.blue--text.text--lighten-5{color:#e3f2fd!important}.blue--text.text--lighten-5 input,.blue--text.text--lighten-5 textarea{caret-color:#e3f2fd!important}.blue.lighten-4{border-color:#bbdefb!important}.blue.lighten-4,.blue.lighten-4--after:after{background-color:#bbdefb!important}.blue--text.text--lighten-4{color:#bbdefb!important}.blue--text.text--lighten-4 input,.blue--text.text--lighten-4 textarea{caret-color:#bbdefb!important}.blue.lighten-3{border-color:#90caf9!important}.blue.lighten-3,.blue.lighten-3--after:after{background-color:#90caf9!important}.blue--text.text--lighten-3{color:#90caf9!important}.blue--text.text--lighten-3 input,.blue--text.text--lighten-3 textarea{caret-color:#90caf9!important}.blue.lighten-2{border-color:#64b5f6!important}.blue.lighten-2,.blue.lighten-2--after:after{background-color:#64b5f6!important}.blue--text.text--lighten-2{color:#64b5f6!important}.blue--text.text--lighten-2 input,.blue--text.text--lighten-2 textarea{caret-color:#64b5f6!important}.blue.lighten-1{border-color:#42a5f5!important}.blue.lighten-1,.blue.lighten-1--after:after{background-color:#42a5f5!important}.blue--text.text--lighten-1{color:#42a5f5!important}.blue--text.text--lighten-1 input,.blue--text.text--lighten-1 textarea{caret-color:#42a5f5!important}.blue.darken-1{border-color:#1e88e5!important}.blue.darken-1,.blue.darken-1--after:after{background-color:#1e88e5!important}.blue--text.text--darken-1{color:#1e88e5!important}.blue--text.text--darken-1 input,.blue--text.text--darken-1 textarea{caret-color:#1e88e5!important}.blue.darken-2{border-color:#1976d2!important}.blue.darken-2,.blue.darken-2--after:after{background-color:#1976d2!important}.blue--text.text--darken-2{color:#1976d2!important}.blue--text.text--darken-2 input,.blue--text.text--darken-2 textarea{caret-color:#1976d2!important}.blue.darken-3{border-color:#1565c0!important}.blue.darken-3,.blue.darken-3--after:after{background-color:#1565c0!important}.blue--text.text--darken-3{color:#1565c0!important}.blue--text.text--darken-3 input,.blue--text.text--darken-3 textarea{caret-color:#1565c0!important}.blue.darken-4{border-color:#0d47a1!important}.blue.darken-4,.blue.darken-4--after:after{background-color:#0d47a1!important}.blue--text.text--darken-4{color:#0d47a1!important}.blue--text.text--darken-4 input,.blue--text.text--darken-4 textarea{caret-color:#0d47a1!important}.blue.accent-1{border-color:#82b1ff!important}.blue.accent-1,.blue.accent-1--after:after{background-color:#82b1ff!important}.blue--text.text--accent-1{color:#82b1ff!important}.blue--text.text--accent-1 input,.blue--text.text--accent-1 textarea{caret-color:#82b1ff!important}.blue.accent-2{border-color:#448aff!important}.blue.accent-2,.blue.accent-2--after:after{background-color:#448aff!important}.blue--text.text--accent-2{color:#448aff!important}.blue--text.text--accent-2 input,.blue--text.text--accent-2 textarea{caret-color:#448aff!important}.blue.accent-3{border-color:#2979ff!important}.blue.accent-3,.blue.accent-3--after:after{background-color:#2979ff!important}.blue--text.text--accent-3{color:#2979ff!important}.blue--text.text--accent-3 input,.blue--text.text--accent-3 textarea{caret-color:#2979ff!important}.blue.accent-4{border-color:#2962ff!important}.blue.accent-4,.blue.accent-4--after:after{background-color:#2962ff!important}.blue--text.text--accent-4{color:#2962ff!important}.blue--text.text--accent-4 input,.blue--text.text--accent-4 textarea{caret-color:#2962ff!important}.light-blue{background-color:#03a9f4!important;border-color:#03a9f4!important}.light-blue--text{color:#03a9f4!important}.light-blue--text input,.light-blue--text textarea{caret-color:#03a9f4!important}.light-blue--after:after{background:#03a9f4!important}.light-blue.lighten-5{border-color:#e1f5fe!important}.light-blue.lighten-5,.light-blue.lighten-5--after:after{background-color:#e1f5fe!important}.light-blue--text.text--lighten-5{color:#e1f5fe!important}.light-blue--text.text--lighten-5 input,.light-blue--text.text--lighten-5 textarea{caret-color:#e1f5fe!important}.light-blue.lighten-4{border-color:#b3e5fc!important}.light-blue.lighten-4,.light-blue.lighten-4--after:after{background-color:#b3e5fc!important}.light-blue--text.text--lighten-4{color:#b3e5fc!important}.light-blue--text.text--lighten-4 input,.light-blue--text.text--lighten-4 textarea{caret-color:#b3e5fc!important}.light-blue.lighten-3{border-color:#81d4fa!important}.light-blue.lighten-3,.light-blue.lighten-3--after:after{background-color:#81d4fa!important}.light-blue--text.text--lighten-3{color:#81d4fa!important}.light-blue--text.text--lighten-3 input,.light-blue--text.text--lighten-3 textarea{caret-color:#81d4fa!important}.light-blue.lighten-2{border-color:#4fc3f7!important}.light-blue.lighten-2,.light-blue.lighten-2--after:after{background-color:#4fc3f7!important}.light-blue--text.text--lighten-2{color:#4fc3f7!important}.light-blue--text.text--lighten-2 input,.light-blue--text.text--lighten-2 textarea{caret-color:#4fc3f7!important}.light-blue.lighten-1{border-color:#29b6f6!important}.light-blue.lighten-1,.light-blue.lighten-1--after:after{background-color:#29b6f6!important}.light-blue--text.text--lighten-1{color:#29b6f6!important}.light-blue--text.text--lighten-1 input,.light-blue--text.text--lighten-1 textarea{caret-color:#29b6f6!important}.light-blue.darken-1{border-color:#039be5!important}.light-blue.darken-1,.light-blue.darken-1--after:after{background-color:#039be5!important}.light-blue--text.text--darken-1{color:#039be5!important}.light-blue--text.text--darken-1 input,.light-blue--text.text--darken-1 textarea{caret-color:#039be5!important}.light-blue.darken-2{border-color:#0288d1!important}.light-blue.darken-2,.light-blue.darken-2--after:after{background-color:#0288d1!important}.light-blue--text.text--darken-2{color:#0288d1!important}.light-blue--text.text--darken-2 input,.light-blue--text.text--darken-2 textarea{caret-color:#0288d1!important}.light-blue.darken-3{border-color:#0277bd!important}.light-blue.darken-3,.light-blue.darken-3--after:after{background-color:#0277bd!important}.light-blue--text.text--darken-3{color:#0277bd!important}.light-blue--text.text--darken-3 input,.light-blue--text.text--darken-3 textarea{caret-color:#0277bd!important}.light-blue.darken-4{border-color:#01579b!important}.light-blue.darken-4,.light-blue.darken-4--after:after{background-color:#01579b!important}.light-blue--text.text--darken-4{color:#01579b!important}.light-blue--text.text--darken-4 input,.light-blue--text.text--darken-4 textarea{caret-color:#01579b!important}.light-blue.accent-1{border-color:#80d8ff!important}.light-blue.accent-1,.light-blue.accent-1--after:after{background-color:#80d8ff!important}.light-blue--text.text--accent-1{color:#80d8ff!important}.light-blue--text.text--accent-1 input,.light-blue--text.text--accent-1 textarea{caret-color:#80d8ff!important}.light-blue.accent-2{border-color:#40c4ff!important}.light-blue.accent-2,.light-blue.accent-2--after:after{background-color:#40c4ff!important}.light-blue--text.text--accent-2{color:#40c4ff!important}.light-blue--text.text--accent-2 input,.light-blue--text.text--accent-2 textarea{caret-color:#40c4ff!important}.light-blue.accent-3{border-color:#00b0ff!important}.light-blue.accent-3,.light-blue.accent-3--after:after{background-color:#00b0ff!important}.light-blue--text.text--accent-3{color:#00b0ff!important}.light-blue--text.text--accent-3 input,.light-blue--text.text--accent-3 textarea{caret-color:#00b0ff!important}.light-blue.accent-4{border-color:#0091ea!important}.light-blue.accent-4,.light-blue.accent-4--after:after{background-color:#0091ea!important}.light-blue--text.text--accent-4{color:#0091ea!important}.light-blue--text.text--accent-4 input,.light-blue--text.text--accent-4 textarea{caret-color:#0091ea!important}.cyan{background-color:#00bcd4!important;border-color:#00bcd4!important}.cyan--text{color:#00bcd4!important}.cyan--text input,.cyan--text textarea{caret-color:#00bcd4!important}.cyan--after:after{background:#00bcd4!important}.cyan.lighten-5{border-color:#e0f7fa!important}.cyan.lighten-5,.cyan.lighten-5--after:after{background-color:#e0f7fa!important}.cyan--text.text--lighten-5{color:#e0f7fa!important}.cyan--text.text--lighten-5 input,.cyan--text.text--lighten-5 textarea{caret-color:#e0f7fa!important}.cyan.lighten-4{border-color:#b2ebf2!important}.cyan.lighten-4,.cyan.lighten-4--after:after{background-color:#b2ebf2!important}.cyan--text.text--lighten-4{color:#b2ebf2!important}.cyan--text.text--lighten-4 input,.cyan--text.text--lighten-4 textarea{caret-color:#b2ebf2!important}.cyan.lighten-3{border-color:#80deea!important}.cyan.lighten-3,.cyan.lighten-3--after:after{background-color:#80deea!important}.cyan--text.text--lighten-3{color:#80deea!important}.cyan--text.text--lighten-3 input,.cyan--text.text--lighten-3 textarea{caret-color:#80deea!important}.cyan.lighten-2{border-color:#4dd0e1!important}.cyan.lighten-2,.cyan.lighten-2--after:after{background-color:#4dd0e1!important}.cyan--text.text--lighten-2{color:#4dd0e1!important}.cyan--text.text--lighten-2 input,.cyan--text.text--lighten-2 textarea{caret-color:#4dd0e1!important}.cyan.lighten-1{border-color:#26c6da!important}.cyan.lighten-1,.cyan.lighten-1--after:after{background-color:#26c6da!important}.cyan--text.text--lighten-1{color:#26c6da!important}.cyan--text.text--lighten-1 input,.cyan--text.text--lighten-1 textarea{caret-color:#26c6da!important}.cyan.darken-1{border-color:#00acc1!important}.cyan.darken-1,.cyan.darken-1--after:after{background-color:#00acc1!important}.cyan--text.text--darken-1{color:#00acc1!important}.cyan--text.text--darken-1 input,.cyan--text.text--darken-1 textarea{caret-color:#00acc1!important}.cyan.darken-2{border-color:#0097a7!important}.cyan.darken-2,.cyan.darken-2--after:after{background-color:#0097a7!important}.cyan--text.text--darken-2{color:#0097a7!important}.cyan--text.text--darken-2 input,.cyan--text.text--darken-2 textarea{caret-color:#0097a7!important}.cyan.darken-3{border-color:#00838f!important}.cyan.darken-3,.cyan.darken-3--after:after{background-color:#00838f!important}.cyan--text.text--darken-3{color:#00838f!important}.cyan--text.text--darken-3 input,.cyan--text.text--darken-3 textarea{caret-color:#00838f!important}.cyan.darken-4{border-color:#006064!important}.cyan.darken-4,.cyan.darken-4--after:after{background-color:#006064!important}.cyan--text.text--darken-4{color:#006064!important}.cyan--text.text--darken-4 input,.cyan--text.text--darken-4 textarea{caret-color:#006064!important}.cyan.accent-1{border-color:#84ffff!important}.cyan.accent-1,.cyan.accent-1--after:after{background-color:#84ffff!important}.cyan--text.text--accent-1{color:#84ffff!important}.cyan--text.text--accent-1 input,.cyan--text.text--accent-1 textarea{caret-color:#84ffff!important}.cyan.accent-2{border-color:#18ffff!important}.cyan.accent-2,.cyan.accent-2--after:after{background-color:#18ffff!important}.cyan--text.text--accent-2{color:#18ffff!important}.cyan--text.text--accent-2 input,.cyan--text.text--accent-2 textarea{caret-color:#18ffff!important}.cyan.accent-3{border-color:#00e5ff!important}.cyan.accent-3,.cyan.accent-3--after:after{background-color:#00e5ff!important}.cyan--text.text--accent-3{color:#00e5ff!important}.cyan--text.text--accent-3 input,.cyan--text.text--accent-3 textarea{caret-color:#00e5ff!important}.cyan.accent-4{border-color:#00b8d4!important}.cyan.accent-4,.cyan.accent-4--after:after{background-color:#00b8d4!important}.cyan--text.text--accent-4{color:#00b8d4!important}.cyan--text.text--accent-4 input,.cyan--text.text--accent-4 textarea{caret-color:#00b8d4!important}.teal{background-color:#009688!important;border-color:#009688!important}.teal--text{color:#009688!important}.teal--text input,.teal--text textarea{caret-color:#009688!important}.teal--after:after{background:#009688!important}.teal.lighten-5{border-color:#e0f2f1!important}.teal.lighten-5,.teal.lighten-5--after:after{background-color:#e0f2f1!important}.teal--text.text--lighten-5{color:#e0f2f1!important}.teal--text.text--lighten-5 input,.teal--text.text--lighten-5 textarea{caret-color:#e0f2f1!important}.teal.lighten-4{border-color:#b2dfdb!important}.teal.lighten-4,.teal.lighten-4--after:after{background-color:#b2dfdb!important}.teal--text.text--lighten-4{color:#b2dfdb!important}.teal--text.text--lighten-4 input,.teal--text.text--lighten-4 textarea{caret-color:#b2dfdb!important}.teal.lighten-3{border-color:#80cbc4!important}.teal.lighten-3,.teal.lighten-3--after:after{background-color:#80cbc4!important}.teal--text.text--lighten-3{color:#80cbc4!important}.teal--text.text--lighten-3 input,.teal--text.text--lighten-3 textarea{caret-color:#80cbc4!important}.teal.lighten-2{border-color:#4db6ac!important}.teal.lighten-2,.teal.lighten-2--after:after{background-color:#4db6ac!important}.teal--text.text--lighten-2{color:#4db6ac!important}.teal--text.text--lighten-2 input,.teal--text.text--lighten-2 textarea{caret-color:#4db6ac!important}.teal.lighten-1{border-color:#26a69a!important}.teal.lighten-1,.teal.lighten-1--after:after{background-color:#26a69a!important}.teal--text.text--lighten-1{color:#26a69a!important}.teal--text.text--lighten-1 input,.teal--text.text--lighten-1 textarea{caret-color:#26a69a!important}.teal.darken-1{border-color:#00897b!important}.teal.darken-1,.teal.darken-1--after:after{background-color:#00897b!important}.teal--text.text--darken-1{color:#00897b!important}.teal--text.text--darken-1 input,.teal--text.text--darken-1 textarea{caret-color:#00897b!important}.teal.darken-2{border-color:#00796b!important}.teal.darken-2,.teal.darken-2--after:after{background-color:#00796b!important}.teal--text.text--darken-2{color:#00796b!important}.teal--text.text--darken-2 input,.teal--text.text--darken-2 textarea{caret-color:#00796b!important}.teal.darken-3{border-color:#00695c!important}.teal.darken-3,.teal.darken-3--after:after{background-color:#00695c!important}.teal--text.text--darken-3{color:#00695c!important}.teal--text.text--darken-3 input,.teal--text.text--darken-3 textarea{caret-color:#00695c!important}.teal.darken-4{border-color:#004d40!important}.teal.darken-4,.teal.darken-4--after:after{background-color:#004d40!important}.teal--text.text--darken-4{color:#004d40!important}.teal--text.text--darken-4 input,.teal--text.text--darken-4 textarea{caret-color:#004d40!important}.teal.accent-1{border-color:#a7ffeb!important}.teal.accent-1,.teal.accent-1--after:after{background-color:#a7ffeb!important}.teal--text.text--accent-1{color:#a7ffeb!important}.teal--text.text--accent-1 input,.teal--text.text--accent-1 textarea{caret-color:#a7ffeb!important}.teal.accent-2{border-color:#64ffda!important}.teal.accent-2,.teal.accent-2--after:after{background-color:#64ffda!important}.teal--text.text--accent-2{color:#64ffda!important}.teal--text.text--accent-2 input,.teal--text.text--accent-2 textarea{caret-color:#64ffda!important}.teal.accent-3{border-color:#1de9b6!important}.teal.accent-3,.teal.accent-3--after:after{background-color:#1de9b6!important}.teal--text.text--accent-3{color:#1de9b6!important}.teal--text.text--accent-3 input,.teal--text.text--accent-3 textarea{caret-color:#1de9b6!important}.teal.accent-4{border-color:#00bfa5!important}.teal.accent-4,.teal.accent-4--after:after{background-color:#00bfa5!important}.teal--text.text--accent-4{color:#00bfa5!important}.teal--text.text--accent-4 input,.teal--text.text--accent-4 textarea{caret-color:#00bfa5!important}.green{background-color:#4caf50!important;border-color:#4caf50!important}.green--text{color:#4caf50!important}.green--text input,.green--text textarea{caret-color:#4caf50!important}.green--after:after{background:#4caf50!important}.green.lighten-5{border-color:#e8f5e9!important}.green.lighten-5,.green.lighten-5--after:after{background-color:#e8f5e9!important}.green--text.text--lighten-5{color:#e8f5e9!important}.green--text.text--lighten-5 input,.green--text.text--lighten-5 textarea{caret-color:#e8f5e9!important}.green.lighten-4{border-color:#c8e6c9!important}.green.lighten-4,.green.lighten-4--after:after{background-color:#c8e6c9!important}.green--text.text--lighten-4{color:#c8e6c9!important}.green--text.text--lighten-4 input,.green--text.text--lighten-4 textarea{caret-color:#c8e6c9!important}.green.lighten-3{border-color:#a5d6a7!important}.green.lighten-3,.green.lighten-3--after:after{background-color:#a5d6a7!important}.green--text.text--lighten-3{color:#a5d6a7!important}.green--text.text--lighten-3 input,.green--text.text--lighten-3 textarea{caret-color:#a5d6a7!important}.green.lighten-2{border-color:#81c784!important}.green.lighten-2,.green.lighten-2--after:after{background-color:#81c784!important}.green--text.text--lighten-2{color:#81c784!important}.green--text.text--lighten-2 input,.green--text.text--lighten-2 textarea{caret-color:#81c784!important}.green.lighten-1{border-color:#66bb6a!important}.green.lighten-1,.green.lighten-1--after:after{background-color:#66bb6a!important}.green--text.text--lighten-1{color:#66bb6a!important}.green--text.text--lighten-1 input,.green--text.text--lighten-1 textarea{caret-color:#66bb6a!important}.green.darken-1{border-color:#43a047!important}.green.darken-1,.green.darken-1--after:after{background-color:#43a047!important}.green--text.text--darken-1{color:#43a047!important}.green--text.text--darken-1 input,.green--text.text--darken-1 textarea{caret-color:#43a047!important}.green.darken-2{border-color:#388e3c!important}.green.darken-2,.green.darken-2--after:after{background-color:#388e3c!important}.green--text.text--darken-2{color:#388e3c!important}.green--text.text--darken-2 input,.green--text.text--darken-2 textarea{caret-color:#388e3c!important}.green.darken-3{border-color:#2e7d32!important}.green.darken-3,.green.darken-3--after:after{background-color:#2e7d32!important}.green--text.text--darken-3{color:#2e7d32!important}.green--text.text--darken-3 input,.green--text.text--darken-3 textarea{caret-color:#2e7d32!important}.green.darken-4{border-color:#1b5e20!important}.green.darken-4,.green.darken-4--after:after{background-color:#1b5e20!important}.green--text.text--darken-4{color:#1b5e20!important}.green--text.text--darken-4 input,.green--text.text--darken-4 textarea{caret-color:#1b5e20!important}.green.accent-1{border-color:#b9f6ca!important}.green.accent-1,.green.accent-1--after:after{background-color:#b9f6ca!important}.green--text.text--accent-1{color:#b9f6ca!important}.green--text.text--accent-1 input,.green--text.text--accent-1 textarea{caret-color:#b9f6ca!important}.green.accent-2{border-color:#69f0ae!important}.green.accent-2,.green.accent-2--after:after{background-color:#69f0ae!important}.green--text.text--accent-2{color:#69f0ae!important}.green--text.text--accent-2 input,.green--text.text--accent-2 textarea{caret-color:#69f0ae!important}.green.accent-3{border-color:#00e676!important}.green.accent-3,.green.accent-3--after:after{background-color:#00e676!important}.green--text.text--accent-3{color:#00e676!important}.green--text.text--accent-3 input,.green--text.text--accent-3 textarea{caret-color:#00e676!important}.green.accent-4{border-color:#00c853!important}.green.accent-4,.green.accent-4--after:after{background-color:#00c853!important}.green--text.text--accent-4{color:#00c853!important}.green--text.text--accent-4 input,.green--text.text--accent-4 textarea{caret-color:#00c853!important}.light-green{background-color:#8bc34a!important;border-color:#8bc34a!important}.light-green--text{color:#8bc34a!important}.light-green--text input,.light-green--text textarea{caret-color:#8bc34a!important}.light-green--after:after{background:#8bc34a!important}.light-green.lighten-5{border-color:#f1f8e9!important}.light-green.lighten-5,.light-green.lighten-5--after:after{background-color:#f1f8e9!important}.light-green--text.text--lighten-5{color:#f1f8e9!important}.light-green--text.text--lighten-5 input,.light-green--text.text--lighten-5 textarea{caret-color:#f1f8e9!important}.light-green.lighten-4{border-color:#dcedc8!important}.light-green.lighten-4,.light-green.lighten-4--after:after{background-color:#dcedc8!important}.light-green--text.text--lighten-4{color:#dcedc8!important}.light-green--text.text--lighten-4 input,.light-green--text.text--lighten-4 textarea{caret-color:#dcedc8!important}.light-green.lighten-3{border-color:#c5e1a5!important}.light-green.lighten-3,.light-green.lighten-3--after:after{background-color:#c5e1a5!important}.light-green--text.text--lighten-3{color:#c5e1a5!important}.light-green--text.text--lighten-3 input,.light-green--text.text--lighten-3 textarea{caret-color:#c5e1a5!important}.light-green.lighten-2{border-color:#aed581!important}.light-green.lighten-2,.light-green.lighten-2--after:after{background-color:#aed581!important}.light-green--text.text--lighten-2{color:#aed581!important}.light-green--text.text--lighten-2 input,.light-green--text.text--lighten-2 textarea{caret-color:#aed581!important}.light-green.lighten-1{border-color:#9ccc65!important}.light-green.lighten-1,.light-green.lighten-1--after:after{background-color:#9ccc65!important}.light-green--text.text--lighten-1{color:#9ccc65!important}.light-green--text.text--lighten-1 input,.light-green--text.text--lighten-1 textarea{caret-color:#9ccc65!important}.light-green.darken-1{border-color:#7cb342!important}.light-green.darken-1,.light-green.darken-1--after:after{background-color:#7cb342!important}.light-green--text.text--darken-1{color:#7cb342!important}.light-green--text.text--darken-1 input,.light-green--text.text--darken-1 textarea{caret-color:#7cb342!important}.light-green.darken-2{border-color:#689f38!important}.light-green.darken-2,.light-green.darken-2--after:after{background-color:#689f38!important}.light-green--text.text--darken-2{color:#689f38!important}.light-green--text.text--darken-2 input,.light-green--text.text--darken-2 textarea{caret-color:#689f38!important}.light-green.darken-3{border-color:#558b2f!important}.light-green.darken-3,.light-green.darken-3--after:after{background-color:#558b2f!important}.light-green--text.text--darken-3{color:#558b2f!important}.light-green--text.text--darken-3 input,.light-green--text.text--darken-3 textarea{caret-color:#558b2f!important}.light-green.darken-4{border-color:#33691e!important}.light-green.darken-4,.light-green.darken-4--after:after{background-color:#33691e!important}.light-green--text.text--darken-4{color:#33691e!important}.light-green--text.text--darken-4 input,.light-green--text.text--darken-4 textarea{caret-color:#33691e!important}.light-green.accent-1{border-color:#ccff90!important}.light-green.accent-1,.light-green.accent-1--after:after{background-color:#ccff90!important}.light-green--text.text--accent-1{color:#ccff90!important}.light-green--text.text--accent-1 input,.light-green--text.text--accent-1 textarea{caret-color:#ccff90!important}.light-green.accent-2{border-color:#b2ff59!important}.light-green.accent-2,.light-green.accent-2--after:after{background-color:#b2ff59!important}.light-green--text.text--accent-2{color:#b2ff59!important}.light-green--text.text--accent-2 input,.light-green--text.text--accent-2 textarea{caret-color:#b2ff59!important}.light-green.accent-3{border-color:#76ff03!important}.light-green.accent-3,.light-green.accent-3--after:after{background-color:#76ff03!important}.light-green--text.text--accent-3{color:#76ff03!important}.light-green--text.text--accent-3 input,.light-green--text.text--accent-3 textarea{caret-color:#76ff03!important}.light-green.accent-4{border-color:#64dd17!important}.light-green.accent-4,.light-green.accent-4--after:after{background-color:#64dd17!important}.light-green--text.text--accent-4{color:#64dd17!important}.light-green--text.text--accent-4 input,.light-green--text.text--accent-4 textarea{caret-color:#64dd17!important}.lime{background-color:#cddc39!important;border-color:#cddc39!important}.lime--text{color:#cddc39!important}.lime--text input,.lime--text textarea{caret-color:#cddc39!important}.lime--after:after{background:#cddc39!important}.lime.lighten-5{border-color:#f9fbe7!important}.lime.lighten-5,.lime.lighten-5--after:after{background-color:#f9fbe7!important}.lime--text.text--lighten-5{color:#f9fbe7!important}.lime--text.text--lighten-5 input,.lime--text.text--lighten-5 textarea{caret-color:#f9fbe7!important}.lime.lighten-4{border-color:#f0f4c3!important}.lime.lighten-4,.lime.lighten-4--after:after{background-color:#f0f4c3!important}.lime--text.text--lighten-4{color:#f0f4c3!important}.lime--text.text--lighten-4 input,.lime--text.text--lighten-4 textarea{caret-color:#f0f4c3!important}.lime.lighten-3{border-color:#e6ee9c!important}.lime.lighten-3,.lime.lighten-3--after:after{background-color:#e6ee9c!important}.lime--text.text--lighten-3{color:#e6ee9c!important}.lime--text.text--lighten-3 input,.lime--text.text--lighten-3 textarea{caret-color:#e6ee9c!important}.lime.lighten-2{border-color:#dce775!important}.lime.lighten-2,.lime.lighten-2--after:after{background-color:#dce775!important}.lime--text.text--lighten-2{color:#dce775!important}.lime--text.text--lighten-2 input,.lime--text.text--lighten-2 textarea{caret-color:#dce775!important}.lime.lighten-1{border-color:#d4e157!important}.lime.lighten-1,.lime.lighten-1--after:after{background-color:#d4e157!important}.lime--text.text--lighten-1{color:#d4e157!important}.lime--text.text--lighten-1 input,.lime--text.text--lighten-1 textarea{caret-color:#d4e157!important}.lime.darken-1{border-color:#c0ca33!important}.lime.darken-1,.lime.darken-1--after:after{background-color:#c0ca33!important}.lime--text.text--darken-1{color:#c0ca33!important}.lime--text.text--darken-1 input,.lime--text.text--darken-1 textarea{caret-color:#c0ca33!important}.lime.darken-2{border-color:#afb42b!important}.lime.darken-2,.lime.darken-2--after:after{background-color:#afb42b!important}.lime--text.text--darken-2{color:#afb42b!important}.lime--text.text--darken-2 input,.lime--text.text--darken-2 textarea{caret-color:#afb42b!important}.lime.darken-3{border-color:#9e9d24!important}.lime.darken-3,.lime.darken-3--after:after{background-color:#9e9d24!important}.lime--text.text--darken-3{color:#9e9d24!important}.lime--text.text--darken-3 input,.lime--text.text--darken-3 textarea{caret-color:#9e9d24!important}.lime.darken-4{border-color:#827717!important}.lime.darken-4,.lime.darken-4--after:after{background-color:#827717!important}.lime--text.text--darken-4{color:#827717!important}.lime--text.text--darken-4 input,.lime--text.text--darken-4 textarea{caret-color:#827717!important}.lime.accent-1{border-color:#f4ff81!important}.lime.accent-1,.lime.accent-1--after:after{background-color:#f4ff81!important}.lime--text.text--accent-1{color:#f4ff81!important}.lime--text.text--accent-1 input,.lime--text.text--accent-1 textarea{caret-color:#f4ff81!important}.lime.accent-2{border-color:#eeff41!important}.lime.accent-2,.lime.accent-2--after:after{background-color:#eeff41!important}.lime--text.text--accent-2{color:#eeff41!important}.lime--text.text--accent-2 input,.lime--text.text--accent-2 textarea{caret-color:#eeff41!important}.lime.accent-3{border-color:#c6ff00!important}.lime.accent-3,.lime.accent-3--after:after{background-color:#c6ff00!important}.lime--text.text--accent-3{color:#c6ff00!important}.lime--text.text--accent-3 input,.lime--text.text--accent-3 textarea{caret-color:#c6ff00!important}.lime.accent-4{border-color:#aeea00!important}.lime.accent-4,.lime.accent-4--after:after{background-color:#aeea00!important}.lime--text.text--accent-4{color:#aeea00!important}.lime--text.text--accent-4 input,.lime--text.text--accent-4 textarea{caret-color:#aeea00!important}.yellow{background-color:#ffeb3b!important;border-color:#ffeb3b!important}.yellow--text{color:#ffeb3b!important}.yellow--text input,.yellow--text textarea{caret-color:#ffeb3b!important}.yellow--after:after{background:#ffeb3b!important}.yellow.lighten-5{border-color:#fffde7!important}.yellow.lighten-5,.yellow.lighten-5--after:after{background-color:#fffde7!important}.yellow--text.text--lighten-5{color:#fffde7!important}.yellow--text.text--lighten-5 input,.yellow--text.text--lighten-5 textarea{caret-color:#fffde7!important}.yellow.lighten-4{border-color:#fff9c4!important}.yellow.lighten-4,.yellow.lighten-4--after:after{background-color:#fff9c4!important}.yellow--text.text--lighten-4{color:#fff9c4!important}.yellow--text.text--lighten-4 input,.yellow--text.text--lighten-4 textarea{caret-color:#fff9c4!important}.yellow.lighten-3{border-color:#fff59d!important}.yellow.lighten-3,.yellow.lighten-3--after:after{background-color:#fff59d!important}.yellow--text.text--lighten-3{color:#fff59d!important}.yellow--text.text--lighten-3 input,.yellow--text.text--lighten-3 textarea{caret-color:#fff59d!important}.yellow.lighten-2{border-color:#fff176!important}.yellow.lighten-2,.yellow.lighten-2--after:after{background-color:#fff176!important}.yellow--text.text--lighten-2{color:#fff176!important}.yellow--text.text--lighten-2 input,.yellow--text.text--lighten-2 textarea{caret-color:#fff176!important}.yellow.lighten-1{border-color:#ffee58!important}.yellow.lighten-1,.yellow.lighten-1--after:after{background-color:#ffee58!important}.yellow--text.text--lighten-1{color:#ffee58!important}.yellow--text.text--lighten-1 input,.yellow--text.text--lighten-1 textarea{caret-color:#ffee58!important}.yellow.darken-1{border-color:#fdd835!important}.yellow.darken-1,.yellow.darken-1--after:after{background-color:#fdd835!important}.yellow--text.text--darken-1{color:#fdd835!important}.yellow--text.text--darken-1 input,.yellow--text.text--darken-1 textarea{caret-color:#fdd835!important}.yellow.darken-2{border-color:#fbc02d!important}.yellow.darken-2,.yellow.darken-2--after:after{background-color:#fbc02d!important}.yellow--text.text--darken-2{color:#fbc02d!important}.yellow--text.text--darken-2 input,.yellow--text.text--darken-2 textarea{caret-color:#fbc02d!important}.yellow.darken-3{border-color:#f9a825!important}.yellow.darken-3,.yellow.darken-3--after:after{background-color:#f9a825!important}.yellow--text.text--darken-3{color:#f9a825!important}.yellow--text.text--darken-3 input,.yellow--text.text--darken-3 textarea{caret-color:#f9a825!important}.yellow.darken-4{border-color:#f57f17!important}.yellow.darken-4,.yellow.darken-4--after:after{background-color:#f57f17!important}.yellow--text.text--darken-4{color:#f57f17!important}.yellow--text.text--darken-4 input,.yellow--text.text--darken-4 textarea{caret-color:#f57f17!important}.yellow.accent-1{border-color:#ffff8d!important}.yellow.accent-1,.yellow.accent-1--after:after{background-color:#ffff8d!important}.yellow--text.text--accent-1{color:#ffff8d!important}.yellow--text.text--accent-1 input,.yellow--text.text--accent-1 textarea{caret-color:#ffff8d!important}.yellow.accent-2{border-color:#ff0!important}.yellow.accent-2,.yellow.accent-2--after:after{background-color:#ff0!important}.yellow--text.text--accent-2{color:#ff0!important}.yellow--text.text--accent-2 input,.yellow--text.text--accent-2 textarea{caret-color:#ff0!important}.yellow.accent-3{border-color:#ffea00!important}.yellow.accent-3,.yellow.accent-3--after:after{background-color:#ffea00!important}.yellow--text.text--accent-3{color:#ffea00!important}.yellow--text.text--accent-3 input,.yellow--text.text--accent-3 textarea{caret-color:#ffea00!important}.yellow.accent-4{border-color:#ffd600!important}.yellow.accent-4,.yellow.accent-4--after:after{background-color:#ffd600!important}.yellow--text.text--accent-4{color:#ffd600!important}.yellow--text.text--accent-4 input,.yellow--text.text--accent-4 textarea{caret-color:#ffd600!important}.amber{background-color:#ffc107!important;border-color:#ffc107!important}.amber--text{color:#ffc107!important}.amber--text input,.amber--text textarea{caret-color:#ffc107!important}.amber--after:after{background:#ffc107!important}.amber.lighten-5{border-color:#fff8e1!important}.amber.lighten-5,.amber.lighten-5--after:after{background-color:#fff8e1!important}.amber--text.text--lighten-5{color:#fff8e1!important}.amber--text.text--lighten-5 input,.amber--text.text--lighten-5 textarea{caret-color:#fff8e1!important}.amber.lighten-4{border-color:#ffecb3!important}.amber.lighten-4,.amber.lighten-4--after:after{background-color:#ffecb3!important}.amber--text.text--lighten-4{color:#ffecb3!important}.amber--text.text--lighten-4 input,.amber--text.text--lighten-4 textarea{caret-color:#ffecb3!important}.amber.lighten-3{border-color:#ffe082!important}.amber.lighten-3,.amber.lighten-3--after:after{background-color:#ffe082!important}.amber--text.text--lighten-3{color:#ffe082!important}.amber--text.text--lighten-3 input,.amber--text.text--lighten-3 textarea{caret-color:#ffe082!important}.amber.lighten-2{border-color:#ffd54f!important}.amber.lighten-2,.amber.lighten-2--after:after{background-color:#ffd54f!important}.amber--text.text--lighten-2{color:#ffd54f!important}.amber--text.text--lighten-2 input,.amber--text.text--lighten-2 textarea{caret-color:#ffd54f!important}.amber.lighten-1{border-color:#ffca28!important}.amber.lighten-1,.amber.lighten-1--after:after{background-color:#ffca28!important}.amber--text.text--lighten-1{color:#ffca28!important}.amber--text.text--lighten-1 input,.amber--text.text--lighten-1 textarea{caret-color:#ffca28!important}.amber.darken-1{border-color:#ffb300!important}.amber.darken-1,.amber.darken-1--after:after{background-color:#ffb300!important}.amber--text.text--darken-1{color:#ffb300!important}.amber--text.text--darken-1 input,.amber--text.text--darken-1 textarea{caret-color:#ffb300!important}.amber.darken-2{border-color:#ffa000!important}.amber.darken-2,.amber.darken-2--after:after{background-color:#ffa000!important}.amber--text.text--darken-2{color:#ffa000!important}.amber--text.text--darken-2 input,.amber--text.text--darken-2 textarea{caret-color:#ffa000!important}.amber.darken-3{border-color:#ff8f00!important}.amber.darken-3,.amber.darken-3--after:after{background-color:#ff8f00!important}.amber--text.text--darken-3{color:#ff8f00!important}.amber--text.text--darken-3 input,.amber--text.text--darken-3 textarea{caret-color:#ff8f00!important}.amber.darken-4{border-color:#ff6f00!important}.amber.darken-4,.amber.darken-4--after:after{background-color:#ff6f00!important}.amber--text.text--darken-4{color:#ff6f00!important}.amber--text.text--darken-4 input,.amber--text.text--darken-4 textarea{caret-color:#ff6f00!important}.amber.accent-1{border-color:#ffe57f!important}.amber.accent-1,.amber.accent-1--after:after{background-color:#ffe57f!important}.amber--text.text--accent-1{color:#ffe57f!important}.amber--text.text--accent-1 input,.amber--text.text--accent-1 textarea{caret-color:#ffe57f!important}.amber.accent-2{border-color:#ffd740!important}.amber.accent-2,.amber.accent-2--after:after{background-color:#ffd740!important}.amber--text.text--accent-2{color:#ffd740!important}.amber--text.text--accent-2 input,.amber--text.text--accent-2 textarea{caret-color:#ffd740!important}.amber.accent-3{border-color:#ffc400!important}.amber.accent-3,.amber.accent-3--after:after{background-color:#ffc400!important}.amber--text.text--accent-3{color:#ffc400!important}.amber--text.text--accent-3 input,.amber--text.text--accent-3 textarea{caret-color:#ffc400!important}.amber.accent-4{border-color:#ffab00!important}.amber.accent-4,.amber.accent-4--after:after{background-color:#ffab00!important}.amber--text.text--accent-4{color:#ffab00!important}.amber--text.text--accent-4 input,.amber--text.text--accent-4 textarea{caret-color:#ffab00!important}.orange{background-color:#ff9800!important;border-color:#ff9800!important}.orange--text{color:#ff9800!important}.orange--text input,.orange--text textarea{caret-color:#ff9800!important}.orange--after:after{background:#ff9800!important}.orange.lighten-5{border-color:#fff3e0!important}.orange.lighten-5,.orange.lighten-5--after:after{background-color:#fff3e0!important}.orange--text.text--lighten-5{color:#fff3e0!important}.orange--text.text--lighten-5 input,.orange--text.text--lighten-5 textarea{caret-color:#fff3e0!important}.orange.lighten-4{border-color:#ffe0b2!important}.orange.lighten-4,.orange.lighten-4--after:after{background-color:#ffe0b2!important}.orange--text.text--lighten-4{color:#ffe0b2!important}.orange--text.text--lighten-4 input,.orange--text.text--lighten-4 textarea{caret-color:#ffe0b2!important}.orange.lighten-3{border-color:#ffcc80!important}.orange.lighten-3,.orange.lighten-3--after:after{background-color:#ffcc80!important}.orange--text.text--lighten-3{color:#ffcc80!important}.orange--text.text--lighten-3 input,.orange--text.text--lighten-3 textarea{caret-color:#ffcc80!important}.orange.lighten-2{border-color:#ffb74d!important}.orange.lighten-2,.orange.lighten-2--after:after{background-color:#ffb74d!important}.orange--text.text--lighten-2{color:#ffb74d!important}.orange--text.text--lighten-2 input,.orange--text.text--lighten-2 textarea{caret-color:#ffb74d!important}.orange.lighten-1{border-color:#ffa726!important}.orange.lighten-1,.orange.lighten-1--after:after{background-color:#ffa726!important}.orange--text.text--lighten-1{color:#ffa726!important}.orange--text.text--lighten-1 input,.orange--text.text--lighten-1 textarea{caret-color:#ffa726!important}.orange.darken-1{border-color:#fb8c00!important}.orange.darken-1,.orange.darken-1--after:after{background-color:#fb8c00!important}.orange--text.text--darken-1{color:#fb8c00!important}.orange--text.text--darken-1 input,.orange--text.text--darken-1 textarea{caret-color:#fb8c00!important}.orange.darken-2{border-color:#f57c00!important}.orange.darken-2,.orange.darken-2--after:after{background-color:#f57c00!important}.orange--text.text--darken-2{color:#f57c00!important}.orange--text.text--darken-2 input,.orange--text.text--darken-2 textarea{caret-color:#f57c00!important}.orange.darken-3{border-color:#ef6c00!important}.orange.darken-3,.orange.darken-3--after:after{background-color:#ef6c00!important}.orange--text.text--darken-3{color:#ef6c00!important}.orange--text.text--darken-3 input,.orange--text.text--darken-3 textarea{caret-color:#ef6c00!important}.orange.darken-4{border-color:#e65100!important}.orange.darken-4,.orange.darken-4--after:after{background-color:#e65100!important}.orange--text.text--darken-4{color:#e65100!important}.orange--text.text--darken-4 input,.orange--text.text--darken-4 textarea{caret-color:#e65100!important}.orange.accent-1{border-color:#ffd180!important}.orange.accent-1,.orange.accent-1--after:after{background-color:#ffd180!important}.orange--text.text--accent-1{color:#ffd180!important}.orange--text.text--accent-1 input,.orange--text.text--accent-1 textarea{caret-color:#ffd180!important}.orange.accent-2{border-color:#ffab40!important}.orange.accent-2,.orange.accent-2--after:after{background-color:#ffab40!important}.orange--text.text--accent-2{color:#ffab40!important}.orange--text.text--accent-2 input,.orange--text.text--accent-2 textarea{caret-color:#ffab40!important}.orange.accent-3{border-color:#ff9100!important}.orange.accent-3,.orange.accent-3--after:after{background-color:#ff9100!important}.orange--text.text--accent-3{color:#ff9100!important}.orange--text.text--accent-3 input,.orange--text.text--accent-3 textarea{caret-color:#ff9100!important}.orange.accent-4{border-color:#ff6d00!important}.orange.accent-4,.orange.accent-4--after:after{background-color:#ff6d00!important}.orange--text.text--accent-4{color:#ff6d00!important}.orange--text.text--accent-4 input,.orange--text.text--accent-4 textarea{caret-color:#ff6d00!important}.deep-orange{background-color:#ff5722!important;border-color:#ff5722!important}.deep-orange--text{color:#ff5722!important}.deep-orange--text input,.deep-orange--text textarea{caret-color:#ff5722!important}.deep-orange--after:after{background:#ff5722!important}.deep-orange.lighten-5{border-color:#fbe9e7!important}.deep-orange.lighten-5,.deep-orange.lighten-5--after:after{background-color:#fbe9e7!important}.deep-orange--text.text--lighten-5{color:#fbe9e7!important}.deep-orange--text.text--lighten-5 input,.deep-orange--text.text--lighten-5 textarea{caret-color:#fbe9e7!important}.deep-orange.lighten-4{border-color:#ffccbc!important}.deep-orange.lighten-4,.deep-orange.lighten-4--after:after{background-color:#ffccbc!important}.deep-orange--text.text--lighten-4{color:#ffccbc!important}.deep-orange--text.text--lighten-4 input,.deep-orange--text.text--lighten-4 textarea{caret-color:#ffccbc!important}.deep-orange.lighten-3{border-color:#ffab91!important}.deep-orange.lighten-3,.deep-orange.lighten-3--after:after{background-color:#ffab91!important}.deep-orange--text.text--lighten-3{color:#ffab91!important}.deep-orange--text.text--lighten-3 input,.deep-orange--text.text--lighten-3 textarea{caret-color:#ffab91!important}.deep-orange.lighten-2{border-color:#ff8a65!important}.deep-orange.lighten-2,.deep-orange.lighten-2--after:after{background-color:#ff8a65!important}.deep-orange--text.text--lighten-2{color:#ff8a65!important}.deep-orange--text.text--lighten-2 input,.deep-orange--text.text--lighten-2 textarea{caret-color:#ff8a65!important}.deep-orange.lighten-1{border-color:#ff7043!important}.deep-orange.lighten-1,.deep-orange.lighten-1--after:after{background-color:#ff7043!important}.deep-orange--text.text--lighten-1{color:#ff7043!important}.deep-orange--text.text--lighten-1 input,.deep-orange--text.text--lighten-1 textarea{caret-color:#ff7043!important}.deep-orange.darken-1{border-color:#f4511e!important}.deep-orange.darken-1,.deep-orange.darken-1--after:after{background-color:#f4511e!important}.deep-orange--text.text--darken-1{color:#f4511e!important}.deep-orange--text.text--darken-1 input,.deep-orange--text.text--darken-1 textarea{caret-color:#f4511e!important}.deep-orange.darken-2{border-color:#e64a19!important}.deep-orange.darken-2,.deep-orange.darken-2--after:after{background-color:#e64a19!important}.deep-orange--text.text--darken-2{color:#e64a19!important}.deep-orange--text.text--darken-2 input,.deep-orange--text.text--darken-2 textarea{caret-color:#e64a19!important}.deep-orange.darken-3{border-color:#d84315!important}.deep-orange.darken-3,.deep-orange.darken-3--after:after{background-color:#d84315!important}.deep-orange--text.text--darken-3{color:#d84315!important}.deep-orange--text.text--darken-3 input,.deep-orange--text.text--darken-3 textarea{caret-color:#d84315!important}.deep-orange.darken-4{border-color:#bf360c!important}.deep-orange.darken-4,.deep-orange.darken-4--after:after{background-color:#bf360c!important}.deep-orange--text.text--darken-4{color:#bf360c!important}.deep-orange--text.text--darken-4 input,.deep-orange--text.text--darken-4 textarea{caret-color:#bf360c!important}.deep-orange.accent-1{border-color:#ff9e80!important}.deep-orange.accent-1,.deep-orange.accent-1--after:after{background-color:#ff9e80!important}.deep-orange--text.text--accent-1{color:#ff9e80!important}.deep-orange--text.text--accent-1 input,.deep-orange--text.text--accent-1 textarea{caret-color:#ff9e80!important}.deep-orange.accent-2{border-color:#ff6e40!important}.deep-orange.accent-2,.deep-orange.accent-2--after:after{background-color:#ff6e40!important}.deep-orange--text.text--accent-2{color:#ff6e40!important}.deep-orange--text.text--accent-2 input,.deep-orange--text.text--accent-2 textarea{caret-color:#ff6e40!important}.deep-orange.accent-3{border-color:#ff3d00!important}.deep-orange.accent-3,.deep-orange.accent-3--after:after{background-color:#ff3d00!important}.deep-orange--text.text--accent-3{color:#ff3d00!important}.deep-orange--text.text--accent-3 input,.deep-orange--text.text--accent-3 textarea{caret-color:#ff3d00!important}.deep-orange.accent-4{border-color:#dd2c00!important}.deep-orange.accent-4,.deep-orange.accent-4--after:after{background-color:#dd2c00!important}.deep-orange--text.text--accent-4{color:#dd2c00!important}.deep-orange--text.text--accent-4 input,.deep-orange--text.text--accent-4 textarea{caret-color:#dd2c00!important}.brown{background-color:#795548!important;border-color:#795548!important}.brown--text{color:#795548!important}.brown--text input,.brown--text textarea{caret-color:#795548!important}.brown--after:after{background:#795548!important}.brown.lighten-5{border-color:#efebe9!important}.brown.lighten-5,.brown.lighten-5--after:after{background-color:#efebe9!important}.brown--text.text--lighten-5{color:#efebe9!important}.brown--text.text--lighten-5 input,.brown--text.text--lighten-5 textarea{caret-color:#efebe9!important}.brown.lighten-4{border-color:#d7ccc8!important}.brown.lighten-4,.brown.lighten-4--after:after{background-color:#d7ccc8!important}.brown--text.text--lighten-4{color:#d7ccc8!important}.brown--text.text--lighten-4 input,.brown--text.text--lighten-4 textarea{caret-color:#d7ccc8!important}.brown.lighten-3{border-color:#bcaaa4!important}.brown.lighten-3,.brown.lighten-3--after:after{background-color:#bcaaa4!important}.brown--text.text--lighten-3{color:#bcaaa4!important}.brown--text.text--lighten-3 input,.brown--text.text--lighten-3 textarea{caret-color:#bcaaa4!important}.brown.lighten-2{border-color:#a1887f!important}.brown.lighten-2,.brown.lighten-2--after:after{background-color:#a1887f!important}.brown--text.text--lighten-2{color:#a1887f!important}.brown--text.text--lighten-2 input,.brown--text.text--lighten-2 textarea{caret-color:#a1887f!important}.brown.lighten-1{border-color:#8d6e63!important}.brown.lighten-1,.brown.lighten-1--after:after{background-color:#8d6e63!important}.brown--text.text--lighten-1{color:#8d6e63!important}.brown--text.text--lighten-1 input,.brown--text.text--lighten-1 textarea{caret-color:#8d6e63!important}.brown.darken-1{border-color:#6d4c41!important}.brown.darken-1,.brown.darken-1--after:after{background-color:#6d4c41!important}.brown--text.text--darken-1{color:#6d4c41!important}.brown--text.text--darken-1 input,.brown--text.text--darken-1 textarea{caret-color:#6d4c41!important}.brown.darken-2{border-color:#5d4037!important}.brown.darken-2,.brown.darken-2--after:after{background-color:#5d4037!important}.brown--text.text--darken-2{color:#5d4037!important}.brown--text.text--darken-2 input,.brown--text.text--darken-2 textarea{caret-color:#5d4037!important}.brown.darken-3{border-color:#4e342e!important}.brown.darken-3,.brown.darken-3--after:after{background-color:#4e342e!important}.brown--text.text--darken-3{color:#4e342e!important}.brown--text.text--darken-3 input,.brown--text.text--darken-3 textarea{caret-color:#4e342e!important}.brown.darken-4{border-color:#3e2723!important}.brown.darken-4,.brown.darken-4--after:after{background-color:#3e2723!important}.brown--text.text--darken-4{color:#3e2723!important}.brown--text.text--darken-4 input,.brown--text.text--darken-4 textarea{caret-color:#3e2723!important}.blue-grey{background-color:#607d8b!important;border-color:#607d8b!important}.blue-grey--text{color:#607d8b!important}.blue-grey--text input,.blue-grey--text textarea{caret-color:#607d8b!important}.blue-grey--after:after{background:#607d8b!important}.blue-grey.lighten-5{border-color:#eceff1!important}.blue-grey.lighten-5,.blue-grey.lighten-5--after:after{background-color:#eceff1!important}.blue-grey--text.text--lighten-5{color:#eceff1!important}.blue-grey--text.text--lighten-5 input,.blue-grey--text.text--lighten-5 textarea{caret-color:#eceff1!important}.blue-grey.lighten-4{border-color:#cfd8dc!important}.blue-grey.lighten-4,.blue-grey.lighten-4--after:after{background-color:#cfd8dc!important}.blue-grey--text.text--lighten-4{color:#cfd8dc!important}.blue-grey--text.text--lighten-4 input,.blue-grey--text.text--lighten-4 textarea{caret-color:#cfd8dc!important}.blue-grey.lighten-3{border-color:#b0bec5!important}.blue-grey.lighten-3,.blue-grey.lighten-3--after:after{background-color:#b0bec5!important}.blue-grey--text.text--lighten-3{color:#b0bec5!important}.blue-grey--text.text--lighten-3 input,.blue-grey--text.text--lighten-3 textarea{caret-color:#b0bec5!important}.blue-grey.lighten-2{border-color:#90a4ae!important}.blue-grey.lighten-2,.blue-grey.lighten-2--after:after{background-color:#90a4ae!important}.blue-grey--text.text--lighten-2{color:#90a4ae!important}.blue-grey--text.text--lighten-2 input,.blue-grey--text.text--lighten-2 textarea{caret-color:#90a4ae!important}.blue-grey.lighten-1{border-color:#78909c!important}.blue-grey.lighten-1,.blue-grey.lighten-1--after:after{background-color:#78909c!important}.blue-grey--text.text--lighten-1{color:#78909c!important}.blue-grey--text.text--lighten-1 input,.blue-grey--text.text--lighten-1 textarea{caret-color:#78909c!important}.blue-grey.darken-1{border-color:#546e7a!important}.blue-grey.darken-1,.blue-grey.darken-1--after:after{background-color:#546e7a!important}.blue-grey--text.text--darken-1{color:#546e7a!important}.blue-grey--text.text--darken-1 input,.blue-grey--text.text--darken-1 textarea{caret-color:#546e7a!important}.blue-grey.darken-2{border-color:#455a64!important}.blue-grey.darken-2,.blue-grey.darken-2--after:after{background-color:#455a64!important}.blue-grey--text.text--darken-2{color:#455a64!important}.blue-grey--text.text--darken-2 input,.blue-grey--text.text--darken-2 textarea{caret-color:#455a64!important}.blue-grey.darken-3{border-color:#37474f!important}.blue-grey.darken-3,.blue-grey.darken-3--after:after{background-color:#37474f!important}.blue-grey--text.text--darken-3{color:#37474f!important}.blue-grey--text.text--darken-3 input,.blue-grey--text.text--darken-3 textarea{caret-color:#37474f!important}.blue-grey.darken-4{border-color:#263238!important}.blue-grey.darken-4,.blue-grey.darken-4--after:after{background-color:#263238!important}.blue-grey--text.text--darken-4{color:#263238!important}.blue-grey--text.text--darken-4 input,.blue-grey--text.text--darken-4 textarea{caret-color:#263238!important}.grey{background-color:#9e9e9e!important;border-color:#9e9e9e!important}.grey--text{color:#9e9e9e!important}.grey--text input,.grey--text textarea{caret-color:#9e9e9e!important}.grey--after:after{background:#9e9e9e!important}.grey.lighten-5{border-color:#fafafa!important}.grey.lighten-5,.grey.lighten-5--after:after{background-color:#fafafa!important}.grey--text.text--lighten-5{color:#fafafa!important}.grey--text.text--lighten-5 input,.grey--text.text--lighten-5 textarea{caret-color:#fafafa!important}.grey.lighten-4{border-color:#f5f5f5!important}.grey.lighten-4,.grey.lighten-4--after:after{background-color:#f5f5f5!important}.grey--text.text--lighten-4{color:#f5f5f5!important}.grey--text.text--lighten-4 input,.grey--text.text--lighten-4 textarea{caret-color:#f5f5f5!important}.grey.lighten-3{border-color:#eee!important}.grey.lighten-3,.grey.lighten-3--after:after{background-color:#eee!important}.grey--text.text--lighten-3{color:#eee!important}.grey--text.text--lighten-3 input,.grey--text.text--lighten-3 textarea{caret-color:#eee!important}.grey.lighten-2{border-color:#e0e0e0!important}.grey.lighten-2,.grey.lighten-2--after:after{background-color:#e0e0e0!important}.grey--text.text--lighten-2{color:#e0e0e0!important}.grey--text.text--lighten-2 input,.grey--text.text--lighten-2 textarea{caret-color:#e0e0e0!important}.grey.lighten-1{border-color:#bdbdbd!important}.grey.lighten-1,.grey.lighten-1--after:after{background-color:#bdbdbd!important}.grey--text.text--lighten-1{color:#bdbdbd!important}.grey--text.text--lighten-1 input,.grey--text.text--lighten-1 textarea{caret-color:#bdbdbd!important}.grey.darken-1{border-color:#757575!important}.grey.darken-1,.grey.darken-1--after:after{background-color:#757575!important}.grey--text.text--darken-1{color:#757575!important}.grey--text.text--darken-1 input,.grey--text.text--darken-1 textarea{caret-color:#757575!important}.grey.darken-2{border-color:#616161!important}.grey.darken-2,.grey.darken-2--after:after{background-color:#616161!important}.grey--text.text--darken-2{color:#616161!important}.grey--text.text--darken-2 input,.grey--text.text--darken-2 textarea{caret-color:#616161!important}.grey.darken-3{border-color:#424242!important}.grey.darken-3,.grey.darken-3--after:after{background-color:#424242!important}.grey--text.text--darken-3{color:#424242!important}.grey--text.text--darken-3 input,.grey--text.text--darken-3 textarea{caret-color:#424242!important}.grey.darken-4{border-color:#212121!important}.grey.darken-4,.grey.darken-4--after:after{background-color:#212121!important}.grey--text.text--darken-4{color:#212121!important}.grey--text.text--darken-4 input,.grey--text.text--darken-4 textarea{caret-color:#212121!important}.shades.black{border-color:#000!important}.shades.black,.shades.black--after:after{background-color:#000!important}.shades--text.text--black{color:#000!important}.shades--text.text--black input,.shades--text.text--black textarea{caret-color:#000!important}.shades.white{border-color:#fff!important}.shades.white,.shades.white--after:after{background-color:#fff!important}.shades--text.text--white{color:#fff!important}.shades--text.text--white input,.shades--text.text--white textarea{caret-color:#fff!important}.shades.transparent{border-color:transparent!important}.shades.transparent,.shades.transparent--after:after{background-color:transparent!important}.shades--text.text--transparent{color:transparent!important}.shades--text.text--transparent input,.shades--text.text--transparent textarea{caret-color:transparent!important}.elevation-0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)!important}.elevation-1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)!important}.elevation-2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)!important}.elevation-3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)!important}.elevation-4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)!important}.elevation-5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)!important}.elevation-6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)!important}.elevation-7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)!important}.elevation-8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)!important}.elevation-9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)!important}.elevation-10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important}.elevation-11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)!important}.elevation-12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)!important}.elevation-13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)!important}.elevation-14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)!important}.elevation-15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)!important}.elevation-16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)!important}.elevation-17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)!important}.elevation-18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)!important}.elevation-19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)!important}.elevation-20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)!important}.elevation-21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)!important}.elevation-22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)!important}.elevation-23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)!important}.elevation-24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)!important}html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{background-repeat:no-repeat;padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:0;border:0}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}.bottom-sheet-transition-enter,.bottom-sheet-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)}.carousel-transition-enter{-webkit-transform:translate(100%);transform:translate(100%)}.carousel-transition-leave,.carousel-transition-leave-to{position:absolute;top:0}.carousel-reverse-transition-enter,.carousel-transition-leave,.carousel-transition-leave-to{-webkit-transform:translate(-100%);transform:translate(-100%)}.carousel-reverse-transition-leave,.carousel-reverse-transition-leave-to{position:absolute;top:0;-webkit-transform:translate(100%);transform:translate(100%)}.dialog-transition-enter,.dialog-transition-leave-to{-webkit-transform:scale(.5);transform:scale(.5);opacity:0}.dialog-transition-enter-to,.dialog-transition-leave{opacity:1}.dialog-bottom-transition-enter,.dialog-bottom-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)}.picker-reverse-transition-enter-active,.picker-reverse-transition-leave-active,.picker-transition-enter-active,.picker-transition-leave-active{transition:.3s cubic-bezier(0,0,.2,1)}.picker-reverse-transition-enter,.picker-reverse-transition-leave-to,.picker-transition-enter,.picker-transition-leave-to{opacity:0}.picker-reverse-transition-enter-to,.picker-transition-enter-to{transtion:translate(0,0)}.picker-reverse-transition-leave,.picker-reverse-transition-leave-active,.picker-reverse-transition-leave-to,.picker-transition-leave,.picker-transition-leave-active,.picker-transition-leave-to{position:absolute!important}.picker-transition-enter{-webkit-transform:translateY(100%);transform:translateY(100%)}.picker-reverse-transition-enter,.picker-transition-leave-to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.picker-reverse-transition-leave-to{-webkit-transform:translateY(100%);transform:translateY(100%)}.picker-title-transition-enter-to,.picker-title-transition-leave{-webkit-transform:translate(0);transform:translate(0)}.picker-title-transition-enter{-webkit-transform:translate(-100%);transform:translate(-100%)}.picker-title-transition-leave-to{opacity:0;-webkit-transform:translate(100%);transform:translate(100%)}.picker-title-transition-leave,.picker-title-transition-leave-active,.picker-title-transition-leave-to{position:absolute!important}.tab-transition-enter{-webkit-transform:translate(100%);transform:translate(100%)}.tab-transition-enter-to{-webkit-transform:translate(0);transform:translate(0)}.tab-transition-leave,.tab-transition-leave-active{position:absolute;top:0}.tab-transition-leave-to{position:absolute}.tab-reverse-transition-enter,.tab-transition-leave-to{-webkit-transform:translate(-100%);transform:translate(-100%)}.tab-reverse-transition-leave,.tab-reverse-transition-leave-to{top:0;position:absolute;-webkit-transform:translate(100%);transform:translate(100%)}.scale-transition-enter-active,.scale-transition-leave-active{transition:.2s cubic-bezier(.4,0,.6,1)}.scale-transition-enter,.scale-transition-leave,.scale-transition-leave-to{opacity:0;-webkit-transform:scale(0);transform:scale(0)}.slide-y-transition-enter-active,.slide-y-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.slide-y-transition-enter,.slide-y-transition-leave-to{opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px)}.slide-y-reverse-transition-enter-active,.slide-y-reverse-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.slide-y-reverse-transition-enter,.slide-y-reverse-transition-leave-to{opacity:0;-webkit-transform:translateY(15px);transform:translateY(15px)}.slide-x-transition-enter-active,.slide-x-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.slide-x-transition-enter,.slide-x-transition-leave-to{opacity:0;-webkit-transform:translateX(-15px);transform:translateX(-15px)}.slide-x-reverse-transition-enter-active,.slide-x-reverse-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.slide-x-reverse-transition-enter,.slide-x-reverse-transition-leave-to{opacity:0;-webkit-transform:translateX(15px);transform:translateX(15px)}.fade-transition-enter-active,.fade-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.fade-transition-enter,.fade-transition-leave-to{opacity:0}.fab-transition-enter-active,.fab-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.fab-transition-enter,.fab-transition-leave-to{-webkit-transform:scale(0) rotate(-45deg);transform:scale(0) rotate(-45deg)}.blockquote{padding:16px 0 16px 24px;font-size:18px;font-weight:300}code,kbd{display:inline-block;border-radius:3px;white-space:pre-wrap;font-size:85%;font-weight:900}code:after,code:before,kbd:after,kbd:before{content:\\\"\\\\A0\\\";letter-spacing:-1px}code{background-color:#f5f5f5;color:#bd4147;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}kbd{background:#424242;color:#fff}html{font-size:14px;overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:rgba(0,0,0,0)}.application{font-family:Roboto,sans-serif;line-height:1.5}::-ms-clear,::-ms-reveal{display:none}.browser-list{padding-left:24px}.browser-list--unstyled{list-style-type:none}.display-4{font-size:112px!important;font-weight:300;line-height:1!important;letter-spacing:-.04em!important}.display-3{font-size:56px!important;font-weight:400;line-height:1.35!important;letter-spacing:-.02em!important}.display-2{font-size:45px!important;line-height:48px!important}.display-1,.display-2{font-weight:400;letter-spacing:normal!important}.display-1{font-size:34px!important;line-height:40px!important}.headline{font-size:24px!important;font-weight:400;line-height:32px!important;letter-spacing:normal!important}.title{font-size:20px!important;font-weight:500;line-height:1!important;letter-spacing:.02em!important}.subheading{font-size:16px!important;font-weight:400}.body-2{font-weight:500}.body-1,.body-2{font-size:14px!important}.body-1,.caption{font-weight:400}.caption{font-size:12px!important}p{margin-bottom:16px}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.right{float:right!important}.left{float:left!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.mt-0{margin-top:0!important}.mr-0{margin-right:0!important}.mb-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.mx-0{margin-right:0!important}.my-0{margin-top:0!important;margin-bottom:0!important}.ma-0{margin:0!important}.pt-0{padding-top:0!important}.pr-0{padding-right:0!important}.pb-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.px-0{padding-right:0!important}.py-0{padding-top:0!important;padding-bottom:0!important}.pa-0{padding:0!important}.mt-1{margin-top:4px!important}.mr-1{margin-right:4px!important}.mb-1{margin-bottom:4px!important}.ml-1,.mx-1{margin-left:4px!important}.mx-1{margin-right:4px!important}.my-1{margin-top:4px!important;margin-bottom:4px!important}.ma-1{margin:4px!important}.pt-1{padding-top:4px!important}.pr-1{padding-right:4px!important}.pb-1{padding-bottom:4px!important}.pl-1,.px-1{padding-left:4px!important}.px-1{padding-right:4px!important}.py-1{padding-top:4px!important;padding-bottom:4px!important}.pa-1{padding:4px!important}.mt-2{margin-top:8px!important}.mr-2{margin-right:8px!important}.mb-2{margin-bottom:8px!important}.ml-2,.mx-2{margin-left:8px!important}.mx-2{margin-right:8px!important}.my-2{margin-top:8px!important;margin-bottom:8px!important}.ma-2{margin:8px!important}.pt-2{padding-top:8px!important}.pr-2{padding-right:8px!important}.pb-2{padding-bottom:8px!important}.pl-2,.px-2{padding-left:8px!important}.px-2{padding-right:8px!important}.py-2{padding-top:8px!important;padding-bottom:8px!important}.pa-2{padding:8px!important}.mt-3{margin-top:16px!important}.mr-3{margin-right:16px!important}.mb-3{margin-bottom:16px!important}.ml-3,.mx-3{margin-left:16px!important}.mx-3{margin-right:16px!important}.my-3{margin-top:16px!important;margin-bottom:16px!important}.ma-3{margin:16px!important}.pt-3{padding-top:16px!important}.pr-3{padding-right:16px!important}.pb-3{padding-bottom:16px!important}.pl-3,.px-3{padding-left:16px!important}.px-3{padding-right:16px!important}.py-3{padding-top:16px!important;padding-bottom:16px!important}.pa-3{padding:16px!important}.mt-4{margin-top:24px!important}.mr-4{margin-right:24px!important}.mb-4{margin-bottom:24px!important}.ml-4,.mx-4{margin-left:24px!important}.mx-4{margin-right:24px!important}.my-4{margin-top:24px!important;margin-bottom:24px!important}.ma-4{margin:24px!important}.pt-4{padding-top:24px!important}.pr-4{padding-right:24px!important}.pb-4{padding-bottom:24px!important}.pl-4,.px-4{padding-left:24px!important}.px-4{padding-right:24px!important}.py-4{padding-top:24px!important;padding-bottom:24px!important}.pa-4{padding:24px!important}.mt-5{margin-top:48px!important}.mr-5{margin-right:48px!important}.mb-5{margin-bottom:48px!important}.ml-5,.mx-5{margin-left:48px!important}.mx-5{margin-right:48px!important}.my-5{margin-top:48px!important;margin-bottom:48px!important}.ma-5{margin:48px!important}.pt-5{padding-top:48px!important}.pr-5{padding-right:48px!important}.pb-5{padding-bottom:48px!important}.pl-5,.px-5{padding-left:48px!important}.px-5{padding-right:48px!important}.py-5{padding-top:48px!important;padding-bottom:48px!important}.pa-5{padding:48px!important}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}@media only screen and (max-width:599px){.hidden-xs-only{display:none!important}}@media only screen and (min-width:600px) and (max-width:959px){.hidden-sm-only{display:none!important}}@media only screen and (max-width:959px){.hidden-sm-and-down{display:none!important}}@media only screen and (min-width:600px){.hidden-sm-and-up{display:none!important}}@media only screen and (min-width:960px) and (max-width:1263px){.hidden-md-only{display:none!important}}@media only screen and (max-width:1263px){.hidden-md-and-down{display:none!important}}@media only screen and (min-width:960px){.hidden-md-and-up{display:none!important}}@media only screen and (min-width:1264px) and (max-width:1903px){.hidden-lg-only{display:none!important}}@media only screen and (max-width:1903px){.hidden-lg-and-down{display:none!important}}@media only screen and (min-width:1264px){.hidden-lg-and-up{display:none!important}}@media only screen and (min-width:1904px){.hidden-xl-only{display:none!important}}@media (min-width:0){.text-xs-left{text-align:left!important}.text-xs-center{text-align:center!important}.text-xs-right{text-align:right!important}.text-xs-justify{text-align:justify!important}}@media (min-width:600px){.text-sm-left{text-align:left!important}.text-sm-center{text-align:center!important}.text-sm-right{text-align:right!important}.text-sm-justify{text-align:justify!important}}@media (min-width:960px){.text-md-left{text-align:left!important}.text-md-center{text-align:center!important}.text-md-right{text-align:right!important}.text-md-justify{text-align:justify!important}}@media (min-width:1264px){.text-lg-left{text-align:left!important}.text-lg-center{text-align:center!important}.text-lg-right{text-align:right!important}.text-lg-justify{text-align:justify!important}}@media (min-width:1904px){.text-xl-left{text-align:left!important}.text-xl-center{text-align:center!important}.text-xl-right{text-align:right!important}.text-xl-justify{text-align:justify!important}}.application,.application--wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.application--wrap{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100vh;max-width:100%;position:relative}.application.theme--light{background:#fafafa;color:rgba(0,0,0,.87)}.application.theme--light a{cursor:pointer}.application.theme--light .text--primary{color:rgba(0,0,0,.87)!important}.application.theme--light .text--secondary{color:rgba(0,0,0,.54)!important}.application.theme--light .text--disabled{color:rgba(0,0,0,.38)!important}.application.theme--dark{background:#303030;color:#fff}.application.theme--dark a{cursor:pointer}.application.theme--dark .text--primary{color:#fff!important}.application.theme--dark .text--secondary{color:hsla(0,0%,100%,.7)!important}.application.theme--dark .text--disabled{color:hsla(0,0%,100%,.5)!important}@media print{@-moz-document url-prefix(){.application,.application--wrap{display:block}}}.alert{border-radius:0;border-width:4px 0 0;border-style:solid;color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;margin:4px auto;padding:16px;position:relative;transition:.3s cubic-bezier(.25,.8,.5,1)}.alert .alert__icon.icon,.alert__dismissible .icon{-ms-flex-item-align:center;align-self:center;color:rgba(0,0,0,.3);font-size:24px}.alert--outline .icon{color:inherit!important}.alert__icon{margin-right:16px}.alert__dismissible{-ms-flex-item-align:start;align-self:flex-start;color:inherit;margin-left:16px;margin-right:0;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.alert__dismissible:hover{opacity:.8}.alert--no-icon .alert__icon{display:none}.alert>div{-ms-flex-item-align:center;align-self:center;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1}.alert.alert{border-color:rgba(0,0,0,.12)!important}.alert.alert--outline{border:1px solid currentColor!important}@media screen and (max-width:600px){.alert__icon{display:none}}.application .theme--light.icon,.theme--light .icon{color:rgba(0,0,0,.54)}.application .theme--light.icon.icon--disabled:not(.input-group__append-icon),.theme--light .icon.icon--disabled:not(.input-group__append-icon){color:rgba(0,0,0,.38)!important}.application .theme--dark.icon,.theme--dark .icon{color:#fff}.application .theme--dark.icon.icon--disabled:not(.input-group__append-icon),.theme--dark .icon.icon--disabled:not(.input-group__append-icon){color:hsla(0,0%,100%,.5)!important}.icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-font-feature-settings:\\\"liga\\\";font-feature-settings:\\\"liga\\\";font-size:24px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;line-height:1;transition:.3s cubic-bezier(.25,.8,.5,1);vertical-align:middle}.icon.icon--large{font-size:2.5rem}.icon.icon--medium{font-size:2rem}.icon.icon--x-large{font-size:3rem}.icon.icon--disabled{pointer-events:none}.avatar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;text-align:center;vertical-align:middle}.avatar,.avatar .icon,.avatar img{border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.avatar .icon,.avatar img{height:inherit;width:inherit}.avatar--tile,.avatar--tile .icon,.avatar--tile img{border-radius:0}.badge{display:inline-block;position:relative}.badge__badge{color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;top:-11px;right:-22px;border-radius:50%;height:22px;width:22px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;transition:.3s cubic-bezier(.25,.8,.5,1)}.badge__badge,.badge__badge .icon{font-size:14px}.badge--overlap .badge__badge{top:-8px;right:-8px}.badge--overlap.badge--left .badge__badge{left:-8px;right:auto}.badge--overlap.badge--bottom .badge__badge{bottom:-8px;top:auto}.badge--left .badge__badge{left:-22px}.badge--bottom .badge__badge{bottom:-11px;top:auto}.application .theme--light.bottom-nav,.theme--light .bottom-nav{background-color:#fff}.application .theme--dark.bottom-nav,.theme--dark .bottom-nav{background-color:#424242}.bottom-nav{bottom:0;box-shadow:0 3px 14px 2px rgba(0,0,0,.12);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform:translateY(60px);transform:translateY(60px);transition:all .4s cubic-bezier(.25,.8,.5,1);width:100%;z-index:4}.bottom-nav--absolute{position:absolute}.bottom-nav--active{-webkit-transform:translate(0);transform:translate(0)}.bottom-nav--fixed{position:fixed}.bottom-nav .btn{background:transparent!important;border-radius:0;box-shadow:none!important;font-weight:400;height:100%;margin:0;max-width:168px;min-width:80px;padding:6px 0 10px;text-transform:none;opacity:.5;width:100%}.bottom-nav .btn .btn__content{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;font-size:12px;white-space:nowrap;will-change:font-size}.bottom-nav .btn .btn__content i.icon{color:inherit;margin-bottom:4px;transition:all .4s cubic-bezier(.25,.8,.5,1)}.bottom-nav .btn .btn__content span{line-height:1}.bottom-nav .btn--active{opacity:1}.bottom-nav .btn--active .btn__content{font-size:14px}.bottom-nav .btn--active .btn__content:before{opacity:0}.bottom-nav .btn--active .btn__content .icon{-webkit-transform:none;transform:none}.bottom-nav .btn:not(.btn--active){-webkit-filter:grayscale(100%);filter:grayscale(100%)}.bottom-nav--shift .btn__content{font-size:14px}.bottom-nav--shift .btn{transition:all .3s;min-width:56px;max-width:96px}.bottom-nav--shift .btn--active{min-width:96px;max-width:168px}.bottom-nav--shift .btn:not(.btn--active) .btn__content .icon{-webkit-transform:scale(1) translateY(10px);transform:scale(1) translateY(10px)}.bottom-nav--shift .btn:not(.btn--active) .btn__content span{color:transparent}.bottom-sheet.dialog{-ms-flex-item-align:end;align-self:flex-end;border-radius:0;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;margin:0;min-width:100%;overflow:visible;transition:.4s cubic-bezier(.25,.8,.5,1)}.bottom-sheet.dialog.bottom-sheet--inset{max-width:70%;min-width:0}@media only screen and (max-width:599px){.bottom-sheet.dialog.bottom-sheet--inset{max-width:none}}.dialog{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);border-radius:2px;margin:24px;overflow-y:auto;pointer-events:auto;z-index:inherit}.dialog,.dialog__content{transition:.3s ease-in-out;width:100%}.dialog__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;pointer-events:none;position:fixed;top:0;z-index:6;outline:none}.dialog:not(.dialog--fullscreen){max-height:90%}.dialog__container{display:inline-block;vertical-align:middle}.dialog--fullscreen{margin:0;height:100%;position:fixed;overflow-y:auto;top:0;left:0}.dialog--fullscreen>.card{min-height:100%;min-width:100%;margin:0!important;padding:0!important}.dialog--scrollable,.dialog--scrollable>.card{display:-webkit-box;display:-ms-flexbox;display:flex}.dialog--scrollable>.card{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.dialog--scrollable>.card>.card__actions,.dialog--scrollable>.card>.card__title{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.dialog--scrollable>.card>.card__text{overflow-y:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;transition:.5s cubic-bezier(.25,.8,.5,1);z-index:5}.overlay--absolute,.overlay:before{position:absolute}.overlay:before{background-color:#212121;bottom:0;content:\\\"\\\";height:100%;left:0;opacity:0;right:0;top:0;transition:inherit;transition-delay:.15s;width:100%}.overlay--active{pointer-events:auto;-ms-touch-action:none;touch-action:none}.overlay--active:before{opacity:.46}.application .theme--light.breadcrumbs li.breadcrumbs__divider,.application .theme--light.breadcrumbs li .breadcrumbs__item--disabled,.application .theme--light.breadcrumbs li:last-child .breadcrumbs__item,.theme--light .breadcrumbs li.breadcrumbs__divider,.theme--light .breadcrumbs li .breadcrumbs__item--disabled,.theme--light .breadcrumbs li:last-child .breadcrumbs__item{color:rgba(0,0,0,.38)}.application .theme--dark.breadcrumbs li.breadcrumbs__divider,.application .theme--dark.breadcrumbs li .breadcrumbs__item--disabled,.application .theme--dark.breadcrumbs li:last-child .breadcrumbs__item,.theme--dark .breadcrumbs li.breadcrumbs__divider,.theme--dark .breadcrumbs li .breadcrumbs__item--disabled,.theme--dark .breadcrumbs li:last-child .breadcrumbs__item{color:hsla(0,0%,100%,.5)}.breadcrumbs{-ms-flex-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;list-style-type:none;margin:0;padding:18px 12px}.breadcrumbs,.breadcrumbs li{-webkit-box-align:center;align-items:center}.breadcrumbs li{-ms-flex-align:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:14px}.breadcrumbs li .icon{font-size:16px}.breadcrumbs li:last-child a{cursor:default;pointer-events:none}.breadcrumbs li:nth-child(2n){padding:0 12px}.breadcrumbs--large li,.breadcrumbs--large li .icon{font-size:16px}.breadcrumbs__item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1)}.breadcrumbs__item--disabled{pointer-events:none}.ripple__container{border-radius:inherit;width:100%;height:100%;z-index:0;contain:strict}.ripple__animation,.ripple__container{color:inherit;position:absolute;left:0;top:0;overflow:hidden;pointer-events:none}.ripple__animation{border-radius:50%;background:currentColor;opacity:0;transition:.4s cubic-bezier(0,0,.2,1);will-change:transform,opacity}.ripple__animation--enter{transition:none}.ripple__animation--visible{opacity:.15}.application .theme--light.btn,.theme--light .btn{color:rgba(0,0,0,.87)}.application .theme--light.btn.btn--disabled,.application .theme--light.btn.btn--disabled .icon,.theme--light .btn.btn--disabled,.theme--light .btn.btn--disabled .icon{color:rgba(0,0,0,.26)!important}.application .theme--light.btn.btn--disabled:not(.btn--icon):not(.btn--flat),.theme--light .btn.btn--disabled:not(.btn--icon):not(.btn--flat){background-color:rgba(0,0,0,.12)!important}.application .theme--light.btn:not(.btn--icon):not(.btn--flat),.theme--light .btn:not(.btn--icon):not(.btn--flat){background-color:#f5f5f5}.application .theme--dark.btn,.theme--dark .btn{color:#fff}.application .theme--dark.btn.btn--disabled,.application .theme--dark.btn.btn--disabled .icon,.theme--dark .btn.btn--disabled,.theme--dark .btn.btn--disabled .icon{color:hsla(0,0%,100%,.3)!important}.application .theme--dark.btn.btn--disabled:not(.btn--icon):not(.btn--flat),.theme--dark .btn.btn--disabled:not(.btn--icon):not(.btn--flat){background-color:hsla(0,0%,100%,.12)!important}.application .theme--dark.btn:not(.btn--icon):not(.btn--flat),.theme--dark .btn:not(.btn--icon):not(.btn--flat){background-color:#212121}.btn{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:2px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:36px;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;font-size:14px;font-weight:500;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:6px 8px;min-width:88px;outline:0;text-transform:uppercase;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1),color 1ms;position:relative;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn__content:before{border-radius:inherit;color:inherit;content:\\\"\\\";position:absolute;left:0;top:0;height:100%;opacity:.12;transition:.3s cubic-bezier(.25,.8,.5,1);width:100%}.btn--small{font-size:13px;height:28px}.btn--small .btn__content{padding:0 8px}.btn--large{font-size:15px;height:44px}.btn--large .btn__content{padding:0 32px}.btn--active .btn__content:before,.btn:focus .btn__content:before,.btn:hover .btn__content:before{background-color:currentColor}.btn__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:inherit;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;height:inherit;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 auto;padding:0 16px;transition:.3s cubic-bezier(.25,.8,.5,1);white-space:nowrap;width:inherit}.btn .btn__content .icon{color:inherit}.btn--flat{background-color:transparent!important;box-shadow:none!important}.btn:not(.btn--depressed){will-change:box-shadow;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.btn:not(.btn--depressed):active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.btn:not(.btn--depressed):active .btn__content,.btn:not(.btn--depressed):focus .btn__content{position:relative;top:0;left:0}.btn--icon{background:transparent;box-shadow:none!important;border-radius:50%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:0;width:36px}.btn--icon.btn--small{width:28px}.btn--icon.btn--large{width:44px}.btn--floating,.btn--icon .btn__content:before{border-radius:50%}.btn--floating{min-width:0;height:56px;width:56px;padding:0}.btn--floating.btn--absolute,.btn--floating.btn--fixed{z-index:4}.btn--floating:not(.btn--depressed){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.btn--floating:not(.btn--depressed):active{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.btn--floating .btn__content{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;margin:0;padding:0}.btn--floating:after{border-radius:50%}.btn--floating .btn__content :not(:only-child){transition:.3s cubic-bezier(.25,.8,.5,1)}.btn--floating .btn__content :not(:only-child):first-child{opacity:1}.btn--floating .btn__content :not(:only-child):last-child{opacity:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.btn--floating .btn__content :not(:only-child):first-child,.btn--floating .btn__content :not(:only-child):last-child{-webkit-backface-visibility:hidden;position:absolute;left:0;top:0}.btn--floating.btn--active .btn__content :not(:only-child):first-child{opacity:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.btn--floating.btn--active .btn__content :not(:only-child):last-child{opacity:1;-webkit-transform:rotate(0);transform:rotate(0)}.btn--floating .icon{height:inherit;width:inherit}.btn--floating.btn--small{height:40px;width:40px}.btn--floating.btn--small .icon{font-size:18px}.btn--floating.btn--large{height:72px;width:72px}.btn--floating.btn--large .icon{font-size:30px}.btn--reverse .btn__content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.btn--reverse.btn--column .btn__content{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.btn--absolute,.btn--fixed{margin:0}.btn.btn--absolute{position:absolute}.btn.btn--fixed{position:fixed}.btn--top:not(.btn--absolute){top:16px}.btn--top.btn--absolute{top:-28px}.btn--top.btn--absolute.btn--small{top:-20px}.btn--top.btn--absolute.btn--large{top:-36px}.btn--bottom:not(.btn--absolute){bottom:16px}.btn--bottom.btn--absolute{bottom:-28px}.btn--bottom.btn--absolute.btn--small{bottom:-20px}.btn--bottom.btn--absolute.btn--large{bottom:-36px}.btn--left{left:16px}.btn--right{right:16px}.btn.btn--disabled{box-shadow:none!important;pointer-events:none}.btn--icon .btn__content{padding:0}.btn--loader{pointer-events:none}.btn--loader .btn__content{opacity:0}.btn__loading{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;position:absolute;top:0;width:100%}.btn__loading .icon--left{margin-right:1rem;line-height:inherit}.btn__loading .icon--right{margin-left:1rem;line-height:inherit}.btn.btn--outline{border:1px solid currentColor;background:transparent!important;box-shadow:none}.btn.btn--outline:hover{box-shadow:none}.btn--block{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;margin:6px 0;width:100%}.btn--round,.btn--round:after{border-radius:28px}.btn .icon--right{margin-left:16px}.btn .icon--left{margin-right:16px}.btn.accent,.btn.error,.btn.info,.btn.primary,.btn.secondary,.btn.success,.btn.warning{color:#fff}.progress-circular{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.progress-circular svg{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:0}.progress-circular--indeterminate svg{-webkit-animation:c 1.4s linear infinite;animation:c 1.4s linear infinite;-webkit-transform-origin:center center;transform-origin:center center;transition:all .2s ease-in-out}.progress-circular--indeterminate .progress-circular__overlay{-webkit-animation:b 1.4s ease-in-out infinite;animation:b 1.4s ease-in-out infinite;stroke-linecap:round;stroke-dasharray:80,200;stroke-dashoffset:0px}.progress-circular__underlay{stroke:rgba(0,0,0,.1);z-index:1}.progress-circular__overlay{stroke:currentColor;z-index:2;transition:all .6s ease-in-out}.progress-circular__info{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@-webkit-keyframes b{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-125px}}@keyframes b{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-125px}}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.application .theme--light.btn-toggle,.theme--light .btn-toggle{background:#fff}.application .theme--light.btn-toggle .btn,.theme--light .btn-toggle .btn{color:rgba(0,0,0,.87)}.application .theme--light.btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]),.theme--light .btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]){border-right-color:rgba(0,0,0,.26)}.application .theme--dark.btn-toggle,.theme--dark .btn-toggle{background:#424242}.application .theme--dark.btn-toggle .btn,.theme--dark .btn-toggle .btn{color:#fff}.application .theme--dark.btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]),.theme--dark .btn-toggle .btn.btn--active:not(:last-child):not([data-only-child]){border-right-color:hsla(0,0%,100%,.3)}.btn-toggle{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;border-radius:2px;transition:.3s cubic-bezier(.25,.8,.5,1);will-change:background,box-shadow}.btn-toggle .btn{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:auto;width:auto;padding:0 8px;margin:0;opacity:.4;border-radius:0}.btn-toggle .btn:not(:last-child){border-right:1px solid transparent}.btn-toggle .btn:after{display:none}.btn-toggle .btn.btn--active{opacity:1}.btn-toggle .btn__content{padding:0}.btn-toggle .btn span+.icon{font-size:medium;margin-left:10px}.btn-toggle .btn:first-child{border-radius:2px 0 0 2px}.btn-toggle .btn:last-child{border-radius:0 2px 2px 0}.btn-toggle--selected{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.application .theme--light.card,.theme--light .card{background-color:#fff;color:rgba(0,0,0,.87)}.application .theme--dark.card,.theme--dark .card{background-color:#424242;color:#fff}.card{display:block;border-radius:2px;min-width:0;position:relative;text-decoration:none;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.card>:first-child:not(.btn){border-top-left-radius:inherit;border-top-right-radius:inherit}.card>:last-child:not(.btn){border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.card--raised{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.card--tile{border-radius:0}.card--flat{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.card--hover{cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:box-shadow}.card--hover:hover{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.card__title{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:16px}.card__title--primary{padding-top:24px}.card__text{padding:16px;width:100%}.card__media{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;position:relative}.card__media img{width:100%}.card__media__background{border-radius:inherit;position:absolute;left:0;top:0;width:100%;height:100%}.card__media__content{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;position:relative}.card__actions,.card__media__content{display:-webkit-box;display:-ms-flexbox;display:flex}.card__actions{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:8px 4px}.card__actions .btn,.card__actions>*{margin:0 4px}.carousel{height:500px;width:100%;position:relative;overflow:hidden;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.carousel__left,.carousel__right{position:absolute;top:50%;z-index:1;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.carousel__left .btn,.carousel__right .btn{color:#fff;margin:0!important;height:auto;width:auto}.carousel__left .btn i,.carousel__right .btn i{font-size:48px}.carousel__left .btn:hover,.carousel__right .btn:hover{background:none}.carousel__left{left:5px}.carousel__right{right:5px}.carousel__controls{background:rgba(0,0,0,.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:0;position:absolute;height:50px;list-style-type:none;width:100%;z-index:1}.carousel__controls__item{color:#fff;margin:0 8px!important}.carousel__controls__item i{opacity:.5;transition:.3s cubic-bezier(.25,.8,.5,1)}.carousel__controls__item--active i{opacity:1;vertical-align:middle}.carousel__controls__item:hover{background:none}.carousel__controls__item:hover i{opacity:.8}.application .theme--light.jumbotron__content,.theme--light .jumbotron__content{color:rgba(0,0,0,.87)}.application .theme--dark.jumbotron__content,.theme--dark .jumbotron__content{color:#fff}.jumbotron{display:block;top:0;transition:.3s cubic-bezier(.25,.8,.5,1);width:100%}.jumbotron__wrapper{height:100%;overflow:hidden;position:relative;transition:inherit;width:100%}.jumbotron__background{position:absolute;top:0;left:0;right:0;bottom:0;contain:strict;transition:inherit}.jumbotron__image{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);min-width:100%;will-change:transform;transition:inherit}.jumbotron__content{height:100%;position:relative;transition:inherit}.application .theme--light.input-group input,.application .theme--light.input-group textarea,.theme--light .input-group input,.theme--light .input-group textarea{color:rgba(0,0,0,.87)}.application .theme--light.input-group input:disabled,.application .theme--light.input-group textarea:disabled,.theme--light .input-group input:disabled,.theme--light .input-group textarea:disabled{color:rgba(0,0,0,.38)}.application .theme--light.input-group:not(.input-group--error) .input-group__messages,.theme--light .input-group:not(.input-group--error) .input-group__messages{color:rgba(0,0,0,.54)}.application .theme--light.input-group.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--light .input-group.input-group--textarea:not(.input-group--full-width) .input-group__input{border:2px solid rgba(0,0,0,.54)}.application .theme--light.input-group.input-group--solo,.theme--light .input-group.input-group--solo{background:#fff}.application .theme--light.input-group.input-group--solo-inverted,.theme--light .input-group.input-group--solo-inverted{background:rgba(0,0,0,.16)}.application .theme--light.input-group.input-group--solo-inverted.input-group--focused,.theme--light .input-group.input-group--solo-inverted.input-group--focused{background:#424242}.application .theme--light.input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused input,.application .theme--light.input-group.input-group--solo-inverted.input-group--focused label,.theme--light .input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.theme--light .input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.theme--light .input-group.input-group--solo-inverted.input-group--focused input,.theme--light .input-group.input-group--solo-inverted.input-group--focused label{color:#fff}.application .theme--light.input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active),.theme--light .input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active){color:rgba(0,0,0,.87)}.application .theme--light.input-group:not(.input-group--error) label,.theme--light .input-group:not(.input-group--error) label{color:rgba(0,0,0,.54)}.application .theme--light.input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.application .theme--light.input-group:not(.input-group--error).input-group--disabled label,.theme--light .input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.theme--light .input-group:not(.input-group--error).input-group--disabled label{color:rgba(0,0,0,.38)}.application .theme--light.input-group:not(.input-group--error) .input-group__details:before,.theme--light .input-group:not(.input-group--error) .input-group__details:before{background-color:rgba(0,0,0,.42)}.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover),.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover){color:rgba(0,0,0,.54)}.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before,.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before{background-color:rgba(0,0,0,.87)}.application .theme--light.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--light .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input{border-color:rgba(0,0,0,.87)}.application .theme--light.input-group.input-group--editable .input-group__details:before,.application .theme--light.input-group.input-group--editable .input-group__input:before,.application .theme--light.input-group.input-group--overflow .input-group__details:before,.application .theme--light.input-group.input-group--overflow .input-group__input:before,.application .theme--light.input-group.input-group--segmented .input-group__details:before,.application .theme--light.input-group.input-group--segmented .input-group__input:before,.theme--light .input-group.input-group--editable .input-group__details:before,.theme--light .input-group.input-group--editable .input-group__input:before,.theme--light .input-group.input-group--overflow .input-group__details:before,.theme--light .input-group.input-group--overflow .input-group__input:before,.theme--light .input-group.input-group--segmented .input-group__details:before,.theme--light .input-group.input-group--segmented .input-group__input:before{background-color:rgba(0,0,0,.12)}.application .theme--light.input-group.input-group--disabled .input-group__input .input-group__append-icon,.application .theme--light.input-group.input-group--disabled .input-group__input .input-group__prepend-icon,.theme--light .input-group.input-group--disabled .input-group__input .input-group__append-icon,.theme--light .input-group.input-group--disabled .input-group__input .input-group__prepend-icon{color:rgba(0,0,0,.38)}.application .theme--light.input-group.input-group--disabled .input-group__details:before,.theme--light .input-group.input-group--disabled .input-group__details:before{background-color:transparent;background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0,rgba(0,0,0,.38) 33%,transparent 0)}.application .theme--light.input-group .input-group--text-field__prefix,.application .theme--light.input-group .input-group--text-field__suffix,.theme--light .input-group .input-group--text-field__prefix,.theme--light .input-group .input-group--text-field__suffix{color:rgba(0,0,0,.54)}.application .theme--light.input-group .input-group--text-field.input-group--disabled__prefix,.application .theme--light.input-group .input-group--text-field.input-group--disabled__suffix,.theme--light .input-group .input-group--text-field.input-group--disabled__prefix,.theme--light .input-group .input-group--text-field.input-group--disabled__suffix{color:rgba(0,0,0,.38)}.application .theme--dark.input-group input,.application .theme--dark.input-group textarea,.theme--dark .input-group input,.theme--dark .input-group textarea{color:#fff}.application .theme--dark.input-group input:disabled,.application .theme--dark.input-group textarea:disabled,.theme--dark .input-group input:disabled,.theme--dark .input-group textarea:disabled{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group:not(.input-group--error) .input-group__messages,.theme--dark .input-group:not(.input-group--error) .input-group__messages{color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--dark .input-group.input-group--textarea:not(.input-group--full-width) .input-group__input{border:2px solid hsla(0,0%,100%,.7)}.application .theme--dark.input-group.input-group--solo,.theme--dark .input-group.input-group--solo{background:#424242}.application .theme--dark.input-group.input-group--solo-inverted,.theme--dark .input-group.input-group--solo-inverted{background:hsla(0,0%,100%,.16)}.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused,.theme--dark .input-group.input-group--solo-inverted.input-group--focused{background:#fff}.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused input,.application .theme--dark.input-group.input-group--solo-inverted.input-group--focused label,.theme--dark .input-group.input-group--solo-inverted.input-group--focused .input-group__append-icon,.theme--dark .input-group.input-group--solo-inverted.input-group--focused .input-group__prepend-icon,.theme--dark .input-group.input-group--solo-inverted.input-group--focused input,.theme--dark .input-group.input-group--solo-inverted.input-group--focused label{color:rgba(0,0,0,.87)}.application .theme--dark.input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active),.theme--dark .input-group.input-group--dirty .input-group__selections__comma:not(.input-group__selections__comma--active){color:#fff}.application .theme--dark.input-group:not(.input-group--error) label,.theme--dark .input-group:not(.input-group--error) label{color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.application .theme--dark.input-group:not(.input-group--error).input-group--disabled label,.theme--dark .input-group:not(.input-group--error).input-group--disabled .input-group__selections__comma,.theme--dark .input-group:not(.input-group--error).input-group--disabled label{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group:not(.input-group--error) .input-group__details:before,.theme--dark .input-group:not(.input-group--error) .input-group__details:before{background-color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover),.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__append-icon:not(:hover),.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled) .input-group__input .input-group__prepend-icon:not(:hover){color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before,.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover .input-group__details:before{background-color:#fff}.application .theme--dark.input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input,.theme--dark .input-group:not(.input-group--error):not(.input-group--focused):not(.input-group--disabled):not(.input-group--disabled):not(.input-group--overflow):not(.input-group--segmented):not(.input-group--editable):hover.input-group--textarea:not(.input-group--full-width) .input-group__input{border-color:#fff}.application .theme--dark.input-group.input-group--editable .input-group__details:before,.application .theme--dark.input-group.input-group--editable .input-group__input:before,.application .theme--dark.input-group.input-group--overflow .input-group__details:before,.application .theme--dark.input-group.input-group--overflow .input-group__input:before,.application .theme--dark.input-group.input-group--segmented .input-group__details:before,.application .theme--dark.input-group.input-group--segmented .input-group__input:before,.theme--dark .input-group.input-group--editable .input-group__details:before,.theme--dark .input-group.input-group--editable .input-group__input:before,.theme--dark .input-group.input-group--overflow .input-group__details:before,.theme--dark .input-group.input-group--overflow .input-group__input:before,.theme--dark .input-group.input-group--segmented .input-group__details:before,.theme--dark .input-group.input-group--segmented .input-group__input:before{background-color:hsla(0,0%,100%,.12)}.application .theme--dark.input-group.input-group--disabled .input-group__input .input-group__append-icon,.application .theme--dark.input-group.input-group--disabled .input-group__input .input-group__prepend-icon,.theme--dark .input-group.input-group--disabled .input-group__input .input-group__append-icon,.theme--dark .input-group.input-group--disabled .input-group__input .input-group__prepend-icon{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group.input-group--disabled .input-group__details:before,.theme--dark .input-group.input-group--disabled .input-group__details:before{background-color:transparent;background-image:linear-gradient(90deg,hsla(0,0%,100%,.5) 0,hsla(0,0%,100%,.5) 33%,transparent 0)}.application .theme--dark.input-group .input-group--text-field__prefix,.application .theme--dark.input-group .input-group--text-field__suffix,.theme--dark .input-group .input-group--text-field__prefix,.theme--dark .input-group .input-group--text-field__suffix{color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group .input-group--text-field.input-group--disabled__prefix,.application .theme--dark.input-group .input-group--text-field.input-group--disabled__suffix,.theme--dark .input-group .input-group--text-field.input-group--disabled__prefix,.theme--dark .input-group .input-group--text-field.input-group--disabled__suffix{color:hsla(0,0%,100%,.5)}.input-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1;-ms-flex-wrap:wrap;flex-wrap:wrap;min-width:24px;padding:18px 0 0;position:relative;width:100%;outline:none;transition:box-shadow .3s cubic-bezier(.25,.8,.5,1)}.input-group input{width:100%}.input-group label{display:inline-block;font-size:16px;line-height:30px;height:30px;max-width:90%;min-width:0;overflow:hidden;pointer-events:none;text-align:left;text-overflow:ellipsis;-webkit-transform-origin:top left;transform-origin:top left;transition:.4s cubic-bezier(.25,.8,.25,1);white-space:nowrap;width:100%;z-index:0}.input-group__input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;min-width:0;min-height:30px}.input-group__icon-cb{cursor:pointer}.input-group.input-group--error .input-group__append-icon,.input-group.input-group--error .input-group__prepend-icon,.input-group.input-group--focused .input-group__append-icon,.input-group.input-group--focused .input-group__prepend-icon{color:inherit}.input-group.input-group--append-icon label,.input-group.input-group--prepend-icon label,.input-group.input-group--selection-controls label{max-width:75%}.input-group.input-group--append-icon.input-group--prepend-icon label{max-width:65%}.input-group .input-group__append-icon{padding:0 6px}.input-group .input-group__append-icon,.input-group .input-group__prepend-icon{-ms-flex-item-align:center;align-self:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.input-group.input-group--single-line.input-group--dirty label,.input-group.input-group--solo.input-group--dirty label{display:none}.input-group.input-group--solo{min-height:46px;border-radius:2px;padding:0;transition:.3s cubic-bezier(.25,.8,.5,1);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.input-group.input-group--solo label{top:8px;padding-left:16px;-webkit-transform:none!important;transform:none!important}.input-group.input-group--solo .input-group__input{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:8px 16px}.input-group.input-group--solo .input-group__details{display:none}.input-group--disabled{pointer-events:none}.input-group--disabled .input-group__details:before{background-color:transparent;background-position:bottom;background-size:3px 1px;background-repeat:repeat-x}.input-group.input-group--text-field:not(.input-group--single-line):not(.input-group--error).input-group--focused label{color:inherit}.input-group.input-group--text-field:not(.input-group--single-line):not(.input-group--error).input-group--focused .input-group__input{border-color:inherit}.input-group.input-group--text-field.input-group--focused:not(.input-group--disabled) .input-group__details:after{-webkit-transform:scaleX(1);transform:scaleX(1)}.input-group--required label:after{content:\\\"*\\\"}.input-group.input-group--error label{-webkit-animation:a .6s cubic-bezier(.25,.8,.5,1);animation:a .6s cubic-bezier(.25,.8,.5,1)}.input-group.input-group--error .input-group__messages{color:inherit}.input-group.input-group--error .input-group__details:before{background-color:currentColor}.input-group .slide-y-transition-leave,.input-group .slide-y-transition-leave-to{position:absolute}.input-group__details{color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;padding-top:4px;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;font-size:12px;min-height:26px;overflow:hidden;position:relative;width:100%}.input-group__details:after,.input-group__details:before{content:\\\"\\\";position:absolute;left:0;transition:.3s cubic-bezier(.4,0,.2,1)}.input-group__details:after{background-color:currentColor;color:inherit;top:0;height:2px;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:center center 0;transform-origin:center center 0;width:100%;z-index:1}.input-group__details:before{top:0;height:1px;width:100%;z-index:0}.input-group--hide-details .input-group__details{min-height:2px;padding:0}.input-group--async-loading .input-group__details:after,.input-group--async-loading .input-group__details:before{display:none}.input-group .progress-linear{position:absolute;top:0;left:0;margin:0}.input-group__error,.input-group__hint{transition:.3s cubic-bezier(.25,.8,.25,1)}.input-group__error{color:inherit}.input-group--editable.input-group--active,.input-group--overflow.input-group--active,.input-group--segmented.input-group--active{background-color:#fff}.application .theme--light.input-group--selection-controls label,.theme--light .input-group--selection-controls label{color:rgba(0,0,0,.87)}.application .theme--light.input-group--selection-controls .icon--selection-control,.theme--light .input-group--selection-controls .icon--selection-control{color:rgba(0,0,0,.54)}.application .theme--light.input-group--selection-controls.input-group--active .icon--selection-control,.theme--light .input-group--selection-controls.input-group--active .icon--selection-control{color:inherit}.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input{color:rgba(0,0,0,.38)}.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.application .theme--light.input-group--selection-controls.input-group--disabled .input-group__input .icon--radio,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.theme--light .input-group--selection-controls.input-group--disabled .input-group__input .icon--radio{color:inherit}.application .theme--dark.input-group--selection-controls label,.theme--dark .input-group--selection-controls label{color:#fff}.application .theme--dark.input-group--selection-controls .icon--selection-control,.theme--dark .input-group--selection-controls .icon--selection-control{color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group--selection-controls.input-group--active .icon--selection-control,.theme--dark .input-group--selection-controls.input-group--active .icon--selection-control{color:inherit}.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.application .theme--dark.input-group--selection-controls.input-group--disabled .input-group__input .icon--radio,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input .icon--checkbox,.theme--dark .input-group--selection-controls.input-group--disabled .input-group__input .icon--radio{color:inherit}.input-group--selection-controls.input-group--tab-focused .input-group--selection-controls__ripple:before,.input-group--tab-focused .input-group:focus .input-group--selection-controls__ripple:before{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1);opacity:.15}.input-group.input-group--selection-controls{display:-webkit-box;display:-ms-flexbox;display:flex;padding:0}.input-group.input-group--selection-controls .icon--selection-control{cursor:pointer;position:absolute;left:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:.3s cubic-bezier(.4,0,.6,1)}.input-group.input-group--selection-controls .input-group__details:after,.input-group.input-group--selection-controls .input-group__details:before{display:none}.input-group.input-group--selection-controls .input-group__input{color:inherit;width:100%;position:relative}.input-group.input-group--selection-controls .input-group__input .icon--selection-control{-ms-flex-item-align:center;align-self:center;height:30px;margin:auto}.input-group.input-group--selection-controls.input-group--error .input-group__input .icon--selection-control,.input-group.input-group--selection-controls.input-group--error label{color:inherit}.input-group.input-group--selection-controls label{cursor:pointer;position:absolute;left:32px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1}.input-group.input-group--selection-controls:not(.input-group--disabled) label{pointer-events:all}.input-group--selection-controls__ripple{border-radius:50%;height:48px;width:48px;cursor:pointer;position:absolute;-webkit-transform:translate(-12px,-50%);transform:translate(-12px,-50%);-webkit-transform-origin:center center;transform-origin:center center;top:50%;left:0}.input-group--selection-controls__ripple:before{content:\\\"\\\";position:absolute;width:36px;height:36px;background:currentColor;border-radius:50%;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(.3);transform:translate(-50%,-50%) scale(.3);opacity:0;transition:.4s cubic-bezier(0,0,.2,1);-webkit-transform-origin:center center;transform-origin:center center}.input-group--prepend-icon.input-group--selection-controls .icon--selection-control,.input-group--prepend-icon.input-group--selection-controls .input-group--selection-controls__ripple{left:38px}.input-group--prepend-icon.input-group--selection-controls label{left:76px}.input-group--append-icon.input-group--selection-controls .input-group__append-icon{position:absolute;left:32px}.input-group--append-icon.input-group--selection-controls.input-group--selection-controls label{left:76px}.input-group--append-icon.input-group--prepend-icon.input-group--selection-controls .input-group__append-icon{left:72px}.input-group--append-icon.input-group--prepend-icon.input-group--selection-controls.input-group--selection-controls label{left:112px}.input-group--prepend-icon.radio-group--row .icon--selection-control,.input-group--prepend-icon.radio-group--row .input-group--selection-controls__ripple{left:14px}.input-group--prepend-icon.radio-group--row label{left:52px}.progress-linear{background:transparent;margin:1rem 0;overflow:hidden;width:100%;position:relative}.progress-linear__bar{width:100%;position:relative;z-index:1}.progress-linear__bar,.progress-linear__bar__determinate{height:inherit;transition:.2s}.progress-linear__bar__indeterminate .long,.progress-linear__bar__indeterminate .short{height:inherit;position:absolute;left:0;top:0;bottom:0;will-change:left,right;width:auto;background-color:inherit}.progress-linear__bar__indeterminate--active .long{-webkit-animation:d;animation:d;-webkit-animation-duration:2.2s;animation-duration:2.2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.progress-linear__bar__indeterminate--active .short{-webkit-animation:e;animation:e;-webkit-animation-duration:2.2s;animation-duration:2.2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.progress-linear__background{position:absolute;top:0;left:0;bottom:0;transition:.3s ease-in}.progress-linear--query .progress-linear__bar__indeterminate--active .long{-webkit-animation:f;animation:f;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.progress-linear--query .progress-linear__bar__indeterminate--active .short{-webkit-animation:g;animation:g;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}@-webkit-keyframes d{0%{left:-90%;right:100%}60%{left:-90%;right:100%}to{left:100%;right:-35%}}@keyframes d{0%{left:-90%;right:100%}60%{left:-90%;right:100%}to{left:100%;right:-35%}}@-webkit-keyframes e{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@keyframes e{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@-webkit-keyframes f{0%{right:-90%;left:100%}60%{right:-90%;left:100%}to{right:100%;left:-35%}}@keyframes f{0%{right:-90%;left:100%}60%{right:-90%;left:100%}to{right:100%;left:-35%}}@-webkit-keyframes g{0%{right:-200%;left:100%}60%{right:107%;left:-8%}to{right:107%;left:-8%}}@keyframes g{0%{right:-200%;left:100%}60%{right:107%;left:-8%}to{right:107%;left:-8%}}.application .theme--light.chip,.theme--light .chip{background:#e0e0e0;color:rgba(0,0,0,.87)}.application .theme--dark.chip,.theme--dark .chip{background:#fff;color:rgba(0,0,0,.87)}.chip{border-radius:28px;border:1px solid transparent;font-size:13px;margin:4px;outline:none;position:relative;transition:.3s cubic-bezier(.25,.8,.5,1)}.chip,.chip .chip__content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.chip .chip__content{border-radius:28px;cursor:default;height:32px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 12px;white-space:nowrap;z-index:1}.chip--removable .chip__content{padding:0 4px 0 12px}.chip .avatar{height:32px!important;margin-left:-12px;margin-right:8px;min-width:32px;width:32px!important}.chip .avatar img{height:100%;width:100%}.chip--active:not(.chip--disabled),.chip--selected:not(.chip--disabled),.chip:focus:not(.chip--disabled){border-color:rgba(0,0,0,.13);overflow:hidden;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.chip--active:not(.chip--disabled):after,.chip--selected:not(.chip--disabled):after,.chip:focus:not(.chip--disabled):after{background:currentColor;border-radius:inherit;content:\\\"\\\";height:100%;position:absolute;top:0;left:0;transition:inherit;width:100%;pointer-events:none;opacity:.13}.chip--label,.chip--label .chip__content{border-radius:2px}.chip.chip.chip--outline{background:transparent!important;border-color:currentColor;color:#9e9e9e}.chip--small{height:26px}.chip--small .avatar{height:26px;min-width:26px;width:26px}.chip--small .icon,.chip__close{font-size:20px}.chip__close{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:inherit;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 2px 0 8px;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chip__close>.icon{color:inherit!important;font-size:20px;opacity:.5}.chip__close>.icon:hover{opacity:1}.chip--select-multi{margin:4px 4px 4px 0}.chip .icon{color:inherit}.chip .icon--right{margin-left:12px;margin-right:-8px}.chip .icon--left{margin-left:-8px;margin-right:12px}.application .theme--light.data-iterator .data-iterator__actions,.theme--light .data-iterator .data-iterator__actions{color:rgba(0,0,0,.54)}.application .theme--light.data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.application .theme--light.data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma,.theme--light .data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.theme--light .data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma{color:rgba(0,0,0,.54)!important}.application .theme--dark.data-iterator .data-iterator__actions,.theme--dark .data-iterator .data-iterator__actions{color:hsla(0,0%,100%,.7)}.application .theme--dark.data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.application .theme--dark.data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma,.theme--dark .data-iterator .data-iterator__actions__select .input-group--select .input-group__append-icon,.theme--dark .data-iterator .data-iterator__actions__select .input-group--select .input-group__selections__comma{color:hsla(0,0%,100%,.7)!important}.data-iterator__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:12px;-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.data-iterator__actions .btn{color:inherit}.data-iterator__actions .btn:last-of-type{margin-left:14px}.data-iterator__actions__range-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:48px}.data-iterator__actions__pagination{display:block;text-align:center;margin:0 32px 0 24px}.data-iterator__actions__select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:14px}.data-iterator__actions__select .input-group--select{margin:13px 0 13px 34px;padding:0;position:static}.data-iterator__actions__select .input-group--select .input-group__selections__comma{font-size:12px}.application .theme--light.input-group--text-field.input-group--text-field-box .input-group__input,.theme--light .input-group--text-field.input-group--text-field-box .input-group__input{background:hsla(0,0%,100%,.6)}.application .theme--light.input-group--text-field input::-webkit-input-placeholder,.application .theme--light.input-group--text-field textarea::-webkit-input-placeholder,.theme--light .input-group--text-field input::-webkit-input-placeholder,.theme--light .input-group--text-field textarea::-webkit-input-placeholder{color:rgba(0,0,0,.38)}.application .theme--light.input-group--text-field input:-ms-input-placeholder,.application .theme--light.input-group--text-field input::-ms-input-placeholder,.application .theme--light.input-group--text-field textarea:-ms-input-placeholder,.application .theme--light.input-group--text-field textarea::-ms-input-placeholder,.theme--light .input-group--text-field input:-ms-input-placeholder,.theme--light .input-group--text-field input::-ms-input-placeholder,.theme--light .input-group--text-field textarea:-ms-input-placeholder,.theme--light .input-group--text-field textarea::-ms-input-placeholder{color:rgba(0,0,0,.38)}.application .theme--light.input-group--text-field input::placeholder,.application .theme--light.input-group--text-field textarea::placeholder,.theme--light .input-group--text-field input::placeholder,.theme--light .input-group--text-field textarea::placeholder{color:rgba(0,0,0,.38)}.application .theme--light.input-group--text-field:not(.input-group--error) .input-group__counter,.theme--light .input-group--text-field:not(.input-group--error) .input-group__counter{color:rgba(0,0,0,.54)}.application .theme--dark.input-group--text-field.input-group--text-field-box .input-group__input,.theme--dark .input-group--text-field.input-group--text-field-box .input-group__input{background:hsla(0,0%,100%,.1)}.application .theme--dark.input-group--text-field input::-webkit-input-placeholder,.application .theme--dark.input-group--text-field textarea::-webkit-input-placeholder,.theme--dark .input-group--text-field input::-webkit-input-placeholder,.theme--dark .input-group--text-field textarea::-webkit-input-placeholder{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group--text-field input:-ms-input-placeholder,.application .theme--dark.input-group--text-field input::-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea:-ms-input-placeholder,.application .theme--dark.input-group--text-field textarea::-ms-input-placeholder,.theme--dark .input-group--text-field input:-ms-input-placeholder,.theme--dark .input-group--text-field input::-ms-input-placeholder,.theme--dark .input-group--text-field textarea:-ms-input-placeholder,.theme--dark .input-group--text-field textarea::-ms-input-placeholder{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group--text-field input::placeholder,.application .theme--dark.input-group--text-field textarea::placeholder,.theme--dark .input-group--text-field input::placeholder,.theme--dark .input-group--text-field textarea::placeholder{color:hsla(0,0%,100%,.5)}.application .theme--dark.input-group--text-field:not(.input-group--error) .input-group__counter,.theme--dark .input-group--text-field:not(.input-group--error) .input-group__counter{color:hsla(0,0%,100%,.7)}.input-group--text-field label{position:absolute;top:18px;left:0}.input-group--text-field input{padding-bottom:1px}.input-group--text-field input,.input-group--text-field textarea{font-size:16px}.input-group--text-field input::-webkit-input-placeholder,.input-group--text-field textarea::-webkit-input-placeholder{color:inherit;transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group--text-field input:-ms-input-placeholder,.input-group--text-field input::-ms-input-placeholder,.input-group--text-field textarea:-ms-input-placeholder,.input-group--text-field textarea::-ms-input-placeholder{color:inherit;transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group--text-field input::placeholder,.input-group--text-field textarea::placeholder{color:inherit;transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group--text-field input{box-shadow:none;-webkit-box-flex:1;-ms-flex:1;flex:1;height:30px;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input-group--text-field input:focus{outline:none}.input-group--text-field input:disabled{pointer-events:none}.input-group--text-field textarea{-webkit-box-flex:1;-ms-flex:1 1;flex:1 1}.input-group--text-field textarea:focus{outline:none}.input-group--text-field.input-group--textarea label{top:13px}.input-group--text-field.input-group--textarea .input-group__input{border-radius:2px;transition:.4s cubic-bezier(.25,.8,.25,1)}.input-group--text-field.input-group--textarea textarea{font-size:16px;transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group--text-field.input-group--textarea:not(.input-group--full-width) label{top:30px;left:15px}.input-group--text-field.input-group--textarea:not(.input-group--full-width) .input-group__input{padding:30px 0 0 13px}.input-group--text-field.input-group--textarea .input-group__details:after,.input-group--text-field.input-group--textarea .input-group__details:before{opacity:0}.input-group--text-field .input-group__counter{margin-left:auto;white-space:nowrap}.input-group--text-field .input-group__counter--error{color:inherit}.input-group--text-field.input-group--placeholder.input-group--dirty input::-webkit-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-webkit-input-placeholder{opacity:0}.input-group--text-field.input-group--placeholder.input-group--dirty input:-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty input::-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea:-ms-input-placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::-ms-input-placeholder{opacity:0}.input-group--text-field.input-group--placeholder.input-group--dirty input::placeholder,.input-group--text-field.input-group--placeholder.input-group--dirty textarea::placeholder{opacity:0}.input-group--text-field.input-group--no-resize textarea{resize:none}.input-group--text-field.input-group--prepend-icon .input-group__prepend-icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:40px}.input-group--text-field.input-group--prepend-icon .input-group__details{margin-left:auto;max-width:calc(100% - 40px)}.input-group--text-field.input-group--prepend-icon label{left:40px}.input-group--text-field:not(.input-group--single-line).input-group--focused label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder label{opacity:1}.input-group--text-field:not(.input-group--single-line).input-group--focused:not(.input-group--textarea) label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder:not(.input-group--textarea) label{-webkit-transform:translateY(-18px) scale(.75);transform:translateY(-18px) scale(.75)}.input-group--text-field:not(.input-group--single-line).input-group--focused:not(.input-group--full-width).input-group--textarea label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder:not(.input-group--full-width).input-group--textarea label{-webkit-transform:translateY(-8px) scale(.75);transform:translateY(-8px) scale(.75)}.input-group--text-field:not(.input-group--single-line).input-group--focused.input-group--text-field-box label,.input-group--text-field:not(.input-group--single-line).input-group--placeholder.input-group--text-field-box label{-webkit-transform:translateY(-10px) scale(.75);transform:translateY(-10px) scale(.75)}.input-group--text-field.input-group--dirty.input-group--select label,.input-group--text-field.input-group--dirty:not(.input-group--textarea) label{-webkit-transform:translateY(-18px) scale(.75);transform:translateY(-18px) scale(.75)}.input-group--text-field.input-group--dirty:not(.input-group--full-width).input-group--textarea label{-webkit-transform:translateY(-8px) scale(.75);transform:translateY(-8px) scale(.75)}.input-group--text-field.input-group--multi-line textarea{padding-top:4px}.input-group--text-field.input-group--full-width{padding:16px}.input-group--text-field.input-group--full-width label{margin-left:16px}.input-group--text-field.input-group--full-width .input-group__details:after,.input-group--text-field.input-group--full-width .input-group__details:before{display:none}.input-group--prefix:not(.input-group--focused):not(.input-group--dirty) label{left:16px}.input-group--prefix .input-group--text-field__prefix,.input-group--prefix .input-group--text-field__suffix,.input-group--suffix .input-group--text-field__prefix,.input-group--suffix .input-group--text-field__suffix{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:16px;margin-top:1px}.input-group--prefix .input-group--text-field__prefix,.input-group--suffix .input-group--text-field__prefix{margin-right:3px}.input-group--prefix .input-group--text-field__suffix,.input-group--suffix .input-group--text-field__suffix{margin-left:3px}.input-group--text-field-box input,.input-group--text-field-box textarea{cursor:pointer}.input-group--text-field-box label{left:16px}.input-group--text-field-box .input-group__input{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;border-radius:4px 4px 0 0;cursor:pointer;min-height:56px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.input-group--text-field-box .input-group__details{padding:8px 16px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.input-group--text-field-box .input-group__details:after,.input-group--text-field-box .input-group__details:before{height:2px;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.input-group--text-field-box.input-group--multi-line textarea{padding-left:24px;padding-right:24px}.input-group--text-field-box:not(.input-group--textarea).input-group--multi-line .input-group__input{padding-top:26px}.input-group--text-field-box:not(.input-group--textarea).input-group--multi-line label{top:26px}.input-group--text-field-box:not(.input-group--textarea):not(.input-group--multi-line) .input-group__input{padding-left:16px;padding-right:16px}.input-group--text-field-box:not(.input-group--textarea):not(.input-group--multi-line) label{top:32px}.input-group--text-field-box:not(.input-group--textarea):not(.input-group--single-line).input-group--dirty label,.input-group--text-field-box:not(.input-group--textarea):not(.input-group--single-line).input-group--focused label{-webkit-transform:translateY(-10px) scale(.75);transform:translateY(-10px) scale(.75)}.input-group--text-field-box.input-group--prepend-icon .input-group__details:after,.input-group--text-field-box.input-group--prepend-icon .input-group__details:before{margin-left:56px;max-width:calc(100% - 56px)}.input-group--text-field-box.input-group--prepend-icon label{left:56px}.application .theme--light.input-group--select.input-group--editable.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--editable .input-group__input:hover,.application .theme--light.input-group--select.input-group--overflow.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--overflow .input-group__input:hover,.application .theme--light.input-group--select.input-group--segmented.input-group--focused .input-group__input,.application .theme--light.input-group--select.input-group--segmented .input-group__input:hover,.theme--light .input-group--select.input-group--editable.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--editable .input-group__input:hover,.theme--light .input-group--select.input-group--overflow.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--overflow .input-group__input:hover,.theme--light .input-group--select.input-group--segmented.input-group--focused .input-group__input,.theme--light .input-group--select.input-group--segmented .input-group__input:hover{background:#fff}.application .theme--dark.input-group--select.input-group--editable.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--editable .input-group__input:hover,.application .theme--dark.input-group--select.input-group--overflow.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--overflow .input-group__input:hover,.application .theme--dark.input-group--select.input-group--segmented.input-group--focused .input-group__input,.application .theme--dark.input-group--select.input-group--segmented .input-group__input:hover,.theme--dark .input-group--select.input-group--editable.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--editable .input-group__input:hover,.theme--dark .input-group--select.input-group--overflow.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--overflow .input-group__input:hover,.theme--dark .input-group--select.input-group--segmented.input-group--focused .input-group__input,.theme--dark .input-group--select.input-group--segmented .input-group__input:hover{background:#424242}.input-group--select .input-group--select__autocomplete{display:block;height:0}.input-group--select .input-group--select__autocomplete--index{background-color:transparent!important}.input-group--select .input-group__append-icon{transition:.3s cubic-bezier(0,0,.2,1)}.input-group--select .input-group__append-icon.input-group__icon-clearable{transition:none}.input-group--select.input-group--focused .input-group--select__autocomplete,.input-group--select:not(.input-group--dirty) .input-group--select__autocomplete{padding-bottom:1px;height:30px}.input-group--select.input-group--focused .input-group--select__autocomplete{display:inline-block;opacity:1}.input-group--select.input-group--focused.input-group--select--selecting-index .input-group--select__autocomplete{opacity:0}.input-group--select.input-group--focused.input-group--open .input-group__append-icon:not(.input-group__icon-clearable){-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.input-group--select .input-group__input{cursor:pointer}.input-group--select.input-group--disabled{cursor:default;pointer-events:none}.input-group--select .input-group__selections{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;width:100%}.input-group--select .input-group__selections__comma{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:16px;padding:3px 4px 3px 0}.input-group--select .input-group__selections__comma--active{color:inherit}.input-group--select .menu{display:inline}.input-group--select .fade-transition-leave-active{position:absolute;left:0}.input-group--select.input-group--autocomplete.input-group--search-focused .input-group__selections__comma{display:none}.input-group--autocomplete .input-group__selections{cursor:text}.input-group.input-group--chips .input-group__input{padding-top:0;padding-bottom:0}.input-group.input-group--editable,.input-group.input-group--editable .input-group__append-icon,.input-group.input-group--overflow,.input-group.input-group--overflow .input-group__append-icon,.input-group.input-group--segmented,.input-group.input-group--segmented .input-group__append-icon{padding:0}.input-group.input-group--editable .input-group__selections,.input-group.input-group--editable input,.input-group.input-group--overflow .input-group__selections,.input-group.input-group--overflow input,.input-group.input-group--segmented .input-group__selections,.input-group.input-group--segmented input{height:48px}.input-group.input-group--editable .input-group__selections__comma,.input-group.input-group--editable input,.input-group.input-group--overflow .input-group__selections__comma,.input-group.input-group--overflow input,.input-group.input-group--segmented .input-group__selections__comma,.input-group.input-group--segmented input{top:0;left:0;padding-left:16px}.input-group.input-group--editable .input-group__selections,.input-group.input-group--overflow .input-group__selections,.input-group.input-group--segmented .input-group__selections{width:calc(100% - 55px)}.input-group.input-group--editable .input-group__selections .btn,.input-group.input-group--overflow .input-group__selections .btn,.input-group.input-group--segmented .input-group__selections .btn{border-radius:0;margin:0;height:48px;width:100%}.input-group.input-group--editable .input-group__selections .btn .btn__content,.input-group.input-group--overflow .input-group__selections .btn .btn__content,.input-group.input-group--segmented .input-group__selections .btn .btn__content{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:start}.input-group.input-group--editable .input-group__input,.input-group.input-group--overflow .input-group__input,.input-group.input-group--segmented .input-group__input{transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group.input-group--editable.input-group--focused .input-group__input,.input-group.input-group--overflow.input-group--focused .input-group__input,.input-group.input-group--segmented.input-group--focused .input-group__input{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.input-group.input-group--editable label,.input-group.input-group--overflow label,.input-group.input-group--segmented label{left:16px!important;top:9px!important}.input-group.input-group--editable .input-group__details:after,.input-group.input-group--overflow .input-group__details:after,.input-group.input-group--segmented .input-group__details:after{display:none}.input-group.input-group--editable .input-group__input,.input-group.input-group--overflow .input-group__input,.input-group.input-group--segmented .input-group__input{padding:0}.input-group.input-group--editable .input-group__input:before,.input-group.input-group--overflow .input-group__input:before,.input-group.input-group--segmented .input-group__input:before{content:\\\"\\\";position:absolute;left:0;width:100%;height:1px;top:0;transition:.3s cubic-bezier(.25,.8,.5,1)}.input-group.input-group--editable .input-group__append-icon,.input-group.input-group--overflow .input-group__append-icon,.input-group.input-group--segmented .input-group__append-icon{width:55px}.input-group--editable .input-group__input:hover:after,.input-group--segmented .input-group__input:after,.input-group.input-group--focused.input-group--editable .input-group__input:after{background-color:rgba(0,0,0,.12);content:\\\"\\\";position:absolute;right:55px;height:48px;top:0;width:1px}.menu__content--select .input-group--selection-controls__ripple{display:none}.menu__content--autocomplete,.menu__content--autocomplete>.card{border-radius:0}.application .theme--light.divider,.theme--light .divider{background-color:rgba(0,0,0,.12)}.application .theme--dark.divider,.theme--dark .divider{background-color:hsla(0,0%,100%,.12)}.divider{border:none;display:block;height:1px;min-height:1px;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%}.divider--inset{margin-left:72px;width:calc(100% - 72px)}.menu{display:inline-block;position:relative;vertical-align:middle}.menu--disabled{cursor:default}.menu--disabled .menu__activator,.menu--disabled .menu__activator>*{cursor:default;pointer-events:none}.menu__activator{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;height:inherit;position:relative}.menu__activator input[readonly]{cursor:pointer}.menu__content{position:absolute;display:inline-block;border-radius:2px;max-width:80%;overflow-y:auto;overflow-x:hidden;contain:content;will-change:transform;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.menu__content--active{pointer-events:none}.menu__content--dropdown{border-top-left-radius:0;border-top-right-radius:0;border-top:1px solid rgba(0,0,0,.12)}.menu__content>.card{contain:content;-webkit-backface-visibility:hidden;backface-visibility:hidden}.menu>.menu__content{max-width:none}.menu-transition-enter .list__tile{min-width:0;transition-delay:.4s;opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px);pointer-events:none}.menu-transition-enter-to .list__tile{pointer-events:auto;opacity:1}.menu-transition-enter-to .list__tile--active{-webkit-transform:none!important;transform:none!important}.menu-transition-leave-to{-webkit-transform:translateY(-10px);transform:translateY(-10px)}.menu-transition-leave-active,.menu-transition-leave-to{pointer-events:none}.menu-transition-enter,.menu-transition-leave-to{opacity:0}.menu-transition-enter-to,.menu-transition-leave{opacity:1}.menu-transition-enter-active,.menu-transition-leave-active{transition:all .5s cubic-bezier(.25,.8,.5,1)}.menu-transition-enter.menu__content--auto .list__tile--active{opacity:1;-webkit-transform:none!important;transform:none!important;pointer-events:auto}.application .theme--light.subheader,.theme--light .subheader{color:rgba(0,0,0,.54)}.application .theme--dark.subheader,.theme--dark .subheader{color:hsla(0,0%,100%,.7)}.subheader{height:48px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;font-weight:500;padding:0 16px}.subheader--inset{margin-left:56px}.application .theme--light.list,.theme--light .list{background:#fff;color:rgba(0,0,0,.87)}.application .theme--light.list .list__tile__sub-title,.theme--light .list .list__tile__sub-title{color:rgba(0,0,0,.54)}.application .theme--light.list .list__tile__mask,.theme--light .list .list__tile__mask{color:rgba(0,0,0,.38);background:#eee}.application .theme--light.list .list__group--active:after,.application .theme--light.list .list__group--active:before,.application .theme--light.list .list__group__header:hover,.application .theme--light.list .list__tile--highlighted,.application .theme--light.list .list__tile--link:hover,.theme--light .list .list__group--active:after,.theme--light .list .list__group--active:before,.theme--light .list .list__group__header:hover,.theme--light .list .list__tile--highlighted,.theme--light .list .list__tile--link:hover{background:rgba(0,0,0,.12)}.application .theme--light.list .list__group--disabled .list__group__header__prepend-icon .icon,.application .theme--light.list .list__group--disabled .list__tile,.theme--light .list .list__group--disabled .list__group__header__prepend-icon .icon,.theme--light .list .list__group--disabled .list__tile{color:rgba(0,0,0,.38)!important}.application .theme--dark.list,.theme--dark .list{background:#424242;color:#fff}.application .theme--dark.list .list__tile__sub-title,.theme--dark .list .list__tile__sub-title{color:hsla(0,0%,100%,.7)}.application .theme--dark.list .list__tile__mask,.theme--dark .list .list__tile__mask{color:hsla(0,0%,100%,.5);background:rgba(0,0,0,.7)}.application .theme--dark.list .list__group--active:after,.application .theme--dark.list .list__group--active:before,.application .theme--dark.list .list__group__header:hover,.application .theme--dark.list .list__tile--highlighted,.application .theme--dark.list .list__tile--link:hover,.theme--dark .list .list__group--active:after,.theme--dark .list .list__group--active:before,.theme--dark .list .list__group__header:hover,.theme--dark .list .list__tile--highlighted,.theme--dark .list .list__tile--link:hover{background:hsla(0,0%,100%,.12)}.application .theme--dark.list .list__group--disabled .list__group__header__prepend-icon .icon,.application .theme--dark.list .list__group--disabled .list__tile,.theme--dark .list .list__group--disabled .list__group__header__prepend-icon .icon,.theme--dark .list .list__group--disabled .list__tile{color:hsla(0,0%,100%,.5)!important}.list{list-style-type:none;padding:8px 0;transition:height .3s cubic-bezier(.4,0,.2,1)}.list .input-group{margin:0}.list__tile{-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:16px;font-weight:400;height:48px;margin:0;padding:0 16px;position:relative;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.list__tile--link{cursor:pointer}.list__tile__action,.list__tile__content{height:100%}.list__tile__sub-title,.list__tile__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:.3s cubic-bezier(.25,.8,.5,1);width:100%}.list__tile__title{height:24px;line-height:24px;position:relative;text-align:left}.list__tile__sub-title{font-size:14px}.list__tile__action,.list__tile__avatar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:56px}.list__tile__action,.list__tile__action .input-group--selection-controls{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.list__tile__action .input-group--selection-controls{-webkit-box-flex:0;-ms-flex:0 1;flex:0 1;padding:0}.list__tile__action .input-group__details{display:none}.list__tile__action .btn{padding:0;margin:0}.list__tile__action .btn--icon{margin:-8px}.list__tile__action-text{color:#9e9e9e;font-size:12px}.list__tile__action--stack{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-top:8px;padding-bottom:8px;white-space:nowrap;-ms-flex-direction:column;flex-direction:column}.list__tile__action--stack,.list__tile__content{-webkit-box-orient:vertical;-webkit-box-direction:normal}.list__tile__content{text-align:left;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column}.list__tile__content~.list__tile__action:not(.list__tile__action--stack),.list__tile__content~.list__tile__avatar{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.list__tile--active .list__tile__action:first-of-type .icon{color:inherit}.list__tile--disabled{opacity:.4!important;pointer-events:none!important}.list__tile--avatar{height:56px}.list--dense{padding-top:4px;padding-bottom:4px}.list--dense .subheader{font-size:13px;height:40px}.list--dense .list__group .subheader{height:40px}.list--dense .list__tile{font-size:13px}.list--dense .list__tile--avatar{height:48px}.list--dense .list__tile:not(.list__tile--avatar){height:40px}.list--dense .list__tile .icon{font-size:22px}.list--dense .list__tile__sub-title{font-size:13px}.list--two-line .list__tile{height:72px}.list--two-line.list--dense .list__tile{height:60px}.list--three-line .list__tile{height:88px}.list--three-line .list__tile__avatar{margin-top:-18px}.list--three-line .list__tile__sub-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.list--three-line.list--dense .list__tile{height:76px}.list>.list__group:before{top:0}.list>.list__group:before .list__tile__avatar{margin-top:-14px}.list__group{padding:0;position:relative;transition:inherit}.list__group:after,.list__group:before{content:\\\"\\\";height:1px;position:absolute;transition:.3s cubic-bezier(.25,.8,.5,1);width:100%}.list__group--active~.list__group:before{display:none}.list__group__header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;list-style-type:none}.list__group__header>div:not(.list__group__header__prepend-icon):not(.list__group__header__append-icon){-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.list__group__header .list__group__header__append-icon,.list__group__header .list__group__header__prepend-icon{padding:0 16px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.list__group__header--sub-group{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.list__group__header--sub-group div .list__tile{padding-left:0}.list__group__header--sub-group .list__group__header__prepend-icon{padding:0 0 0 40px;margin-right:8px}.list__group__header .list__group__header__prepend-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;min-width:56px}.list__group__header--active .list__group__header__append-icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.list__group__header--active .list__group__header__prepend-icon .icon{color:inherit}.list__group__header--active.list__group__header--sub-group .list__group__header__prepend-icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.list__group__items{position:relative;padding:0;transition:inherit}.list__group__items>div{display:block}.list__group__items--no-action .list__tile{padding-left:72px}.list__group--disabled{pointer-events:none}.list--subheader{padding-top:0}.application .theme--light.table,.theme--light .table{background-color:#fff;color:rgba(0,0,0,.87)}.application .theme--light.table thead tr:first-child,.theme--light .table thead tr:first-child{border-bottom:1px solid rgba(0,0,0,.12)}.application .theme--light.table thead th,.theme--light .table thead th{color:rgba(0,0,0,.54)}.application .theme--light.table tbody tr:not(:last-child),.theme--light .table tbody tr:not(:last-child){border-bottom:1px solid rgba(0,0,0,.12)}.application .theme--light.table tbody tr[active],.theme--light .table tbody tr[active]{background:#f5f5f5}.application .theme--light.table tbody tr:hover:not(.datatable__expand-row),.theme--light .table tbody tr:hover:not(.datatable__expand-row){background:#eee}.application .theme--light.table tfoot tr,.theme--light .table tfoot tr{border-top:1px solid rgba(0,0,0,.12)}.application .theme--dark.table,.theme--dark .table{background-color:#424242;color:#fff}.application .theme--dark.table thead tr:first-child,.theme--dark .table thead tr:first-child{border-bottom:1px solid hsla(0,0%,100%,.12)}.application .theme--dark.table thead th,.theme--dark .table thead th{color:hsla(0,0%,100%,.7)}.application .theme--dark.table tbody tr:not(:last-child),.theme--dark .table tbody tr:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.12)}.application .theme--dark.table tbody tr[active],.theme--dark .table tbody tr[active]{background:#505050}.application .theme--dark.table tbody tr:hover:not(.datatable__expand-row),.theme--dark .table tbody tr:hover:not(.datatable__expand-row){background:#616161}.application .theme--dark.table tfoot tr,.theme--dark .table tfoot tr{border-top:1px solid hsla(0,0%,100%,.12)}.table__overflow{width:100%;overflow-x:auto;overflow-y:hidden}table.table{border-radius:2px;border-collapse:collapse;border-spacing:0;width:100%;max-width:100%}table.table tbody td:first-child,table.table tbody td:not(:first-child),table.table tbody th:first-child,table.table tbody th:not(:first-child),table.table thead td:first-child,table.table thead td:not(:first-child),table.table thead th:first-child,table.table thead th:not(:first-child){padding:0 24px}table.table thead tr{height:56px}table.table thead th{font-weight:500;font-size:12px;transition:.3s cubic-bezier(.25,.8,.5,1);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}table.table thead th.sortable{pointer-events:auto}table.table thead th>div{width:100%}table.table tbody tr{transition:background .3s cubic-bezier(.25,.8,.5,1);will-change:background}table.table tbody td,table.table tbody th{height:48px}table.table tbody td{font-weight:400;font-size:13px}table.table .input-group--selection-controls{padding:0}table.table .input-group--selection-controls .input-group__details{display:none}table.table .input-group--selection-controls.checkbox .icon{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}table.table .input-group--selection-controls.checkbox .input-group--selection-controls__ripple{left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}table.table tfoot tr{height:48px}table.table tfoot tr td{padding:0 24px}.application .theme--light.datatable thead th.column.sortable i,.theme--light .datatable thead th.column.sortable i{color:rgba(0,0,0,.38)}.application .theme--light.datatable thead th.column.sortable.active,.application .theme--light.datatable thead th.column.sortable.active i,.application .theme--light.datatable thead th.column.sortable:hover,.theme--light .datatable thead th.column.sortable.active,.theme--light .datatable thead th.column.sortable.active i,.theme--light .datatable thead th.column.sortable:hover{color:rgba(0,0,0,.87)}.application .theme--light.datatable .datatable__actions,.theme--light .datatable .datatable__actions{background-color:#fff;color:rgba(0,0,0,.54);border-top:1px solid rgba(0,0,0,.12)}.application .theme--light.datatable .datatable__actions__select .input-group--select .input-group__append-icon,.application .theme--light.datatable .datatable__actions__select .input-group--select .input-group__selections__comma,.theme--light .datatable .datatable__actions__select .input-group--select .input-group__append-icon,.theme--light .datatable .datatable__actions__select .input-group--select .input-group__selections__comma{color:rgba(0,0,0,.54)!important}.application .theme--dark.datatable thead th.column.sortable i,.theme--dark .datatable thead th.column.sortable i{color:hsla(0,0%,100%,.5)}.application .theme--dark.datatable thead th.column.sortable.active,.application .theme--dark.datatable thead th.column.sortable.active i,.application .theme--dark.datatable thead th.column.sortable:hover,.theme--dark .datatable thead th.column.sortable.active,.theme--dark .datatable thead th.column.sortable.active i,.theme--dark .datatable thead th.column.sortable:hover{color:#fff}.application .theme--dark.datatable .datatable__actions,.theme--dark .datatable .datatable__actions{background-color:#424242;color:hsla(0,0%,100%,.7);border-top:1px solid hsla(0,0%,100%,.12)}.application .theme--dark.datatable .datatable__actions__select .input-group--select .input-group__append-icon,.application .theme--dark.datatable .datatable__actions__select .input-group--select .input-group__selections__comma,.theme--dark .datatable .datatable__actions__select .input-group--select .input-group__append-icon,.theme--dark .datatable .datatable__actions__select .input-group--select .input-group__selections__comma{color:hsla(0,0%,100%,.7)!important}.datatable thead th.column.sortable{cursor:pointer}.datatable thead th.column.sortable i{font-size:16px;vertical-align:sub;display:inline-block;opacity:0;transition:.3s cubic-bezier(.25,.8,.5,1)}.datatable thead th.column.sortable:hover i{opacity:.6}.datatable thead th.column.sortable.active{-webkit-transform:none;transform:none}.datatable thead th.column.sortable.active i{opacity:1}.datatable thead th.column.sortable.active.desc i{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.datatable__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:12px;-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.datatable__actions .btn{color:inherit}.datatable__actions .btn:last-of-type{margin-left:14px}.datatable__actions__range-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:48px}.datatable__actions__pagination{display:block;text-align:center;margin:0 32px 0 24px}.datatable__actions__select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-right:14px}.datatable__actions__select .input-group--select{margin:13px 0 13px 34px;padding:0;position:static}.datatable__actions__select .input-group--select .input-group__selections__comma{font-size:12px}.datatable__progress,.datatable__progress td,.datatable__progress th,.datatable__progress tr{height:auto!important}.datatable__progress th{padding:0!important}.datatable__progress th .progress-linear{top:-2px;margin:0 0 -2px}.datatable__expand-row{border:none!important}.datatable__expand-col{padding:0!important;height:0!important}.datatable__expand-col--expanded{border-bottom:1px solid rgba(0,0,0,.12)}.datatable__expand-content{transition:height .3s cubic-bezier(.25,.8,.5,1)}.datatable__expand-content>.card{border-radius:0;box-shadow:none}.application .theme--light.small-dialog__actions,.application .theme--light.small-dialog__content,.theme--light .small-dialog__actions,.theme--light .small-dialog__content{background:#fff}.application .theme--light.small-dialog a,.theme--light .small-dialog a{color:rgba(0,0,0,.87)}.application .theme--dark.small-dialog__actions,.application .theme--dark.small-dialog__content,.theme--dark .small-dialog__actions,.theme--dark .small-dialog__content{background:#424242}.application .theme--dark.small-dialog a,.theme--dark .small-dialog a{color:#fff}.small-dialog{display:block;width:100%;height:100%}.small-dialog__content{padding:0 24px}.small-dialog__actions{text-align:right}.small-dialog a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;text-decoration:none}.small-dialog a>*{width:100%}.small-dialog .menu__activator{height:100%}.date-picker-title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;line-height:1}.date-picker-title__year{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:14px;font-weight:500;margin-bottom:8px}.date-picker-title__date{font-size:34px;text-align:left;font-weight:500;position:relative;overflow:hidden}.date-picker-title__date>div{position:relative}.application .theme--light.date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover),.theme--light .date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover){color:rgba(0,0,0,.87)!important}.application .theme--light.date-picker-header .date-picker-header__value--disabled strong,.theme--light .date-picker-header .date-picker-header__value--disabled strong{color:rgba(0,0,0,.38)}.application .theme--dark.date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover),.theme--dark .date-picker-header .date-picker-header__value:not(.date-picker-header__value--disabled) strong:not(:hover){color:#fff!important}.application .theme--dark.date-picker-header .date-picker-header__value--disabled strong,.theme--dark .date-picker-header .date-picker-header__value--disabled strong{color:hsla(0,0%,100%,.5)}.date-picker-header{padding:4px 16px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:relative}.date-picker-header .btn{margin:0;z-index:auto}.date-picker-header .icon{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.date-picker-header__value{-webkit-box-flex:1;-ms-flex:1;flex:1;text-align:center;position:relative;overflow:hidden}.date-picker-header__value strong{cursor:pointer;transition:.3s cubic-bezier(.25,.8,.5,1);display:block;width:100%}.application .theme--light.date-picker-table th,.theme--light .date-picker-table th{color:rgba(0,0,0,.38)}.application .theme--light.date-picker-table .btn,.theme--light .date-picker-table .btn{color:rgba(0,0,0,.87)}.application .theme--dark.date-picker-table th,.theme--dark .date-picker-table th{color:hsla(0,0%,100%,.5)}.application .theme--dark.date-picker-table .btn,.theme--dark .date-picker-table .btn{color:#fff}.date-picker-table{position:relative;padding:0 12px;height:242px}.date-picker-table table{transition:.3s cubic-bezier(.25,.8,.5,1);top:0;table-layout:fixed;width:100%}.date-picker-table td,.date-picker-table th{text-align:center;position:relative}.date-picker-table th{font-size:12px}.date-picker-table--date .btn{height:32px;width:32px}.date-picker-table .btn{z-index:auto;margin:0;font-size:12px}.date-picker-table .btn.btn--active{color:#fff}.date-picker-table--month td{width:33.333333%;height:56px;vertical-align:middle;text-align:center}.date-picker-table--month td .btn{margin:0 auto;max-width:160px;min-width:40px;width:100%}.date-picker-table--date th{padding:8px 0;font-weight:600}.date-picker-table--date td{width:45px}.date-picker-table__event{border-radius:50%;bottom:2px;content:\\\"\\\";display:block;height:8px;left:50%;position:absolute;-webkit-transform:translateX(-4px);transform:translateX(-4px);width:8px}.date-picker-years{font-size:16px;font-weight:400;height:334px;list-style-type:none;overflow:auto;padding:0;text-align:center}.date-picker-years li{cursor:pointer;padding:8px 0;transition:none}.date-picker-years li.active{font-size:26px;font-weight:500;padding:10px 0}.date-picker-years li:hover{background:rgba(0,0,0,.12)}.picker--landscape .date-picker-years{height:286px}.application .theme--dark.picker,.theme--dark .picker{color:#fff}.application .theme--dark.picker .picker__body,.theme--dark .picker .picker__body{background:#424242}.application .theme--light.picker .picker__title,.theme--light .picker .picker__title{background:#e0e0e0}.application .theme--dark.picker .picker__title,.theme--dark .picker .picker__title{background:#616161}.picker{border-radius:2px;contain:layout style;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;vertical-align:top}.picker .card__row--actions{border:none;margin-top:-20px}.picker--full-width{display:-webkit-box;display:-ms-flexbox;display:flex}.picker__title{color:#fff;border-top-left-radius:2px;border-top-right-radius:2px;padding:16px}.picker__title__btn{transition:.3s cubic-bezier(.25,.8,.5,1)}.picker__title__btn.active{opacity:1}.picker__title__btn:not(.active){opacity:.6;cursor:pointer}.picker__title__btn:not(.active):hover{opacity:1}.picker__body{height:auto;overflow:hidden;position:relative;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.picker__body>div{width:100%}.picker__body>div.fade-transition-leave-active{position:absolute}.picker--landscape .picker__title{border-top-right-radius:0;border-bottom-right-radius:0;width:170px;position:absolute;top:0;left:0;height:100%;z-index:1}.picker--landscape .picker__actions,.picker--landscape .picker__body{margin-left:170px}.application .theme--light.expansion-panel .expansion-panel__container,.theme--light .expansion-panel .expansion-panel__container{border-top:1px solid rgba(0,0,0,.12);background-color:#fff;color:rgba(0,0,0,.87)}.application .theme--light.expansion-panel .expansion-panel__container .expansion-panel__header .icon,.theme--light .expansion-panel .expansion-panel__container .expansion-panel__header .icon{color:rgba(0,0,0,.54)}.application .theme--light.expansion-panel--focusable .expansion-panel__container:focus,.theme--light .expansion-panel--focusable .expansion-panel__container:focus{background-color:#eee}.application .theme--dark.expansion-panel .expansion-panel__container,.theme--dark .expansion-panel .expansion-panel__container{border-top:1px solid hsla(0,0%,100%,.12);background-color:#424242;color:#fff}.application .theme--dark.expansion-panel .expansion-panel__container .expansion-panel__header .icon,.theme--dark .expansion-panel .expansion-panel__container .expansion-panel__header .icon{color:#fff}.application .theme--dark.expansion-panel--focusable .expansion-panel__container:focus,.theme--dark .expansion-panel--focusable .expansion-panel__container:focus{background-color:rgba(0,0,0,.7)}.expansion-panel{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style-type:none;padding:0;text-align:left;width:100%;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.expansion-panel__container{-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%;max-width:100%;outline:none;transition:.3s cubic-bezier(.25,.8,.5,1)}.expansion-panel__container:first-child{border-top:none!important}.expansion-panel__container .header__icon{margin-left:auto}.expansion-panel__container .header__icon .icon{transition:none}.expansion-panel__container--active>.expansion-panel__header .header__icon .icon{-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.expansion-panel__header{display:-webkit-box;display:-ms-flexbox;display:flex;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;padding:12px 24px}.expansion-panel__header>:not(.header__icon){-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.expansion-panel__body{transition:.3s cubic-bezier(.25,.8,.5,1)}.expansion-panel__body .card{border-radius:0}.expansion-panel--inset,.expansion-panel--popout,.expansion-panel__body .card{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.expansion-panel--inset .expansion-panel__container--active,.expansion-panel--popout .expansion-panel__container--active{margin:16px;box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.expansion-panel--inset .expansion-panel__container,.expansion-panel--popout .expansion-panel__container{max-width:95%}.expansion-panel--popout .expansion-panel__container--active{max-width:100%}.expansion-panel--inset .expansion-panel__container--active{max-width:85%}.application .theme--light.footer,.theme--light .footer{background:#f5f5f5;color:rgba(0,0,0,.87)}.application .theme--dark.footer,.theme--dark .footer{background:#212121;color:#fff}.footer{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0!important;-ms-flex:0 1 auto!important;flex:0 1 auto!important;min-height:36px;transition:.2s cubic-bezier(.4,0,.2,1)}.footer--absolute,.footer--fixed{bottom:0;left:0;width:100%;z-index:3}.footer--inset{z-index:2}.footer--absolute{position:absolute}.footer--fixed{position:fixed}.content{transition:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;max-width:100%;will-change:padding}.content[data-booted=true]{transition:.2s cubic-bezier(.4,0,.2,1)}.content--wrap{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;max-width:100%}@media print{@-moz-document url-prefix(){.content{display:block}}}.container{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%;margin:auto;padding:16px;width:100%}.container.fluid{max-width:100%}.container.fill-height{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.container.fill-height .layout{height:100%;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.container.grid-list-xs{padding:2px}.container.grid-list-xs .layout .flex{padding:1px}.container.grid-list-xs .layout:only-child{margin:-1px}.container.grid-list-xs .layout:not(:only-child){margin:auto -1px}.container.grid-list-xs :not(:only-child) .layout:first-child{margin-top:-1px}.container.grid-list-xs :not(:only-child) .layout:last-child{margin-bottom:-1px}.container.grid-list-sm{padding:4px}.container.grid-list-sm .layout .flex{padding:2px}.container.grid-list-sm .layout:only-child{margin:-2px}.container.grid-list-sm .layout:not(:only-child){margin:auto -2px}.container.grid-list-sm :not(:only-child) .layout:first-child{margin-top:-2px}.container.grid-list-sm :not(:only-child) .layout:last-child{margin-bottom:-2px}.container.grid-list-md{padding:8px}.container.grid-list-md .layout .flex{padding:4px}.container.grid-list-md .layout:only-child{margin:-4px}.container.grid-list-md .layout:not(:only-child){margin:auto -4px}.container.grid-list-md :not(:only-child) .layout:first-child{margin-top:-4px}.container.grid-list-md :not(:only-child) .layout:last-child{margin-bottom:-4px}.container.grid-list-lg{padding:16px}.container.grid-list-lg .layout .flex{padding:8px}.container.grid-list-lg .layout:only-child{margin:-8px}.container.grid-list-lg .layout:not(:only-child){margin:auto -8px}.container.grid-list-lg :not(:only-child) .layout:first-child{margin-top:-8px}.container.grid-list-lg :not(:only-child) .layout:last-child{margin-bottom:-8px}.container.grid-list-xl{padding:24px}.container.grid-list-xl .layout .flex{padding:12px}.container.grid-list-xl .layout:only-child{margin:-12px}.container.grid-list-xl .layout:not(:only-child){margin:auto -12px}.container.grid-list-xl :not(:only-child) .layout:first-child{margin-top:-12px}.container.grid-list-xl :not(:only-child) .layout:last-child{margin-bottom:-12px}.layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-wrap:nowrap;flex-wrap:nowrap;min-width:0}.layout.row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.layout.row.reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.layout.column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.layout.column>.flex{max-width:100%}.layout.column.reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.layout.wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}.child-flex>*,.flex{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.align-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.align-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.align-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.align-baseline{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.align-content-start{-ms-flex-line-pack:start;align-content:flex-start}.align-content-end{-ms-flex-line-pack:end;align-content:flex-end}.align-content-center{-ms-flex-line-pack:center;align-content:center}.align-content-space-between{-ms-flex-line-pack:justify;align-content:space-between}.align-content-space-around{-ms-flex-line-pack:distribute;align-content:space-around}.justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.grow,.spacer{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.grow{-ms-flex-negative:0!important;flex-shrink:0!important}.shrink{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important;-ms-flex-negative:1!important;flex-shrink:1!important}.scroll-y{overflow-y:auto}.fill-height{height:100%}.hide-overflow{overflow:hidden!important}.show-overflow{overflow:visible!important}.ellipsis,.no-wrap{white-space:nowrap}.ellipsis{overflow:hidden;text-overflow:ellipsis}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-flex>*,.d-inline-flex>*{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.d-block{display:block!important}.d-inline-block{display:inline-block!important}.d-inline{display:inline!important}@media only screen and (min-width:960px){.container{max-width:900px}}@media only screen and (min-width:1264px){.container{max-width:1185px}}@media only screen and (min-width:1904px){.container{max-width:1785px}}@media only screen and (max-width:599px){.container{padding:24px}}@media (min-width:0){.flex.xs1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-xs1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.xs2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-xs2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.xs3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-xs3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.xs4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-xs4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.xs5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-xs5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.xs6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-xs6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.xs7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-xs7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.xs8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-xs8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.xs9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-xs9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.xs10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-xs10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.xs11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-xs11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.xs12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-xs12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-xs0{margin-left:0}.flex.offset-xs1{margin-left:8.333333333333332%}.flex.offset-xs2{margin-left:16.666666666666664%}.flex.offset-xs3{margin-left:25%}.flex.offset-xs4{margin-left:33.33333333333333%}.flex.offset-xs5{margin-left:41.66666666666667%}.flex.offset-xs6{margin-left:50%}.flex.offset-xs7{margin-left:58.333333333333336%}.flex.offset-xs8{margin-left:66.66666666666666%}.flex.offset-xs9{margin-left:75%}.flex.offset-xs10{margin-left:83.33333333333334%}.flex.offset-xs11{margin-left:91.66666666666666%}.flex.offset-xs12{margin-left:100%}}@media (min-width:600px){.flex.sm1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-sm1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.sm2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-sm2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.sm3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-sm3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.sm4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-sm4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.sm5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-sm5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.sm6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-sm6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.sm7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-sm7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.sm8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-sm8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.sm9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-sm9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.sm10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-sm10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.sm11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-sm11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.sm12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-sm12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-sm0{margin-left:0}.flex.offset-sm1{margin-left:8.333333333333332%}.flex.offset-sm2{margin-left:16.666666666666664%}.flex.offset-sm3{margin-left:25%}.flex.offset-sm4{margin-left:33.33333333333333%}.flex.offset-sm5{margin-left:41.66666666666667%}.flex.offset-sm6{margin-left:50%}.flex.offset-sm7{margin-left:58.333333333333336%}.flex.offset-sm8{margin-left:66.66666666666666%}.flex.offset-sm9{margin-left:75%}.flex.offset-sm10{margin-left:83.33333333333334%}.flex.offset-sm11{margin-left:91.66666666666666%}.flex.offset-sm12{margin-left:100%}}@media (min-width:960px){.flex.md1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-md1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.md2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-md2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.md3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-md3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.md4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-md4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.md5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-md5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.md6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-md6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.md7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-md7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.md8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-md8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.md9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-md9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.md10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-md10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.md11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-md11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.md12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-md12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-md0{margin-left:0}.flex.offset-md1{margin-left:8.333333333333332%}.flex.offset-md2{margin-left:16.666666666666664%}.flex.offset-md3{margin-left:25%}.flex.offset-md4{margin-left:33.33333333333333%}.flex.offset-md5{margin-left:41.66666666666667%}.flex.offset-md6{margin-left:50%}.flex.offset-md7{margin-left:58.333333333333336%}.flex.offset-md8{margin-left:66.66666666666666%}.flex.offset-md9{margin-left:75%}.flex.offset-md10{margin-left:83.33333333333334%}.flex.offset-md11{margin-left:91.66666666666666%}.flex.offset-md12{margin-left:100%}}@media (min-width:1264px){.flex.lg1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-lg1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.lg2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-lg2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.lg3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-lg3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.lg4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-lg4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.lg5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-lg5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.lg6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-lg6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.lg7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-lg7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.lg8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-lg8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.lg9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-lg9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.lg10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-lg10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.lg11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-lg11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.lg12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-lg12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-lg0{margin-left:0}.flex.offset-lg1{margin-left:8.333333333333332%}.flex.offset-lg2{margin-left:16.666666666666664%}.flex.offset-lg3{margin-left:25%}.flex.offset-lg4{margin-left:33.33333333333333%}.flex.offset-lg5{margin-left:41.66666666666667%}.flex.offset-lg6{margin-left:50%}.flex.offset-lg7{margin-left:58.333333333333336%}.flex.offset-lg8{margin-left:66.66666666666666%}.flex.offset-lg9{margin-left:75%}.flex.offset-lg10{margin-left:83.33333333333334%}.flex.offset-lg11{margin-left:91.66666666666666%}.flex.offset-lg12{margin-left:100%}}@media (min-width:1904px){.flex.xl1{-ms-flex-preferred-size:8.333333333333332%;flex-basis:8.333333333333332%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.333333333333332%}.flex.order-xl1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.flex.xl2{-ms-flex-preferred-size:16.666666666666664%;flex-basis:16.666666666666664%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.666666666666664%}.flex.order-xl2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.flex.xl3{-ms-flex-preferred-size:25%;flex-basis:25%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%}.flex.order-xl3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.flex.xl4{-ms-flex-preferred-size:33.33333333333333%;flex-basis:33.33333333333333%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.33333333333333%}.flex.order-xl4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.flex.xl5{-ms-flex-preferred-size:41.66666666666667%;flex-basis:41.66666666666667%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.66666666666667%}.flex.order-xl5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.flex.xl6{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%}.flex.order-xl6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.flex.xl7{-ms-flex-preferred-size:58.333333333333336%;flex-basis:58.333333333333336%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.333333333333336%}.flex.order-xl7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.flex.xl8{-ms-flex-preferred-size:66.66666666666666%;flex-basis:66.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.66666666666666%}.flex.order-xl8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.flex.xl9{-ms-flex-preferred-size:75%;flex-basis:75%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%}.flex.order-xl9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.flex.xl10{-ms-flex-preferred-size:83.33333333333334%;flex-basis:83.33333333333334%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.33333333333334%}.flex.order-xl10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.flex.xl11{-ms-flex-preferred-size:91.66666666666666%;flex-basis:91.66666666666666%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.66666666666666%}.flex.order-xl11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.flex.xl12{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%}.flex.order-xl12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.flex.offset-xl0{margin-left:0}.flex.offset-xl1{margin-left:8.333333333333332%}.flex.offset-xl2{margin-left:16.666666666666664%}.flex.offset-xl3{margin-left:25%}.flex.offset-xl4{margin-left:33.33333333333333%}.flex.offset-xl5{margin-left:41.66666666666667%}.flex.offset-xl6{margin-left:50%}.flex.offset-xl7{margin-left:58.333333333333336%}.flex.offset-xl8{margin-left:66.66666666666666%}.flex.offset-xl9{margin-left:75%}.flex.offset-xl10{margin-left:83.33333333333334%}.flex.offset-xl11{margin-left:91.66666666666666%}.flex.offset-xl12{margin-left:100%}}.application .theme--light.navigation-drawer,.theme--light .navigation-drawer{background-color:#fff}.application .theme--light.navigation-drawer .divider,.application .theme--light.navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border,.theme--light .navigation-drawer .divider,.theme--light .navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border{background-color:rgba(0,0,0,.12)}.application .theme--dark.navigation-drawer,.theme--dark .navigation-drawer{background-color:#424242}.application .theme--dark.navigation-drawer .divider,.application .theme--dark.navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border,.theme--dark .navigation-drawer .divider,.theme--dark .navigation-drawer:not(.navigation-drawer--floating) .navigation-drawer__border{background-color:hsla(0,0%,100%,.12)}.navigation-drawer{transition:none;display:block;left:0;max-width:100%;overflow-y:auto;overflow-x:hidden;padding:0 0 100px;pointer-events:auto;top:0;will-change:transform;z-index:3;-webkit-overflow-scrolling:touch}.navigation-drawer[data-booted=true]{transition:.2s cubic-bezier(.4,0,.2,1);transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,box-shadow,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,transform,transform-origin,width;transition-property:background,background-color,border,border-bottom,border-bottom-color,border-bottom-width,border-color,border-left,border-left-color,border-left-width,border-right,border-right-color,border-right-width,border-top,border-top-color,border-top-width,border-width,bottom,box-shadow,color,height,left,margin,margin-bottom,margin-left,margin-right,margin-top,max-width,min-height,min-width,opacity,padding,padding-bottom,padding-left,padding-right,padding-top,right,top,transform,transform-origin,width,-webkit-transform,-webkit-transform-origin}.navigation-drawer__border{position:absolute;right:0;top:0;height:100%;width:1px}.navigation-drawer.navigation-drawer--right:after{left:0;right:auto}.navigation-drawer--right{left:auto;right:0}.navigation-drawer--right>.navigation-drawer__border{right:auto;left:0}.navigation-drawer--absolute{position:absolute}.navigation-drawer--fixed{position:fixed}.navigation-drawer--floating:after{display:none}.navigation-drawer--mini-variant{overflow:hidden}.navigation-drawer--mini-variant .list__group__header__prepend-icon{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%}.navigation-drawer--mini-variant .list__tile__action,.navigation-drawer--mini-variant .list__tile__avatar{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-width:48px}.navigation-drawer--mini-variant .list__tile:after,.navigation-drawer--mini-variant .list__tile__content{opacity:0}.navigation-drawer--mini-variant .divider,.navigation-drawer--mini-variant .list--group,.navigation-drawer--mini-variant .subheader{display:none!important}.navigation-drawer--is-mobile,.navigation-drawer--temporary{z-index:6}.navigation-drawer--is-mobile:not(.navigation-drawer--close),.navigation-drawer--temporary:not(.navigation-drawer--close){box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.navigation-drawer .list{background:inherit}.navigation-drawer>.list .list__tile{transition:none;font-weight:500}.navigation-drawer>.list .list__tile--active .list__tile__title{color:inherit}.navigation-drawer>.list .list--group .list__tile{font-weight:400}.navigation-drawer>.list .list--group__header--active:after{background:transparent}.navigation-drawer>.list:not(.list--dense) .list__tile{font-size:14px}.application .theme--light.pagination__item,.theme--light .pagination__item{background:#fff;color:#000}.application .theme--light.pagination__item--active,.theme--light .pagination__item--active{color:#fff}.application .theme--light.pagination__navigation,.theme--light .pagination__navigation{background:#fff}.application .theme--light.pagination__navigation .icon,.theme--light .pagination__navigation .icon{color:rgba(0,0,0,.54)}.application .theme--dark.pagination__item,.theme--dark .pagination__item{background:#424242;color:#fff}.application .theme--dark.pagination__item--active,.theme--dark .pagination__item--active{color:#fff}.application .theme--dark.pagination__navigation,.theme--dark .pagination__navigation{background:#424242}.application .theme--dark.pagination__navigation .icon,.theme--dark .pagination__navigation .icon{color:#fff}.pagination{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;list-style-type:none;margin:0;max-width:100%;padding:0}.pagination,.pagination>li{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.pagination>li{display:-webkit-box;display:-ms-flexbox;display:flex}.pagination--circle .pagination__item,.pagination--circle .pagination__more,.pagination--circle .pagination__navigation{border-radius:50%}.pagination--disabled{pointer-events:none;opacity:.6}.pagination__item{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);border-radius:4px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:14px;background:transparent;height:34px;width:34px;margin:.3rem;text-decoration:none;transition:.3s cubic-bezier(0,0,.2,1)}.pagination__item--active{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.pagination__navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-decoration:none;height:2rem;border-radius:4px;width:2rem;margin:.3rem 10px}.pagination__navigation .icon{font-size:2rem;transition:.2s cubic-bezier(.4,0,.6,1);vertical-align:middle}.pagination__navigation--disabled{opacity:.6;pointer-events:none}.pagination__more{margin:.3rem;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:2rem;width:2rem}.parallax{position:relative;overflow:hidden;z-index:0}.parallax__image-container{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;contain:strict}.parallax__image{position:absolute;bottom:0;left:50%;min-width:100%;min-height:100%;display:none;-webkit-transform:translate(-50%);transform:translate(-50%);will-change:transform;transition:opacity .3s cubic-bezier(.25,.8,.5,1);z-index:1}.parallax__content{color:#fff;height:100%;z-index:2;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0 1rem}.radio-group .input-group__details:after,.radio-group .input-group__details:before{display:none}.radio-group .input-group{padding:0}.radio-group--column .input-group__input{display:block}.radio-group--row .input-group__input{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.radio-group.input-group--error .radio .icon--selection-control,.radio-group.input-group--error .radio label{color:inherit}.application .theme--light.input-group--slider label,.theme--light .input-group--slider label{color:rgba(0,0,0,.54)}.application .theme--light.input-group--slider .slider__track,.application .theme--light.input-group--slider .slider__track-fill,.theme--light .input-group--slider .slider__track,.theme--light .input-group--slider .slider__track-fill{background:rgba(0,0,0,.26)}.application .theme--light.input-group--slider .slider__tick,.application .theme--light.input-group--slider .slider__track__container:after,.theme--light .input-group--slider .slider__tick,.theme--light .input-group--slider .slider__track__container:after{border:1px solid rgba(0,0,0,.87)}.application .theme--light.input-group--slider:not(.input-group--dirty) .slider__thumb--label,.theme--light .input-group--slider:not(.input-group--dirty) .slider__thumb--label{background:rgba(0,0,0,.26)}.application .theme--light.input-group--slider:not(.input-group--dirty) .slider__thumb,.theme--light .input-group--slider:not(.input-group--dirty) .slider__thumb{border:3px solid rgba(0,0,0,.26)}.application .theme--light.input-group--slider:not(.input-group--dirty):focus .slider__thumb,.theme--light .input-group--slider:not(.input-group--dirty):focus .slider__thumb{border:3px solid rgba(0,0,0,.38)}.application .theme--light.input-group--slider.input-group--disabled .slider__thumb,.theme--light .input-group--slider.input-group--disabled .slider__thumb{background:none;border:3px solid rgba(0,0,0,.26)}.application .theme--light.input-group--slider.input-group--disabled.input-group--dirty .slider__thumb,.theme--light .input-group--slider.input-group--disabled.input-group--dirty .slider__thumb{background:rgba(0,0,0,.26);border:0 solid transparent}.application .theme--light.input-group--slider:focus .slider__track,.theme--light .input-group--slider:focus .slider__track{background:rgba(0,0,0,.38)}.application .theme--dark.input-group--slider label,.theme--dark .input-group--slider label{color:hsla(0,0%,100%,.7)}.application .theme--dark.input-group--slider .slider__track,.application .theme--dark.input-group--slider .slider__track-fill,.theme--dark .input-group--slider .slider__track,.theme--dark .input-group--slider .slider__track-fill{background:hsla(0,0%,100%,.2)}.application .theme--dark.input-group--slider .slider__tick,.application .theme--dark.input-group--slider .slider__track__container:after,.theme--dark .input-group--slider .slider__tick,.theme--dark .input-group--slider .slider__track__container:after{border:1px solid #fff}.application .theme--dark.input-group--slider:not(.input-group--dirty) .slider__thumb--label,.theme--dark .input-group--slider:not(.input-group--dirty) .slider__thumb--label{background:hsla(0,0%,100%,.2)}.application .theme--dark.input-group--slider:not(.input-group--dirty) .slider__thumb,.theme--dark .input-group--slider:not(.input-group--dirty) .slider__thumb{border:3px solid hsla(0,0%,100%,.2)}.application .theme--dark.input-group--slider:not(.input-group--dirty):focus .slider__thumb,.theme--dark .input-group--slider:not(.input-group--dirty):focus .slider__thumb{border:3px solid hsla(0,0%,100%,.3)}.application .theme--dark.input-group--slider.input-group--disabled .slider__thumb,.theme--dark .input-group--slider.input-group--disabled .slider__thumb{background:none;border:3px solid hsla(0,0%,100%,.2)}.application .theme--dark.input-group--slider.input-group--disabled.input-group--dirty .slider__thumb,.theme--dark .input-group--slider.input-group--disabled.input-group--dirty .slider__thumb{background:hsla(0,0%,100%,.2);border:0 solid transparent}.application .theme--dark.input-group--slider:focus .slider__track,.theme--dark .input-group--slider:focus .slider__track{background:hsla(0,0%,100%,.3)}.input-group.input-group--slider{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-right:16px}.input-group.input-group--slider .input-group__details:after,.input-group.input-group--slider .input-group__details:before{display:none}.input-group.input-group--slider .input-group__input{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}.input-group.input-group--slider label{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:auto;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:18px;-webkit-transform:none;transform:none}.input-group.input-group--slider label+.input-group__input{margin-left:16px;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.input-group.input-group--slider.input-group--active .slider__thumb{-webkit-transform:translateY(-50%) scale(1.2);transform:translateY(-50%) scale(1.2)}.input-group.input-group--slider.input-group--active .slider__track{transition:none}.input-group.input-group--slider.input-group--active .slider__thumb-container--label .slider__thumb,.input-group.input-group--slider.input-group--active .slider__thumb-container--label .slider__thumb:hover{-webkit-transform:translateY(-50%) scale(0);transform:translateY(-50%) scale(0)}.input-group.input-group--slider.input-group--active .slider__thumb-container,.input-group.input-group--slider.input-group--active .slider__track-fill{transition:none}.input-group.input-group--slider.input-group--active.input-group--ticks .slider__tick,.input-group.input-group--slider.input-group--active.input-group--ticks .slider__track__container:after{opacity:1}.input-group.input-group--slider.input-group--disabled{pointer-events:none}.input-group.input-group--slider.input-group--disabled .slider__thumb{-webkit-transform:translateY(-50%) scale(.5);transform:translateY(-50%) scale(.5);background:transparent}.input-group.input-group--slider.input-group--disabled.input-group--dirty{border-color:transparent}.input-group.input-group--slider.input-group--prepend-icon .slider{margin-left:40px}.input-group.input-group--slider.input-group--append-icon .slider{margin-right:40px}.slider{cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;height:30px;-webkit-box-flex:1;-ms-flex:1;flex:1;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slider__track__container{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);height:2px;width:100%;overflow:hidden}.slider__track__container:after{content:\\\"\\\";position:absolute;right:0;top:0;height:2px;transition:.3s cubic-bezier(.25,.8,.5,1);width:2px;opacity:0}.slider__thumb,.slider__tick,.slider__track{position:absolute;top:0}.slider__track{-webkit-transform-origin:right;transform-origin:right;overflow:hidden}.slider__track,.slider__track-fill{height:2px;left:0;transition:.3s cubic-bezier(.25,.8,.5,1);width:100%}.slider__track-fill{position:absolute;-webkit-transform-origin:left;transform-origin:left}.slider__ticks-container{position:absolute;left:0;height:2px;width:100%;top:50%;overflow:hidden}.slider__tick{transition:.3s cubic-bezier(.25,.8,.5,1);opacity:0}.slider__thumb-container{position:absolute}.slider__thumb,.slider__thumb-container{top:50%;transition:.3s cubic-bezier(.25,.8,.5,1)}.slider__thumb{width:16px;height:16px;left:-8px;border-radius:50%;background:transparent;-webkit-transform:translateY(-50%) scale(.8);transform:translateY(-50%) scale(.8);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slider__thumb--label__container{position:absolute;left:0;top:0;transition:.3s ease-in-out}.slider__thumb--label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:12px;color:#fff;width:28px;height:28px;border-radius:50% 50% 0;position:absolute;left:-14px;top:-40px;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:.3s ease-in-out}.slider__thumb--label span{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.slider__track,.slider__track-fill{position:absolute}.snack{position:fixed;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff;pointer-events:none;z-index:1000;font-size:14px;left:0;right:0}.snack--absolute{position:absolute}.snack--top{top:0}.snack--bottom{bottom:0}.snack__wrapper{background-color:#323232;pointer-events:auto;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.snack__content,.snack__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}.snack__content{height:48px;padding:14px 24px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;overflow:hidden}.snack__content .btn{color:#fff;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0 0 0 24px;height:auto;min-width:auto;width:auto}.snack__content .btn__content{padding:8px;margin:-8px}.snack__content .btn__content:before{display:none}.snack--multi-line .snack__content{height:80px;padding:24px}.snack--vertical .snack__content{height:112px;padding:24px 24px 14px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.snack--vertical .snack__content .btn.btn{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-left:0;margin-top:24px}.snack--vertical .snack__content .btn__content{padding:0;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0}.snack--auto-height .snack__content{height:auto}.snack-transition-enter-active,.snack-transition-leave-active{transition:-webkit-transform .4s cubic-bezier(.25,.8,.5,1);transition:transform .4s cubic-bezier(.25,.8,.5,1);transition:transform .4s cubic-bezier(.25,.8,.5,1),-webkit-transform .4s cubic-bezier(.25,.8,.5,1)}.snack-transition-enter-active .snack__content,.snack-transition-leave-active .snack__content{transition:opacity .3s linear .1s}.snack-transition-enter .snack__content{opacity:0}.snack-transition-enter-to .snack__content,.snack-transition-leave .snack__content{opacity:1}.snack-transition-enter.snack.snack--top,.snack-transition-leave-to.snack.snack--top{-webkit-transform:translateY(calc(-100% - 8px));transform:translateY(calc(-100% - 8px))}.snack-transition-enter.snack.snack--bottom,.snack-transition-leave-to.snack.snack--bottom{-webkit-transform:translateY(100%);transform:translateY(100%)}@media only screen and (min-width:600px){.snack__wrapper{width:auto;max-width:568px;min-width:288px;margin:0 auto;border-radius:2px}.snack--left .snack__wrapper{margin-left:0}.snack--right .snack__wrapper{margin-right:0}.snack--left,.snack--right{margin:0 24px}.snack--left.snack--top,.snack--right.snack--top{-webkit-transform:translateY(24px);transform:translateY(24px)}.snack--left.snack--bottom,.snack--right.snack--bottom{-webkit-transform:translateY(-24px);transform:translateY(-24px)}.snack__content .btn:first-of-type{margin-left:48px}}.speed-dial{position:relative}.speed-dial--absolute{position:absolute}.speed-dial--fixed{position:fixed}.speed-dial--absolute,.speed-dial--fixed{z-index:4}.speed-dial--absolute>.btn--floating,.speed-dial--fixed>.btn--floating{margin:0}.speed-dial--top:not(.speed-dial--absolute){top:16px}.speed-dial--top.speed-dial--absolute{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.speed-dial--bottom:not(.speed-dial--absolute){bottom:16px}.speed-dial--bottom.speed-dial--absolute{bottom:50%;-webkit-transform:translateY(50%);transform:translateY(50%)}.speed-dial--left{left:16px}.speed-dial--right{right:16px}.speed-dial--direction-left .speed-dial__list,.speed-dial--direction-right .speed-dial__list{height:100%;top:0}.speed-dial--direction-bottom .speed-dial__list,.speed-dial--direction-top .speed-dial__list{left:0;width:100%}.speed-dial--direction-top .speed-dial__list{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;bottom:100%}.speed-dial--direction-right .speed-dial__list{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;left:100%}.speed-dial--direction-bottom .speed-dial__list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;top:100%}.speed-dial--direction-left .speed-dial__list{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;right:100%}.speed-dial__list{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute}.speed-dial__list .btn:first-child{transition-delay:.05s}.speed-dial__list .btn:nth-child(2){transition-delay:.1s}.speed-dial__list .btn:nth-child(3){transition-delay:.15s}.speed-dial__list .btn:nth-child(4){transition-delay:.2s}.speed-dial__list .btn:nth-child(5){transition-delay:.25s}.speed-dial__list .btn:nth-child(6){transition-delay:.3s}.speed-dial__list .btn:nth-child(7){transition-delay:.35s}.application .theme--light.stepper,.theme--light .stepper{background:#fff}.application .theme--light.stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step,.theme--light .stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step{background:rgba(0,0,0,.38)}.application .theme--light.stepper .stepper__step__step,.application .theme--light.stepper .stepper__step__step .icon,.theme--light .stepper .stepper__step__step,.theme--light .stepper .stepper__step__step .icon{color:#fff}.application .theme--light.stepper .stepper__header .divider,.theme--light .stepper .stepper__header .divider{background:rgba(0,0,0,.12)}.application .theme--light.stepper .stepper__step--active .stepper__label,.theme--light .stepper .stepper__step--active .stepper__label{text-shadow:0 0 0 #000}.application .theme--light.stepper .stepper__step--editable:hover,.theme--light .stepper .stepper__step--editable:hover{background:rgba(0,0,0,.06)}.application .theme--light.stepper .stepper__step--editable:hover .stepper__label,.theme--light .stepper .stepper__step--editable:hover .stepper__label{text-shadow:0 0 0 #000}.application .theme--light.stepper .stepper__step--complete .stepper__label,.theme--light .stepper .stepper__step--complete .stepper__label{color:rgba(0,0,0,.87)}.application .theme--light.stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step,.theme--light .stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step{background:rgba(0,0,0,.54)}.application .theme--light.stepper .stepper__label,.theme--light .stepper .stepper__label{color:rgba(0,0,0,.38)}.application .theme--light.stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.application .theme--light.stepper .stepper__label small,.theme--light .stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.theme--light .stepper .stepper__label small{color:rgba(0,0,0,.54)}.application .theme--light.stepper--vertical .stepper__content:not(:last-child),.theme--light .stepper--vertical .stepper__content:not(:last-child){border-left:1px solid rgba(0,0,0,.12)}.application .theme--dark.stepper,.theme--dark .stepper{background:#303030}.application .theme--dark.stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step,.theme--dark .stepper .stepper__step:not(.stepper__step--active):not(.stepper__step--complete):not(.stepper__step--error) .stepper__step__step{background:hsla(0,0%,100%,.5)}.application .theme--dark.stepper .stepper__step__step,.application .theme--dark.stepper .stepper__step__step .icon,.theme--dark .stepper .stepper__step__step,.theme--dark .stepper .stepper__step__step .icon{color:#fff}.application .theme--dark.stepper .stepper__header .divider,.theme--dark .stepper .stepper__header .divider{background:hsla(0,0%,100%,.12)}.application .theme--dark.stepper .stepper__step--active .stepper__label,.theme--dark .stepper .stepper__step--active .stepper__label{text-shadow:0 0 0 #fff}.application .theme--dark.stepper .stepper__step--editable:hover,.theme--dark .stepper .stepper__step--editable:hover{background:hsla(0,0%,100%,.06)}.application .theme--dark.stepper .stepper__step--editable:hover .stepper__label,.theme--dark .stepper .stepper__step--editable:hover .stepper__label{text-shadow:0 0 0 #fff}.application .theme--dark.stepper .stepper__step--complete .stepper__label,.theme--dark .stepper .stepper__step--complete .stepper__label{color:hsla(0,0%,100%,.87)}.application .theme--dark.stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step,.theme--dark .stepper .stepper__step--inactive.stepper__step--editable:not(.stepper__step--error):hover .stepper__step__step{background:hsla(0,0%,100%,.75)}.application .theme--dark.stepper .stepper__label,.theme--dark .stepper .stepper__label{color:hsla(0,0%,100%,.5)}.application .theme--dark.stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.application .theme--dark.stepper .stepper__label small,.theme--dark .stepper--non-linear .stepper__step:not(.stepper__step--complete):not(.stepper__step--error) .stepper__label,.theme--dark .stepper .stepper__label small{color:hsla(0,0%,100%,.7)}.application .theme--dark.stepper--vertical .stepper__content:not(:last-child),.theme--dark .stepper--vertical .stepper__content:not(:last-child){border-left:1px solid hsla(0,0%,100%,.12)}.stepper{overflow:hidden;position:relative}.stepper,.stepper__header{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.stepper__header{height:72px;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.stepper__header .divider{-ms-flex-item-align:center;align-self:center;margin:0 -16px}.stepper__items{position:relative;overflow:hidden}.stepper__step__step{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:12px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:24px;margin-right:8px;min-width:24px;width:24px;transition:.3s cubic-bezier(.25,.8,.25,1)}.stepper__step__step .icon{font-size:18px}.stepper__step{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding:24px;position:relative}.stepper__step--active .stepper__label{transition:.3s cubic-bezier(.4,0,.6,1)}.stepper__step--editable{cursor:pointer}.stepper__step.stepper__step--error .stepper__step__step{background:transparent;color:inherit}.stepper__step.stepper__step--error .stepper__step__step .icon{font-size:24px;color:inherit}.stepper__step.stepper__step--error .stepper__label{color:inherit;text-shadow:none;font-weight:500}.stepper__step.stepper__step--error .stepper__label small{color:inherit}.stepper__label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-align:left}.stepper__label small{font-size:12px;font-weight:300;text-shadow:none}.stepper__wrapper{overflow:hidden;transition:none}.stepper__content{top:0;padding:24px 24px 16px;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;width:100%}.stepper__content>.btn{margin:24px 8px 8px 0}.stepper--is-booted .stepper__content,.stepper--is-booted .stepper__wrapper{transition:.3s cubic-bezier(.25,.8,.5,1)}.stepper--vertical{padding-bottom:36px}.stepper--vertical .stepper__content{margin:-8px -36px -16px 36px;padding:16px 60px 16px 23px;width:auto}.stepper--vertical .stepper__step{padding:24px 24px 16px}.stepper--vertical .stepper__step__step{margin-right:12px}.stepper--alt-labels .stepper__header{height:auto}.stepper--alt-labels .stepper__header .divider{margin:35px -67px 0;-ms-flex-item-align:start;align-self:flex-start}.stepper--alt-labels .stepper__step{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-preferred-size:175px;flex-basis:175px}.stepper--alt-labels .stepper__step small{-ms-flex-item-align:center;align-self:center}.stepper--alt-labels .stepper__step__step{margin-right:0;margin-bottom:11px}@media only screen and (max-width:959px){.stepper:not(.stepper--vertical) .stepper__label{display:none}.stepper:not(.stepper--vertical) .stepper__step__step{margin-right:0}}.application .theme--light.switch:not(.input-group--dirty) .input-group--selection-controls__container,.theme--light .switch:not(.input-group--dirty) .input-group--selection-controls__container{color:rgba(0,0,0,.38)!important}.application .theme--light.switch .input-group--selection-controls__ripple:after,.theme--light .switch .input-group--selection-controls__ripple:after{background-color:#fafafa}.application .theme--light.switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active),.theme--light .switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active){color:rgba(0,0,0,.38)}.application .theme--light.switch .input-group--selection-controls__ripple--active:after,.theme--light .switch .input-group--selection-controls__ripple--active:after{background-color:currentColor}.application .theme--light.switch .input-group--selection-controls__toggle,.theme--light .switch .input-group--selection-controls__toggle{color:rgba(0,0,0,.38)}.application .theme--light.switch .input-group--selection-controls__toggle--active,.theme--light .switch .input-group--selection-controls__toggle--active{color:inherit}.application .theme--light.switch.input-group--disabled .input-group--selection-controls__ripple:after,.theme--light .switch.input-group--disabled .input-group--selection-controls__ripple:after{background-color:#bdbdbd!important}.application .theme--light.switch.input-group--disabled .input-group--selection-controls__toggle,.theme--light .switch.input-group--disabled .input-group--selection-controls__toggle{color:rgba(0,0,0,.12)!important}.application .theme--dark.switch:not(.input-group--dirty) .input-group--selection-controls__container,.theme--dark .switch:not(.input-group--dirty) .input-group--selection-controls__container{color:hsla(0,0%,100%,.3)!important}.application .theme--dark.switch .input-group--selection-controls__ripple:after,.theme--dark .switch .input-group--selection-controls__ripple:after{background-color:#bdbdbd}.application .theme--dark.switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active),.theme--dark .switch .input-group--selection-controls__ripple:not(.input-group--selection-controls__ripple--active){color:hsla(0,0%,100%,.3)}.application .theme--dark.switch .input-group--selection-controls__ripple--active:after,.theme--dark .switch .input-group--selection-controls__ripple--active:after{background-color:currentColor}.application .theme--dark.switch .input-group--selection-controls__toggle,.theme--dark .switch .input-group--selection-controls__toggle{color:hsla(0,0%,100%,.3)}.application .theme--dark.switch .input-group--selection-controls__toggle--active,.theme--dark .switch .input-group--selection-controls__toggle--active{color:inherit}.application .theme--dark.switch.input-group--disabled .input-group--selection-controls__ripple:after,.theme--dark .switch.input-group--disabled .input-group--selection-controls__ripple:after{background-color:#424242!important}.application .theme--dark.switch.input-group--disabled .input-group--selection-controls__toggle,.theme--dark .switch.input-group--disabled .input-group--selection-controls__toggle{color:hsla(0,0%,100%,.1)!important}.input-group.input-group--selection-controls{z-index:0}.input-group.input-group--selection-controls.switch.input-group--append-icon label,.input-group.input-group--selection-controls.switch.input-group--prepend-icon label{left:62px}.input-group.input-group--selection-controls.switch.input-group--prepend-icon .input-group--selection-controls__container{margin-left:6px}.input-group.input-group--selection-controls.switch.input-group--append-icon .input-group__append-icon{left:40px}.input-group.input-group--selection-controls.switch .input-group--selection-controls__container{color:inherit;position:relative;width:36px}.input-group.input-group--selection-controls.switch .input-group--selection-controls__container[class*=\\\"--text\\\"] .input-group--selection-controls__ripple--active:after{background-color:currentColor}.input-group.input-group--selection-controls.switch .input-group--selection-controls__toggle{background-color:currentColor;color:inherit;position:absolute;height:14px;top:50%;left:0;width:34px;border-radius:8px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.input-group.input-group--selection-controls.switch .input-group--selection-controls__toggle.input-group--selection-controls__toggle--active{opacity:.5}.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple{-webkit-transform:translate(-15px,-24px);transform:translate(-15px,-24px);transition:.3s cubic-bezier(.25,.8,.25,1);z-index:1;left:0}.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple:after{content:\\\"\\\";position:absolute;display:inline-block;cursor:pointer;width:20px;border-radius:50%;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);height:20px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.input-group.input-group--selection-controls.switch .input-group--selection-controls__ripple--active{-webkit-transform:translate(2px,-24px);transform:translate(2px,-24px)}.input-group.input-group--selection-controls.switch label{padding-left:14px}.application .theme--light.system-bar,.theme--light .system-bar{background-color:#e0e0e0;color:rgba(0,0,0,.54)}.application .theme--light.system-bar .icon,.theme--light .system-bar .icon{color:rgba(0,0,0,.54)}.application .theme--light.system-bar--lights-out,.theme--light .system-bar--lights-out{background-color:hsla(0,0%,100%,.7)!important}.application .theme--dark.system-bar,.theme--dark .system-bar{background-color:#000;color:hsla(0,0%,100%,.7)}.application .theme--dark.system-bar .icon,.theme--dark .system-bar .icon{color:hsla(0,0%,100%,.7)}.application .theme--dark.system-bar--lights-out,.theme--dark .system-bar--lights-out{background-color:rgba(0,0,0,.2)!important}.system-bar{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;font-weight:500;padding:0 8px}.system-bar .icon{font-size:16px}.system-bar--absolute,.system-bar--fixed{left:0;top:0;width:100%;z-index:3}.system-bar--fixed{position:fixed}.system-bar--absolute{position:absolute}.system-bar--status .icon{margin-right:4px}.system-bar--window .icon{font-size:20px;margin-right:8px}.application .theme--light.tabs__bar,.theme--light .tabs__bar{background-color:#fff}.application .theme--light.tabs__bar .tabs__div,.theme--light .tabs__bar .tabs__div{color:rgba(0,0,0,.87)}.application .theme--light.tabs__bar .tabs__item--disabled,.theme--light .tabs__bar .tabs__item--disabled{color:rgba(0,0,0,.26)}.application .theme--dark.tabs__bar,.theme--dark .tabs__bar{background-color:#424242}.application .theme--dark.tabs__bar .tabs__div,.theme--dark .tabs__bar .tabs__div{color:#fff}.application .theme--dark.tabs__bar .tabs__item--disabled,.theme--dark .tabs__bar .tabs__item--disabled{color:hsla(0,0%,100%,.3)}.tabs,.tabs__bar{position:relative}.tabs__icon{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:100%;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:32px}.tabs__icon--prev{left:4px}.tabs__icon--next{right:4px}.tabs__wrapper{overflow:hidden;contain:content;display:-webkit-box;display:-ms-flexbox;display:flex}.tabs__wrapper--show-arrows{margin-left:40px;margin-right:40px}.tabs__wrapper--show-arrows .tabs__container--align-with-title{padding-left:16px}.tabs__container{display:-webkit-box;display:-ms-flexbox;display:flex;height:48px;list-style-type:none;transition:-webkit-transform .6s cubic-bezier(.86,0,.07,1);transition:transform .6s cubic-bezier(.86,0,.07,1);transition:transform .6s cubic-bezier(.86,0,.07,1),-webkit-transform .6s cubic-bezier(.86,0,.07,1);white-space:nowrap;position:relative}.tabs__container,.tabs__container--grow .tabs__div,.tabs__container--overflow .tabs__div{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.tabs__container--grow .tabs__div{max-width:none}.tabs__container--icons-and-text{height:72px}.tabs__container--align-with-title{padding-left:56px}.tabs__container--centered .tabs__div,.tabs__container--fixed-tabs .tabs__div,.tabs__container--icons-and-text .tabs__div{min-width:72px}.tabs__container--centered .tabs__slider-wrapper+.tabs__div,.tabs__container--centered>.tabs__div:first-child,.tabs__container--fixed-tabs .tabs__slider-wrapper+.tabs__div,.tabs__container--fixed-tabs>.tabs__div:first-child,.tabs__container--right .tabs__slider-wrapper+.tabs__div,.tabs__container--right>.tabs__div:first-child{margin-left:auto}.tabs__container--centered>.tabs__div:last-child,.tabs__container--fixed-tabs>.tabs__div:last-child{margin-right:auto}.tabs__container--icons-and-text .tabs__item{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.tabs__container--icons-and-text .tabs__item .icon{margin-bottom:6px}.tabs__div{-ms-flex-align:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;font-size:14px;font-weight:500;line-height:normal;height:inherit;max-width:264px;text-align:center;text-transform:uppercase;vertical-align:middle}.tabs__div,.tabs__item{-webkit-box-align:center;align-items:center}.tabs__item{-ms-flex-align:center;color:inherit;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1;-ms-flex-preferred-size:264px;flex-basis:264px;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;max-width:inherit;padding:6px 12px;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:normal}.tabs__item:not(.tabs__item--active){opacity:.7}.tabs__item--disabled{pointer-events:none}.tabs__slider{height:2px;width:100%}.tabs__slider-wrapper{bottom:0;margin:0!important;position:absolute;transition:.3s cubic-bezier(.25,.8,.5,1)}.tabs__items{overflow:hidden;position:relative}.tabs__content{width:100%;transition:-webkit-transform .4s cubic-bezier(.86,0,.07,1);transition:transform .4s cubic-bezier(.86,0,.07,1);transition:transform .4s cubic-bezier(.86,0,.07,1),-webkit-transform .4s cubic-bezier(.86,0,.07,1)}@media only screen and (max-width:599px){.tabs__wrapper--show-arrows .tabs__container--align-with-title{padding-left:24px}.tabs__container--align-with-title{padding-left:64px}.tabs__container--fixed-tabs .tabs__div{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}}@media only screen and (min-width:600px){.tabs__container--centered .tabs__div,.tabs__container--fixed-tabs .tabs__div,.tabs__container--icons-and-text .tabs__div{min-width:160px}}.time-picker-title{color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:1;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.time-picker-title__time{white-space:nowrap}.time-picker-title__time .picker__title__btn,.time-picker-title__time span{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:70px;font-size:70px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.time-picker-title__ampm{-ms-flex-item-align:end;align-self:flex-end;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;font-size:16px;margin:8px 0 6px 8px;text-transform:uppercase}.time-picker-title__ampm div:only-child{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.picker__title--landscape .time-picker-title{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%}.picker__title--landscape .time-picker-title__time{text-align:right}.picker__title--landscape .time-picker-title__time .picker__title__btn,.picker__title--landscape .time-picker-title__time span{height:55px;font-size:55px}.picker__title--landscape .time-picker-title__ampm{margin:16px 0 0;-ms-flex-item-align:initial;align-self:auto;text-align:center}.application .theme--light.time-picker-clock,.theme--light .time-picker-clock{background:#e0e0e0}.application .theme--light.time-picker-clock>span.disabled,.theme--light .time-picker-clock>span.disabled{color:rgba(0,0,0,.26)}.application .theme--light.time-picker-clock>span.disabled.active,.theme--light .time-picker-clock>span.disabled.active{color:hsla(0,0%,100%,.3)}.application .theme--light.time-picker-clock--indeterminate .time-picker-clock__hand,.theme--light .time-picker-clock--indeterminate .time-picker-clock__hand{background-color:#bdbdbd}.application .theme--light.time-picker-clock--indeterminate .time-picker-clock__hand:after,.theme--light .time-picker-clock--indeterminate .time-picker-clock__hand:after{color:#bdbdbd}.application .theme--light.time-picker-clock--indeterminate>span.active,.theme--light .time-picker-clock--indeterminate>span.active{background-color:#bdbdbd}.application .theme--dark.time-picker-clock,.theme--dark .time-picker-clock{background:#616161}.application .theme--dark.time-picker-clock>span.disabled,.application .theme--dark.time-picker-clock>span.disabled.active,.theme--dark .time-picker-clock>span.disabled,.theme--dark .time-picker-clock>span.disabled.active{color:hsla(0,0%,100%,.3)}.application .theme--dark.time-picker-clock--indeterminate .time-picker-clock__hand,.theme--dark .time-picker-clock--indeterminate .time-picker-clock__hand{background-color:#757575}.application .theme--dark.time-picker-clock--indeterminate .time-picker-clock__hand:after,.theme--dark .time-picker-clock--indeterminate .time-picker-clock__hand:after{color:#757575}.application .theme--dark.time-picker-clock--indeterminate>span.active,.theme--dark .time-picker-clock--indeterminate>span.active{background-color:#757575}.time-picker-clock{border-radius:100%;position:relative;transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.time-picker-clock__container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:10px}.time-picker-clock__hand{height:calc(50% - 28px);width:2px;bottom:50%;left:calc(50% - 1px);-webkit-transform-origin:center bottom;transform-origin:center bottom;position:absolute;will-change:transform;z-index:1}.time-picker-clock__hand:before{background:transparent;border-width:2px;width:10px;height:10px;top:-3%}.time-picker-clock__hand:after,.time-picker-clock__hand:before{border-style:solid;border-color:inherit;border-radius:100%;content:\\\"\\\";position:absolute;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.time-picker-clock__hand:after{height:8px;width:8px;top:100%;background-color:inherit}.time-picker-clock>span{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:100%;cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:16px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;left:calc(50% - 40px / 2);height:40px;position:absolute;text-align:center;top:calc(50% - 40px / 2);width:40px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.time-picker-clock>span>span{z-index:1}.time-picker-clock>span:after,.time-picker-clock>span:before{content:\\\"\\\";border-radius:100%;position:absolute;top:50%;left:50%;height:14px;width:14px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);height:40px;width:40px}.time-picker-clock>span.active{color:#fff;cursor:default;z-index:2}.time-picker-clock>span.disabled{pointer-events:none}.application .theme--light.toolbar,.theme--light .toolbar{background-color:#f5f5f5;color:rgba(0,0,0,.87)}.application .theme--dark.toolbar,.theme--dark .toolbar{background-color:#212121;color:#fff}.toolbar{transition:none;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);display:block;position:relative;width:100%;will-change:padding-left}.toolbar[data-booted=true]{transition:.2s cubic-bezier(.4,0,.2,1)}.toolbar .input-group--solo .input-group__details{display:none}.toolbar .input-group--single-line:not(.input-group--solo){padding:0}.toolbar .input-group--single-line:not(.input-group--solo) label{top:auto}.toolbar .tabs{width:100%}.toolbar__title{font-size:20px;font-weight:500;letter-spacing:.02em;margin-left:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar__content,.toolbar__extension{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.toolbar__content>.list,.toolbar__extension>.list{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;margin:0!important;max-height:100%}.toolbar__content>.btn:last-child,.toolbar__content>.menu:last-child,.toolbar__extension>.btn:last-child,.toolbar__extension>.menu:last-child{margin-right:8px}.toolbar__content>.btn:first-child,.toolbar__content>.menu:first-child,.toolbar__extension>.btn:first-child,.toolbar__extension>.menu:first-child{margin-left:8px}.toolbar__content>:not(.btn):not(.menu):first-child:not(:only-child),.toolbar__extension>:not(.btn):not(.menu):first-child:not(:only-child){margin-left:16px}.toolbar__content>:not(.btn):not(.menu):last-child:not(:only-child),.toolbar__extension>:not(.btn):not(.menu):last-child:not(:only-child){margin-right:16px}.toolbar__items{display:-webkit-box;display:-ms-flexbox;display:flex;height:inherit;max-width:100%;padding:0}.toolbar__items .btn{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.toolbar__items .tooltip,.toolbar__items .tooltip>span{height:inherit}.toolbar__items .btn,.toolbar__items .menu,.toolbar__items .menu__activator{height:inherit;margin:0}.toolbar--card{border-radius:2px 2px 0 0;box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.toolbar--fixed{position:fixed;z-index:2}.toolbar--absolute,.toolbar--fixed{top:0;left:0}.toolbar--absolute{position:absolute;z-index:2}.toolbar--floating{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin:16px;width:auto}.toolbar--clipped{z-index:3}@media only screen and (max-width:599px){.toolbar .toolbar__content>.btn:last-child,.toolbar .toolbar__extension>.btn:last-child{margin-right:17px}.toolbar .toolbar__content>.btn:first-child,.toolbar .toolbar__extension>.btn:first-child{margin-left:17px}.toolbar .toolbar__content>:not(.btn):not(.menu):first-child:not(:only-child),.toolbar .toolbar__extension>:not(.btn):not(.menu):first-child:not(:only-child){margin-left:24px}.toolbar .toolbar__content>:not(.btn):not(.menu):last-child:not(:only-child),.toolbar .toolbar__extension>:not(.btn):not(.menu):last-child:not(:only-child){margin-right:24px}}.tooltip{position:relative}.tooltip__content{background:#616161;border-radius:2px;color:#fff;font-size:12px;display:inline-block;padding:5px 8px;position:absolute;text-transform:none;transition:.15s cubic-bezier(.25,.8,.5,1);width:auto;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.tooltip__content[class*=-active]{pointer-events:none}@media only screen and (max-width:959px){.tooltip .tooltip__content{padding:10px 16px}}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWV0aWZ5L2Rpc3QvdnVldGlmeS5taW4uY3NzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZXRpZnkvZGlzdC92dWV0aWZ5Lm1pbi5jc3M/ZmZkMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikodHJ1ZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCIvKiFcXG4qIFZ1ZXRpZnkgdjEuMC4xN1xcbiogRm9yZ2VkIGJ5IEpvaG4gTGVpZGVyXFxuKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXFxuKi8gICAgIFxcbkAtd2Via2l0LWtleWZyYW1lcyBhezU5JXttYXJnaW4tbGVmdDowfTYwJSw4MCV7bWFyZ2luLWxlZnQ6MnB4fTcwJSw5MCV7bWFyZ2luLWxlZnQ6LTJweH19ICAgICBcXG5Aa2V5ZnJhbWVzIGF7NTkle21hcmdpbi1sZWZ0OjB9NjAlLDgwJXttYXJnaW4tbGVmdDoycHh9NzAlLDkwJXttYXJnaW4tbGVmdDotMnB4fX0gICAgIFxcbi5ibGFja3tiYWNrZ3JvdW5kLWNvbG9yOiMwMDAhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojMDAwIWltcG9ydGFudH0gICAgIFxcbi5ibGFjay0tdGV4dHtjb2xvcjojMDAwIWltcG9ydGFudH0gICAgIFxcbi5ibGFjay0tdGV4dCBpbnB1dCwuYmxhY2stLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwMCFpbXBvcnRhbnR9ICAgICBcXG4uYmxhY2stLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzAwMCFpbXBvcnRhbnR9ICAgICBcXG4ud2hpdGV7YmFja2dyb3VuZC1jb2xvcjojZmZmIWltcG9ydGFudDtib3JkZXItY29sb3I6I2ZmZiFpbXBvcnRhbnR9ICAgICBcXG4ud2hpdGUtLXRleHR7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9ICAgICBcXG4ud2hpdGUtLXRleHQgaW5wdXQsLndoaXRlLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmYhaW1wb3J0YW50fSAgICAgXFxuLndoaXRlLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNmZmYhaW1wb3J0YW50fSAgICAgXFxuLnRyYW5zcGFyZW50e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9ICAgICBcXG4udHJhbnNwYXJlbnQtLXRleHR7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fSAgICAgXFxuLnRyYW5zcGFyZW50LS10ZXh0IGlucHV0LC50cmFuc3BhcmVudC0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9ICAgICBcXG4udHJhbnNwYXJlbnQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50fSAgICAgXFxuLnJlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmNDQzMzYhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojZjQ0MzM2IWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHR7Y29sb3I6I2Y0NDMzNiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0IGlucHV0LC5yZWQtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y0NDMzNiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNmNDQzMzYhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmZmViZWUhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTUsLnJlZC5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZWJlZSFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmZlYmVlIWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmViZWUhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmZmNkZDIhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTQsLnJlZC5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmY2RkMiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZmZjZGQyIWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmNkZDIhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNlZjlhOWEhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTMsLnJlZC5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VmOWE5YSFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZWY5YTlhIWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZjlhOWEhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNlNTczNzMhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTIsLnJlZC5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U1NzM3MyFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZTU3MzczIWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlNTczNzMhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNlZjUzNTAhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5saWdodGVuLTEsLnJlZC5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VmNTM1MCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojZWY1MzUwIWltcG9ydGFudH0gICAgIFxcbi5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZjUzNTAhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5kYXJrZW4tMXtib3JkZXItY29sb3I6I2U1MzkzNSFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmRhcmtlbi0xLC5yZWQuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U1MzkzNSFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNlNTM5MzUhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlNTM5MzUhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5kYXJrZW4tMntib3JkZXItY29sb3I6I2QzMmYyZiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmRhcmtlbi0yLC5yZWQuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2QzMmYyZiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNkMzJmMmYhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkMzJmMmYhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5kYXJrZW4tM3tib3JkZXItY29sb3I6I2M2MjgyOCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmRhcmtlbi0zLC5yZWQuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M2MjgyOCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiNjNjI4MjghaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjNjI4MjghaW1wb3J0YW50fSAgICAgXFxuLnJlZC5kYXJrZW4tNHtib3JkZXItY29sb3I6I2I3MWMxYyFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmRhcmtlbi00LC5yZWQuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2I3MWMxYyFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiNiNzFjMWMhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiNzFjMWMhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5hY2NlbnQtMXtib3JkZXItY29sb3I6I2ZmOGE4MCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmFjY2VudC0xLC5yZWQuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmOGE4MCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZjhhODAhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjhhODAhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmNTI1MiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmFjY2VudC0yLC5yZWQuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNTI1MiFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNmZjUyNTIhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjUyNTIhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5hY2NlbnQtM3tib3JkZXItY29sb3I6I2ZmMTc0NCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmFjY2VudC0zLC5yZWQuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMTc0NCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmZjE3NDQhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjE3NDQhaW1wb3J0YW50fSAgICAgXFxuLnJlZC5hY2NlbnQtNHtib3JkZXItY29sb3I6I2Q1MDAwMCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLmFjY2VudC00LC5yZWQuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q1MDAwMCFpbXBvcnRhbnR9ICAgICBcXG4ucmVkLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNkNTAwMDAhaW1wb3J0YW50fSAgICAgXFxuLnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkNTAwMDAhaW1wb3J0YW50fSAgICAgXFxuLnBpbmt7YmFja2dyb3VuZC1jb2xvcjojZTkxZTYzIWltcG9ydGFudDtib3JkZXItY29sb3I6I2U5MWU2MyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay0tdGV4dHtjb2xvcjojZTkxZTYzIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0IGlucHV0LC5waW5rLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlOTFlNjMhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6I2U5MWU2MyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmY2U0ZWMhaW1wb3J0YW50fSAgICAgXFxuLnBpbmsubGlnaHRlbi01LC5waW5rLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmNlNGVjIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmNlNGVjIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZjZTRlYyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmOGJiZDAhaW1wb3J0YW50fSAgICAgXFxuLnBpbmsubGlnaHRlbi00LC5waW5rLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjhiYmQwIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZjhiYmQwIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y4YmJkMCFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmNDhmYjEhaW1wb3J0YW50fSAgICAgXFxuLnBpbmsubGlnaHRlbi0zLC5waW5rLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjQ4ZmIxIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZjQ4ZmIxIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y0OGZiMSFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNmMDYyOTIhaW1wb3J0YW50fSAgICAgXFxuLnBpbmsubGlnaHRlbi0yLC5waW5rLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjA2MjkyIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZjA2MjkyIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2YwNjI5MiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNlYzQwN2EhaW1wb3J0YW50fSAgICAgXFxuLnBpbmsubGlnaHRlbi0xLC5waW5rLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWM0MDdhIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojZWM0MDdhIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VjNDA3YSFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tMXtib3JkZXItY29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tMSwucGluay5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDgxYjYwIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNkODFiNjAhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tMntib3JkZXItY29sb3I6I2MyMTg1YiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tMiwucGluay5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYzIxODViIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNjMjE4NWIhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2MyMTg1YiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tM3tib3JkZXItY29sb3I6I2FkMTQ1NyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tMywucGluay5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYWQxNDU3IWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiNhZDE0NTchaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2FkMTQ1NyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tNHtib3JkZXItY29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5kYXJrZW4tNCwucGluay5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojODgwZTRmIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiM4ODBlNGYhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtMXtib3JkZXItY29sb3I6I2ZmODBhYiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtMSwucGluay5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY4MGFiIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZjgwYWIhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmODBhYiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmNDA4MSFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtMiwucGluay5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY0MDgxIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNmZjQwODEhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNDA4MSFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtM3tib3JkZXItY29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtMywucGluay5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjUwMDU3IWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmNTAwNTchaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtNHtib3JkZXItY29sb3I6I2M1MTE2MiFpbXBvcnRhbnR9ICAgICBcXG4ucGluay5hY2NlbnQtNCwucGluay5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYzUxMTYyIWltcG9ydGFudH0gICAgIFxcbi5waW5rLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNjNTExNjIhaW1wb3J0YW50fSAgICAgXFxuLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2M1MTE2MiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxle2JhY2tncm91bmQtY29sb3I6IzljMjdiMCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM5YzI3YjAhaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dHtjb2xvcjojOWMyN2IwIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQgaW5wdXQsLnB1cnBsZS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOWMyN2IwIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzljMjdiMCFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tNSwucHVycGxlLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjNlNWY1IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNmM2U1ZjUhaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2UxYmVlNyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tNCwucHVycGxlLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTFiZWU3IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNlMWJlZTchaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UxYmVlNyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2NlOTNkOCFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tMywucHVycGxlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojY2U5M2Q4IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNjZTkzZDghaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2NlOTNkOCFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tMiwucHVycGxlLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYmE2OGM4IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiNiYTY4YzghaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6I2FiNDdiYyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmxpZ2h0ZW4tMSwucHVycGxlLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYWI0N2JjIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiNhYjQ3YmMhaW1wb3J0YW50fSAgICAgXFxuLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2FiNDdiYyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojOGUyNGFhIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuZGFya2VuLTEsLnB1cnBsZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOGUyNGFhIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzhlMjRhYSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzhlMjRhYSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojN2IxZmEyIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuZGFya2VuLTIsLnB1cnBsZS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojN2IxZmEyIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzdiMWZhMiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzdiMWZhMiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojNmExYjlhIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuZGFya2VuLTMsLnB1cnBsZS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNmExYjlhIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzZhMWI5YSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzZhMWI5YSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmRhcmtlbi00e2JvcmRlci1jb2xvcjojNGExNDhjIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuZGFya2VuLTQsLnB1cnBsZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNGExNDhjIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzRhMTQ4YyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzRhMTQ4YyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmFjY2VudC0xe2JvcmRlci1jb2xvcjojZWE4MGZjIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuYWNjZW50LTEsLnB1cnBsZS5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWE4MGZjIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6I2VhODBmYyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VhODBmYyFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojZTA0MGZiIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuYWNjZW50LTIsLnB1cnBsZS5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTA0MGZiIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6I2UwNDBmYiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UwNDBmYiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmFjY2VudC0ze2JvcmRlci1jb2xvcjojZDUwMGY5IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuYWNjZW50LTMsLnB1cnBsZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDUwMGY5IWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6I2Q1MDBmOSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q1MDBmOSFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLmFjY2VudC00e2JvcmRlci1jb2xvcjojYTBmIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUuYWNjZW50LTQsLnB1cnBsZS5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTBmIWltcG9ydGFudH0gICAgIFxcbi5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6I2EwZiFpbXBvcnRhbnR9ICAgICBcXG4ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2EwZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGV7YmFja2dyb3VuZC1jb2xvcjojNjczYWI3IWltcG9ydGFudDtib3JkZXItY29sb3I6IzY3M2FiNyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHR7Y29sb3I6IzY3M2FiNyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NzNhYjchaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiM2NzNhYjchaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2VkZTdmNiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUubGlnaHRlbi01LC5kZWVwLXB1cnBsZS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VkZTdmNiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlZGU3ZjYhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZGU3ZjYhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2QxYzRlOSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUubGlnaHRlbi00LC5kZWVwLXB1cnBsZS5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2QxYzRlOSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNkMWM0ZTkhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkMWM0ZTkhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2IzOWRkYiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUubGlnaHRlbi0zLC5kZWVwLXB1cnBsZS5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IzOWRkYiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNiMzlkZGIhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMzlkZGIhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6Izk1NzVjZCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUubGlnaHRlbi0yLC5kZWVwLXB1cnBsZS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izk1NzVjZCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiM5NTc1Y2QhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5NTc1Y2QhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzdlNTdjMiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUubGlnaHRlbi0xLC5kZWVwLXB1cnBsZS5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzdlNTdjMiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiM3ZTU3YzIhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3ZTU3YzIhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojNWUzNWIxIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5kYXJrZW4tMSwuZGVlcC1wdXJwbGUuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzVlMzViMSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzVlMzViMSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1ZTM1YjEhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojNTEyZGE4IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5kYXJrZW4tMiwuZGVlcC1wdXJwbGUuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzUxMmRhOCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzUxMmRhOCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1MTJkYTghaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojNDUyN2EwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5kYXJrZW4tMywuZGVlcC1wdXJwbGUuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ1MjdhMCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzQ1MjdhMCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0NTI3YTAhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmRhcmtlbi00e2JvcmRlci1jb2xvcjojMzExYjkyIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5kYXJrZW4tNCwuZGVlcC1wdXJwbGUuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzMxMWI5MiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzMxMWI5MiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzMTFiOTIhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmFjY2VudC0xe2JvcmRlci1jb2xvcjojYjM4OGZmIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5hY2NlbnQtMSwuZGVlcC1wdXJwbGUuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IzODhmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6I2IzODhmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMzg4ZmYhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojN2M0ZGZmIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5hY2NlbnQtMiwuZGVlcC1wdXJwbGUuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzdjNGRmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6IzdjNGRmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3YzRkZmYhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmFjY2VudC0ze2JvcmRlci1jb2xvcjojNjUxZmZmIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5hY2NlbnQtMywuZGVlcC1wdXJwbGUuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY1MWZmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzY1MWZmZiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NTFmZmYhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtcHVycGxlLmFjY2VudC00e2JvcmRlci1jb2xvcjojNjIwMGVhIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLXB1cnBsZS5hY2NlbnQtNCwuZGVlcC1wdXJwbGUuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzYyMDBlYSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6IzYyMDBlYSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2MjAwZWEhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnb3tiYWNrZ3JvdW5kLWNvbG9yOiMzZjUxYjUhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojM2Y1MWI1IWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHR7Y29sb3I6IzNmNTFiNSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0IGlucHV0LC5pbmRpZ28tLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzNmNTFiNSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiMzZjUxYjUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlOGVhZjYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTUsLmluZGlnby5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U4ZWFmNiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZThlYWY2IWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlOGVhZjYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNjNWNhZTkhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTQsLmluZGlnby5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M1Y2FlOSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojYzVjYWU5IWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjNWNhZTkhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTMsLmluZGlnby5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzlmYThkYSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojOWZhOGRhIWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM3OTg2Y2IhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTIsLmluZGlnby5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izc5ODZjYiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojNzk4NmNiIWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3OTg2Y2IhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiM1YzZiYzAhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5saWdodGVuLTEsLmluZGlnby5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzVjNmJjMCFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojNWM2YmMwIWltcG9ydGFudH0gICAgIFxcbi5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1YzZiYzAhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5kYXJrZW4tMXtib3JkZXItY29sb3I6IzM5NDlhYiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmRhcmtlbi0xLC5pbmRpZ28uZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzM5NDlhYiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiMzOTQ5YWIhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzOTQ5YWIhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5kYXJrZW4tMntib3JkZXItY29sb3I6IzMwM2Y5ZiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmRhcmtlbi0yLC5pbmRpZ28uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzMwM2Y5ZiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMzMDNmOWYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzMDNmOWYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5kYXJrZW4tM3tib3JkZXItY29sb3I6IzI4MzU5MyFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmRhcmtlbi0zLC5pbmRpZ28uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI4MzU5MyFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMyODM1OTMhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyODM1OTMhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5kYXJrZW4tNHtib3JkZXItY29sb3I6IzFhMjM3ZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmRhcmtlbi00LC5pbmRpZ28uZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzFhMjM3ZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMxYTIzN2UhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMxYTIzN2UhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5hY2NlbnQtMXtib3JkZXItY29sb3I6IzhjOWVmZiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmFjY2VudC0xLC5pbmRpZ28uYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzhjOWVmZiFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiM4YzllZmYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4YzllZmYhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5hY2NlbnQtMntib3JkZXItY29sb3I6IzUzNmRmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmFjY2VudC0yLC5pbmRpZ28uYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzUzNmRmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiM1MzZkZmUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1MzZkZmUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5hY2NlbnQtM3tib3JkZXItY29sb3I6IzNkNWFmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmFjY2VudC0zLC5pbmRpZ28uYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzNkNWFmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiMzZDVhZmUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzZDVhZmUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby5hY2NlbnQtNHtib3JkZXItY29sb3I6IzMwNGZmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLmFjY2VudC00LC5pbmRpZ28uYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzMwNGZmZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMzMDRmZmUhaW1wb3J0YW50fSAgICAgXFxuLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzMDRmZmUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWV7YmFja2dyb3VuZC1jb2xvcjojMjE5NmYzIWltcG9ydGFudDtib3JkZXItY29sb3I6IzIxOTZmMyFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS0tdGV4dHtjb2xvcjojMjE5NmYzIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0IGlucHV0LC5ibHVlLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyMTk2ZjMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzIxOTZmMyFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlM2YyZmQhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUubGlnaHRlbi01LC5ibHVlLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTNmMmZkIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZTNmMmZkIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UzZjJmZCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNiYmRlZmIhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUubGlnaHRlbi00LC5ibHVlLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYmJkZWZiIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojYmJkZWZiIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2JiZGVmYiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiM5MGNhZjkhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUubGlnaHRlbi0zLC5ibHVlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOTBjYWY5IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojOTBjYWY5IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzkwY2FmOSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM2NGI1ZjYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUubGlnaHRlbi0yLC5ibHVlLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjRiNWY2IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojNjRiNWY2IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzY0YjVmNiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiM0MmE1ZjUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUubGlnaHRlbi0xLC5ibHVlLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDJhNWY1IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojNDJhNWY1IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzQyYTVmNSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tMXtib3JkZXItY29sb3I6IzFlODhlNSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tMSwuYmx1ZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWU4OGU1IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiMxZTg4ZTUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzFlODhlNSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tMntib3JkZXItY29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tMiwuYmx1ZS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMTk3NmQyIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMxOTc2ZDIhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tM3tib3JkZXItY29sb3I6IzE1NjVjMCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tMywuYmx1ZS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMTU2NWMwIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMxNTY1YzAhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzE1NjVjMCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzBkNDdhMSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5kYXJrZW4tNCwuYmx1ZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMGQ0N2ExIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMwZDQ3YTEhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzBkNDdhMSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtMXtib3JkZXItY29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtMSwuYmx1ZS5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojODJiMWZmIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiM4MmIxZmYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtMntib3JkZXItY29sb3I6IzQ0OGFmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtMiwuYmx1ZS5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDQ4YWZmIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiM0NDhhZmYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzQ0OGFmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtM3tib3JkZXItY29sb3I6IzI5NzlmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtMywuYmx1ZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjk3OWZmIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiMyOTc5ZmYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI5NzlmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtNHtib3JkZXItY29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS5hY2NlbnQtNCwuYmx1ZS5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjk2MmZmIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMyOTYyZmYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwM2E5ZjQhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojMDNhOWY0IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLS10ZXh0e2NvbG9yOiMwM2E5ZjQhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAzYTlmNCFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojMDNhOWY0IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2UxZjVmZSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS5saWdodGVuLTUsLmxpZ2h0LWJsdWUubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlMWY1ZmUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlMWY1ZmUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZTFmNWZlIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2IzZTVmYyFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS5saWdodGVuLTQsLmxpZ2h0LWJsdWUubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiM2U1ZmMhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNiM2U1ZmMhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjNlNWZjIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6IzgxZDRmYSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS5saWdodGVuLTMsLmxpZ2h0LWJsdWUubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM4MWQ0ZmEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiM4MWQ0ZmEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojODFkNGZhIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6IzRmYzNmNyFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS5saWdodGVuLTIsLmxpZ2h0LWJsdWUubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0ZmMzZjchaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiM0ZmMzZjchaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNGZjM2Y3IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzI5YjZmNiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS5saWdodGVuLTEsLmxpZ2h0LWJsdWUubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMyOWI2ZjYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiMyOWI2ZjYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjliNmY2IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojMDM5YmU1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0xLC5saWdodC1ibHVlLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMzliZTUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzAzOWJlNSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDM5YmU1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojMDI4OGQxIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0yLC5saWdodC1ibHVlLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMjg4ZDEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzAyODhkMSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDI4OGQxIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojMDI3N2JkIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi0zLC5saWdodC1ibHVlLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMjc3YmQhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzAyNzdiZCFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDI3N2JkIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi00e2JvcmRlci1jb2xvcjojMDE1NzliIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmRhcmtlbi00LC5saWdodC1ibHVlLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMTU3OWIhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzAxNTc5YiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDE1NzliIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0xe2JvcmRlci1jb2xvcjojODBkOGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0xLC5saWdodC1ibHVlLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM4MGQ4ZmYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6IzgwZDhmZiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojODBkOGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojNDBjNGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0yLC5saWdodC1ibHVlLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0MGM0ZmYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6IzQwYzRmZiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNDBjNGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0ze2JvcmRlci1jb2xvcjojMDBiMGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC0zLC5saWdodC1ibHVlLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMGIwZmYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzAwYjBmZiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDBiMGZmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC00e2JvcmRlci1jb2xvcjojMDA5MWVhIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ibHVlLmFjY2VudC00LC5saWdodC1ibHVlLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDkxZWEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6IzAwOTFlYSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDA5MWVhIWltcG9ydGFudH0gICAgIFxcbi5jeWFue2JhY2tncm91bmQtY29sb3I6IzAwYmNkNCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiMwMGJjZDQhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4tLXRleHR7Y29sb3I6IzAwYmNkNCFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dCBpbnB1dCwuY3lhbi0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDBiY2Q0IWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiMwMGJjZDQhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4ubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZTBmN2ZhIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLmxpZ2h0ZW4tNSwuY3lhbi5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2UwZjdmYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2UwZjdmYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlMGY3ZmEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4ubGlnaHRlbi00e2JvcmRlci1jb2xvcjojYjJlYmYyIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLmxpZ2h0ZW4tNCwuY3lhbi5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IyZWJmMiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2IyZWJmMiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMmViZjIhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4ubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojODBkZWVhIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLmxpZ2h0ZW4tMywuY3lhbi5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgwZGVlYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6IzgwZGVlYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4MGRlZWEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4ubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojNGRkMGUxIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLmxpZ2h0ZW4tMiwuY3lhbi5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzRkZDBlMSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6IzRkZDBlMSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0ZGQwZTEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4ubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojMjZjNmRhIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLmxpZ2h0ZW4tMSwuY3lhbi5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI2YzZkYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzI2YzZkYSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyNmM2ZGEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiMwMGFjYzEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTEsLmN5YW4uZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYWNjMSFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojMDBhY2MxIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGFjYzEhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiMwMDk3YTchaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTIsLmN5YW4uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwOTdhNyFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojMDA5N2E3IWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDk3YTchaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiMwMDgzOGYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTMsLmN5YW4uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwODM4ZiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojMDA4MzhmIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDgzOGYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiMwMDYwNjQhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uZGFya2VuLTQsLmN5YW4uZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwNjA2NCFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojMDA2MDY0IWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDYwNjQhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiM4NGZmZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTEsLmN5YW4uYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izg0ZmZmZiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojODRmZmZmIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4NGZmZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiMxOGZmZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTIsLmN5YW4uYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzE4ZmZmZiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojMThmZmZmIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMxOGZmZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTMsLmN5YW4uYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwZTVmZiFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojMDBlNWZmIWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiMwMGI4ZDQhaW1wb3J0YW50fSAgICAgXFxuLmN5YW4uYWNjZW50LTQsLmN5YW4uYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYjhkNCFpbXBvcnRhbnR9ICAgICBcXG4uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojMDBiOGQ0IWltcG9ydGFudH0gICAgIFxcbi5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGI4ZDQhaW1wb3J0YW50fSAgICAgXFxuLnRlYWx7YmFja2dyb3VuZC1jb2xvcjojMDA5Njg4IWltcG9ydGFudDtib3JkZXItY29sb3I6IzAwOTY4OCFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC0tdGV4dHtjb2xvcjojMDA5Njg4IWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0IGlucHV0LC50ZWFsLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDk2ODghaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzAwOTY4OCFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlMGYyZjEhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwubGlnaHRlbi01LC50ZWFsLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTBmMmYxIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZTBmMmYxIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UwZjJmMSFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNiMmRmZGIhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwubGlnaHRlbi00LC50ZWFsLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjJkZmRiIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojYjJkZmRiIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2IyZGZkYiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiM4MGNiYzQhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwubGlnaHRlbi0zLC50ZWFsLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojODBjYmM0IWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojODBjYmM0IWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgwY2JjNCFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM0ZGI2YWMhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwubGlnaHRlbi0yLC50ZWFsLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNGRiNmFjIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojNGRiNmFjIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzRkYjZhYyFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiMyNmE2OWEhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwubGlnaHRlbi0xLC50ZWFsLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjZhNjlhIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojMjZhNjlhIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI2YTY5YSFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tMXtib3JkZXItY29sb3I6IzAwODk3YiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tMSwudGVhbC5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA4OTdiIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiMwMDg5N2IhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwODk3YiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tMntib3JkZXItY29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tMiwudGVhbC5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA3OTZiIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMwMDc5NmIhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tM3tib3JkZXItY29sb3I6IzAwNjk1YyFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tMywudGVhbC5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA2OTVjIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMwMDY5NWMhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwNjk1YyFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tNHtib3JkZXItY29sb3I6IzAwNGQ0MCFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5kYXJrZW4tNCwudGVhbC5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA0ZDQwIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMwMDRkNDAhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwNGQ0MCFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtMXtib3JkZXItY29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtMSwudGVhbC5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTdmZmViIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNhN2ZmZWIhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtMntib3JkZXItY29sb3I6IzY0ZmZkYSFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtMiwudGVhbC5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjRmZmRhIWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiM2NGZmZGEhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzY0ZmZkYSFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtM3tib3JkZXItY29sb3I6IzFkZTliNiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtMywudGVhbC5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWRlOWI2IWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiMxZGU5YjYhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzFkZTliNiFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtNHtib3JkZXItY29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9ICAgICBcXG4udGVhbC5hY2NlbnQtNCwudGVhbC5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDBiZmE1IWltcG9ydGFudH0gICAgIFxcbi50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMwMGJmYTUhaW1wb3J0YW50fSAgICAgXFxuLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW57YmFja2dyb3VuZC1jb2xvcjojNGNhZjUwIWltcG9ydGFudDtib3JkZXItY29sb3I6IzRjYWY1MCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHR7Y29sb3I6IzRjYWY1MCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQgaW5wdXQsLmdyZWVuLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0Y2FmNTAhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiM0Y2FmNTAhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2U4ZjVlOSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4ubGlnaHRlbi01LC5ncmVlbi5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U4ZjVlOSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlOGY1ZTkhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlOGY1ZTkhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2M4ZTZjOSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4ubGlnaHRlbi00LC5ncmVlbi5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M4ZTZjOSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNjOGU2YzkhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjOGU2YzkhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2E1ZDZhNyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4ubGlnaHRlbi0zLC5ncmVlbi5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2E1ZDZhNyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNhNWQ2YTchaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhNWQ2YTchaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6IzgxYzc4NCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4ubGlnaHRlbi0yLC5ncmVlbi5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgxYzc4NCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiM4MWM3ODQhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4MWM3ODQhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzY2YmI2YSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4ubGlnaHRlbi0xLC5ncmVlbi5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY2YmI2YSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiM2NmJiNmEhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NmJiNmEhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojNDNhMDQ3IWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5kYXJrZW4tMSwuZ3JlZW4uZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQzYTA0NyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzQzYTA0NyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0M2EwNDchaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojMzg4ZTNjIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5kYXJrZW4tMiwuZ3JlZW4uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzM4OGUzYyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzM4OGUzYyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzODhlM2MhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojMmU3ZDMyIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5kYXJrZW4tMywuZ3JlZW4uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzJlN2QzMiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzJlN2QzMiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyZTdkMzIhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmRhcmtlbi00e2JvcmRlci1jb2xvcjojMWI1ZTIwIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5kYXJrZW4tNCwuZ3JlZW4uZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzFiNWUyMCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzFiNWUyMCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMxYjVlMjAhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmFjY2VudC0xe2JvcmRlci1jb2xvcjojYjlmNmNhIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5hY2NlbnQtMSwuZ3JlZW4uYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2I5ZjZjYSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6I2I5ZjZjYSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiOWY2Y2EhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmFjY2VudC0ye2JvcmRlci1jb2xvcjojNjlmMGFlIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5hY2NlbnQtMiwuZ3JlZW4uYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY5ZjBhZSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6IzY5ZjBhZSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2OWYwYWUhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmFjY2VudC0ze2JvcmRlci1jb2xvcjojMDBlNjc2IWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5hY2NlbnQtMywuZ3JlZW4uYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwZTY3NiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzAwZTY3NiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGU2NzYhaW1wb3J0YW50fSAgICAgXFxuLmdyZWVuLmFjY2VudC00e2JvcmRlci1jb2xvcjojMDBjODUzIWltcG9ydGFudH0gICAgIFxcbi5ncmVlbi5hY2NlbnQtNCwuZ3JlZW4uYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYzg1MyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6IzAwYzg1MyFpbXBvcnRhbnR9ICAgICBcXG4uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGM4NTMhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVue2JhY2tncm91bmQtY29sb3I6IzhiYzM0YSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM4YmMzNGEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0e2NvbG9yOiM4YmMzNGEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0IGlucHV0LC5saWdodC1ncmVlbi0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOGJjMzRhIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojOGJjMzRhIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmMWY4ZTkhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tNSwubGlnaHQtZ3JlZW4ubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMWY4ZTkhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZjFmOGU5IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjFmOGU5IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNkY2VkYzghaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tNCwubGlnaHQtZ3JlZW4ubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkY2VkYzghaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZGNlZGM4IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZGNlZGM4IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNjNWUxYTUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMywubGlnaHQtZ3JlZW4ubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjNWUxYTUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojYzVlMWE1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYzVlMWE1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNhZWQ1ODEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMiwubGlnaHQtZ3JlZW4ubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNhZWQ1ODEhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojYWVkNTgxIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYWVkNTgxIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiM5Y2NjNjUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMSwubGlnaHQtZ3JlZW4ubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM5Y2NjNjUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojOWNjYzY1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOWNjYzY1IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5kYXJrZW4tMXtib3JkZXItY29sb3I6IzdjYjM0MiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uZGFya2VuLTEsLmxpZ2h0LWdyZWVuLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM3Y2IzNDIhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiM3Y2IzNDIhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojN2NiMzQyIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5kYXJrZW4tMntib3JkZXItY29sb3I6IzY4OWYzOCFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uZGFya2VuLTIsLmxpZ2h0LWdyZWVuLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2ODlmMzghaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiM2ODlmMzghaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNjg5ZjM4IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5kYXJrZW4tM3tib3JkZXItY29sb3I6IzU1OGIyZiFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uZGFya2VuLTMsLmxpZ2h0LWdyZWVuLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM1NThiMmYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiM1NThiMmYhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNTU4YjJmIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5kYXJrZW4tNHtib3JkZXItY29sb3I6IzMzNjkxZSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uZGFya2VuLTQsLmxpZ2h0LWdyZWVuLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMzY5MWUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMzMzY5MWUhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMzM2OTFlIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5hY2NlbnQtMXtib3JkZXItY29sb3I6I2NjZmY5MCFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uYWNjZW50LTEsLmxpZ2h0LWdyZWVuLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjY2ZmOTAhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNjY2ZmOTAhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojY2NmZjkwIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5hY2NlbnQtMntib3JkZXItY29sb3I6I2IyZmY1OSFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uYWNjZW50LTIsLmxpZ2h0LWdyZWVuLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiMmZmNTkhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNiMmZmNTkhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjJmZjU5IWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5hY2NlbnQtM3tib3JkZXItY29sb3I6Izc2ZmYwMyFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uYWNjZW50LTMsLmxpZ2h0LWdyZWVuLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM3NmZmMDMhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiM3NmZmMDMhaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNzZmZjAzIWltcG9ydGFudH0gICAgIFxcbi5saWdodC1ncmVlbi5hY2NlbnQtNHtib3JkZXItY29sb3I6IzY0ZGQxNyFpbXBvcnRhbnR9ICAgICBcXG4ubGlnaHQtZ3JlZW4uYWNjZW50LTQsLmxpZ2h0LWdyZWVuLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NGRkMTchaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiM2NGRkMTchaW1wb3J0YW50fSAgICAgXFxuLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNjRkZDE3IWltcG9ydGFudH0gICAgIFxcbi5saW1le2JhY2tncm91bmQtY29sb3I6I2NkZGMzOSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiNjZGRjMzkhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUtLXRleHR7Y29sb3I6I2NkZGMzOSFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dCBpbnB1dCwubGltZS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojY2RkYzM5IWltcG9ydGFudH0gICAgIFxcbi5saW1lLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNjZGRjMzkhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZjlmYmU3IWltcG9ydGFudH0gICAgIFxcbi5saW1lLmxpZ2h0ZW4tNSwubGltZS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y5ZmJlNyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2Y5ZmJlNyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmOWZiZTchaW1wb3J0YW50fSAgICAgXFxuLmxpbWUubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZjBmNGMzIWltcG9ydGFudH0gICAgIFxcbi5saW1lLmxpZ2h0ZW4tNCwubGltZS5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2YwZjRjMyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2YwZjRjMyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmMGY0YzMhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojZTZlZTljIWltcG9ydGFudH0gICAgIFxcbi5saW1lLmxpZ2h0ZW4tMywubGltZS5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U2ZWU5YyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2U2ZWU5YyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlNmVlOWMhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZGNlNzc1IWltcG9ydGFudH0gICAgIFxcbi5saW1lLmxpZ2h0ZW4tMiwubGltZS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2RjZTc3NSFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2RjZTc3NSFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkY2U3NzUhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojZDRlMTU3IWltcG9ydGFudH0gICAgIFxcbi5saW1lLmxpZ2h0ZW4tMSwubGltZS5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q0ZTE1NyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2Q0ZTE1NyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkNGUxNTchaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiNjMGNhMzMhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTEsLmxpbWUuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2MwY2EzMyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojYzBjYTMzIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjMGNhMzMhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNhZmI0MmIhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTIsLmxpbWUuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2FmYjQyYiFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojYWZiNDJiIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhZmI0MmIhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiM5ZTlkMjQhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTMsLmxpbWUuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzllOWQyNCFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojOWU5ZDI0IWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5ZTlkMjQhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiM4Mjc3MTchaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuZGFya2VuLTQsLmxpbWUuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgyNzcxNyFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojODI3NzE3IWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4Mjc3MTchaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmNGZmODEhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTEsLmxpbWUuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y0ZmY4MSFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZjRmZjgxIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmNGZmODEhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiNlZWZmNDEhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTIsLmxpbWUuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VlZmY0MSFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZWVmZjQxIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZWZmNDEhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNjNmZmMDAhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTMsLmxpbWUuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M2ZmYwMCFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojYzZmZjAwIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjNmZmMDAhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNhZWVhMDAhaW1wb3J0YW50fSAgICAgXFxuLmxpbWUuYWNjZW50LTQsLmxpbWUuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2FlZWEwMCFpbXBvcnRhbnR9ICAgICBcXG4ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojYWVlYTAwIWltcG9ydGFudH0gICAgIFxcbi5saW1lLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhZWVhMDAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvd3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmViM2IhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojZmZlYjNiIWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHR7Y29sb3I6I2ZmZWIzYiFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0IGlucHV0LC55ZWxsb3ctLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZWIzYiFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNmZmViM2IhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmZmZkZTchaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTUsLnllbGxvdy5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZmRlNyFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmZmZGU3IWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmZkZTchaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmZmY5YzQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTQsLnllbGxvdy5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjljNCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZmZmOWM0IWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmY5YzQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmZmY1OWQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTMsLnllbGxvdy5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjU5ZCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZmZmNTlkIWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmY1OWQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNmZmYxNzYhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTIsLnllbGxvdy5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjE3NiFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZmZmMTc2IWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmYxNzYhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNmZmVlNTghaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5saWdodGVuLTEsLnllbGxvdy5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZWU1OCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojZmZlZTU4IWltcG9ydGFudH0gICAgIFxcbi55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmVlNTghaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5kYXJrZW4tMXtib3JkZXItY29sb3I6I2ZkZDgzNSFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmRhcmtlbi0xLC55ZWxsb3cuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZkZDgzNSFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNmZGQ4MzUhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZGQ4MzUhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5kYXJrZW4tMntib3JkZXItY29sb3I6I2ZiYzAyZCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmRhcmtlbi0yLC55ZWxsb3cuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZiYzAyZCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNmYmMwMmQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmYmMwMmQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5kYXJrZW4tM3tib3JkZXItY29sb3I6I2Y5YTgyNSFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmRhcmtlbi0zLC55ZWxsb3cuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y5YTgyNSFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiNmOWE4MjUhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmOWE4MjUhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5kYXJrZW4tNHtib3JkZXItY29sb3I6I2Y1N2YxNyFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmRhcmtlbi00LC55ZWxsb3cuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y1N2YxNyFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiNmNTdmMTchaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmNTdmMTchaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5hY2NlbnQtMXtib3JkZXItY29sb3I6I2ZmZmY4ZCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmFjY2VudC0xLC55ZWxsb3cuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZmY4ZCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZmZmOGQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmZmOGQhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmFjY2VudC0yLC55ZWxsb3cuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNmZjAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5hY2NlbnQtM3tib3JkZXItY29sb3I6I2ZmZWEwMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmFjY2VudC0zLC55ZWxsb3cuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZWEwMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmZmVhMDAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmVhMDAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy5hY2NlbnQtNHtib3JkZXItY29sb3I6I2ZmZDYwMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LmFjY2VudC00LC55ZWxsb3cuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZDYwMCFpbXBvcnRhbnR9ICAgICBcXG4ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNmZmQ2MDAhaW1wb3J0YW50fSAgICAgXFxuLnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmQ2MDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVye2JhY2tncm91bmQtY29sb3I6I2ZmYzEwNyFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiNmZmMxMDchaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0e2NvbG9yOiNmZmMxMDchaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0IGlucHV0LC5hbWJlci0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZjMTA3IWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojZmZjMTA3IWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmZmY4ZTEhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLmxpZ2h0ZW4tNSwuYW1iZXIubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY4ZTEhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmZmOGUxIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZmOGUxIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmZmVjYjMhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLmxpZ2h0ZW4tNCwuYW1iZXIubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmVjYjMhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZmZlY2IzIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlY2IzIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmZmUwODIhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLmxpZ2h0ZW4tMywuYW1iZXIubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmUwODIhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZmZlMDgyIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlMDgyIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNmZmQ1NGYhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLmxpZ2h0ZW4tMiwuYW1iZXIubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmQ1NGYhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZmZkNTRmIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZkNTRmIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNmZmNhMjghaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLmxpZ2h0ZW4tMSwuYW1iZXIubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmNhMjghaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojZmZjYTI4IWltcG9ydGFudH0gICAgIFxcbi5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZjYTI4IWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5kYXJrZW4tMXtib3JkZXItY29sb3I6I2ZmYjMwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuZGFya2VuLTEsLmFtYmVyLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmIzMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNmZmIzMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZiMzAwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5kYXJrZW4tMntib3JkZXItY29sb3I6I2ZmYTAwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuZGFya2VuLTIsLmFtYmVyLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmEwMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNmZmEwMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZhMDAwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5kYXJrZW4tM3tib3JkZXItY29sb3I6I2ZmOGYwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuZGFya2VuLTMsLmFtYmVyLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjhmMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiNmZjhmMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY4ZjAwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5kYXJrZW4tNHtib3JkZXItY29sb3I6I2ZmNmYwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuZGFya2VuLTQsLmFtYmVyLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjZmMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiNmZjZmMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY2ZjAwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5hY2NlbnQtMXtib3JkZXItY29sb3I6I2ZmZTU3ZiFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuYWNjZW50LTEsLmFtYmVyLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmU1N2YhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZmU1N2YhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlNTdmIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmZDc0MCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuYWNjZW50LTIsLmFtYmVyLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmQ3NDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNmZmQ3NDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZkNzQwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5hY2NlbnQtM3tib3JkZXItY29sb3I6I2ZmYzQwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuYWNjZW50LTMsLmFtYmVyLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmM0MDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmZmM0MDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZjNDAwIWltcG9ydGFudH0gICAgIFxcbi5hbWJlci5hY2NlbnQtNHtib3JkZXItY29sb3I6I2ZmYWIwMCFpbXBvcnRhbnR9ICAgICBcXG4uYW1iZXIuYWNjZW50LTQsLmFtYmVyLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmFiMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNmZmFiMDAhaW1wb3J0YW50fSAgICAgXFxuLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZhYjAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2V7YmFja2dyb3VuZC1jb2xvcjojZmY5ODAwIWltcG9ydGFudDtib3JkZXItY29sb3I6I2ZmOTgwMCFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0e2NvbG9yOiNmZjk4MDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dCBpbnB1dCwub3JhbmdlLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjk4MDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojZmY5ODAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZmZmM2UwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi01LC5vcmFuZ2UubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmYzZTAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2ZmZjNlMCFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZmM2UwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZmZlMGIyIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi00LC5vcmFuZ2UubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmUwYjIhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2ZmZTBiMiFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlMGIyIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojZmZjYzgwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0zLC5vcmFuZ2UubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmNjODAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2ZmY2M4MCFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZjYzgwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZmZiNzRkIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0yLC5vcmFuZ2UubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmI3NGQhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2ZmYjc0ZCFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZiNzRkIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojZmZhNzI2IWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UubGlnaHRlbi0xLC5vcmFuZ2UubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmE3MjYhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2ZmYTcyNiFpbXBvcnRhbnR9ICAgICBcXG4ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZhNzI2IWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiNmYjhjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5kYXJrZW4tMSwub3JhbmdlLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmYjhjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojZmI4YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmI4YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNmNTdjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5kYXJrZW4tMiwub3JhbmdlLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmNTdjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojZjU3YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjU3YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiNlZjZjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5kYXJrZW4tMywub3JhbmdlLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlZjZjMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojZWY2YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWY2YzAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiNlNjUxMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5kYXJrZW4tNCwub3JhbmdlLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlNjUxMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojZTY1MTAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZTY1MTAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmZmQxODAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5hY2NlbnQtMSwub3JhbmdlLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmQxODAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZmZkMTgwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZkMTgwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiNmZmFiNDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5hY2NlbnQtMiwub3JhbmdlLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmFiNDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZmZhYjQwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZhYjQwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNmZjkxMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5hY2NlbnQtMywub3JhbmdlLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjkxMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojZmY5MTAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY5MTAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNmZjZkMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS5hY2NlbnQtNCwub3JhbmdlLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjZkMDAhaW1wb3J0YW50fSAgICAgXFxuLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojZmY2ZDAwIWltcG9ydGFudH0gICAgIFxcbi5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY2ZDAwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZjU3MjIhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojZmY1NzIyIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dHtjb2xvcjojZmY1NzIyIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dCBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNTcyMiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6I2ZmNTcyMiFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZmJlOWU3IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS5saWdodGVuLTUsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmJlOWU3IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2ZiZTllNyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZiZTllNyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZmZjY2JjIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS5saWdodGVuLTQsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZjY2JjIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2ZmY2NiYyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmY2NiYyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojZmZhYjkxIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS5saWdodGVuLTMsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZhYjkxIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2ZmYWI5MSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmYWI5MSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZmY4YTY1IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS5saWdodGVuLTIsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY4YTY1IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2ZmOGE2NSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmOGE2NSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojZmY3MDQzIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS5saWdodGVuLTEsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY3MDQzIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2ZmNzA0MyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNzA0MyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiNmNDUxMWUhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmRhcmtlbi0xLC5kZWVwLW9yYW5nZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjQ1MTFlIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojZjQ1MTFlIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y0NTExZSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNlNjRhMTkhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmRhcmtlbi0yLC5kZWVwLW9yYW5nZS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTY0YTE5IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojZTY0YTE5IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2U2NGExOSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiNkODQzMTUhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmRhcmtlbi0zLC5kZWVwLW9yYW5nZS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDg0MzE1IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojZDg0MzE1IWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q4NDMxNSFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiNiZjM2MGMhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmRhcmtlbi00LC5kZWVwLW9yYW5nZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYmYzNjBjIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojYmYzNjBjIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2JmMzYwYyFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmZjllODAhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmFjY2VudC0xLC5kZWVwLW9yYW5nZS5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY5ZTgwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZmY5ZTgwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmOWU4MCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiNmZjZlNDAhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmFjY2VudC0yLC5kZWVwLW9yYW5nZS5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY2ZTQwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZmY2ZTQwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNmU0MCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNmZjNkMDAhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmFjY2VudC0zLC5kZWVwLW9yYW5nZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmYzZDAwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojZmYzZDAwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmM2QwMCFpbXBvcnRhbnR9ICAgICBcXG4uZGVlcC1vcmFuZ2UuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNkZDJjMDAhaW1wb3J0YW50fSAgICAgXFxuLmRlZXAtb3JhbmdlLmFjY2VudC00LC5kZWVwLW9yYW5nZS5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZGQyYzAwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojZGQyYzAwIWltcG9ydGFudH0gICAgIFxcbi5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2RkMmMwMCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd257YmFja2dyb3VuZC1jb2xvcjojNzk1NTQ4IWltcG9ydGFudDtib3JkZXItY29sb3I6Izc5NTU0OCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHR7Y29sb3I6Izc5NTU0OCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQgaW5wdXQsLmJyb3duLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3OTU1NDghaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiM3OTU1NDghaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2VmZWJlOSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24ubGlnaHRlbi01LC5icm93bi5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VmZWJlOSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlZmViZTkhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZmViZTkhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2Q3Y2NjOCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24ubGlnaHRlbi00LC5icm93bi5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q3Y2NjOCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNkN2NjYzghaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkN2NjYzghaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2JjYWFhNCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24ubGlnaHRlbi0zLC5icm93bi5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2JjYWFhNCFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNiY2FhYTQhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiY2FhYTQhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6I2ExODg3ZiFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24ubGlnaHRlbi0yLC5icm93bi5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ExODg3ZiFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiNhMTg4N2YhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhMTg4N2YhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzhkNmU2MyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24ubGlnaHRlbi0xLC5icm93bi5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzhkNmU2MyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiM4ZDZlNjMhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4ZDZlNjMhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojNmQ0YzQxIWltcG9ydGFudH0gICAgIFxcbi5icm93bi5kYXJrZW4tMSwuYnJvd24uZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzZkNGM0MSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzZkNGM0MSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2ZDRjNDEhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojNWQ0MDM3IWltcG9ydGFudH0gICAgIFxcbi5icm93bi5kYXJrZW4tMiwuYnJvd24uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzVkNDAzNyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzVkNDAzNyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1ZDQwMzchaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojNGUzNDJlIWltcG9ydGFudH0gICAgIFxcbi5icm93bi5kYXJrZW4tMywuYnJvd24uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzRlMzQyZSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzRlMzQyZSFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0ZTM0MmUhaW1wb3J0YW50fSAgICAgXFxuLmJyb3duLmRhcmtlbi00e2JvcmRlci1jb2xvcjojM2UyNzIzIWltcG9ydGFudH0gICAgIFxcbi5icm93bi5kYXJrZW4tNCwuYnJvd24uZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzNlMjcyMyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzNlMjcyMyFpbXBvcnRhbnR9ICAgICBcXG4uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzZTI3MjMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleXtiYWNrZ3JvdW5kLWNvbG9yOiM2MDdkOGIhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojNjA3ZDhiIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHR7Y29sb3I6IzYwN2Q4YiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0IGlucHV0LC5ibHVlLWdyZXktLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzYwN2Q4YiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiM2MDdkOGIhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlY2VmZjEhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTUsLmJsdWUtZ3JleS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VjZWZmMSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZWNlZmYxIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlY2VmZjEhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTQsLmJsdWUtZ3JleS5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2NmZDhkYyFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojY2ZkOGRjIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNiMGJlYzUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTMsLmJsdWUtZ3JleS5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IwYmVjNSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojYjBiZWM1IWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMGJlYzUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM5MGE0YWUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTIsLmJsdWUtZ3JleS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzkwYTRhZSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojOTBhNGFlIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5MGE0YWUhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiM3ODkwOWMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5saWdodGVuLTEsLmJsdWUtZ3JleS5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izc4OTA5YyFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojNzg5MDljIWltcG9ydGFudH0gICAgIFxcbi5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3ODkwOWMhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5kYXJrZW4tMXtib3JkZXItY29sb3I6IzU0NmU3YSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LmRhcmtlbi0xLC5ibHVlLWdyZXkuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzU0NmU3YSFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiM1NDZlN2EhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1NDZlN2EhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5kYXJrZW4tMntib3JkZXItY29sb3I6IzQ1NWE2NCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LmRhcmtlbi0yLC5ibHVlLWdyZXkuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ1NWE2NCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiM0NTVhNjQhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0NTVhNjQhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5kYXJrZW4tM3tib3JkZXItY29sb3I6IzM3NDc0ZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LmRhcmtlbi0zLC5ibHVlLWdyZXkuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzM3NDc0ZiFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMzNzQ3NGYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzNzQ3NGYhaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzI2MzIzOCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LmRhcmtlbi00LC5ibHVlLWdyZXkuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI2MzIzOCFpbXBvcnRhbnR9ICAgICBcXG4uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMyNjMyMzghaW1wb3J0YW50fSAgICAgXFxuLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyNjMyMzghaW1wb3J0YW50fSAgICAgXFxuLmdyZXl7YmFja2dyb3VuZC1jb2xvcjojOWU5ZTllIWltcG9ydGFudDtib3JkZXItY29sb3I6IzllOWU5ZSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS0tdGV4dHtjb2xvcjojOWU5ZTllIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0IGlucHV0LC5ncmV5LS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5ZTllOWUhaW1wb3J0YW50fSAgICAgXFxuLmdyZXktLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzllOWU5ZSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmYWZhZmEhaW1wb3J0YW50fSAgICAgXFxuLmdyZXkubGlnaHRlbi01LC5ncmV5LmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmFmYWZhIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZhZmFmYSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmNWY1ZjUhaW1wb3J0YW50fSAgICAgXFxuLmdyZXkubGlnaHRlbi00LC5ncmV5LmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1IWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZjVmNWY1IWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y1ZjVmNSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNlZWUhaW1wb3J0YW50fSAgICAgXFxuLmdyZXkubGlnaHRlbi0zLC5ncmV5LmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVlIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZWVlIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VlZSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNlMGUwZTAhaW1wb3J0YW50fSAgICAgXFxuLmdyZXkubGlnaHRlbi0yLC5ncmV5LmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTBlMGUwIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZTBlMGUwIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UwZTBlMCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNiZGJkYmQhaW1wb3J0YW50fSAgICAgXFxuLmdyZXkubGlnaHRlbi0xLC5ncmV5LmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYmRiZGJkIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojYmRiZGJkIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2JkYmRiZCFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tMXtib3JkZXItY29sb3I6Izc1NzU3NSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tMSwuZ3JleS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzU3NTc1IWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiM3NTc1NzUhaW1wb3J0YW50fSAgICAgXFxuLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6Izc1NzU3NSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tMntib3JkZXItY29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tMiwuZ3JleS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjE2MTYxIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiM2MTYxNjEhaW1wb3J0YW50fSAgICAgXFxuLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tM3tib3JkZXItY29sb3I6IzQyNDI0MiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tMywuZ3JleS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDI0MjQyIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiM0MjQyNDIhaW1wb3J0YW50fSAgICAgXFxuLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzQyNDI0MiFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9ICAgICBcXG4uZ3JleS5kYXJrZW4tNCwuZ3JleS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjEyMTIxIWltcG9ydGFudH0gICAgIFxcbi5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMyMTIxMjEhaW1wb3J0YW50fSAgICAgXFxuLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzIxMjEyMSFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLmJsYWNre2JvcmRlci1jb2xvcjojMDAwIWltcG9ydGFudH0gICAgIFxcbi5zaGFkZXMuYmxhY2ssLnNoYWRlcy5ibGFjay0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDAwIWltcG9ydGFudH0gICAgIFxcbi5zaGFkZXMtLXRleHQudGV4dC0tYmxhY2t7Y29sb3I6IzAwMCFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLS10ZXh0LnRleHQtLWJsYWNrIGlucHV0LC5zaGFkZXMtLXRleHQudGV4dC0tYmxhY2sgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwMCFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLndoaXRle2JvcmRlci1jb2xvcjojZmZmIWltcG9ydGFudH0gICAgIFxcbi5zaGFkZXMud2hpdGUsLnNoYWRlcy53aGl0ZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmIWltcG9ydGFudH0gICAgIFxcbi5zaGFkZXMtLXRleHQudGV4dC0td2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLS10ZXh0LnRleHQtLXdoaXRlIGlucHV0LC5zaGFkZXMtLXRleHQudGV4dC0td2hpdGUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZiFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLnRyYW5zcGFyZW50e2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLnRyYW5zcGFyZW50LC5zaGFkZXMudHJhbnNwYXJlbnQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fSAgICAgXFxuLnNoYWRlcy0tdGV4dC50ZXh0LS10cmFuc3BhcmVudHtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9ICAgICBcXG4uc2hhZGVzLS10ZXh0LnRleHQtLXRyYW5zcGFyZW50IGlucHV0LC5zaGFkZXMtLXRleHQudGV4dC0tdHJhbnNwYXJlbnQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0wey13ZWJraXQtYm94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMCAwIDAgcmdiYSgwLDAsMCwuMiksMCAwIDAgMCByZ2JhKDAsMCwwLC4xNCksMCAwIDAgMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0xey13ZWJraXQtYm94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMnB4IDFweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgMXB4IDFweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAzcHggMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0yey13ZWJraXQtYm94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0zey13ZWJraXQtYm94LXNoYWRvdzowIDNweCAzcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDNweCA0cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggOHB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi00ey13ZWJraXQtYm94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTV7LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNXB4IDhweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxNHB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNXB4IDhweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxNHB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5lbGV2YXRpb24tNnstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggNXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCA2cHggMTBweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxOHB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTd7LXdlYmtpdC1ib3gtc2hhZG93OjAgNHB4IDVweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgN3B4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDJweCAxNnB4IDFweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCA0cHggNXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCA3cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgMnB4IDE2cHggMXB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTh7LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTl7LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOXB4IDEycHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNnB4IDJweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCA1cHggNnB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA5cHggMTJweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE2cHggMnB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTEwey13ZWJraXQtYm94LXNoYWRvdzowIDZweCA2cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDEwcHggMTRweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDE4cHggM3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDZweCA2cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDEwcHggMTRweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDE4cHggM3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTExey13ZWJraXQtYm94LXNoYWRvdzowIDZweCA3cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDExcHggMTVweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDIwcHggM3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDZweCA3cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDExcHggMTVweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDIwcHggM3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTEyey13ZWJraXQtYm94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEycHggMTdweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDIycHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEycHggMTdweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDIycHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTEzey13ZWJraXQtYm94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEzcHggMTlweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI0cHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEzcHggMTlweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI0cHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTE0ey13ZWJraXQtYm94LXNoYWRvdzowIDdweCA5cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDE0cHggMjFweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI2cHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDdweCA5cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDE0cHggMjFweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI2cHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTE1ey13ZWJraXQtYm94LXNoYWRvdzowIDhweCA5cHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE1cHggMjJweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDI4cHggNXB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDhweCA5cHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE1cHggMjJweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDI4cHggNXB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTE2ey13ZWJraXQtYm94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCA4cHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTZweCAyNHB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzBweCA1cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5lbGV2YXRpb24tMTd7LXdlYmtpdC1ib3gtc2hhZG93OjAgOHB4IDExcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE3cHggMjZweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMycHggNXB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDhweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxN3B4IDI2cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMnB4IDVweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0xOHstd2Via2l0LWJveC1zaGFkb3c6MCA5cHggMTFweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMThweCAyOHB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA3cHggMzRweCA2cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgOXB4IDExcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE4cHggMjhweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgN3B4IDM0cHggNnB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTE5ey13ZWJraXQtYm94LXNoYWRvdzowIDlweCAxMnB4IC02cHggcmdiYSgwLDAsMCwuMiksMCAxOXB4IDI5cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDdweCAzNnB4IDZweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCA5cHggMTJweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMTlweCAyOXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA3cHggMzZweCA2cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5lbGV2YXRpb24tMjB7LXdlYmtpdC1ib3gtc2hhZG93OjAgMTBweCAxM3B4IC02cHggcmdiYSgwLDAsMCwuMiksMCAyMHB4IDMxcHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDhweCAzOHB4IDdweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIwcHggMzFweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDM4cHggN3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTIxey13ZWJraXQtYm94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjFweCAzM3B4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDBweCA3cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMTBweCAxM3B4IC02cHggcmdiYSgwLDAsMCwuMiksMCAyMXB4IDMzcHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDhweCA0MHB4IDdweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuLmVsZXZhdGlvbi0yMnstd2Via2l0LWJveC1zaGFkb3c6MCAxMHB4IDE0cHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIycHggMzVweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQycHggN3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDEwcHggMTRweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjJweCAzNXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggNDJweCA3cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5lbGV2YXRpb24tMjN7LXdlYmtpdC1ib3gtc2hhZG93OjAgMTFweCAxNHB4IC03cHggcmdiYSgwLDAsMCwuMiksMCAyM3B4IDM2cHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDlweCA0NHB4IDhweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAxMXB4IDE0cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDIzcHggMzZweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ0cHggOHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uZWxldmF0aW9uLTI0ey13ZWJraXQtYm94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMTFweCAxNXB4IC03cHggcmdiYSgwLDAsMCwuMiksMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDlweCA0NnB4IDhweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fSAgICAgXFxuaHRtbHstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3cteTpzY3JvbGw7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCV9ICAgICBcXG4qLDphZnRlciw6YmVmb3Jley13ZWJraXQtYm94LXNpemluZzppbmhlcml0O2JveC1zaXppbmc6aW5oZXJpdH0gICAgIFxcbjphZnRlciw6YmVmb3Jle3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3ZlcnRpY2FsLWFsaWduOmluaGVyaXR9ICAgICBcXG4qe2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtwYWRkaW5nOjA7bWFyZ2luOjB9ICAgICBcXG5hdWRpbzpub3QoW2NvbnRyb2xzXSl7ZGlzcGxheTpub25lO2hlaWdodDowfSAgICAgXFxuaHJ7b3ZlcmZsb3c6dmlzaWJsZX0gICAgIFxcbmFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLG1haW4sbWVudSxuYXYsc2VjdGlvbixzdW1tYXJ5e2Rpc3BsYXk6YmxvY2t9ICAgICBcXG5zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfSAgICAgXFxuc21hbGx7Zm9udC1zaXplOjgwJX0gICAgIFxcbltoaWRkZW5dLHRlbXBsYXRle2Rpc3BsYXk6bm9uZX0gICAgIFxcbmFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206MXB4IGRvdHRlZDt0ZXh0LWRlY29yYXRpb246bm9uZX0gICAgIFxcbmF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOm9iamVjdHN9ICAgICBcXG5hOmFjdGl2ZSxhOmhvdmVye291dGxpbmUtd2lkdGg6MH0gICAgIFxcbmNvZGUsa2JkLHByZSxzYW1we2ZvbnQtZmFtaWx5Om1vbm9zcGFjZSxtb25vc3BhY2V9ICAgICBcXG5iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9ICAgICBcXG5kZm57Zm9udC1zdHlsZTppdGFsaWN9ICAgICBcXG5tYXJre2JhY2tncm91bmQtY29sb3I6I2ZmMDtjb2xvcjojMDAwfSAgICAgXFxuc3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9ICAgICBcXG5zdWJ7Ym90dG9tOi0uMjVlbX0gICAgIFxcbnN1cHt0b3A6LS41ZW19ICAgICBcXG5pbnB1dHtib3JkZXItcmFkaXVzOjB9ICAgICBcXG5bcm9sZT1idXR0b25dLFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF0sYnV0dG9ue2N1cnNvcjpwb2ludGVyfSAgICAgXFxuW2Rpc2FibGVkXXtjdXJzb3I6ZGVmYXVsdH0gICAgIFxcblt0eXBlPW51bWJlcl17d2lkdGg6YXV0b30gICAgIFxcblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0gICAgIFxcbnRleHRhcmVhe292ZXJmbG93OmF1dG87cmVzaXplOnZlcnRpY2FsfSAgICAgXFxuYnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXtmb250OmluaGVyaXR9ICAgICBcXG5vcHRncm91cHtmb250LXdlaWdodDo3MDB9ICAgICBcXG5idXR0b257b3ZlcmZsb3c6dmlzaWJsZX0gICAgIFxcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlci1zdHlsZTowO3BhZGRpbmc6MH0gICAgIFxcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsYnV0dG9uOi1tb3otZm9jdXNyaW5ne291dGxpbmU6MDtib3JkZXI6MH0gICAgIFxcblt0eXBlPXJlc2V0XSxbdHlwZT1zdWJtaXRdLGJ1dHRvbixodG1sIFt0eXBlPWJ1dHRvbl17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbn0gICAgIFxcbmJ1dHRvbixzZWxlY3R7dGV4dC10cmFuc2Zvcm06bm9uZX0gICAgIFxcbmJ1dHRvbixpbnB1dCxzZWxlY3QsdGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6bm9uZTtjb2xvcjppbmhlcml0fSAgICAgXFxuc2VsZWN0ey1tb3otYXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lfSAgICAgXFxuc2VsZWN0OjotbXMtZXhwYW5ke2Rpc3BsYXk6bm9uZX0gICAgIFxcbnNlbGVjdDo6LW1zLXZhbHVle2NvbG9yOmN1cnJlbnRDb2xvcn0gICAgIFxcbmxlZ2VuZHtib3JkZXI6MDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6dGFibGU7bWF4LXdpZHRoOjEwMCU7d2hpdGUtc3BhY2U6bm9ybWFsfSAgICAgXFxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH0gICAgIFxcblt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtvdXRsaW5lLW9mZnNldDotMnB4fSAgICAgXFxuaW1ne2JvcmRlci1zdHlsZTpub25lfSAgICAgXFxucHJvZ3Jlc3N7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9ICAgICBcXG5zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59ICAgICBcXG5hdWRpbyxjYW52YXMscHJvZ3Jlc3MsdmlkZW97ZGlzcGxheTppbmxpbmUtYmxvY2t9ICAgICBcXG5bYXJpYS1idXN5PXRydWVde2N1cnNvcjpwcm9ncmVzc30gICAgIFxcblthcmlhLWNvbnRyb2xzXXtjdXJzb3I6cG9pbnRlcn0gICAgIFxcblthcmlhLWRpc2FibGVkXXtjdXJzb3I6ZGVmYXVsdH0gICAgIFxcbjo6LW1vei1zZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojYjNkNGZjO2NvbG9yOiMwMDA7dGV4dC1zaGFkb3c6bm9uZX0gICAgIFxcbjo6c2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2IzZDRmYztjb2xvcjojMDAwO3RleHQtc2hhZG93Om5vbmV9ICAgICBcXG4uYm90dG9tLXNoZWV0LXRyYW5zaXRpb24tZW50ZXIsLmJvdHRvbS1zaGVldC10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9ICAgICBcXG4uY2Fyb3VzZWwtdHJhbnNpdGlvbi1lbnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKX0gICAgIFxcbi5jYXJvdXNlbC10cmFuc2l0aW9uLWxlYXZlLC5jYXJvdXNlbC10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfSAgICAgXFxuLmNhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbi1lbnRlciwuY2Fyb3VzZWwtdHJhbnNpdGlvbi1sZWF2ZSwuY2Fyb3VzZWwtdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTEwMCUpfSAgICAgXFxuLmNhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZSwuY2Fyb3VzZWwtcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlO3RvcDowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpfSAgICAgXFxuLmRpYWxvZy10cmFuc2l0aW9uLWVudGVyLC5kaWFsb2ctdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSguNSk7dHJhbnNmb3JtOnNjYWxlKC41KTtvcGFjaXR5OjB9ICAgICBcXG4uZGlhbG9nLXRyYW5zaXRpb24tZW50ZXItdG8sLmRpYWxvZy10cmFuc2l0aW9uLWxlYXZle29wYWNpdHk6MX0gICAgIFxcbi5kaWFsb2ctYm90dG9tLXRyYW5zaXRpb24tZW50ZXIsLmRpYWxvZy1ib3R0b20tdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfSAgICAgXFxuLnBpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSwucGlja2VyLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5waWNrZXItdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllcigwLDAsLjIsMSl9ICAgICBcXG4ucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1lbnRlciwucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10bywucGlja2VyLXRyYW5zaXRpb24tZW50ZXIsLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MH0gICAgIFxcbi5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLXRvLC5waWNrZXItdHJhbnNpdGlvbi1lbnRlci10b3t0cmFuc3Rpb246dHJhbnNsYXRlKDAsMCl9ICAgICBcXG4ucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZSwucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmUsLnBpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24tbGVhdmUtdG8sLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLC5waWNrZXItdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmUsLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0gICAgIFxcbi5waWNrZXItdHJhbnNpdGlvbi1lbnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfSAgICAgXFxuLnBpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXIsLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMDAlKX0gICAgIFxcbi5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9ICAgICBcXG4ucGlja2VyLXRpdGxlLXRyYW5zaXRpb24tZW50ZXItdG8sLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfSAgICAgXFxuLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTAwJSl9ICAgICBcXG4ucGlja2VyLXRpdGxlLXRyYW5zaXRpb24tbGVhdmUtdG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpfSAgICAgXFxuLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZlLC5waWNrZXItdGl0bGUtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmUsLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0gICAgIFxcbi50YWItdHJhbnNpdGlvbi1lbnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKX0gICAgIFxcbi50YWItdHJhbnNpdGlvbi1lbnRlci10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0gICAgIFxcbi50YWItdHJhbnNpdGlvbi1sZWF2ZSwudGFiLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfSAgICAgXFxuLnRhYi10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlfSAgICAgXFxuLnRhYi1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXIsLnRhYi10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTAwJSl9ICAgICBcXG4udGFiLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZSwudGFiLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10b3t0b3A6MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKX0gICAgIFxcbi5zY2FsZS10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc2NhbGUtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKTt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKX0gICAgIFxcbi5zY2FsZS10cmFuc2l0aW9uLWVudGVyLC5zY2FsZS10cmFuc2l0aW9uLWxlYXZlLC5zY2FsZS10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9ICAgICBcXG4uc2xpZGUteS10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc2xpZGUteS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZXstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5zbGlkZS15LXRyYW5zaXRpb24tZW50ZXIsLnNsaWRlLXktdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTVweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE1cHgpfSAgICAgXFxuLnNsaWRlLXktcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc2xpZGUteS1yZXZlcnNlLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnNsaWRlLXktcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLC5zbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxNXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxNXB4KX0gICAgIFxcbi5zbGlkZS14LXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5zbGlkZS14LXRyYW5zaXRpb24tbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnNsaWRlLXgtdHJhbnNpdGlvbi1lbnRlciwuc2xpZGUteC10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTVweCl9ICAgICBcXG4uc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5zbGlkZS14LXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXIsLnNsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE1cHgpfSAgICAgXFxuLmZhZGUtdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsLmZhZGUtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uZmFkZS10cmFuc2l0aW9uLWVudGVyLC5mYWRlLXRyYW5zaXRpb24tbGVhdmUtdG97b3BhY2l0eTowfSAgICAgXFxuLmZhYi10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuZmFiLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZley13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmZhYi10cmFuc2l0aW9uLWVudGVyLC5mYWItdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06c2NhbGUoMCkgcm90YXRlKC00NWRlZyl9ICAgICBcXG4uYmxvY2txdW90ZXtwYWRkaW5nOjE2cHggMCAxNnB4IDI0cHg7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6MzAwfSAgICAgXFxuY29kZSxrYmR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czozcHg7d2hpdGUtc3BhY2U6cHJlLXdyYXA7Zm9udC1zaXplOjg1JTtmb250LXdlaWdodDo5MDB9ICAgICBcXG5jb2RlOmFmdGVyLGNvZGU6YmVmb3JlLGtiZDphZnRlcixrYmQ6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXFxBMFxcXCI7bGV0dGVyLXNwYWNpbmc6LTFweH0gICAgIFxcbmNvZGV7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2NvbG9yOiNiZDQxNDc7LXdlYmtpdC1ib3gtc2hhZG93OjAgMnB4IDFweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgMXB4IDFweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAzcHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxua2Jke2JhY2tncm91bmQ6IzQyNDI0Mjtjb2xvcjojZmZmfSAgICAgXFxuaHRtbHtmb250LXNpemU6MTRweDtvdmVyZmxvdy14OmhpZGRlbjt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCl9ICAgICBcXG4uYXBwbGljYXRpb257Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7bGluZS1oZWlnaHQ6MS41fSAgICAgXFxuOjotbXMtY2xlYXIsOjotbXMtcmV2ZWFse2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5icm93c2VyLWxpc3R7cGFkZGluZy1sZWZ0OjI0cHh9ICAgICBcXG4uYnJvd3Nlci1saXN0LS11bnN0eWxlZHtsaXN0LXN0eWxlLXR5cGU6bm9uZX0gICAgIFxcbi5kaXNwbGF5LTR7Zm9udC1zaXplOjExMnB4IWltcG9ydGFudDtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MSFpbXBvcnRhbnQ7bGV0dGVyLXNwYWNpbmc6LS4wNGVtIWltcG9ydGFudH0gICAgIFxcbi5kaXNwbGF5LTN7Zm9udC1zaXplOjU2cHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjM1IWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzotLjAyZW0haW1wb3J0YW50fSAgICAgXFxuLmRpc3BsYXktMntmb250LXNpemU6NDVweCFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6NDhweCFpbXBvcnRhbnR9ICAgICBcXG4uZGlzcGxheS0xLC5kaXNwbGF5LTJ7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOm5vcm1hbCFpbXBvcnRhbnR9ICAgICBcXG4uZGlzcGxheS0xe2ZvbnQtc2l6ZTozNHB4IWltcG9ydGFudDtsaW5lLWhlaWdodDo0MHB4IWltcG9ydGFudH0gICAgIFxcbi5oZWFkbGluZXtmb250LXNpemU6MjRweCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjMycHghaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOm5vcm1hbCFpbXBvcnRhbnR9ICAgICBcXG4udGl0bGV7Zm9udC1zaXplOjIwcHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzouMDJlbSFpbXBvcnRhbnR9ICAgICBcXG4uc3ViaGVhZGluZ3tmb250LXNpemU6MTZweCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwfSAgICAgXFxuLmJvZHktMntmb250LXdlaWdodDo1MDB9ICAgICBcXG4uYm9keS0xLC5ib2R5LTJ7Zm9udC1zaXplOjE0cHghaW1wb3J0YW50fSAgICAgXFxuLmJvZHktMSwuY2FwdGlvbntmb250LXdlaWdodDo0MDB9ICAgICBcXG4uY2FwdGlvbntmb250LXNpemU6MTJweCFpbXBvcnRhbnR9ICAgICBcXG5we21hcmdpbi1ib3R0b206MTZweH0gICAgIFxcbi5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufSAgICAgXFxuLm92ZXJmbG93LXgtaGlkZGVue292ZXJmbG93LXg6aGlkZGVufSAgICAgXFxuLm92ZXJmbG93LXktaGlkZGVue292ZXJmbG93LXk6aGlkZGVufSAgICAgXFxuLnJpZ2h0e2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0gICAgIFxcbi5sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fSAgICAgXFxuLm14LWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fSAgICAgXFxuLm10LTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0gICAgIFxcbi5tci0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0gICAgIFxcbi5tYi0we21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9ICAgICBcXG4ubWwtMCwubXgtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0gICAgIFxcbi5teC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0gICAgIFxcbi5teS0we21hcmdpbi10b3A6MCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0gICAgIFxcbi5tYS0we21hcmdpbjowIWltcG9ydGFudH0gICAgIFxcbi5wdC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fSAgICAgXFxuLnByLTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0gICAgIFxcbi5wYi0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fSAgICAgXFxuLnBsLTAsLnB4LTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fSAgICAgXFxuLnB4LTB7cGFkZGluZy1yaWdodDowIWltcG9ydGFudH0gICAgIFxcbi5weS0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fSAgICAgXFxuLnBhLTB7cGFkZGluZzowIWltcG9ydGFudH0gICAgIFxcbi5tdC0xe21hcmdpbi10b3A6NHB4IWltcG9ydGFudH0gICAgIFxcbi5tci0xe21hcmdpbi1yaWdodDo0cHghaW1wb3J0YW50fSAgICAgXFxuLm1iLTF7bWFyZ2luLWJvdHRvbTo0cHghaW1wb3J0YW50fSAgICAgXFxuLm1sLTEsLm14LTF7bWFyZ2luLWxlZnQ6NHB4IWltcG9ydGFudH0gICAgIFxcbi5teC0xe21hcmdpbi1yaWdodDo0cHghaW1wb3J0YW50fSAgICAgXFxuLm15LTF7bWFyZ2luLXRvcDo0cHghaW1wb3J0YW50O21hcmdpbi1ib3R0b206NHB4IWltcG9ydGFudH0gICAgIFxcbi5tYS0xe21hcmdpbjo0cHghaW1wb3J0YW50fSAgICAgXFxuLnB0LTF7cGFkZGluZy10b3A6NHB4IWltcG9ydGFudH0gICAgIFxcbi5wci0xe3BhZGRpbmctcmlnaHQ6NHB4IWltcG9ydGFudH0gICAgIFxcbi5wYi0xe3BhZGRpbmctYm90dG9tOjRweCFpbXBvcnRhbnR9ICAgICBcXG4ucGwtMSwucHgtMXtwYWRkaW5nLWxlZnQ6NHB4IWltcG9ydGFudH0gICAgIFxcbi5weC0xe3BhZGRpbmctcmlnaHQ6NHB4IWltcG9ydGFudH0gICAgIFxcbi5weS0xe3BhZGRpbmctdG9wOjRweCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206NHB4IWltcG9ydGFudH0gICAgIFxcbi5wYS0xe3BhZGRpbmc6NHB4IWltcG9ydGFudH0gICAgIFxcbi5tdC0ye21hcmdpbi10b3A6OHB4IWltcG9ydGFudH0gICAgIFxcbi5tci0ye21hcmdpbi1yaWdodDo4cHghaW1wb3J0YW50fSAgICAgXFxuLm1iLTJ7bWFyZ2luLWJvdHRvbTo4cHghaW1wb3J0YW50fSAgICAgXFxuLm1sLTIsLm14LTJ7bWFyZ2luLWxlZnQ6OHB4IWltcG9ydGFudH0gICAgIFxcbi5teC0ye21hcmdpbi1yaWdodDo4cHghaW1wb3J0YW50fSAgICAgXFxuLm15LTJ7bWFyZ2luLXRvcDo4cHghaW1wb3J0YW50O21hcmdpbi1ib3R0b206OHB4IWltcG9ydGFudH0gICAgIFxcbi5tYS0ye21hcmdpbjo4cHghaW1wb3J0YW50fSAgICAgXFxuLnB0LTJ7cGFkZGluZy10b3A6OHB4IWltcG9ydGFudH0gICAgIFxcbi5wci0ye3BhZGRpbmctcmlnaHQ6OHB4IWltcG9ydGFudH0gICAgIFxcbi5wYi0ye3BhZGRpbmctYm90dG9tOjhweCFpbXBvcnRhbnR9ICAgICBcXG4ucGwtMiwucHgtMntwYWRkaW5nLWxlZnQ6OHB4IWltcG9ydGFudH0gICAgIFxcbi5weC0ye3BhZGRpbmctcmlnaHQ6OHB4IWltcG9ydGFudH0gICAgIFxcbi5weS0ye3BhZGRpbmctdG9wOjhweCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206OHB4IWltcG9ydGFudH0gICAgIFxcbi5wYS0ye3BhZGRpbmc6OHB4IWltcG9ydGFudH0gICAgIFxcbi5tdC0ze21hcmdpbi10b3A6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubXItM3ttYXJnaW4tcmlnaHQ6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubWItM3ttYXJnaW4tYm90dG9tOjE2cHghaW1wb3J0YW50fSAgICAgXFxuLm1sLTMsLm14LTN7bWFyZ2luLWxlZnQ6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubXgtM3ttYXJnaW4tcmlnaHQ6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubXktM3ttYXJnaW4tdG9wOjE2cHghaW1wb3J0YW50O21hcmdpbi1ib3R0b206MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubWEtM3ttYXJnaW46MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ucHQtM3twYWRkaW5nLXRvcDoxNnB4IWltcG9ydGFudH0gICAgIFxcbi5wci0ze3BhZGRpbmctcmlnaHQ6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ucGItM3twYWRkaW5nLWJvdHRvbToxNnB4IWltcG9ydGFudH0gICAgIFxcbi5wbC0zLC5weC0ze3BhZGRpbmctbGVmdDoxNnB4IWltcG9ydGFudH0gICAgIFxcbi5weC0ze3BhZGRpbmctcmlnaHQ6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ucHktM3twYWRkaW5nLXRvcDoxNnB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxNnB4IWltcG9ydGFudH0gICAgIFxcbi5wYS0ze3BhZGRpbmc6MTZweCFpbXBvcnRhbnR9ICAgICBcXG4ubXQtNHttYXJnaW4tdG9wOjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm1yLTR7bWFyZ2luLXJpZ2h0OjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm1iLTR7bWFyZ2luLWJvdHRvbToyNHB4IWltcG9ydGFudH0gICAgIFxcbi5tbC00LC5teC00e21hcmdpbi1sZWZ0OjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm14LTR7bWFyZ2luLXJpZ2h0OjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm15LTR7bWFyZ2luLXRvcDoyNHB4IWltcG9ydGFudDttYXJnaW4tYm90dG9tOjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm1hLTR7bWFyZ2luOjI0cHghaW1wb3J0YW50fSAgICAgXFxuLnB0LTR7cGFkZGluZy10b3A6MjRweCFpbXBvcnRhbnR9ICAgICBcXG4ucHItNHtwYWRkaW5nLXJpZ2h0OjI0cHghaW1wb3J0YW50fSAgICAgXFxuLnBiLTR7cGFkZGluZy1ib3R0b206MjRweCFpbXBvcnRhbnR9ICAgICBcXG4ucGwtNCwucHgtNHtwYWRkaW5nLWxlZnQ6MjRweCFpbXBvcnRhbnR9ICAgICBcXG4ucHgtNHtwYWRkaW5nLXJpZ2h0OjI0cHghaW1wb3J0YW50fSAgICAgXFxuLnB5LTR7cGFkZGluZy10b3A6MjRweCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MjRweCFpbXBvcnRhbnR9ICAgICBcXG4ucGEtNHtwYWRkaW5nOjI0cHghaW1wb3J0YW50fSAgICAgXFxuLm10LTV7bWFyZ2luLXRvcDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5tci01e21hcmdpbi1yaWdodDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5tYi01e21hcmdpbi1ib3R0b206NDhweCFpbXBvcnRhbnR9ICAgICBcXG4ubWwtNSwubXgtNXttYXJnaW4tbGVmdDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5teC01e21hcmdpbi1yaWdodDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5teS01e21hcmdpbi10b3A6NDhweCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5tYS01e21hcmdpbjo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5wdC01e3BhZGRpbmctdG9wOjQ4cHghaW1wb3J0YW50fSAgICAgXFxuLnByLTV7cGFkZGluZy1yaWdodDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5wYi01e3BhZGRpbmctYm90dG9tOjQ4cHghaW1wb3J0YW50fSAgICAgXFxuLnBsLTUsLnB4LTV7cGFkZGluZy1sZWZ0OjQ4cHghaW1wb3J0YW50fSAgICAgXFxuLnB4LTV7cGFkZGluZy1yaWdodDo0OHB4IWltcG9ydGFudH0gICAgIFxcbi5weS01e3BhZGRpbmctdG9wOjQ4cHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjQ4cHghaW1wb3J0YW50fSAgICAgXFxuLnBhLTV7cGFkZGluZzo0OHB4IWltcG9ydGFudH0gICAgIFxcbkBtZWRpYSBzY3JlZW57W2hpZGRlbn49c2NyZWVuXXtkaXNwbGF5OmluaGVyaXR9W2hpZGRlbn49c2NyZWVuXTpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cyk6bm90KDp0YXJnZXQpe3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDtjbGlwOnJlY3QoMCAwIDAgMCkhaW1wb3J0YW50fX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTlweCl7LmhpZGRlbi14cy1vbmx5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjYwMHB4KSBhbmQgKG1heC13aWR0aDo5NTlweCl7LmhpZGRlbi1zbS1vbmx5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk1OXB4KXsuaGlkZGVuLXNtLWFuZC1kb3due2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjYwMHB4KXsuaGlkZGVuLXNtLWFuZC11cHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCkgYW5kIChtYXgtd2lkdGg6MTI2M3B4KXsuaGlkZGVuLW1kLW9ubHl7ZGlzcGxheTpub25lIWltcG9ydGFudH19ICAgICBcXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTI2M3B4KXsuaGlkZGVuLW1kLWFuZC1kb3due2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsuaGlkZGVuLW1kLWFuZC11cHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjY0cHgpIGFuZCAobWF4LXdpZHRoOjE5MDNweCl7LmhpZGRlbi1sZy1vbmx5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjE5MDNweCl7LmhpZGRlbi1sZy1hbmQtZG93bntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjY0cHgpey5oaWRkZW4tbGctYW5kLXVwe2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE5MDRweCl7LmhpZGRlbi14bC1vbmx5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIChtaW4td2lkdGg6MCl7LnRleHQteHMtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXhzLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9LnRleHQteHMtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQteHMtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fX0gICAgIFxcbkBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsudGV4dC1zbS1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQtc20tY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGV4dC1zbS1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1zbS1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeSFpbXBvcnRhbnR9fSAgICAgXFxuQG1lZGlhIChtaW4td2lkdGg6OTYwcHgpey50ZXh0LW1kLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1tZC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS50ZXh0LW1kLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LW1kLWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH19ICAgICBcXG5AbWVkaWEgKG1pbi13aWR0aDoxMjY0cHgpey50ZXh0LWxnLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1sZy1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS50ZXh0LWxnLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LWxnLWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH19ICAgICBcXG5AbWVkaWEgKG1pbi13aWR0aDoxOTA0cHgpey50ZXh0LXhsLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC14bC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS50ZXh0LXhsLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LXhsLWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH19ICAgICBcXG4uYXBwbGljYXRpb24sLmFwcGxpY2F0aW9uLS13cmFwe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9ICAgICBcXG4uYXBwbGljYXRpb24tLXdyYXB7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjEwMHZoO21heC13aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1saWdodHtiYWNrZ3JvdW5kOiNmYWZhZmE7Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1saWdodCBhe2N1cnNvcjpwb2ludGVyfSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1saWdodCAudGV4dC0tcHJpbWFyeXtjb2xvcjpyZ2JhKDAsMCwwLC44NykhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1saWdodCAudGV4dC0tc2Vjb25kYXJ5e2NvbG9yOnJnYmEoMCwwLDAsLjU0KSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24udGhlbWUtLWxpZ2h0IC50ZXh0LS1kaXNhYmxlZHtjb2xvcjpyZ2JhKDAsMCwwLC4zOCkhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1kYXJre2JhY2tncm91bmQ6IzMwMzAzMDtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1kYXJrIGF7Y3Vyc29yOnBvaW50ZXJ9ICAgICBcXG4uYXBwbGljYXRpb24udGhlbWUtLWRhcmsgLnRleHQtLXByaW1hcnl7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24udGhlbWUtLWRhcmsgLnRleHQtLXNlY29uZGFyeXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNykhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uLnRoZW1lLS1kYXJrIC50ZXh0LS1kaXNhYmxlZHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSkhaW1wb3J0YW50fSAgICAgXFxuQG1lZGlhIHByaW50e0AtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXsuYXBwbGljYXRpb24sLmFwcGxpY2F0aW9uLS13cmFwe2Rpc3BsYXk6YmxvY2t9fX0gICAgIFxcbi5hbGVydHtib3JkZXItcmFkaXVzOjA7Ym9yZGVyLXdpZHRoOjRweCAwIDA7Ym9yZGVyLXN0eWxlOnNvbGlkO2NvbG9yOiNmZmY7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtmb250LXNpemU6MTRweDttYXJnaW46NHB4IGF1dG87cGFkZGluZzoxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmFsZXJ0IC5hbGVydF9faWNvbi5pY29uLC5hbGVydF9fZGlzbWlzc2libGUgLmljb257LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7Y29sb3I6cmdiYSgwLDAsMCwuMyk7Zm9udC1zaXplOjI0cHh9ICAgICBcXG4uYWxlcnQtLW91dGxpbmUgLmljb257Y29sb3I6aW5oZXJpdCFpbXBvcnRhbnR9ICAgICBcXG4uYWxlcnRfX2ljb257bWFyZ2luLXJpZ2h0OjE2cHh9ICAgICBcXG4uYWxlcnRfX2Rpc21pc3NpYmxley1tcy1mbGV4LWl0ZW0tYWxpZ246c3RhcnQ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O2NvbG9yOmluaGVyaXQ7bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6MDt0ZXh0LWRlY29yYXRpb246bm9uZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9ICAgICBcXG4uYWxlcnRfX2Rpc21pc3NpYmxlOmhvdmVye29wYWNpdHk6Ljh9ICAgICBcXG4uYWxlcnQtLW5vLWljb24gLmFsZXJ0X19pY29ue2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5hbGVydD5kaXZ7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMTtmbGV4OjEgMX0gICAgIFxcbi5hbGVydC5hbGVydHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5hbGVydC5hbGVydC0tb3V0bGluZXtib3JkZXI6MXB4IHNvbGlkIGN1cnJlbnRDb2xvciFpbXBvcnRhbnR9ICAgICBcXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjYwMHB4KXsuYWxlcnRfX2ljb257ZGlzcGxheTpub25lfX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmljb24sLnRoZW1lLS1saWdodCAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pY29uLmljb24tLWRpc2FibGVkOm5vdCguaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uKSwudGhlbWUtLWxpZ2h0IC5pY29uLmljb24tLWRpc2FibGVkOm5vdCguaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uKXtjb2xvcjpyZ2JhKDAsMCwwLC4zOCkhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pY29uLC50aGVtZS0tZGFyayAuaWNvbntjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pY29uLmljb24tLWRpc2FibGVkOm5vdCguaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uKSwudGhlbWUtLWRhcmsgLmljb24uaWNvbi0tZGlzYWJsZWQ6bm90KC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24pe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KSFpbXBvcnRhbnR9ICAgICBcXG4uaWNvbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOlxcXCJsaWdhXFxcIjtmb250LWZlYXR1cmUtc2V0dGluZ3M6XFxcImxpZ2FcXFwiO2ZvbnQtc2l6ZToyNHB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGluZS1oZWlnaHQ6MTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9ICAgICBcXG4uaWNvbi5pY29uLS1sYXJnZXtmb250LXNpemU6Mi41cmVtfSAgICAgXFxuLmljb24uaWNvbi0tbWVkaXVte2ZvbnQtc2l6ZToycmVtfSAgICAgXFxuLmljb24uaWNvbi0teC1sYXJnZXtmb250LXNpemU6M3JlbX0gICAgIFxcbi5pY29uLmljb24tLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9ICAgICBcXG4uYXZhdGFyey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlfSAgICAgXFxuLmF2YXRhciwuYXZhdGFyIC5pY29uLC5hdmF0YXIgaW1ne2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9ICAgICBcXG4uYXZhdGFyIC5pY29uLC5hdmF0YXIgaW1ne2hlaWdodDppbmhlcml0O3dpZHRoOmluaGVyaXR9ICAgICBcXG4uYXZhdGFyLS10aWxlLC5hdmF0YXItLXRpbGUgLmljb24sLmF2YXRhci0tdGlsZSBpbWd7Ym9yZGVyLXJhZGl1czowfSAgICAgXFxuLmJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLmJhZGdlX19iYWRnZXtjb2xvcjojZmZmO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0xMXB4O3JpZ2h0Oi0yMnB4O2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoyMnB4O3dpZHRoOjIycHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5iYWRnZV9fYmFkZ2UsLmJhZGdlX19iYWRnZSAuaWNvbntmb250LXNpemU6MTRweH0gICAgIFxcbi5iYWRnZS0tb3ZlcmxhcCAuYmFkZ2VfX2JhZGdle3RvcDotOHB4O3JpZ2h0Oi04cHh9ICAgICBcXG4uYmFkZ2UtLW92ZXJsYXAuYmFkZ2UtLWxlZnQgLmJhZGdlX19iYWRnZXtsZWZ0Oi04cHg7cmlnaHQ6YXV0b30gICAgIFxcbi5iYWRnZS0tb3ZlcmxhcC5iYWRnZS0tYm90dG9tIC5iYWRnZV9fYmFkZ2V7Ym90dG9tOi04cHg7dG9wOmF1dG99ICAgICBcXG4uYmFkZ2UtLWxlZnQgLmJhZGdlX19iYWRnZXtsZWZ0Oi0yMnB4fSAgICAgXFxuLmJhZGdlLS1ib3R0b20gLmJhZGdlX19iYWRnZXtib3R0b206LTExcHg7dG9wOmF1dG99ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5ib3R0b20tbmF2LC50aGVtZS0tbGlnaHQgLmJvdHRvbS1uYXZ7YmFja2dyb3VuZC1jb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5ib3R0b20tbmF2LC50aGVtZS0tZGFyayAuYm90dG9tLW5hdntiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9ICAgICBcXG4uYm90dG9tLW5hdntib3R0b206MDstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDYwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDYwcHgpOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjphbGwgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJTt6LWluZGV4OjR9ICAgICBcXG4uYm90dG9tLW5hdi0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGV9ICAgICBcXG4uYm90dG9tLW5hdi0tYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfSAgICAgXFxuLmJvdHRvbS1uYXYtLWZpeGVke3Bvc2l0aW9uOmZpeGVkfSAgICAgXFxuLmJvdHRvbS1uYXYgLmJ0bntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtib3JkZXItcmFkaXVzOjA7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDoxMDAlO21hcmdpbjowO21heC13aWR0aDoxNjhweDttaW4td2lkdGg6ODBweDtwYWRkaW5nOjZweCAwIDEwcHg7dGV4dC10cmFuc2Zvcm06bm9uZTtvcGFjaXR5Oi41O3dpZHRoOjEwMCV9ICAgICBcXG4uYm90dG9tLW5hdiAuYnRuIC5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpyZXZlcnNlOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmb250LXNpemU6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXA7d2lsbC1jaGFuZ2U6Zm9udC1zaXplfSAgICAgXFxuLmJvdHRvbS1uYXYgLmJ0biAuYnRuX19jb250ZW50IGkuaWNvbntjb2xvcjppbmhlcml0O21hcmdpbi1ib3R0b206NHB4Oy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjphbGwgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uYm90dG9tLW5hdiAuYnRuIC5idG5fX2NvbnRlbnQgc3BhbntsaW5lLWhlaWdodDoxfSAgICAgXFxuLmJvdHRvbS1uYXYgLmJ0bi0tYWN0aXZle29wYWNpdHk6MX0gICAgIFxcbi5ib3R0b20tbmF2IC5idG4tLWFjdGl2ZSAuYnRuX19jb250ZW50e2ZvbnQtc2l6ZToxNHB4fSAgICAgXFxuLmJvdHRvbS1uYXYgLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnQ6YmVmb3Jle29wYWNpdHk6MH0gICAgIFxcbi5ib3R0b20tbmF2IC5idG4tLWFjdGl2ZSAuYnRuX19jb250ZW50IC5pY29uey13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9ICAgICBcXG4uYm90dG9tLW5hdiAuYnRuOm5vdCguYnRuLS1hY3RpdmUpey13ZWJraXQtZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtmaWx0ZXI6Z3JheXNjYWxlKDEwMCUpfSAgICAgXFxuLmJvdHRvbS1uYXYtLXNoaWZ0IC5idG5fX2NvbnRlbnR7Zm9udC1zaXplOjE0cHh9ICAgICBcXG4uYm90dG9tLW5hdi0tc2hpZnQgLmJ0bnstd2Via2l0LXRyYW5zaXRpb246YWxsIC4zczt0cmFuc2l0aW9uOmFsbCAuM3M7bWluLXdpZHRoOjU2cHg7bWF4LXdpZHRoOjk2cHh9ICAgICBcXG4uYm90dG9tLW5hdi0tc2hpZnQgLmJ0bi0tYWN0aXZle21pbi13aWR0aDo5NnB4O21heC13aWR0aDoxNjhweH0gICAgIFxcbi5ib3R0b20tbmF2LS1zaGlmdCAuYnRuOm5vdCguYnRuLS1hY3RpdmUpIC5idG5fX2NvbnRlbnQgLmljb257LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgxMHB4KTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgxMHB4KX0gICAgIFxcbi5ib3R0b20tbmF2LS1zaGlmdCAuYnRuOm5vdCguYnRuLS1hY3RpdmUpIC5idG5fX2NvbnRlbnQgc3Bhbntjb2xvcjp0cmFuc3BhcmVudH0gICAgIFxcbi5ib3R0b20tc2hlZXQuZGlhbG9ney1tcy1mbGV4LWl0ZW0tYWxpZ246ZW5kO2FsaWduLXNlbGY6ZmxleC1lbmQ7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgMTAwJTtmbGV4OjEgMCAxMDAlO21hcmdpbjowO21pbi13aWR0aDoxMDAlO292ZXJmbG93OnZpc2libGU7LXdlYmtpdC10cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uYm90dG9tLXNoZWV0LmRpYWxvZy5ib3R0b20tc2hlZXQtLWluc2V0e21heC13aWR0aDo3MCU7bWluLXdpZHRoOjB9ICAgICBcXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTk5cHgpey5ib3R0b20tc2hlZXQuZGlhbG9nLmJvdHRvbS1zaGVldC0taW5zZXR7bWF4LXdpZHRoOm5vbmV9fSAgICAgXFxuLmRpYWxvZ3std2Via2l0LWJveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMTFweCAxNXB4IC03cHggcmdiYSgwLDAsMCwuMiksMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDlweCA0NnB4IDhweCByZ2JhKDAsMCwwLC4xMik7Ym9yZGVyLXJhZGl1czoycHg7bWFyZ2luOjI0cHg7b3ZlcmZsb3cteTphdXRvO3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDppbmhlcml0fSAgICAgXFxuLmRpYWxvZywuZGlhbG9nX19jb250ZW50ey13ZWJraXQtdHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXQ7d2lkdGg6MTAwJX0gICAgIFxcbi5kaWFsb2dfX2NvbnRlbnR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmZpeGVkO3RvcDowO3otaW5kZXg6NjtvdXRsaW5lOm5vbmV9ICAgICBcXG4uZGlhbG9nOm5vdCguZGlhbG9nLS1mdWxsc2NyZWVuKXttYXgtaGVpZ2h0OjkwJX0gICAgIFxcbi5kaWFsb2dfX2NvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9ICAgICBcXG4uZGlhbG9nLS1mdWxsc2NyZWVue21hcmdpbjowO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmZpeGVkO292ZXJmbG93LXk6YXV0bzt0b3A6MDtsZWZ0OjB9ICAgICBcXG4uZGlhbG9nLS1mdWxsc2NyZWVuPi5jYXJke21pbi1oZWlnaHQ6MTAwJTttaW4td2lkdGg6MTAwJTttYXJnaW46MCFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudH0gICAgIFxcbi5kaWFsb2ctLXNjcm9sbGFibGUsLmRpYWxvZy0tc2Nyb2xsYWJsZT4uY2FyZHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fSAgICAgXFxuLmRpYWxvZy0tc2Nyb2xsYWJsZT4uY2FyZHstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bzstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0gICAgIFxcbi5kaWFsb2ctLXNjcm9sbGFibGU+LmNhcmQ+LmNhcmRfX2FjdGlvbnMsLmRpYWxvZy0tc2Nyb2xsYWJsZT4uY2FyZD4uY2FyZF9fdGl0bGV7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG99ICAgICBcXG4uZGlhbG9nLS1zY3JvbGxhYmxlPi5jYXJkPi5jYXJkX190ZXh0e292ZXJmbG93LXk6YXV0bzstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufSAgICAgXFxuLm92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7cG9pbnRlci1ldmVudHM6bm9uZTstd2Via2l0LXRyYW5zaXRpb246LjVzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt6LWluZGV4OjV9ICAgICBcXG4ub3ZlcmxheS0tYWJzb2x1dGUsLm92ZXJsYXk6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlfSAgICAgXFxuLm92ZXJsYXk6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6IzIxMjEyMTtib3R0b206MDtjb250ZW50OlxcXCJcXFwiO2hlaWdodDoxMDAlO2xlZnQ6MDtvcGFjaXR5OjA7cmlnaHQ6MDt0b3A6MDstd2Via2l0LXRyYW5zaXRpb246aW5oZXJpdDt0cmFuc2l0aW9uOmluaGVyaXQ7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5Oi4xNXM7dHJhbnNpdGlvbi1kZWxheTouMTVzO3dpZHRoOjEwMCV9ICAgICBcXG4ub3ZlcmxheS0tYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG87LW1zLXRvdWNoLWFjdGlvbjpub25lO3RvdWNoLWFjdGlvbjpub25lfSAgICAgXFxuLm92ZXJsYXktLWFjdGl2ZTpiZWZvcmV7b3BhY2l0eTouNDZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5icmVhZGNydW1icyBsaS5icmVhZGNydW1ic19fZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5icmVhZGNydW1icyBsaSAuYnJlYWRjcnVtYnNfX2l0ZW0tLWRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQgLmJyZWFkY3J1bWJzX19pdGVtLC50aGVtZS0tbGlnaHQgLmJyZWFkY3J1bWJzIGxpLmJyZWFkY3J1bWJzX19kaXZpZGVyLC50aGVtZS0tbGlnaHQgLmJyZWFkY3J1bWJzIGxpIC5icmVhZGNydW1ic19faXRlbS0tZGlzYWJsZWQsLnRoZW1lLS1saWdodCAuYnJlYWRjcnVtYnMgbGk6bGFzdC1jaGlsZCAuYnJlYWRjcnVtYnNfX2l0ZW17Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5icmVhZGNydW1icyBsaS5icmVhZGNydW1ic19fZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJyZWFkY3J1bWJzIGxpIC5icmVhZGNydW1ic19faXRlbS0tZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIC5icmVhZGNydW1ic19faXRlbSwudGhlbWUtLWRhcmsgLmJyZWFkY3J1bWJzIGxpLmJyZWFkY3J1bWJzX19kaXZpZGVyLC50aGVtZS0tZGFyayAuYnJlYWRjcnVtYnMgbGkgLmJyZWFkY3J1bWJzX19pdGVtLS1kaXNhYmxlZCwudGhlbWUtLWRhcmsgLmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQgLmJyZWFkY3J1bWJzX19pdGVte2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5icmVhZGNydW1ic3stbXMtZmxleC1hbGlnbjpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMSBhdXRvO2ZsZXg6MCAxIGF1dG87bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzoxOHB4IDEycHh9ICAgICBcXG4uYnJlYWRjcnVtYnMsLmJyZWFkY3J1bWJzIGxpey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfSAgICAgXFxuLmJyZWFkY3J1bWJzIGxpey1tcy1mbGV4LWFsaWduOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtc2l6ZToxNHB4fSAgICAgXFxuLmJyZWFkY3J1bWJzIGxpIC5pY29ue2ZvbnQtc2l6ZToxNnB4fSAgICAgXFxuLmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQgYXtjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLmJyZWFkY3J1bWJzIGxpOm50aC1jaGlsZCgybil7cGFkZGluZzowIDEycHh9ICAgICBcXG4uYnJlYWRjcnVtYnMtLWxhcmdlIGxpLC5icmVhZGNydW1icy0tbGFyZ2UgbGkgLmljb257Zm9udC1zaXplOjE2cHh9ICAgICBcXG4uYnJlYWRjcnVtYnNfX2l0ZW17LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDt0ZXh0LWRlY29yYXRpb246bm9uZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5icmVhZGNydW1ic19faXRlbS0tZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5yaXBwbGVfX2NvbnRhaW5lcntib3JkZXItcmFkaXVzOmluaGVyaXQ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt6LWluZGV4OjA7Y29udGFpbjpzdHJpY3R9ICAgICBcXG4ucmlwcGxlX19hbmltYXRpb24sLnJpcHBsZV9fY29udGFpbmVye2NvbG9yOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO292ZXJmbG93OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLnJpcHBsZV9fYW5pbWF0aW9ue2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6Y3VycmVudENvbG9yO29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246LjRzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sb3BhY2l0eX0gICAgIFxcbi5yaXBwbGVfX2FuaW1hdGlvbi0tZW50ZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfSAgICAgXFxuLnJpcHBsZV9fYW5pbWF0aW9uLS12aXNpYmxle29wYWNpdHk6LjE1fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLC50aGVtZS0tbGlnaHQgLmJ0bntjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5idG4uYnRuLS1kaXNhYmxlZCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5idG4uYnRuLS1kaXNhYmxlZCAuaWNvbiwudGhlbWUtLWxpZ2h0IC5idG4uYnRuLS1kaXNhYmxlZCwudGhlbWUtLWxpZ2h0IC5idG4uYnRuLS1kaXNhYmxlZCAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC4yNikhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLmJ0bi0tZGlzYWJsZWQ6bm90KC5idG4tLWljb24pOm5vdCguYnRuLS1mbGF0KSwudGhlbWUtLWxpZ2h0IC5idG4uYnRuLS1kaXNhYmxlZDpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpLC50aGVtZS0tbGlnaHQgLmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuYnRuLC50aGVtZS0tZGFyayAuYnRue2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0bi5idG4tLWRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuYnRuLmJ0bi0tZGlzYWJsZWQgLmljb24sLnRoZW1lLS1kYXJrIC5idG4uYnRuLS1kaXNhYmxlZCwudGhlbWUtLWRhcmsgLmJ0bi5idG4tLWRpc2FibGVkIC5pY29ue2NvbG9yOmhzbGEoMCwwJSwxMDAlLC4zKSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0bi5idG4tLWRpc2FibGVkOm5vdCguYnRuLS1pY29uKTpub3QoLmJ0bi0tZmxhdCksLnRoZW1lLS1kYXJrIC5idG4uYnRuLS1kaXNhYmxlZDpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpLC50aGVtZS0tZGFyayAuYnRuOm5vdCguYnRuLS1pY29uKTpub3QoLmJ0bi0tZmxhdCl7YmFja2dyb3VuZC1jb2xvcjojMjEyMTIxfSAgICAgXFxuLmJ0bnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2hlaWdodDozNnB4Oy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDEgYXV0bztmbGV4OjAgMSBhdXRvO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjo2cHggOHB4O21pbi13aWR0aDo4OHB4O291dGxpbmU6MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpLGNvbG9yIDFtczt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpLGNvbG9yIDFtcztwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxuLmJ0bl9fY29udGVudDpiZWZvcmV7Ym9yZGVyLXJhZGl1czppbmhlcml0O2NvbG9yOmluaGVyaXQ7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7aGVpZ2h0OjEwMCU7b3BhY2l0eTouMTI7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0gICAgIFxcbi5idG4tLXNtYWxse2ZvbnQtc2l6ZToxM3B4O2hlaWdodDoyOHB4fSAgICAgXFxuLmJ0bi0tc21hbGwgLmJ0bl9fY29udGVudHtwYWRkaW5nOjAgOHB4fSAgICAgXFxuLmJ0bi0tbGFyZ2V7Zm9udC1zaXplOjE1cHg7aGVpZ2h0OjQ0cHh9ICAgICBcXG4uYnRuLS1sYXJnZSAuYnRuX19jb250ZW50e3BhZGRpbmc6MCAzMnB4fSAgICAgXFxuLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnQ6YmVmb3JlLC5idG46Zm9jdXMgLmJ0bl9fY29udGVudDpiZWZvcmUsLmJ0bjpob3ZlciAuYnRuX19jb250ZW50OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0gICAgIFxcbi5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czppbmhlcml0O2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6aW5oZXJpdDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0bzstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowIGF1dG87cGFkZGluZzowIDE2cHg7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOmluaGVyaXR9ICAgICBcXG4uYnRuIC5idG5fX2NvbnRlbnQgLmljb257Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5idG4tLWZsYXR7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9ICAgICBcXG4uYnRuOm5vdCguYnRuLS1kZXByZXNzZWQpe3dpbGwtY2hhbmdlOmJveC1zaGFkb3c7LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmJ0bjpub3QoLmJ0bi0tZGVwcmVzc2VkKTphY3RpdmV7LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmJ0bjpub3QoLmJ0bi0tZGVwcmVzc2VkKTphY3RpdmUgLmJ0bl9fY29udGVudCwuYnRuOm5vdCguYnRuLS1kZXByZXNzZWQpOmZvY3VzIC5idG5fX2NvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7dG9wOjA7bGVmdDowfSAgICAgXFxuLmJ0bi0taWNvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50Oy13ZWJraXQtYm94LXNoYWRvdzpub25lIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NTAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjA7d2lkdGg6MzZweH0gICAgIFxcbi5idG4tLWljb24uYnRuLS1zbWFsbHt3aWR0aDoyOHB4fSAgICAgXFxuLmJ0bi0taWNvbi5idG4tLWxhcmdle3dpZHRoOjQ0cHh9ICAgICBcXG4uYnRuLS1mbG9hdGluZywuYnRuLS1pY29uIC5idG5fX2NvbnRlbnQ6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfSAgICAgXFxuLmJ0bi0tZmxvYXRpbmd7bWluLXdpZHRoOjA7aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtwYWRkaW5nOjB9ICAgICBcXG4uYnRuLS1mbG9hdGluZy5idG4tLWFic29sdXRlLC5idG4tLWZsb2F0aW5nLmJ0bi0tZml4ZWR7ei1pbmRleDo0fSAgICAgXFxuLmJ0bi0tZmxvYXRpbmc6bm90KC5idG4tLWRlcHJlc3NlZCl7LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5idG4tLWZsb2F0aW5nOm5vdCguYnRuLS1kZXByZXNzZWQpOmFjdGl2ZXstd2Via2l0LWJveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxMnB4IDE3cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyMnB4IDRweCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEycHggMTdweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDIycHggNHB4IHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5idG4tLWZsb2F0aW5nIC5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWFyZ2luOjA7cGFkZGluZzowfSAgICAgXFxuLmJ0bi0tZmxvYXRpbmc6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCV9ICAgICBcXG4uYnRuLS1mbG9hdGluZyAuYnRuX19jb250ZW50IDpub3QoOm9ubHktY2hpbGQpey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmJ0bi0tZmxvYXRpbmcgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKTpmaXJzdC1jaGlsZHtvcGFjaXR5OjF9ICAgICBcXG4uYnRuLS1mbG9hdGluZyAuYnRuX19jb250ZW50IDpub3QoOm9ubHktY2hpbGQpOmxhc3QtY2hpbGR7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKX0gICAgIFxcbi5idG4tLWZsb2F0aW5nIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6Zmlyc3QtY2hpbGQsLmJ0bi0tZmxvYXRpbmcgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKTpsYXN0LWNoaWxkey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfSAgICAgXFxuLmJ0bi0tZmxvYXRpbmcuYnRuLS1hY3RpdmUgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKTpmaXJzdC1jaGlsZHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0gICAgIFxcbi5idG4tLWZsb2F0aW5nLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6bGFzdC1jaGlsZHtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDApO3RyYW5zZm9ybTpyb3RhdGUoMCl9ICAgICBcXG4uYnRuLS1mbG9hdGluZyAuaWNvbntoZWlnaHQ6aW5oZXJpdDt3aWR0aDppbmhlcml0fSAgICAgXFxuLmJ0bi0tZmxvYXRpbmcuYnRuLS1zbWFsbHtoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fSAgICAgXFxuLmJ0bi0tZmxvYXRpbmcuYnRuLS1zbWFsbCAuaWNvbntmb250LXNpemU6MThweH0gICAgIFxcbi5idG4tLWZsb2F0aW5nLmJ0bi0tbGFyZ2V7aGVpZ2h0OjcycHg7d2lkdGg6NzJweH0gICAgIFxcbi5idG4tLWZsb2F0aW5nLmJ0bi0tbGFyZ2UgLmljb257Zm9udC1zaXplOjMwcHh9ICAgICBcXG4uYnRuLS1yZXZlcnNlIC5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfSAgICAgXFxuLmJ0bi0tcmV2ZXJzZS5idG4tLWNvbHVtbiAuYnRuX19jb250ZW50ey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9ICAgICBcXG4uYnRuLS1hYnNvbHV0ZSwuYnRuLS1maXhlZHttYXJnaW46MH0gICAgIFxcbi5idG4uYnRuLS1hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0gICAgIFxcbi5idG4uYnRuLS1maXhlZHtwb3NpdGlvbjpmaXhlZH0gICAgIFxcbi5idG4tLXRvcDpub3QoLmJ0bi0tYWJzb2x1dGUpe3RvcDoxNnB4fSAgICAgXFxuLmJ0bi0tdG9wLmJ0bi0tYWJzb2x1dGV7dG9wOi0yOHB4fSAgICAgXFxuLmJ0bi0tdG9wLmJ0bi0tYWJzb2x1dGUuYnRuLS1zbWFsbHt0b3A6LTIwcHh9ICAgICBcXG4uYnRuLS10b3AuYnRuLS1hYnNvbHV0ZS5idG4tLWxhcmdle3RvcDotMzZweH0gICAgIFxcbi5idG4tLWJvdHRvbTpub3QoLmJ0bi0tYWJzb2x1dGUpe2JvdHRvbToxNnB4fSAgICAgXFxuLmJ0bi0tYm90dG9tLmJ0bi0tYWJzb2x1dGV7Ym90dG9tOi0yOHB4fSAgICAgXFxuLmJ0bi0tYm90dG9tLmJ0bi0tYWJzb2x1dGUuYnRuLS1zbWFsbHtib3R0b206LTIwcHh9ICAgICBcXG4uYnRuLS1ib3R0b20uYnRuLS1hYnNvbHV0ZS5idG4tLWxhcmdle2JvdHRvbTotMzZweH0gICAgIFxcbi5idG4tLWxlZnR7bGVmdDoxNnB4fSAgICAgXFxuLmJ0bi0tcmlnaHR7cmlnaHQ6MTZweH0gICAgIFxcbi5idG4uYnRuLS1kaXNhYmxlZHstd2Via2l0LWJveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLmJ0bi0taWNvbiAuYnRuX19jb250ZW50e3BhZGRpbmc6MH0gICAgIFxcbi5idG4tLWxvYWRlcntwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLmJ0bi0tbG9hZGVyIC5idG5fX2NvbnRlbnR7b3BhY2l0eTowfSAgICAgXFxuLmJ0bl9fbG9hZGluZ3std2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCV9ICAgICBcXG4uYnRuX19sb2FkaW5nIC5pY29uLS1sZWZ0e21hcmdpbi1yaWdodDoxcmVtO2xpbmUtaGVpZ2h0OmluaGVyaXR9ICAgICBcXG4uYnRuX19sb2FkaW5nIC5pY29uLS1yaWdodHttYXJnaW4tbGVmdDoxcmVtO2xpbmUtaGVpZ2h0OmluaGVyaXR9ICAgICBcXG4uYnRuLmJ0bi0tb3V0bGluZXtib3JkZXI6MXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9ICAgICBcXG4uYnRuLmJ0bi0tb3V0bGluZTpob3Zlcnstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9ICAgICBcXG4uYnRuLS1ibG9ja3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTttYXJnaW46NnB4IDA7d2lkdGg6MTAwJX0gICAgIFxcbi5idG4tLXJvdW5kLC5idG4tLXJvdW5kOmFmdGVye2JvcmRlci1yYWRpdXM6MjhweH0gICAgIFxcbi5idG4gLmljb24tLXJpZ2h0e21hcmdpbi1sZWZ0OjE2cHh9ICAgICBcXG4uYnRuIC5pY29uLS1sZWZ0e21hcmdpbi1yaWdodDoxNnB4fSAgICAgXFxuLmJ0bi5hY2NlbnQsLmJ0bi5lcnJvciwuYnRuLmluZm8sLmJ0bi5wcmltYXJ5LC5idG4uc2Vjb25kYXJ5LC5idG4uc3VjY2VzcywuYnRuLndhcm5pbmd7Y29sb3I6I2ZmZn0gICAgIFxcbi5wcm9ncmVzcy1jaXJjdWxhcntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4fSAgICAgXFxuLnByb2dyZXNzLWNpcmN1bGFyIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21hcmdpbjphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MH0gICAgIFxcbi5wcm9ncmVzcy1jaXJjdWxhci0taW5kZXRlcm1pbmF0ZSBzdmd7LXdlYmtpdC1hbmltYXRpb246YyAxLjRzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246YyAxLjRzIGxpbmVhciBpbmZpbml0ZTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0fSAgICAgXFxuLnByb2dyZXNzLWNpcmN1bGFyLS1pbmRldGVybWluYXRlIC5wcm9ncmVzcy1jaXJjdWxhcl9fb3ZlcmxheXstd2Via2l0LWFuaW1hdGlvbjpiIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmIgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtZGFzaGFycmF5OjgwLDIwMDtzdHJva2UtZGFzaG9mZnNldDowcHh9ICAgICBcXG4ucHJvZ3Jlc3MtY2lyY3VsYXJfX3VuZGVybGF5e3N0cm9rZTpyZ2JhKDAsMCwwLC4xKTt6LWluZGV4OjF9ICAgICBcXG4ucHJvZ3Jlc3MtY2lyY3VsYXJfX292ZXJsYXl7c3Ryb2tlOmN1cnJlbnRDb2xvcjt6LWluZGV4OjI7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjZzIGVhc2UtaW4tb3V0fSAgICAgXFxuLnByb2dyZXNzLWNpcmN1bGFyX19pbmZve3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfSAgICAgXFxuQC13ZWJraXQta2V5ZnJhbWVzIGJ7MCV7c3Ryb2tlLWRhc2hhcnJheToxLDIwMDtzdHJva2UtZGFzaG9mZnNldDowcHh9NTAle3N0cm9rZS1kYXNoYXJyYXk6MTAwLDIwMDtzdHJva2UtZGFzaG9mZnNldDotMTVweH10b3tzdHJva2UtZGFzaGFycmF5OjEwMCwyMDA7c3Ryb2tlLWRhc2hvZmZzZXQ6LTEyNXB4fX0gICAgIFxcbkBrZXlmcmFtZXMgYnswJXtzdHJva2UtZGFzaGFycmF5OjEsMjAwO3N0cm9rZS1kYXNob2Zmc2V0OjBweH01MCV7c3Ryb2tlLWRhc2hhcnJheToxMDAsMjAwO3N0cm9rZS1kYXNob2Zmc2V0Oi0xNXB4fXRve3N0cm9rZS1kYXNoYXJyYXk6MTAwLDIwMDtzdHJva2UtZGFzaG9mZnNldDotMTI1cHh9fSAgICAgXFxuQC13ZWJraXQta2V5ZnJhbWVzIGN7dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19ICAgICBcXG5Aa2V5ZnJhbWVzIGN7dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5idG4tdG9nZ2xlLC50aGVtZS0tbGlnaHQgLmJ0bi10b2dnbGV7YmFja2dyb3VuZDojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLXRvZ2dsZSAuYnRuLC50aGVtZS0tbGlnaHQgLmJ0bi10b2dnbGUgLmJ0bntjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5idG4tdG9nZ2xlIC5idG4uYnRuLS1hY3RpdmU6bm90KDpsYXN0LWNoaWxkKTpub3QoW2RhdGEtb25seS1jaGlsZF0pLC50aGVtZS0tbGlnaHQgLmJ0bi10b2dnbGUgLmJ0bi5idG4tLWFjdGl2ZTpub3QoOmxhc3QtY2hpbGQpOm5vdChbZGF0YS1vbmx5LWNoaWxkXSl7Ym9yZGVyLXJpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsLjI2KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuYnRuLXRvZ2dsZSwudGhlbWUtLWRhcmsgLmJ0bi10b2dnbGV7YmFja2dyb3VuZDojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5idG4tdG9nZ2xlIC5idG4sLnRoZW1lLS1kYXJrIC5idG4tdG9nZ2xlIC5idG57Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuYnRuLXRvZ2dsZSAuYnRuLmJ0bi0tYWN0aXZlOm5vdCg6bGFzdC1jaGlsZCk6bm90KFtkYXRhLW9ubHktY2hpbGRdKSwudGhlbWUtLWRhcmsgLmJ0bi10b2dnbGUgLmJ0bi5idG4tLWFjdGl2ZTpub3QoOmxhc3QtY2hpbGQpOm5vdChbZGF0YS1vbmx5LWNoaWxkXSl7Ym9yZGVyLXJpZ2h0LWNvbG9yOmhzbGEoMCwwJSwxMDAlLC4zKX0gICAgIFxcbi5idG4tdG9nZ2xle2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZCxib3gtc2hhZG93fSAgICAgXFxuLmJ0bi10b2dnbGUgLmJ0bnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDphdXRvO3dpZHRoOmF1dG87cGFkZGluZzowIDhweDttYXJnaW46MDtvcGFjaXR5Oi40O2JvcmRlci1yYWRpdXM6MH0gICAgIFxcbi5idG4tdG9nZ2xlIC5idG46bm90KDpsYXN0LWNoaWxkKXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHRyYW5zcGFyZW50fSAgICAgXFxuLmJ0bi10b2dnbGUgLmJ0bjphZnRlcntkaXNwbGF5Om5vbmV9ICAgICBcXG4uYnRuLXRvZ2dsZSAuYnRuLmJ0bi0tYWN0aXZle29wYWNpdHk6MX0gICAgIFxcbi5idG4tdG9nZ2xlIC5idG5fX2NvbnRlbnR7cGFkZGluZzowfSAgICAgXFxuLmJ0bi10b2dnbGUgLmJ0biBzcGFuKy5pY29ue2ZvbnQtc2l6ZTptZWRpdW07bWFyZ2luLWxlZnQ6MTBweH0gICAgIFxcbi5idG4tdG9nZ2xlIC5idG46Zmlyc3QtY2hpbGR7Ym9yZGVyLXJhZGl1czoycHggMCAwIDJweH0gICAgIFxcbi5idG4tdG9nZ2xlIC5idG46bGFzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMnB4IDJweCAwfSAgICAgXFxuLmJ0bi10b2dnbGUtLXNlbGVjdGVkey13ZWJraXQtYm94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmNhcmQsLnRoZW1lLS1saWdodCAuY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5jYXJkLC50aGVtZS0tZGFyayAuY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDI7Y29sb3I6I2ZmZn0gICAgIFxcbi5jYXJke2Rpc3BsYXk6YmxvY2s7Ym9yZGVyLXJhZGl1czoycHg7bWluLXdpZHRoOjA7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC1ib3gtc2hhZG93OjAgMnB4IDFweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgMXB4IDFweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAzcHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmNhcmQ+OmZpcnN0LWNoaWxkOm5vdCguYnRuKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmluaGVyaXQ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6aW5oZXJpdH0gICAgIFxcbi5jYXJkPjpsYXN0LWNoaWxkOm5vdCguYnRuKXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmluaGVyaXQ7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6aW5oZXJpdH0gICAgIFxcbi5jYXJkLS1yYWlzZWR7LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDNweCAzcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDNweCA0cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggOHB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmNhcmQtLXRpbGV7Ym9yZGVyLXJhZGl1czowfSAgICAgXFxuLmNhcmQtLWZsYXR7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAwIDAgcmdiYSgwLDAsMCwuMiksMCAwIDAgMCByZ2JhKDAsMCwwLC4xNCksMCAwIDAgMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmNhcmQtLWhvdmVye2N1cnNvcjpwb2ludGVyOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246YWxsIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTstd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6LXdlYmtpdC1ib3gtc2hhZG93O3RyYW5zaXRpb24tcHJvcGVydHk6LXdlYmtpdC1ib3gtc2hhZG93O3RyYW5zaXRpb24tcHJvcGVydHk6Ym94LXNoYWRvdzt0cmFuc2l0aW9uLXByb3BlcnR5OmJveC1zaGFkb3csIC13ZWJraXQtYm94LXNoYWRvd30gICAgIFxcbi5jYXJkLS1ob3Zlcjpob3Zlcnstd2Via2l0LWJveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uY2FyZF9fdGl0bGV7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7cGFkZGluZzoxNnB4fSAgICAgXFxuLmNhcmRfX3RpdGxlLS1wcmltYXJ5e3BhZGRpbmctdG9wOjI0cHh9ICAgICBcXG4uY2FyZF9fdGV4dHtwYWRkaW5nOjE2cHg7d2lkdGg6MTAwJX0gICAgIFxcbi5jYXJkX19tZWRpYXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi5jYXJkX19tZWRpYSBpbWd7d2lkdGg6MTAwJX0gICAgIFxcbi5jYXJkX19tZWRpYV9fYmFja2dyb3VuZHtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9ICAgICBcXG4uY2FyZF9fbWVkaWFfX2NvbnRlbnR7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87cG9zaXRpb246cmVsYXRpdmV9ICAgICBcXG4uY2FyZF9fYWN0aW9ucywuY2FyZF9fbWVkaWFfX2NvbnRlbnR7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0gICAgIFxcbi5jYXJkX19hY3Rpb25zey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6OHB4IDRweH0gICAgIFxcbi5jYXJkX19hY3Rpb25zIC5idG4sLmNhcmRfX2FjdGlvbnM+KnttYXJnaW46MCA0cHh9ICAgICBcXG4uY2Fyb3VzZWx7aGVpZ2h0OjUwMHB4O3dpZHRoOjEwMCU7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5jYXJvdXNlbF9fbGVmdCwuY2Fyb3VzZWxfX3JpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9ICAgICBcXG4uY2Fyb3VzZWxfX2xlZnQgLmJ0biwuY2Fyb3VzZWxfX3JpZ2h0IC5idG57Y29sb3I6I2ZmZjttYXJnaW46MCFpbXBvcnRhbnQ7aGVpZ2h0OmF1dG87d2lkdGg6YXV0b30gICAgIFxcbi5jYXJvdXNlbF9fbGVmdCAuYnRuIGksLmNhcm91c2VsX19yaWdodCAuYnRuIGl7Zm9udC1zaXplOjQ4cHh9ICAgICBcXG4uY2Fyb3VzZWxfX2xlZnQgLmJ0bjpob3ZlciwuY2Fyb3VzZWxfX3JpZ2h0IC5idG46aG92ZXJ7YmFja2dyb3VuZDpub25lfSAgICAgXFxuLmNhcm91c2VsX19sZWZ0e2xlZnQ6NXB4fSAgICAgXFxuLmNhcm91c2VsX19yaWdodHtyaWdodDo1cHh9ICAgICBcXG4uY2Fyb3VzZWxfX2NvbnRyb2xze2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym90dG9tOjA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6NTBweDtsaXN0LXN0eWxlLXR5cGU6bm9uZTt3aWR0aDoxMDAlO3otaW5kZXg6MX0gICAgIFxcbi5jYXJvdXNlbF9fY29udHJvbHNfX2l0ZW17Y29sb3I6I2ZmZjttYXJnaW46MCA4cHghaW1wb3J0YW50fSAgICAgXFxuLmNhcm91c2VsX19jb250cm9sc19faXRlbSBpe29wYWNpdHk6LjU7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVtLS1hY3RpdmUgaXtvcGFjaXR5OjE7dmVydGljYWwtYWxpZ246bWlkZGxlfSAgICAgXFxuLmNhcm91c2VsX19jb250cm9sc19faXRlbTpob3ZlcntiYWNrZ3JvdW5kOm5vbmV9ICAgICBcXG4uY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVtOmhvdmVyIGl7b3BhY2l0eTouOH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmp1bWJvdHJvbl9fY29udGVudCwudGhlbWUtLWxpZ2h0IC5qdW1ib3Ryb25fX2NvbnRlbnR7Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5qdW1ib3Ryb25fX2NvbnRlbnQsLnRoZW1lLS1kYXJrIC5qdW1ib3Ryb25fX2NvbnRlbnR7Y29sb3I6I2ZmZn0gICAgIFxcbi5qdW1ib3Ryb257ZGlzcGxheTpibG9jazt0b3A6MDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoxMDAlfSAgICAgXFxuLmp1bWJvdHJvbl9fd3JhcHBlcntoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC10cmFuc2l0aW9uOmluaGVyaXQ7dHJhbnNpdGlvbjppbmhlcml0O3dpZHRoOjEwMCV9ICAgICBcXG4uanVtYm90cm9uX19iYWNrZ3JvdW5ke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2NvbnRhaW46c3RyaWN0Oy13ZWJraXQtdHJhbnNpdGlvbjppbmhlcml0O3RyYW5zaXRpb246aW5oZXJpdH0gICAgIFxcbi5qdW1ib3Ryb25fX2ltYWdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO21pbi13aWR0aDoxMDAlO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTstd2Via2l0LXRyYW5zaXRpb246aW5oZXJpdDt0cmFuc2l0aW9uOmluaGVyaXR9ICAgICBcXG4uanVtYm90cm9uX19jb250ZW50e2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNpdGlvbjppbmhlcml0O3RyYW5zaXRpb246aW5oZXJpdH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIGlucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIHRleHRhcmVhLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIGlucHV0LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIHRleHRhcmVhe2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIHRleHRhcmVhOmRpc2FibGVkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIHRleHRhcmVhOmRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX21lc3NhZ2VzLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX21lc3NhZ2Vze2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlcjoycHggc29saWQgcmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG97YmFja2dyb3VuZDojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWR7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZHtiYWNrZ3JvdW5kOiM0MjQyNDJ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGlucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb24sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgaW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgbGFiZWx7Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXJ0eSAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hOm5vdCguaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLS1hY3RpdmUpLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXJ0eSAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hOm5vdCguaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLS1hY3RpdmUpe2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSBsYWJlbCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgbGFiZWwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC40Mil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbjpub3QoOmhvdmVyKSwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb246bm90KDpob3ZlciksLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb246bm90KDpob3ZlciksLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uOm5vdCg6aG92ZXIpe2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3Zlci5pbnB1dC1ncm91cC0tdGV4dGFyZWE6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkgLmlucHV0LWdyb3VwX19pbnB1dHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbiwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCwgcmlnaHQgdG9wLGNvbG9yLXN0b3AoMCwgcmdiYSgwLDAsMCwuMzgpKSxjb2xvci1zdG9wKDMzJSwgcmdiYSgwLDAsMCwuMzgpKSxjb2xvci1zdG9wKDAsIHRyYW5zcGFyZW50KSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgwLDAsMCwuMzgpIDAscmdiYSgwLDAsMCwuMzgpIDMzJSx0cmFuc3BhcmVudCAwKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fcHJlZml4LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fcHJlZml4LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4e2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlzYWJsZWRfX3ByZWZpeCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19zdWZmaXgsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fcHJlZml4LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlzYWJsZWRfX3N1ZmZpeHtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwIGlucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgdGV4dGFyZWEsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCBpbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwIHRleHRhcmVhe2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgdGV4dGFyZWE6ZGlzYWJsZWQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCBpbnB1dDpkaXNhYmxlZCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwIHRleHRhcmVhOmRpc2FibGVke2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fbWVzc2FnZXMsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgLmlucHV0LWdyb3VwX19tZXNzYWdlc3tjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIC5pbnB1dC1ncm91cF9faW5wdXR7Ym9yZGVyOjJweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG97YmFja2dyb3VuZDojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVke2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjE2KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZHtiYWNrZ3JvdW5kOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGlucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgbGFiZWwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb24sLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCBpbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpcnR5IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWE6bm90KC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEtLWFjdGl2ZSksLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlydHkgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYTpub3QoLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYS0tYWN0aXZlKXtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgbGFiZWwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgbGFiZWx7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIGxhYmVsLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCBsYWJlbHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCkgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uOm5vdCg6aG92ZXIpLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uOm5vdCg6aG92ZXIpLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb246bm90KDpob3ZlciksLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb246bm90KDpob3Zlcil7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1vdmVyZmxvdyk6bm90KC5pbnB1dC1ncm91cC0tc2VnbWVudGVkKTpub3QoLmlucHV0LWdyb3VwLS1lZGl0YWJsZSk6aG92ZXIgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlci1jb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjEyKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29ue2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCB0b3AsIHJpZ2h0IHRvcCxjb2xvci1zdG9wKDAsIGhzbGEoMCwwJSwxMDAlLC41KSksY29sb3Itc3RvcCgzMyUsIGhzbGEoMCwwJSwxMDAlLC41KSksY29sb3Itc3RvcCgwLCB0cmFuc3BhcmVudCkpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLGhzbGEoMCwwJSwxMDAlLC41KSAwLGhzbGEoMCwwJSwxMDAlLC41KSAzMyUsdHJhbnNwYXJlbnQgMCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fcHJlZml4LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXgsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4e2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fcHJlZml4LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fc3VmZml4LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fcHJlZml4LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fc3VmZml4e2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5pbnB1dC1ncm91cHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDE7ZmxleDoxIDE7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO21pbi13aWR0aDoyNHB4O3BhZGRpbmc6MThweCAwIDA7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtvdXRsaW5lOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi13ZWJraXQtYm94LXNoYWRvdyAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpLCAtd2Via2l0LWJveC1zaGFkb3cgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAgaW5wdXR7d2lkdGg6MTAwJX0gICAgIFxcbi5pbnB1dC1ncm91cCBsYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDozMHB4O2hlaWdodDozMHB4O21heC13aWR0aDo5MCU7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmU7dGV4dC1hbGlnbjpsZWZ0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7LXdlYmtpdC10cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJTt6LWluZGV4OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXBfX2lucHV0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCAxMDAlO2ZsZXg6MSAwIDEwMCU7bWluLXdpZHRoOjA7bWluLWhlaWdodDozMHB4fSAgICAgXFxuLmlucHV0LWdyb3VwX19pY29uLWNie2N1cnNvcjpwb2ludGVyfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lcnJvciAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZXJyb3IgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb24sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29ue2NvbG9yOmluaGVyaXR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uIGxhYmVsLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIGxhYmVsLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse21heC13aWR0aDo3NSV9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gbGFiZWx7bWF4LXdpZHRoOjY1JX0gICAgIFxcbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29ue3BhZGRpbmc6MCA2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb257LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZS5pbnB1dC1ncm91cC0tZGlydHkgbGFiZWwsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLmlucHV0LWdyb3VwLS1kaXJ0eSBsYWJlbHtkaXNwbGF5Om5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG97bWluLWhlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6MnB4O3BhZGRpbmc6MDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8gbGFiZWx7dG9wOjhweDtwYWRkaW5nLWxlZnQ6MTZweDstd2Via2l0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8gLmlucHV0LWdyb3VwX19pbnB1dHstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjhweCAxNnB4fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvIC5pbnB1dC1ncm91cF9fZGV0YWlsc3tkaXNwbGF5Om5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbTtiYWNrZ3JvdW5kLXNpemU6M3B4IDFweDtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSk6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVse2NvbG9yOmluaGVyaXR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlci1jb2xvcjppbmhlcml0fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1mb2N1c2VkOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXJlcXVpcmVkIGxhYmVsOmFmdGVye2NvbnRlbnQ6XFxcIipcXFwifSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lcnJvciBsYWJlbHstd2Via2l0LWFuaW1hdGlvbjphIC42cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO2FuaW1hdGlvbjphIC42cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lcnJvciAuaW5wdXQtZ3JvdXBfX21lc3NhZ2Vze2NvbG9yOmluaGVyaXR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVycm9yIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9ICAgICBcXG4uaW5wdXQtZ3JvdXAgLnNsaWRlLXktdHJhbnNpdGlvbi1sZWF2ZSwuaW5wdXQtZ3JvdXAgLnNsaWRlLXktdHJhbnNpdGlvbi1sZWF2ZS10b3twb3NpdGlvbjphYnNvbHV0ZX0gICAgIFxcbi5pbnB1dC1ncm91cF9fZGV0YWlsc3tjb2xvcjppbmhlcml0O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7cGFkZGluZy10b3A6NHB4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgMTAwJTtmbGV4OjEgMCAxMDAlO2ZvbnQtc2l6ZToxMnB4O21pbi1oZWlnaHQ6MjZweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX0gICAgIFxcbi5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3I7Y29sb3I6aW5oZXJpdDt0b3A6MDtoZWlnaHQ6MnB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgwKTt0cmFuc2Zvcm06c2NhbGVYKDApOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyIDA7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyIDA7d2lkdGg6MTAwJTt6LWluZGV4OjF9ICAgICBcXG4uaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle3RvcDowO2hlaWdodDoxcHg7d2lkdGg6MTAwJTt6LWluZGV4OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLWhpZGUtZGV0YWlscyAuaW5wdXQtZ3JvdXBfX2RldGFpbHN7bWluLWhlaWdodDoycHg7cGFkZGluZzowfSAgICAgXFxuLmlucHV0LWdyb3VwLS1hc3luYy1sb2FkaW5nIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXAtLWFzeW5jLWxvYWRpbmcgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtkaXNwbGF5Om5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAgLnByb2dyZXNzLWxpbmVhcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7bWFyZ2luOjB9ICAgICBcXG4uaW5wdXQtZ3JvdXBfX2Vycm9yLC5pbnB1dC1ncm91cF9faGludHstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfSAgICAgXFxuLmlucHV0LWdyb3VwX19lcnJvcntjb2xvcjppbmhlcml0fSAgICAgXFxuLmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tYWN0aXZlLC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cuaW5wdXQtZ3JvdXAtLWFjdGl2ZSwuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZC5pbnB1dC1ncm91cC0tYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgbGFiZWwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1hY3RpdmUgLmljb24tLXNlbGVjdGlvbi1jb250cm9sLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dHtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1yYWRpbywudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1yYWRpb3tjb2xvcjppbmhlcml0fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVsLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbHtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmljb24tLXNlbGVjdGlvbi1jb250cm9se2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tYWN0aXZlIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXR7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmljb24tLXJhZGlvLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaWNvbi0tY2hlY2tib3gsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1yYWRpb3tjb2xvcjppbmhlcml0fSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLXRhYi1mb2N1c2VkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YmVmb3JlLC5pbnB1dC1ncm91cC0tdGFiLWZvY3VzZWQgLmlucHV0LWdyb3VwOmZvY3VzIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDEpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxKTtvcGFjaXR5Oi4xNX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzowfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmljb24tLXNlbGVjdGlvbi1jb250cm9se2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pbnB1dC1ncm91cF9faW5wdXR7Y29sb3I6aW5oZXJpdDt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19pbnB1dCAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7aGVpZ2h0OjMwcHg7bWFyZ2luOmF1dG99ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZXJyb3IgLmlucHV0LWdyb3VwX19pbnB1dCAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2wsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWVycm9yIGxhYmVse2NvbG9yOmluaGVyaXR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbHtjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjMycHg7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3otaW5kZXg6MX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSBsYWJlbHtwb2ludGVyLWV2ZW50czphbGx9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxle2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTEycHgsLTUwJSk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RvcDo1MCU7bGVmdDowfSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTpiZWZvcmV7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JhY2tncm91bmQ6Y3VycmVudENvbG9yO2JvcmRlci1yYWRpdXM6NTAlO2xlZnQ6NTAlO3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoLjMpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSguMyk7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcn0gICAgIFxcbi5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmljb24tLXNlbGVjdGlvbi1jb250cm9sLC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZXtsZWZ0OjM4cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse2xlZnQ6NzZweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MzJweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse2xlZnQ6NzZweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb257bGVmdDo3MnB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbi5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbHtsZWZ0OjExMnB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24ucmFkaW8tZ3JvdXAtLXJvdyAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2wsLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24ucmFkaW8tZ3JvdXAtLXJvdyAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxle2xlZnQ6MTRweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uLnJhZGlvLWdyb3VwLS1yb3cgbGFiZWx7bGVmdDo1MnB4fSAgICAgXFxuLnByb2dyZXNzLWxpbmVhcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O21hcmdpbjoxcmVtIDA7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCU7cG9zaXRpb246cmVsYXRpdmV9ICAgICBcXG4ucHJvZ3Jlc3MtbGluZWFyX19iYXJ7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9ICAgICBcXG4ucHJvZ3Jlc3MtbGluZWFyX19iYXIsLnByb2dyZXNzLWxpbmVhcl9fYmFyX19kZXRlcm1pbmF0ZXtoZWlnaHQ6aW5oZXJpdDstd2Via2l0LXRyYW5zaXRpb246LjJzO3RyYW5zaXRpb246LjJzfSAgICAgXFxuLnByb2dyZXNzLWxpbmVhcl9fYmFyX19pbmRldGVybWluYXRlIC5sb25nLC5wcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZSAuc2hvcnR7aGVpZ2h0OmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2JvdHRvbTowO3dpbGwtY2hhbmdlOmxlZnQscmlnaHQ7d2lkdGg6YXV0bztiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXR9ICAgICBcXG4ucHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSAubG9uZ3std2Via2l0LWFuaW1hdGlvbjpkO2FuaW1hdGlvbjpkOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjIuMnM7YW5pbWF0aW9uLWR1cmF0aW9uOjIuMnM7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGV9ICAgICBcXG4ucHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSAuc2hvcnR7LXdlYmtpdC1hbmltYXRpb246ZTthbmltYXRpb246ZTstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoyLjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoyLjJzOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfSAgICAgXFxuLnByb2dyZXNzLWxpbmVhcl9fYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7Ym90dG9tOjA7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBlYXNlLWluO3RyYW5zaXRpb246LjNzIGVhc2UtaW59ICAgICBcXG4ucHJvZ3Jlc3MtbGluZWFyLS1xdWVyeSAucHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSAubG9uZ3std2Via2l0LWFuaW1hdGlvbjpmO2FuaW1hdGlvbjpmOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoyczstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZX0gICAgIFxcbi5wcm9ncmVzcy1saW5lYXItLXF1ZXJ5IC5wcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZS0tYWN0aXZlIC5zaG9ydHstd2Via2l0LWFuaW1hdGlvbjpnO2FuaW1hdGlvbjpnOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoyczstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZX0gICAgIFxcbkAtd2Via2l0LWtleWZyYW1lcyBkezAle2xlZnQ6LTkwJTtyaWdodDoxMDAlfTYwJXtsZWZ0Oi05MCU7cmlnaHQ6MTAwJX10b3tsZWZ0OjEwMCU7cmlnaHQ6LTM1JX19ICAgICBcXG5Aa2V5ZnJhbWVzIGR7MCV7bGVmdDotOTAlO3JpZ2h0OjEwMCV9NjAle2xlZnQ6LTkwJTtyaWdodDoxMDAlfXRve2xlZnQ6MTAwJTtyaWdodDotMzUlfX0gICAgIFxcbkAtd2Via2l0LWtleWZyYW1lcyBlezAle2xlZnQ6LTIwMCU7cmlnaHQ6MTAwJX02MCV7bGVmdDoxMDclO3JpZ2h0Oi04JX10b3tsZWZ0OjEwNyU7cmlnaHQ6LTglfX0gICAgIFxcbkBrZXlmcmFtZXMgZXswJXtsZWZ0Oi0yMDAlO3JpZ2h0OjEwMCV9NjAle2xlZnQ6MTA3JTtyaWdodDotOCV9dG97bGVmdDoxMDclO3JpZ2h0Oi04JX19ICAgICBcXG5ALXdlYmtpdC1rZXlmcmFtZXMgZnswJXtyaWdodDotOTAlO2xlZnQ6MTAwJX02MCV7cmlnaHQ6LTkwJTtsZWZ0OjEwMCV9dG97cmlnaHQ6MTAwJTtsZWZ0Oi0zNSV9fSAgICAgXFxuQGtleWZyYW1lcyBmezAle3JpZ2h0Oi05MCU7bGVmdDoxMDAlfTYwJXtyaWdodDotOTAlO2xlZnQ6MTAwJX10b3tyaWdodDoxMDAlO2xlZnQ6LTM1JX19ICAgICBcXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ3swJXtyaWdodDotMjAwJTtsZWZ0OjEwMCV9NjAle3JpZ2h0OjEwNyU7bGVmdDotOCV9dG97cmlnaHQ6MTA3JTtsZWZ0Oi04JX19ICAgICBcXG5Aa2V5ZnJhbWVzIGd7MCV7cmlnaHQ6LTIwMCU7bGVmdDoxMDAlfTYwJXtyaWdodDoxMDclO2xlZnQ6LTglfXRve3JpZ2h0OjEwNyU7bGVmdDotOCV9fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuY2hpcCwudGhlbWUtLWxpZ2h0IC5jaGlwe2JhY2tncm91bmQ6I2UwZTBlMDtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmNoaXAsLnRoZW1lLS1kYXJrIC5jaGlwe2JhY2tncm91bmQ6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uY2hpcHtib3JkZXItcmFkaXVzOjI4cHg7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtmb250LXNpemU6MTNweDttYXJnaW46NHB4O291dGxpbmU6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5jaGlwLC5jaGlwIC5jaGlwX19jb250ZW50ey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7dmVydGljYWwtYWxpZ246bWlkZGxlfSAgICAgXFxuLmNoaXAgLmNoaXBfX2NvbnRlbnR7Ym9yZGVyLXJhZGl1czoyOHB4O2N1cnNvcjpkZWZhdWx0O2hlaWdodDozMnB4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzowIDEycHg7d2hpdGUtc3BhY2U6bm93cmFwO3otaW5kZXg6MX0gICAgIFxcbi5jaGlwLS1yZW1vdmFibGUgLmNoaXBfX2NvbnRlbnR7cGFkZGluZzowIDRweCAwIDEycHh9ICAgICBcXG4uY2hpcCAuYXZhdGFye2hlaWdodDozMnB4IWltcG9ydGFudDttYXJnaW4tbGVmdDotMTJweDttYXJnaW4tcmlnaHQ6OHB4O21pbi13aWR0aDozMnB4O3dpZHRoOjMycHghaW1wb3J0YW50fSAgICAgXFxuLmNoaXAgLmF2YXRhciBpbWd7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0gICAgIFxcbi5jaGlwLS1hY3RpdmU6bm90KC5jaGlwLS1kaXNhYmxlZCksLmNoaXAtLXNlbGVjdGVkOm5vdCguY2hpcC0tZGlzYWJsZWQpLC5jaGlwOmZvY3VzOm5vdCguY2hpcC0tZGlzYWJsZWQpe2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLC4xMyk7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5jaGlwLS1hY3RpdmU6bm90KC5jaGlwLS1kaXNhYmxlZCk6YWZ0ZXIsLmNoaXAtLXNlbGVjdGVkOm5vdCguY2hpcC0tZGlzYWJsZWQpOmFmdGVyLC5jaGlwOmZvY3VzOm5vdCguY2hpcC0tZGlzYWJsZWQpOmFmdGVye2JhY2tncm91bmQ6Y3VycmVudENvbG9yO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtjb250ZW50OlxcXCJcXFwiO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDstd2Via2l0LXRyYW5zaXRpb246aW5oZXJpdDt0cmFuc2l0aW9uOmluaGVyaXQ7d2lkdGg6MTAwJTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjEzfSAgICAgXFxuLmNoaXAtLWxhYmVsLC5jaGlwLS1sYWJlbCAuY2hpcF9fY29udGVudHtib3JkZXItcmFkaXVzOjJweH0gICAgIFxcbi5jaGlwLmNoaXAuY2hpcC0tb3V0bGluZXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtib3JkZXItY29sb3I6Y3VycmVudENvbG9yO2NvbG9yOiM5ZTllOWV9ICAgICBcXG4uY2hpcC0tc21hbGx7aGVpZ2h0OjI2cHh9ICAgICBcXG4uY2hpcC0tc21hbGwgLmF2YXRhcntoZWlnaHQ6MjZweDttaW4td2lkdGg6MjZweDt3aWR0aDoyNnB4fSAgICAgXFxuLmNoaXAtLXNtYWxsIC5pY29uLC5jaGlwX19jbG9zZXtmb250LXNpemU6MjBweH0gICAgIFxcbi5jaGlwX19jbG9zZXstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjppbmhlcml0O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7bWFyZ2luOjAgMnB4IDAgOHB4O3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0gICAgIFxcbi5jaGlwX19jbG9zZT4uaWNvbntjb2xvcjppbmhlcml0IWltcG9ydGFudDtmb250LXNpemU6MjBweDtvcGFjaXR5Oi41fSAgICAgXFxuLmNoaXBfX2Nsb3NlPi5pY29uOmhvdmVye29wYWNpdHk6MX0gICAgIFxcbi5jaGlwLS1zZWxlY3QtbXVsdGl7bWFyZ2luOjRweCA0cHggNHB4IDB9ICAgICBcXG4uY2hpcCAuaWNvbntjb2xvcjppbmhlcml0fSAgICAgXFxuLmNoaXAgLmljb24tLXJpZ2h0e21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi04cHh9ICAgICBcXG4uY2hpcCAuaWNvbi0tbGVmdHttYXJnaW4tbGVmdDotOHB4O21hcmdpbi1yaWdodDoxMnB4fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9ucywudGhlbWUtLWxpZ2h0IC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25ze2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC50aGVtZS0tbGlnaHQgLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tbGlnaHQgLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2NvbG9yOnJnYmEoMCwwLDAsLjU0KSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnMsLnRoZW1lLS1kYXJrIC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25ze2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwudGhlbWUtLWRhcmsgLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tZGFyayAuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWF7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpIWltcG9ydGFudH0gICAgIFxcbi5kYXRhLWl0ZXJhdG9yX19hY3Rpb25ze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxMnB4Oy1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9ICAgICBcXG4uZGF0YS1pdGVyYXRvcl9fYWN0aW9ucyAuYnRue2NvbG9yOmluaGVyaXR9ICAgICBcXG4uZGF0YS1pdGVyYXRvcl9fYWN0aW9ucyAuYnRuOmxhc3Qtb2YtdHlwZXttYXJnaW4tbGVmdDoxNHB4fSAgICAgXFxuLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3JhbmdlLWNvbnRyb2xze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDo0OHB4fSAgICAgXFxuLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3BhZ2luYXRpb257ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MCAzMnB4IDAgMjRweH0gICAgIFxcbi5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3R7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1yaWdodDoxNHB4fSAgICAgXFxuLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdHttYXJnaW46MTNweCAwIDEzcHggMzRweDtwYWRkaW5nOjA7cG9zaXRpb246c3RhdGljfSAgICAgXFxuLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2ZvbnQtc2l6ZToxMnB4fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXR7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjpwbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fY291bnRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgLmlucHV0LWdyb3VwX19jb3VudGVye2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggLmlucHV0LWdyb3VwX19pbnB1dHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4xKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6OnBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6OnBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fY291bnRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2NvdW50ZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGxhYmVse3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxOHB4O2xlZnQ6MH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dHtwYWRkaW5nLWJvdHRvbToxcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjppbmhlcml0Oy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aW5oZXJpdDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6OnBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6aW5oZXJpdDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dHstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmU7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjE7ZmxleDoxO2hlaWdodDozMHB4O21hcmdpbjowO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDpmb2N1c3tvdXRsaW5lOm5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6ZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxO2ZsZXg6MSAxfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgbGFiZWx7dG9wOjEzcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhIC5pbnB1dC1ncm91cF9faW5wdXR7Ym9yZGVyLXJhZGl1czoycHg7LXdlYmtpdC10cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgdGV4dGFyZWF7Zm9udC1zaXplOjE2cHg7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIGxhYmVse3RvcDozMHB4O2xlZnQ6MTVweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWE6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkgLmlucHV0LWdyb3VwX19pbnB1dHtwYWRkaW5nOjMwcHggMCAwIDEzcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7b3BhY2l0eTowfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIC5pbnB1dC1ncm91cF9fY291bnRlcnttYXJnaW4tbGVmdDphdXRvO3doaXRlLXNwYWNlOm5vd3JhcH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCAuaW5wdXQtZ3JvdXBfX2NvdW50ZXItLWVycm9ye2NvbG9yOmluaGVyaXR9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVye29wYWNpdHk6MH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLWRpcnR5IGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDo6cGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgdGV4dGFyZWE6OnBsYWNlaG9sZGVye29wYWNpdHk6MH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tbm8tcmVzaXplIHRleHRhcmVhe3Jlc2l6ZTpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb257LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bWluLXdpZHRoOjQwcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiAuaW5wdXQtZ3JvdXBfX2RldGFpbHN7bWFyZ2luLWxlZnQ6YXV0bzttYXgtd2lkdGg6Y2FsYygxMDAlIC0gNDBweCl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiBsYWJlbHtsZWZ0OjQwcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyIGxhYmVse29wYWNpdHk6MX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLWZvY3VzZWQ6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpIGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyOm5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKSBsYWJlbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xOHB4KSBzY2FsZSguNzUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xOHB4KSBzY2FsZSguNzUpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tZm9jdXNlZDpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKS5pbnB1dC1ncm91cC0tdGV4dGFyZWEgbGFiZWwsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXI6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkuaW5wdXQtZ3JvdXAtLXRleHRhcmVhIGxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCkgc2NhbGUoLjc1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtOHB4KSBzY2FsZSguNzUpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tZm9jdXNlZC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggbGFiZWwsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IGxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKC43NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKC43NSl9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpcnR5LmlucHV0LWdyb3VwLS1zZWxlY3QgbGFiZWwsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXJ0eTpub3QoLmlucHV0LWdyb3VwLS10ZXh0YXJlYSkgbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMThweCkgc2NhbGUoLjc1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMThweCkgc2NhbGUoLjc1KX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlydHk6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkuaW5wdXQtZ3JvdXAtLXRleHRhcmVhIGxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCkgc2NhbGUoLjc1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtOHB4KSBzY2FsZSguNzUpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1tdWx0aS1saW5lIHRleHRhcmVhe3BhZGRpbmctdG9wOjRweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aHtwYWRkaW5nOjE2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGggbGFiZWx7bWFyZ2luLWxlZnQ6MTZweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7ZGlzcGxheTpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLS1wcmVmaXg6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIGxhYmVse2xlZnQ6MTZweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tcHJlZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fcHJlZml4LC5pbnB1dC1ncm91cC0tcHJlZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4LC5pbnB1dC1ncm91cC0tc3VmZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fcHJlZml4LC5pbnB1dC1ncm91cC0tc3VmZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4ey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjE2cHg7bWFyZ2luLXRvcDoxcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXByZWZpeCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeCwuaW5wdXQtZ3JvdXAtLXN1ZmZpeCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeHttYXJnaW4tcmlnaHQ6M3B4fSAgICAgXFxuLmlucHV0LWdyb3VwLS1wcmVmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXgsLmlucHV0LWdyb3VwLS1zdWZmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXh7bWFyZ2luLWxlZnQ6M3B4fSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCBpbnB1dCwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IHRleHRhcmVhe2N1cnNvcjpwb2ludGVyfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCBsYWJlbHtsZWZ0OjE2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXR7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy1tcy1mbGV4LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZDtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwO2N1cnNvcjpwb2ludGVyO21pbi1oZWlnaHQ6NTZweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9fZGV0YWlsc3twYWRkaW5nOjhweCAxNnB4IDA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2hlaWdodDoycHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveC5pbnB1dC1ncm91cC0tbXVsdGktbGluZSB0ZXh0YXJlYXtwYWRkaW5nLWxlZnQ6MjRweDtwYWRkaW5nLXJpZ2h0OjI0cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKS5pbnB1dC1ncm91cC0tbXVsdGktbGluZSAuaW5wdXQtZ3JvdXBfX2lucHV0e3BhZGRpbmctdG9wOjI2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKS5pbnB1dC1ncm91cC0tbXVsdGktbGluZSBsYWJlbHt0b3A6MjZweH0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3g6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpOm5vdCguaW5wdXQtZ3JvdXAtLW11bHRpLWxpbmUpIC5pbnB1dC1ncm91cF9faW5wdXR7cGFkZGluZy1sZWZ0OjE2cHg7cGFkZGluZy1yaWdodDoxNnB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveDpub3QoLmlucHV0LWdyb3VwLS10ZXh0YXJlYSk6bm90KC5pbnB1dC1ncm91cC0tbXVsdGktbGluZSkgbGFiZWx7dG9wOjMycHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKTpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLWRpcnR5IGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3g6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tZm9jdXNlZCBsYWJlbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KSBzY2FsZSguNzUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KSBzY2FsZSguNzUpfSAgICAgXFxuLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94LmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXttYXJnaW4tbGVmdDo1NnB4O21heC13aWR0aDpjYWxjKDEwMCUgLSA1NnB4KX0gICAgIFxcbi5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3guaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiBsYWJlbHtsZWZ0OjU2cHh9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdy5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLW92ZXJmbG93LmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1zZWdtZW50ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVye2JhY2tncm91bmQ6IzQyNDI0Mn0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGV7ZGlzcGxheTpibG9jaztoZWlnaHQ6MH0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGUtLWluZGV4e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbnstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24uaW5wdXQtZ3JvdXBfX2ljb24tY2xlYXJhYmxley13ZWJraXQtdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGUsLmlucHV0LWdyb3VwLS1zZWxlY3Q6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGV7cGFkZGluZy1ib3R0b206MXB4O2hlaWdodDozMHB4fSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZXtkaXNwbGF5OmlubGluZS1ibG9jaztvcGFjaXR5OjF9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZm9jdXNlZC5pbnB1dC1ncm91cC0tc2VsZWN0LS1zZWxlY3RpbmctaW5kZXggLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZXtvcGFjaXR5OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZm9jdXNlZC5pbnB1dC1ncm91cC0tb3BlbiAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uOm5vdCguaW5wdXQtZ3JvdXBfX2ljb24tY2xlYXJhYmxlKXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9faW5wdXR7Y3Vyc29yOnBvaW50ZXJ9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc3std2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6M3B4IDRweCAzcHggMH0gICAgIFxcbi5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEtLWFjdGl2ZXtjb2xvcjppbmhlcml0fSAgICAgXFxuLmlucHV0LWdyb3VwLS1zZWxlY3QgLm1lbnV7ZGlzcGxheTppbmxpbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdCAuZmFkZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tYXV0b2NvbXBsZXRlLmlucHV0LWdyb3VwLS1zZWFyY2gtZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC0tYXV0b2NvbXBsZXRlIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc3tjdXJzb3I6dGV4dH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tY2hpcHMgLmlucHV0LWdyb3VwX19pbnB1dHtwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93LC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29ue3BhZGRpbmc6MH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgaW5wdXQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgaW5wdXR7aGVpZ2h0OjQ4cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIGlucHV0e3RvcDowO2xlZnQ6MDtwYWRkaW5nLWxlZnQ6MTZweH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc3t3aWR0aDpjYWxjKDEwMCUgLSA1NXB4KX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zIC5idG4sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMgLmJ0biwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMgLmJ0bntib3JkZXItcmFkaXVzOjA7bWFyZ2luOjA7aGVpZ2h0OjQ4cHg7d2lkdGg6MTAwJX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zIC5idG4gLmJ0bl9fY29udGVudCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucyAuYnRuIC5idG5fX2NvbnRlbnQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zIC5idG4gLmJ0bl9fY29udGVudHstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OnN0YXJ0fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2lucHV0LC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19pbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0ey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0ey13ZWJraXQtYm94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgbGFiZWwsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyBsYWJlbCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCBsYWJlbHtsZWZ0OjE2cHghaW1wb3J0YW50O3RvcDo5cHghaW1wb3J0YW50fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVye2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dHtwYWRkaW5nOjB9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmV7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MXB4O3RvcDowOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29ue3dpZHRoOjU1cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXI6YWZ0ZXIsLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDphZnRlciwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWZvY3VzZWQuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xMik7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo1NXB4O2hlaWdodDo0OHB4O3RvcDowO3dpZHRoOjFweH0gICAgIFxcbi5tZW51X19jb250ZW50LS1zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZXtkaXNwbGF5Om5vbmV9ICAgICBcXG4ubWVudV9fY29udGVudC0tYXV0b2NvbXBsZXRlLC5tZW51X19jb250ZW50LS1hdXRvY29tcGxldGU+LmNhcmR7Ym9yZGVyLXJhZGl1czowfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGl2aWRlciwudGhlbWUtLWxpZ2h0IC5kaXZpZGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kaXZpZGVyLC50aGVtZS0tZGFyayAuZGl2aWRlcntiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC4xMil9ICAgICBcXG4uZGl2aWRlcntib3JkZXI6bm9uZTtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcHg7bWluLWhlaWdodDoxcHg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjE7ZmxleDoxO3dpZHRoOjEwMCV9ICAgICBcXG4uZGl2aWRlci0taW5zZXR7bWFyZ2luLWxlZnQ6NzJweDt3aWR0aDpjYWxjKDEwMCUgLSA3MnB4KX0gICAgIFxcbi5tZW51e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0gICAgIFxcbi5tZW51LS1kaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdH0gICAgIFxcbi5tZW51LS1kaXNhYmxlZCAubWVudV9fYWN0aXZhdG9yLC5tZW51LS1kaXNhYmxlZCAubWVudV9fYWN0aXZhdG9yPip7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5tZW51X19hY3RpdmF0b3J7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OmluaGVyaXQ7cG9zaXRpb246cmVsYXRpdmV9ICAgICBcXG4ubWVudV9fYWN0aXZhdG9yIGlucHV0W3JlYWRvbmx5XXtjdXJzb3I6cG9pbnRlcn0gICAgIFxcbi5tZW51X19jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci1yYWRpdXM6MnB4O21heC13aWR0aDo4MCU7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2NvbnRhaW46Y29udGVudDt3aWxsLWNoYW5nZTp0cmFuc2Zvcm07LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLm1lbnVfX2NvbnRlbnQtLWFjdGl2ZXtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLm1lbnVfX2NvbnRlbnQtLWRyb3Bkb3due2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5tZW51X19jb250ZW50Pi5jYXJke2NvbnRhaW46Y29udGVudDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufSAgICAgXFxuLm1lbnU+Lm1lbnVfX2NvbnRlbnR7bWF4LXdpZHRoOm5vbmV9ICAgICBcXG4ubWVudS10cmFuc2l0aW9uLWVudGVyIC5saXN0X190aWxle21pbi13aWR0aDowOy13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouNHM7dHJhbnNpdGlvbi1kZWxheTouNHM7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xNXB4KTtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLm1lbnUtdHJhbnNpdGlvbi1lbnRlci10byAubGlzdF9fdGlsZXtwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MX0gICAgIFxcbi5tZW51LXRyYW5zaXRpb24tZW50ZXItdG8gLmxpc3RfX3RpbGUtLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnR9ICAgICBcXG4ubWVudS10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KX0gICAgIFxcbi5tZW51LXRyYW5zaXRpb24tbGVhdmUtYWN0aXZlLC5tZW51LXRyYW5zaXRpb24tbGVhdmUtdG97cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5tZW51LXRyYW5zaXRpb24tZW50ZXIsLm1lbnUtdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjB9ICAgICBcXG4ubWVudS10cmFuc2l0aW9uLWVudGVyLXRvLC5tZW51LXRyYW5zaXRpb24tbGVhdmV7b3BhY2l0eToxfSAgICAgXFxuLm1lbnUtdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsLm1lbnUtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOmFsbCAuNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5tZW51LXRyYW5zaXRpb24tZW50ZXIubWVudV9fY29udGVudC0tYXV0byAubGlzdF9fdGlsZS0tYWN0aXZle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6YXV0b30gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN1YmhlYWRlciwudGhlbWUtLWxpZ2h0IC5zdWJoZWFkZXJ7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdWJoZWFkZXIsLnRoZW1lLS1kYXJrIC5zdWJoZWFkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLnN1YmhlYWRlcntoZWlnaHQ6NDhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgMTZweH0gICAgIFxcbi5zdWJoZWFkZXItLWluc2V0e21hcmdpbi1sZWZ0OjU2cHh9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5saXN0LC50aGVtZS0tbGlnaHQgLmxpc3R7YmFja2dyb3VuZDojZmZmO2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX3RpbGVfX3N1Yi10aXRsZSwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X190aWxlX19zdWItdGl0bGV7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQubGlzdCAubGlzdF9fdGlsZV9fbWFzaywudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X190aWxlX19tYXNre2NvbG9yOnJnYmEoMCwwLDAsLjM4KTtiYWNrZ3JvdW5kOiNlZWV9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5saXN0IC5saXN0X19ncm91cC0tYWN0aXZlOmFmdGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwX19oZWFkZXI6aG92ZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQubGlzdCAubGlzdF9fdGlsZS0taGlnaGxpZ2h0ZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQubGlzdCAubGlzdF9fdGlsZS0tbGluazpob3ZlciwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X19ncm91cC0tYWN0aXZlOmFmdGVyLC50aGVtZS0tbGlnaHQgLmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmxpc3QgLmxpc3RfX2dyb3VwX19oZWFkZXI6aG92ZXIsLnRoZW1lLS1saWdodCAubGlzdCAubGlzdF9fdGlsZS0taGlnaGxpZ2h0ZWQsLnRoZW1lLS1saWdodCAubGlzdCAubGlzdF9fdGlsZS0tbGluazpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uIC5pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fdGlsZSwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbiAuaWNvbiwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX3RpbGV7Y29sb3I6cmdiYSgwLDAsMCwuMzgpIWltcG9ydGFudH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCwudGhlbWUtLWRhcmsgLmxpc3R7YmFja2dyb3VuZDojNDI0MjQyO2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX3RpbGVfX3N1Yi10aXRsZSwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX3RpbGVfX3N1Yi10aXRsZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX3RpbGVfX21hc2ssLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X190aWxlX19tYXNre2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5saXN0IC5saXN0X19ncm91cC0tYWN0aXZlOmFmdGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fZ3JvdXAtLWFjdGl2ZTpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5saXN0IC5saXN0X19ncm91cF9faGVhZGVyOmhvdmVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fdGlsZS0taGlnaGxpZ2h0ZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5saXN0IC5saXN0X190aWxlLS1saW5rOmhvdmVyLC50aGVtZS0tZGFyayAubGlzdCAubGlzdF9fZ3JvdXAtLWFjdGl2ZTphZnRlciwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YmVmb3JlLC50aGVtZS0tZGFyayAubGlzdCAubGlzdF9fZ3JvdXBfX2hlYWRlcjpob3ZlciwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX3RpbGUtLWhpZ2hsaWdodGVkLC50aGVtZS0tZGFyayAubGlzdCAubGlzdF9fdGlsZS0tbGluazpob3ZlcntiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4xMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uIC5pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fZ3JvdXAtLWRpc2FibGVkIC5saXN0X190aWxlLC50aGVtZS0tZGFyayAubGlzdCAubGlzdF9fZ3JvdXAtLWRpc2FibGVkIC5saXN0X19ncm91cF9faGVhZGVyX19wcmVwZW5kLWljb24gLmljb24sLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX3RpbGV7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpIWltcG9ydGFudH0gICAgIFxcbi5saXN0e2xpc3Qtc3R5bGUtdHlwZTpub25lO3BhZGRpbmc6OHB4IDA7LXdlYmtpdC10cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7dHJhbnNpdGlvbjpoZWlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfSAgICAgXFxuLmxpc3QgLmlucHV0LWdyb3Vwe21hcmdpbjowfSAgICAgXFxuLmxpc3RfX3RpbGV7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6aW5oZXJpdDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDtoZWlnaHQ6NDhweDttYXJnaW46MDtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWRlY29yYXRpb246bm9uZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9ICAgICBcXG4ubGlzdF9fdGlsZS0tbGlua3tjdXJzb3I6cG9pbnRlcn0gICAgIFxcbi5saXN0X190aWxlX19hY3Rpb24sLmxpc3RfX3RpbGVfX2NvbnRlbnR7aGVpZ2h0OjEwMCV9ICAgICBcXG4ubGlzdF9fdGlsZV9fc3ViLXRpdGxlLC5saXN0X190aWxlX190aXRsZXt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0gICAgIFxcbi5saXN0X190aWxlX190aXRsZXtoZWlnaHQ6MjRweDtsaW5lLWhlaWdodDoyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdH0gICAgIFxcbi5saXN0X190aWxlX19zdWItdGl0bGV7Zm9udC1zaXplOjE0cHh9ICAgICBcXG4ubGlzdF9fdGlsZV9fYWN0aW9uLC5saXN0X190aWxlX19hdmF0YXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bWluLXdpZHRoOjU2cHh9ICAgICBcXG4ubGlzdF9fdGlsZV9fYWN0aW9uLC5saXN0X190aWxlX19hY3Rpb24gLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHN7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9ICAgICBcXG4ubGlzdF9fdGlsZV9fYWN0aW9uIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzey13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDE7ZmxleDowIDE7cGFkZGluZzowfSAgICAgXFxuLmxpc3RfX3RpbGVfX2FjdGlvbiAuaW5wdXQtZ3JvdXBfX2RldGFpbHN7ZGlzcGxheTpub25lfSAgICAgXFxuLmxpc3RfX3RpbGVfX2FjdGlvbiAuYnRue3BhZGRpbmc6MDttYXJnaW46MH0gICAgIFxcbi5saXN0X190aWxlX19hY3Rpb24gLmJ0bi0taWNvbnttYXJnaW46LThweH0gICAgIFxcbi5saXN0X190aWxlX19hY3Rpb24tdGV4dHtjb2xvcjojOWU5ZTllO2ZvbnQtc2l6ZToxMnB4fSAgICAgXFxuLmxpc3RfX3RpbGVfX2FjdGlvbi0tc3RhY2t7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy1tcy1mbGV4LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmctdG9wOjhweDtwYWRkaW5nLWJvdHRvbTo4cHg7d2hpdGUtc3BhY2U6bm93cmFwOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufSAgICAgXFxuLmxpc3RfX3RpbGVfX2FjdGlvbi0tc3RhY2ssLmxpc3RfX3RpbGVfX2NvbnRlbnR7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWx9ICAgICBcXG4ubGlzdF9fdGlsZV9fY29udGVudHt0ZXh0LWFsaWduOmxlZnQ7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufSAgICAgXFxuLmxpc3RfX3RpbGVfX2NvbnRlbnR+Lmxpc3RfX3RpbGVfX2FjdGlvbjpub3QoLmxpc3RfX3RpbGVfX2FjdGlvbi0tc3RhY2spLC5saXN0X190aWxlX19jb250ZW50fi5saXN0X190aWxlX19hdmF0YXJ7LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfSAgICAgXFxuLmxpc3RfX3RpbGUtLWFjdGl2ZSAubGlzdF9fdGlsZV9fYWN0aW9uOmZpcnN0LW9mLXR5cGUgLmljb257Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5saXN0X190aWxlLS1kaXNhYmxlZHtvcGFjaXR5Oi40IWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudH0gICAgIFxcbi5saXN0X190aWxlLS1hdmF0YXJ7aGVpZ2h0OjU2cHh9ICAgICBcXG4ubGlzdC0tZGVuc2V7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjRweH0gICAgIFxcbi5saXN0LS1kZW5zZSAuc3ViaGVhZGVye2ZvbnQtc2l6ZToxM3B4O2hlaWdodDo0MHB4fSAgICAgXFxuLmxpc3QtLWRlbnNlIC5saXN0X19ncm91cCAuc3ViaGVhZGVye2hlaWdodDo0MHB4fSAgICAgXFxuLmxpc3QtLWRlbnNlIC5saXN0X190aWxle2ZvbnQtc2l6ZToxM3B4fSAgICAgXFxuLmxpc3QtLWRlbnNlIC5saXN0X190aWxlLS1hdmF0YXJ7aGVpZ2h0OjQ4cHh9ICAgICBcXG4ubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGU6bm90KC5saXN0X190aWxlLS1hdmF0YXIpe2hlaWdodDo0MHB4fSAgICAgXFxuLmxpc3QtLWRlbnNlIC5saXN0X190aWxlIC5pY29ue2ZvbnQtc2l6ZToyMnB4fSAgICAgXFxuLmxpc3QtLWRlbnNlIC5saXN0X190aWxlX19zdWItdGl0bGV7Zm9udC1zaXplOjEzcHh9ICAgICBcXG4ubGlzdC0tdHdvLWxpbmUgLmxpc3RfX3RpbGV7aGVpZ2h0OjcycHh9ICAgICBcXG4ubGlzdC0tdHdvLWxpbmUubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGV7aGVpZ2h0OjYwcHh9ICAgICBcXG4ubGlzdC0tdGhyZWUtbGluZSAubGlzdF9fdGlsZXtoZWlnaHQ6ODhweH0gICAgIFxcbi5saXN0LS10aHJlZS1saW5lIC5saXN0X190aWxlX19hdmF0YXJ7bWFyZ2luLXRvcDotMThweH0gICAgIFxcbi5saXN0LS10aHJlZS1saW5lIC5saXN0X190aWxlX19zdWItdGl0bGV7d2hpdGUtc3BhY2U6bm9ybWFsOy13ZWJraXQtbGluZS1jbGFtcDoyOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94fSAgICAgXFxuLmxpc3QtLXRocmVlLWxpbmUubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGV7aGVpZ2h0Ojc2cHh9ICAgICBcXG4ubGlzdD4ubGlzdF9fZ3JvdXA6YmVmb3Jle3RvcDowfSAgICAgXFxuLmxpc3Q+Lmxpc3RfX2dyb3VwOmJlZm9yZSAubGlzdF9fdGlsZV9fYXZhdGFye21hcmdpbi10b3A6LTE0cHh9ICAgICBcXG4ubGlzdF9fZ3JvdXB7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNpdGlvbjppbmhlcml0O3RyYW5zaXRpb246aW5oZXJpdH0gICAgIFxcbi5saXN0X19ncm91cDphZnRlciwubGlzdF9fZ3JvdXA6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXCI7aGVpZ2h0OjFweDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoxMDAlfSAgICAgXFxuLmxpc3RfX2dyb3VwLS1hY3RpdmV+Lmxpc3RfX2dyb3VwOmJlZm9yZXtkaXNwbGF5Om5vbmV9ICAgICBcXG4ubGlzdF9fZ3JvdXBfX2hlYWRlcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2xpc3Qtc3R5bGUtdHlwZTpub25lfSAgICAgXFxuLmxpc3RfX2dyb3VwX19oZWFkZXI+ZGl2Om5vdCgubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uKTpub3QoLmxpc3RfX2dyb3VwX19oZWFkZXJfX2FwcGVuZC1pY29uKXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30gICAgIFxcbi5saXN0X19ncm91cF9faGVhZGVyIC5saXN0X19ncm91cF9faGVhZGVyX19hcHBlbmQtaWNvbiwubGlzdF9fZ3JvdXBfX2hlYWRlciAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29ue3BhZGRpbmc6MCAxNnB4Oy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0gICAgIFxcbi5saXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXB7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0gICAgIFxcbi5saXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXAgZGl2IC5saXN0X190aWxle3BhZGRpbmctbGVmdDowfSAgICAgXFxuLmxpc3RfX2dyb3VwX19oZWFkZXItLXN1Yi1ncm91cCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29ue3BhZGRpbmc6MCAwIDAgNDBweDttYXJnaW4tcmlnaHQ6OHB4fSAgICAgXFxuLmxpc3RfX2dyb3VwX19oZWFkZXIgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDttaW4td2lkdGg6NTZweH0gICAgIFxcbi5saXN0X19ncm91cF9faGVhZGVyLS1hY3RpdmUgLmxpc3RfX2dyb3VwX19oZWFkZXJfX2FwcGVuZC1pY29uIC5pY29uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfSAgICAgXFxuLmxpc3RfX2dyb3VwX19oZWFkZXItLWFjdGl2ZSAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uIC5pY29ue2NvbG9yOmluaGVyaXR9ICAgICBcXG4ubGlzdF9fZ3JvdXBfX2hlYWRlci0tYWN0aXZlLmxpc3RfX2dyb3VwX19oZWFkZXItLXN1Yi1ncm91cCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uIC5pY29uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfSAgICAgXFxuLmxpc3RfX2dyb3VwX19pdGVtc3twb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjA7LXdlYmtpdC10cmFuc2l0aW9uOmluaGVyaXQ7dHJhbnNpdGlvbjppbmhlcml0fSAgICAgXFxuLmxpc3RfX2dyb3VwX19pdGVtcz5kaXZ7ZGlzcGxheTpibG9ja30gICAgIFxcbi5saXN0X19ncm91cF9faXRlbXMtLW5vLWFjdGlvbiAubGlzdF9fdGlsZXtwYWRkaW5nLWxlZnQ6NzJweH0gICAgIFxcbi5saXN0X19ncm91cC0tZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0gICAgIFxcbi5saXN0LS1zdWJoZWFkZXJ7cGFkZGluZy10b3A6MH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRhYmxlLC50aGVtZS0tbGlnaHQgLnRhYmxle2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCwudGhlbWUtLWxpZ2h0IC50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0aGVhZCB0aCwudGhlbWUtLWxpZ2h0IC50YWJsZSB0aGVhZCB0aHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0Ym9keSB0cjpub3QoOmxhc3QtY2hpbGQpLC50aGVtZS0tbGlnaHQgLnRhYmxlIHRib2R5IHRyOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFibGUgdGJvZHkgdHJbYWN0aXZlXSwudGhlbWUtLWxpZ2h0IC50YWJsZSB0Ym9keSB0clthY3RpdmVde2JhY2tncm91bmQ6I2Y1ZjVmNX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRhYmxlIHRib2R5IHRyOmhvdmVyOm5vdCguZGF0YXRhYmxlX19leHBhbmQtcm93KSwudGhlbWUtLWxpZ2h0IC50YWJsZSB0Ym9keSB0cjpob3Zlcjpub3QoLmRhdGF0YWJsZV9fZXhwYW5kLXJvdyl7YmFja2dyb3VuZDojZWVlfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFibGUgdGZvb3QgdHIsLnRoZW1lLS1saWdodCAudGFibGUgdGZvb3QgdHJ7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSwudGhlbWUtLWRhcmsgLnRhYmxle2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mjtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCwudGhlbWUtLWRhcmsgLnRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxke2JvcmRlci1ib3R0b206MXB4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4xMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYmxlIHRoZWFkIHRoLC50aGVtZS0tZGFyayAudGFibGUgdGhlYWQgdGh7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSB0Ym9keSB0cjpub3QoOmxhc3QtY2hpbGQpLC50aGVtZS0tZGFyayAudGFibGUgdGJvZHkgdHI6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItYm90dG9tOjFweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSB0Ym9keSB0clthY3RpdmVdLC50aGVtZS0tZGFyayAudGFibGUgdGJvZHkgdHJbYWN0aXZlXXtiYWNrZ3JvdW5kOiM1MDUwNTB9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYmxlIHRib2R5IHRyOmhvdmVyOm5vdCguZGF0YXRhYmxlX19leHBhbmQtcm93KSwudGhlbWUtLWRhcmsgLnRhYmxlIHRib2R5IHRyOmhvdmVyOm5vdCguZGF0YXRhYmxlX19leHBhbmQtcm93KXtiYWNrZ3JvdW5kOiM2MTYxNjF9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYmxlIHRmb290IHRyLC50aGVtZS0tZGFyayAudGFibGUgdGZvb3QgdHJ7Ym9yZGVyLXRvcDoxcHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjEyKX0gICAgIFxcbi50YWJsZV9fb3ZlcmZsb3d7d2lkdGg6MTAwJTtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW59ICAgICBcXG50YWJsZS50YWJsZXtib3JkZXItcmFkaXVzOjJweDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7Ym9yZGVyLXNwYWNpbmc6MDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfSAgICAgXFxudGFibGUudGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGJvZHkgdGQ6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGJvZHkgdGg6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGJvZHkgdGg6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGhlYWQgdGQ6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGhlYWQgdGQ6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGhlYWQgdGg6bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZzowIDI0cHh9ICAgICBcXG50YWJsZS50YWJsZSB0aGVhZCB0cntoZWlnaHQ6NTZweH0gICAgIFxcbnRhYmxlLnRhYmxlIHRoZWFkIHRoe2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTJweDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxudGFibGUudGFibGUgdGhlYWQgdGguc29ydGFibGV7cG9pbnRlci1ldmVudHM6YXV0b30gICAgIFxcbnRhYmxlLnRhYmxlIHRoZWFkIHRoPmRpdnt3aWR0aDoxMDAlfSAgICAgXFxudGFibGUudGFibGUgdGJvZHkgdHJ7LXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmR9ICAgICBcXG50YWJsZS50YWJsZSB0Ym9keSB0ZCx0YWJsZS50YWJsZSB0Ym9keSB0aHtoZWlnaHQ6NDhweH0gICAgIFxcbnRhYmxlLnRhYmxlIHRib2R5IHRke2ZvbnQtd2VpZ2h0OjQwMDtmb250LXNpemU6MTNweH0gICAgIFxcbnRhYmxlLnRhYmxlIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xze3BhZGRpbmc6MH0gICAgIFxcbnRhYmxlLnRhYmxlIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pbnB1dC1ncm91cF9fZGV0YWlsc3tkaXNwbGF5Om5vbmV9ICAgICBcXG50YWJsZS50YWJsZSAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5jaGVja2JveCAuaWNvbntsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfSAgICAgXFxudGFibGUudGFibGUgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuY2hlY2tib3ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZXtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9ICAgICBcXG50YWJsZS50YWJsZSB0Zm9vdCB0cntoZWlnaHQ6NDhweH0gICAgIFxcbnRhYmxlLnRhYmxlIHRmb290IHRyIHRke3BhZGRpbmc6MCAyNHB4fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZSBpLC50aGVtZS0tbGlnaHQgLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUgaXtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSBpLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGU6aG92ZXIsLnRoZW1lLS1saWdodCAuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUsLnRoZW1lLS1saWdodCAuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUgaSwudGhlbWUtLWxpZ2h0IC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlOmhvdmVye2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zLC50aGVtZS0tbGlnaHQgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25ze2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC41NCk7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0YXRhYmxlIC5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwudGhlbWUtLWxpZ2h0IC5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLnRoZW1lLS1saWdodCAuZGF0YXRhYmxlIC5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2NvbG9yOnJnYmEoMCwwLDAsLjU0KSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUgaSwudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUgaXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUgaSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGU6aG92ZXIsLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSwudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlIGksLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlOmhvdmVye2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zLC50aGVtZS0tZGFyayAuZGF0YXRhYmxlIC5kYXRhdGFibGVfX2FjdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojNDI0MjQyO2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KTtib3JkZXItdG9wOjFweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWF7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpIWltcG9ydGFudH0gICAgIFxcbi5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxle2N1cnNvcjpwb2ludGVyfSAgICAgXFxuLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUgaXtmb250LXNpemU6MTZweDt2ZXJ0aWNhbC1hbGlnbjpzdWI7ZGlzcGxheTppbmxpbmUtYmxvY2s7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGU6aG92ZXIgaXtvcGFjaXR5Oi42fSAgICAgXFxuLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9ICAgICBcXG4uZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUgaXtvcGFjaXR5OjF9ICAgICBcXG4uZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUuZGVzYyBpey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfSAgICAgXFxuLmRhdGF0YWJsZV9fYWN0aW9uc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6ZW5kOy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LXNpemU6MTJweDstbXMtZmxleC13cmFwOndyYXAtcmV2ZXJzZTtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlfSAgICAgXFxuLmRhdGF0YWJsZV9fYWN0aW9ucyAuYnRue2NvbG9yOmluaGVyaXR9ICAgICBcXG4uZGF0YXRhYmxlX19hY3Rpb25zIC5idG46bGFzdC1vZi10eXBle21hcmdpbi1sZWZ0OjE0cHh9ICAgICBcXG4uZGF0YXRhYmxlX19hY3Rpb25zX19yYW5nZS1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6NDhweH0gICAgIFxcbi5kYXRhdGFibGVfX2FjdGlvbnNfX3BhZ2luYXRpb257ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MCAzMnB4IDAgMjRweH0gICAgIFxcbi5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLXJpZ2h0OjE0cHh9ICAgICBcXG4uZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3R7bWFyZ2luOjEzcHggMCAxM3B4IDM0cHg7cGFkZGluZzowO3Bvc2l0aW9uOnN0YXRpY30gICAgIFxcbi5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2ZvbnQtc2l6ZToxMnB4fSAgICAgXFxuLmRhdGF0YWJsZV9fcHJvZ3Jlc3MsLmRhdGF0YWJsZV9fcHJvZ3Jlc3MgdGQsLmRhdGF0YWJsZV9fcHJvZ3Jlc3MgdGgsLmRhdGF0YWJsZV9fcHJvZ3Jlc3MgdHJ7aGVpZ2h0OmF1dG8haW1wb3J0YW50fSAgICAgXFxuLmRhdGF0YWJsZV9fcHJvZ3Jlc3MgdGh7cGFkZGluZzowIWltcG9ydGFudH0gICAgIFxcbi5kYXRhdGFibGVfX3Byb2dyZXNzIHRoIC5wcm9ncmVzcy1saW5lYXJ7dG9wOi0ycHg7bWFyZ2luOjAgMCAtMnB4fSAgICAgXFxuLmRhdGF0YWJsZV9fZXhwYW5kLXJvd3tib3JkZXI6bm9uZSFpbXBvcnRhbnR9ICAgICBcXG4uZGF0YXRhYmxlX19leHBhbmQtY29se3BhZGRpbmc6MCFpbXBvcnRhbnQ7aGVpZ2h0OjAhaW1wb3J0YW50fSAgICAgXFxuLmRhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWR7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmRhdGF0YWJsZV9fZXhwYW5kLWNvbnRlbnR7LXdlYmtpdC10cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOmhlaWdodCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0gICAgIFxcbi5kYXRhdGFibGVfX2V4cGFuZC1jb250ZW50Pi5jYXJke2JvcmRlci1yYWRpdXM6MDstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc21hbGwtZGlhbG9nX19jb250ZW50LC50aGVtZS0tbGlnaHQgLnNtYWxsLWRpYWxvZ19fYWN0aW9ucywudGhlbWUtLWxpZ2h0IC5zbWFsbC1kaWFsb2dfX2NvbnRlbnR7YmFja2dyb3VuZDojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc21hbGwtZGlhbG9nIGEsLnRoZW1lLS1saWdodCAuc21hbGwtZGlhbG9nIGF7Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zbWFsbC1kaWFsb2dfX2NvbnRlbnQsLnRoZW1lLS1kYXJrIC5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLnRoZW1lLS1kYXJrIC5zbWFsbC1kaWFsb2dfX2NvbnRlbnR7YmFja2dyb3VuZDojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zbWFsbC1kaWFsb2cgYSwudGhlbWUtLWRhcmsgLnNtYWxsLWRpYWxvZyBhe2NvbG9yOiNmZmZ9ICAgICBcXG4uc21hbGwtZGlhbG9ne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0gICAgIFxcbi5zbWFsbC1kaWFsb2dfX2NvbnRlbnR7cGFkZGluZzowIDI0cHh9ICAgICBcXG4uc21hbGwtZGlhbG9nX19hY3Rpb25ze3RleHQtYWxpZ246cmlnaHR9ICAgICBcXG4uc21hbGwtZGlhbG9nIGF7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6MTAwJTt0ZXh0LWRlY29yYXRpb246bm9uZX0gICAgIFxcbi5zbWFsbC1kaWFsb2cgYT4qe3dpZHRoOjEwMCV9ICAgICBcXG4uc21hbGwtZGlhbG9nIC5tZW51X19hY3RpdmF0b3J7aGVpZ2h0OjEwMCV9ICAgICBcXG4uZGF0ZS1waWNrZXItdGl0bGV7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtsaW5lLWhlaWdodDoxfSAgICAgXFxuLmRhdGUtcGlja2VyLXRpdGxlX195ZWFyey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi1ib3R0b206OHB4fSAgICAgXFxuLmRhdGUtcGlja2VyLXRpdGxlX19kYXRle2ZvbnQtc2l6ZTozNHB4O3RleHQtYWxpZ246bGVmdDtmb250LXdlaWdodDo1MDA7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufSAgICAgXFxuLmRhdGUtcGlja2VyLXRpdGxlX19kYXRlPmRpdntwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGUtcGlja2VyLWhlYWRlciAuZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZTpub3QoLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUtLWRpc2FibGVkKSBzdHJvbmc6bm90KDpob3ZlciksLnRoZW1lLS1saWdodCAuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlOm5vdCguZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZS0tZGlzYWJsZWQpIHN0cm9uZzpub3QoOmhvdmVyKXtjb2xvcjpyZ2JhKDAsMCwwLC44NykhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCBzdHJvbmcsLnRoZW1lLS1saWdodCAuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCBzdHJvbmd7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRlLXBpY2tlci1oZWFkZXIgLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWU6bm90KC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCkgc3Ryb25nOm5vdCg6aG92ZXIpLC50aGVtZS0tZGFyayAuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlOm5vdCguZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZS0tZGlzYWJsZWQpIHN0cm9uZzpub3QoOmhvdmVyKXtjb2xvcjojZmZmIWltcG9ydGFudH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCBzdHJvbmcsLnRoZW1lLS1kYXJrIC5kYXRlLXBpY2tlci1oZWFkZXIgLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUtLWRpc2FibGVkIHN0cm9uZ3tjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9ICAgICBcXG4uZGF0ZS1waWNrZXItaGVhZGVye3BhZGRpbmc6NHB4IDE2cHg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmp1c3RpZnk7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLmRhdGUtcGlja2VyLWhlYWRlciAuYnRue21hcmdpbjowO3otaW5kZXg6YXV0b30gICAgIFxcbi5kYXRlLXBpY2tlci1oZWFkZXIgLmljb257Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxuLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWV7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjE7ZmxleDoxO3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0gICAgIFxcbi5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlIHN0cm9uZ3tjdXJzb3I6cG9pbnRlcjstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCV9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRlLXBpY2tlci10YWJsZSB0aCwudGhlbWUtLWxpZ2h0IC5kYXRlLXBpY2tlci10YWJsZSB0aHtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRlLXBpY2tlci10YWJsZSAuYnRuLC50aGVtZS0tbGlnaHQgLmRhdGUtcGlja2VyLXRhYmxlIC5idG57Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRlLXBpY2tlci10YWJsZSB0aCwudGhlbWUtLWRhcmsgLmRhdGUtcGlja2VyLXRhYmxlIHRoe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0ZS1waWNrZXItdGFibGUgLmJ0biwudGhlbWUtLWRhcmsgLmRhdGUtcGlja2VyLXRhYmxlIC5idG57Y29sb3I6I2ZmZn0gICAgIFxcbi5kYXRlLXBpY2tlci10YWJsZXtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjAgMTJweDtoZWlnaHQ6MjQycHh9ICAgICBcXG4uZGF0ZS1waWNrZXItdGFibGUgdGFibGV7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dG9wOjA7dGFibGUtbGF5b3V0OmZpeGVkO3dpZHRoOjEwMCV9ICAgICBcXG4uZGF0ZS1waWNrZXItdGFibGUgdGQsLmRhdGUtcGlja2VyLXRhYmxlIHRoe3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLmRhdGUtcGlja2VyLXRhYmxlIHRoe2ZvbnQtc2l6ZToxMnB4fSAgICAgXFxuLmRhdGUtcGlja2VyLXRhYmxlLS1kYXRlIC5idG57aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0gICAgIFxcbi5kYXRlLXBpY2tlci10YWJsZSAuYnRue3otaW5kZXg6YXV0bzttYXJnaW46MDtmb250LXNpemU6MTJweH0gICAgIFxcbi5kYXRlLXBpY2tlci10YWJsZSAuYnRuLmJ0bi0tYWN0aXZle2NvbG9yOiNmZmZ9ICAgICBcXG4uZGF0ZS1waWNrZXItdGFibGUtLW1vbnRoIHRke3dpZHRoOjMzLjMzMzMzMyU7aGVpZ2h0OjU2cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3RleHQtYWxpZ246Y2VudGVyfSAgICAgXFxuLmRhdGUtcGlja2VyLXRhYmxlLS1tb250aCB0ZCAuYnRue21hcmdpbjowIGF1dG87bWF4LXdpZHRoOjE2MHB4O21pbi13aWR0aDo0MHB4O3dpZHRoOjEwMCV9ICAgICBcXG4uZGF0ZS1waWNrZXItdGFibGUtLWRhdGUgdGh7cGFkZGluZzo4cHggMDtmb250LXdlaWdodDo2MDB9ICAgICBcXG4uZGF0ZS1waWNrZXItdGFibGUtLWRhdGUgdGR7d2lkdGg6NDVweH0gICAgIFxcbi5kYXRlLXBpY2tlci10YWJsZV9fZXZlbnR7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOjJweDtjb250ZW50OlxcXCJcXFwiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjhweDtsZWZ0OjUwJTtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC00cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC00cHgpO3dpZHRoOjhweH0gICAgIFxcbi5kYXRlLXBpY2tlci15ZWFyc3tmb250LXNpemU6MTZweDtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjMzNHB4O2xpc3Qtc3R5bGUtdHlwZTpub25lO292ZXJmbG93OmF1dG87cGFkZGluZzowO3RleHQtYWxpZ246Y2VudGVyfSAgICAgXFxuLmRhdGUtcGlja2VyLXllYXJzIGxpe2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6OHB4IDA7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfSAgICAgXFxuLmRhdGUtcGlja2VyLXllYXJzIGxpLmFjdGl2ZXtmb250LXNpemU6MjZweDtmb250LXdlaWdodDo1MDA7cGFkZGluZzoxMHB4IDB9ICAgICBcXG4uZGF0ZS1waWNrZXIteWVhcnMgbGk6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4ucGlja2VyLS1sYW5kc2NhcGUgLmRhdGUtcGlja2VyLXllYXJze2hlaWdodDoyODZweH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsucGlja2VyLC50aGVtZS0tZGFyayAucGlja2Vye2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnBpY2tlciAucGlja2VyX19ib2R5LC50aGVtZS0tZGFyayAucGlja2VyIC5waWNrZXJfX2JvZHl7YmFja2dyb3VuZDojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGlja2VyIC5waWNrZXJfX3RpdGxlLC50aGVtZS0tbGlnaHQgLnBpY2tlciAucGlja2VyX190aXRsZXtiYWNrZ3JvdW5kOiNlMGUwZTB9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnBpY2tlciAucGlja2VyX190aXRsZSwudGhlbWUtLWRhcmsgLnBpY2tlciAucGlja2VyX190aXRsZXtiYWNrZ3JvdW5kOiM2MTYxNjF9ICAgICBcXG4ucGlja2Vye2JvcmRlci1yYWRpdXM6MnB4O2NvbnRhaW46bGF5b3V0IHN0eWxlO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dmVydGljYWwtYWxpZ246dG9wfSAgICAgXFxuLnBpY2tlciAuY2FyZF9fcm93LS1hY3Rpb25ze2JvcmRlcjpub25lO21hcmdpbi10b3A6LTIwcHh9ICAgICBcXG4ucGlja2VyLS1mdWxsLXdpZHRoe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9ICAgICBcXG4ucGlja2VyX190aXRsZXtjb2xvcjojZmZmO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MnB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjJweDtwYWRkaW5nOjE2cHh9ICAgICBcXG4ucGlja2VyX190aXRsZV9fYnRuey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnBpY2tlcl9fdGl0bGVfX2J0bi5hY3RpdmV7b3BhY2l0eToxfSAgICAgXFxuLnBpY2tlcl9fdGl0bGVfX2J0bjpub3QoLmFjdGl2ZSl7b3BhY2l0eTouNjtjdXJzb3I6cG9pbnRlcn0gICAgIFxcbi5waWNrZXJfX3RpdGxlX19idG46bm90KC5hY3RpdmUpOmhvdmVye29wYWNpdHk6MX0gICAgIFxcbi5waWNrZXJfX2JvZHl7aGVpZ2h0OmF1dG87b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9ICAgICBcXG4ucGlja2VyX19ib2R5PmRpdnt3aWR0aDoxMDAlfSAgICAgXFxuLnBpY2tlcl9fYm9keT5kaXYuZmFkZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZXtwb3NpdGlvbjphYnNvbHV0ZX0gICAgIFxcbi5waWNrZXItLWxhbmRzY2FwZSAucGlja2VyX190aXRsZXtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7d2lkdGg6MTcwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3otaW5kZXg6MX0gICAgIFxcbi5waWNrZXItLWxhbmRzY2FwZSAucGlja2VyX19hY3Rpb25zLC5waWNrZXItLWxhbmRzY2FwZSAucGlja2VyX19ib2R5e21hcmdpbi1sZWZ0OjE3MHB4fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciwudGhlbWUtLWxpZ2h0IC5leHBhbnNpb24tcGFuZWwgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVye2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6cmdiYSgwLDAsMCwuODcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb24sLnRoZW1lLS1saWdodCAuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb257Y29sb3I6cmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZXhwYW5zaW9uLXBhbmVsLS1mb2N1c2FibGUgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyOmZvY3VzLC50aGVtZS0tbGlnaHQgLmV4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNlZWV9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmV4cGFuc2lvbi1wYW5lbCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXIsLnRoZW1lLS1kYXJrIC5leHBhbnNpb24tcGFuZWwgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVye2JvcmRlci10b3A6MXB4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4xMik7YmFja2dyb3VuZC1jb2xvcjojNDI0MjQyO2NvbG9yOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmV4cGFuc2lvbi1wYW5lbCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXIgLmV4cGFuc2lvbi1wYW5lbF9faGVhZGVyIC5pY29uLC50aGVtZS0tZGFyayAuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb257Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZXhwYW5zaW9uLXBhbmVsLS1mb2N1c2FibGUgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyOmZvY3VzLC50aGVtZS0tZGFyayAuZXhwYW5zaW9uLXBhbmVsLS1mb2N1c2FibGUgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyOmZvY3Vze2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyl9ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGlzdC1zdHlsZS10eXBlOm5vbmU7cGFkZGluZzowO3RleHQtYWxpZ246bGVmdDt3aWR0aDoxMDAlOy13ZWJraXQtYm94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIDEwMCU7ZmxleDoxIDAgMTAwJTttYXgtd2lkdGg6MTAwJTtvdXRsaW5lOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXI6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDpub25lIWltcG9ydGFudH0gICAgIFxcbi5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuaGVhZGVyX19pY29ue21hcmdpbi1sZWZ0OmF1dG99ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXIgLmhlYWRlcl9faWNvbiAuaWNvbnstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXItLWFjdGl2ZT4uZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmhlYWRlcl9faWNvbiAuaWNvbnstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX0gICAgIFxcbi5leHBhbnNpb24tcGFuZWxfX2hlYWRlcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2N1cnNvcjpwb2ludGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MTJweCAyNHB4fSAgICAgXFxuLmV4cGFuc2lvbi1wYW5lbF9faGVhZGVyPjpub3QoLmhlYWRlcl9faWNvbil7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsX19ib2R5ey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLmV4cGFuc2lvbi1wYW5lbF9fYm9keSAuY2FyZHtib3JkZXItcmFkaXVzOjB9ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsLS1pbnNldCwuZXhwYW5zaW9uLXBhbmVsLS1wb3BvdXQsLmV4cGFuc2lvbi1wYW5lbF9fYm9keSAuY2FyZHstd2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMCByZ2JhKDAsMCwwLC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsLjE0KSwwIDAgMCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMCAwIDAgcmdiYSgwLDAsMCwuMiksMCAwIDAgMCByZ2JhKDAsMCwwLC4xNCksMCAwIDAgMCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uZXhwYW5zaW9uLXBhbmVsLS1pbnNldCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXItLWFjdGl2ZSwuZXhwYW5zaW9uLXBhbmVsLS1wb3BvdXQgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLS1hY3RpdmV7bWFyZ2luOjE2cHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDNweCAzcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDNweCA0cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggOHB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmV4cGFuc2lvbi1wYW5lbC0taW5zZXQgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLC5leHBhbnNpb24tcGFuZWwtLXBvcG91dCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXJ7bWF4LXdpZHRoOjk1JX0gICAgIFxcbi5leHBhbnNpb24tcGFuZWwtLXBvcG91dCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXItLWFjdGl2ZXttYXgtd2lkdGg6MTAwJX0gICAgIFxcbi5leHBhbnNpb24tcGFuZWwtLWluc2V0IC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lci0tYWN0aXZle21heC13aWR0aDo4NSV9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5mb290ZXIsLnRoZW1lLS1saWdodCAuZm9vdGVye2JhY2tncm91bmQ6I2Y1ZjVmNTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmZvb3RlciwudGhlbWUtLWRhcmsgLmZvb3RlcntiYWNrZ3JvdW5kOiMyMTIxMjE7Y29sb3I6I2ZmZn0gICAgIFxcbi5mb290ZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjAhaW1wb3J0YW50Oy1tcy1mbGV4OjAgMSBhdXRvIWltcG9ydGFudDtmbGV4OjAgMSBhdXRvIWltcG9ydGFudDttaW4taGVpZ2h0OjM2cHg7LXdlYmtpdC10cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0gICAgIFxcbi5mb290ZXItLWFic29sdXRlLC5mb290ZXItLWZpeGVke2JvdHRvbTowO2xlZnQ6MDt3aWR0aDoxMDAlO3otaW5kZXg6M30gICAgIFxcbi5mb290ZXItLWluc2V0e3otaW5kZXg6Mn0gICAgIFxcbi5mb290ZXItLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfSAgICAgXFxuLmZvb3Rlci0tZml4ZWR7cG9zaXRpb246Zml4ZWR9ICAgICBcXG4uY29udGVudHstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmU7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0bzttYXgtd2lkdGg6MTAwJTt3aWxsLWNoYW5nZTpwYWRkaW5nfSAgICAgXFxuLmNvbnRlbnRbZGF0YS1ib290ZWQ9dHJ1ZV17LXdlYmtpdC10cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0gICAgIFxcbi5jb250ZW50LS13cmFwey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvO21heC13aWR0aDoxMDAlfSAgICAgXFxuQG1lZGlhIHByaW50e0AtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXsuY29udGVudHtkaXNwbGF5OmJsb2NrfX19ICAgICBcXG4uY29udGFpbmVyey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgMTAwJTtmbGV4OjEgMSAxMDAlO21hcmdpbjphdXRvO3BhZGRpbmc6MTZweDt3aWR0aDoxMDAlfSAgICAgXFxuLmNvbnRhaW5lci5mbHVpZHttYXgtd2lkdGg6MTAwJX0gICAgIFxcbi5jb250YWluZXIuZmlsbC1oZWlnaHR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0gICAgIFxcbi5jb250YWluZXIuZmlsbC1oZWlnaHQgLmxheW91dHtoZWlnaHQ6MTAwJTstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0b30gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhze3BhZGRpbmc6MnB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3QteHMgLmxheW91dCAuZmxleHtwYWRkaW5nOjFweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhzIC5sYXlvdXQ6b25seS1jaGlsZHttYXJnaW46LTFweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhzIC5sYXlvdXQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW46YXV0byAtMXB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3QteHMgOm5vdCg6b25seS1jaGlsZCkgLmxheW91dDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOi0xcHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC14cyA6bm90KDpvbmx5LWNoaWxkKSAubGF5b3V0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTotMXB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3Qtc217cGFkZGluZzo0cHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1zbSAubGF5b3V0IC5mbGV4e3BhZGRpbmc6MnB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3Qtc20gLmxheW91dDpvbmx5LWNoaWxke21hcmdpbjotMnB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3Qtc20gLmxheW91dDpub3QoOm9ubHktY2hpbGQpe21hcmdpbjphdXRvIC0ycHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1zbSA6bm90KDpvbmx5LWNoaWxkKSAubGF5b3V0OmZpcnN0LWNoaWxke21hcmdpbi10b3A6LTJweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXNtIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOi0ycHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1tZHtwYWRkaW5nOjhweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LW1kIC5sYXlvdXQgLmZsZXh7cGFkZGluZzo0cHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1tZCAubGF5b3V0Om9ubHktY2hpbGR7bWFyZ2luOi00cHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1tZCAubGF5b3V0Om5vdCg6b25seS1jaGlsZCl7bWFyZ2luOmF1dG8gLTRweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LW1kIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotNHB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3QtbWQgOm5vdCg6b25seS1jaGlsZCkgLmxheW91dDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206LTRweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LWxne3BhZGRpbmc6MTZweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LWxnIC5sYXlvdXQgLmZsZXh7cGFkZGluZzo4cHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1sZyAubGF5b3V0Om9ubHktY2hpbGR7bWFyZ2luOi04cHh9ICAgICBcXG4uY29udGFpbmVyLmdyaWQtbGlzdC1sZyAubGF5b3V0Om5vdCg6b25seS1jaGlsZCl7bWFyZ2luOmF1dG8gLThweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LWxnIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotOHB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3QtbGcgOm5vdCg6b25seS1jaGlsZCkgLmxheW91dDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206LThweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhse3BhZGRpbmc6MjRweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhsIC5sYXlvdXQgLmZsZXh7cGFkZGluZzoxMnB4fSAgICAgXFxuLmNvbnRhaW5lci5ncmlkLWxpc3QteGwgLmxheW91dDpvbmx5LWNoaWxke21hcmdpbjotMTJweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhsIC5sYXlvdXQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW46YXV0byAtMTJweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhsIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotMTJweH0gICAgIFxcbi5jb250YWluZXIuZ3JpZC1saXN0LXhsIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOi0xMnB4fSAgICAgXFxuLmxheW91dHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvOy1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7bWluLXdpZHRoOjB9ICAgICBcXG4ubGF5b3V0LnJvd3std2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fSAgICAgXFxuLmxheW91dC5yb3cucmV2ZXJzZXstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9ICAgICBcXG4ubGF5b3V0LmNvbHVtbnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0gICAgIFxcbi5sYXlvdXQuY29sdW1uPi5mbGV4e21heC13aWR0aDoxMDAlfSAgICAgXFxuLmxheW91dC5jb2x1bW4ucmV2ZXJzZXstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfSAgICAgXFxuLmxheW91dC53cmFwey1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcH0gICAgIFxcbi5jaGlsZC1mbGV4PiosLmZsZXh7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99ICAgICBcXG4uYWxpZ24tc3RhcnR7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0gICAgIFxcbi5hbGlnbi1lbmR7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy1tcy1mbGV4LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0gICAgIFxcbi5hbGlnbi1jZW50ZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9ICAgICBcXG4uYWxpZ24tYmFzZWxpbmV7LXdlYmtpdC1ib3gtYWxpZ246YmFzZWxpbmU7LW1zLWZsZXgtYWxpZ246YmFzZWxpbmU7YWxpZ24taXRlbXM6YmFzZWxpbmV9ICAgICBcXG4uYWxpZ24tY29udGVudC1zdGFydHstbXMtZmxleC1saW5lLXBhY2s6c3RhcnQ7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0fSAgICAgXFxuLmFsaWduLWNvbnRlbnQtZW5key1tcy1mbGV4LWxpbmUtcGFjazplbmQ7YWxpZ24tY29udGVudDpmbGV4LWVuZH0gICAgIFxcbi5hbGlnbi1jb250ZW50LWNlbnRlcnstbXMtZmxleC1saW5lLXBhY2s6Y2VudGVyO2FsaWduLWNvbnRlbnQ6Y2VudGVyfSAgICAgXFxuLmFsaWduLWNvbnRlbnQtc3BhY2UtYmV0d2VlbnstbXMtZmxleC1saW5lLXBhY2s6anVzdGlmeTthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW59ICAgICBcXG4uYWxpZ24tY29udGVudC1zcGFjZS1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9ICAgICBcXG4uanVzdGlmeS1zdGFydHstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9ICAgICBcXG4uanVzdGlmeS1lbmR7LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfSAgICAgXFxuLmp1c3RpZnktY2VudGVyey13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9ICAgICBcXG4uanVzdGlmeS1zcGFjZS1hcm91bmR7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlO2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9ICAgICBcXG4uanVzdGlmeS1zcGFjZS1iZXR3ZWVuey13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59ICAgICBcXG4uZ3Jvdywuc3BhY2Vyey13ZWJraXQtYm94LWZsZXg6MSFpbXBvcnRhbnQ7LW1zLWZsZXgtcG9zaXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1ncm93OjEhaW1wb3J0YW50fSAgICAgXFxuLmdyb3d7LW1zLWZsZXgtbmVnYXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9ICAgICBcXG4uc2hyaW5rey13ZWJraXQtYm94LWZsZXg6MCFpbXBvcnRhbnQ7LW1zLWZsZXgtcG9zaXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1ncm93OjAhaW1wb3J0YW50Oy1tcy1mbGV4LW5lZ2F0aXZlOjEhaW1wb3J0YW50O2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fSAgICAgXFxuLnNjcm9sbC15e292ZXJmbG93LXk6YXV0b30gICAgIFxcbi5maWxsLWhlaWdodHtoZWlnaHQ6MTAwJX0gICAgIFxcbi5oaWRlLW92ZXJmbG93e292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnR9ICAgICBcXG4uc2hvdy1vdmVyZmxvd3tvdmVyZmxvdzp2aXNpYmxlIWltcG9ydGFudH0gICAgIFxcbi5lbGxpcHNpcywubm8td3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9ICAgICBcXG4uZWxsaXBzaXN7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9ICAgICBcXG4uZC1mbGV4e2Rpc3BsYXk6LXdlYmtpdC1ib3ghaW1wb3J0YW50O2Rpc3BsYXk6LW1zLWZsZXhib3ghaW1wb3J0YW50O2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnR9ICAgICBcXG4uZC1pbmxpbmUtZmxleHtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveCFpbXBvcnRhbnQ7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3ghaW1wb3J0YW50O2Rpc3BsYXk6aW5saW5lLWZsZXghaW1wb3J0YW50fSAgICAgXFxuLmQtZmxleD4qLC5kLWlubGluZS1mbGV4Pip7LXdlYmtpdC1ib3gtZmxleDoxIWltcG9ydGFudDstbXMtZmxleDoxIDEgYXV0byFpbXBvcnRhbnQ7ZmxleDoxIDEgYXV0byFpbXBvcnRhbnR9ICAgICBcXG4uZC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0gICAgIFxcbi5kLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9ICAgICBcXG4uZC1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsuY29udGFpbmVye21heC13aWR0aDo5MDBweH19ICAgICBcXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTI2NHB4KXsuY29udGFpbmVye21heC13aWR0aDoxMTg1cHh9fSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE5MDRweCl7LmNvbnRhaW5lcnttYXgtd2lkdGg6MTc4NXB4fX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTlweCl7LmNvbnRhaW5lcntwYWRkaW5nOjI0cHh9fSAgICAgXFxuQG1lZGlhIChtaW4td2lkdGg6MCl7LmZsZXgueHMxey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjguMzMzMzMzMzMzMzMzMzMyJTtmbGV4LWJhc2lzOjguMzMzMzMzMzMzMzMzMzMyJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9yZGVyLXhzMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjI7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5mbGV4LnhzMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNi42NjY2NjY2NjY2NjY2NjQlO2ZsZXgtYmFzaXM6MTYuNjY2NjY2NjY2NjY2NjY0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vcmRlci14czJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozOy1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0uZmxleC54czN7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MjUlO2ZsZXgtYmFzaXM6MjUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoyNSV9LmZsZXgub3JkZXIteHMzey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NDstbXMtZmxleC1vcmRlcjozO29yZGVyOjN9LmZsZXgueHM0ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjMzLjMzMzMzMzMzMzMzMzMzJTtmbGV4LWJhc2lzOjMzLjMzMzMzMzMzMzMzMzMzJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9yZGVyLXhzNHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjU7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5mbGV4LnhzNXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo0MS42NjY2NjY2NjY2NjY2NyU7ZmxleC1iYXNpczo0MS42NjY2NjY2NjY2NjY2NyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vcmRlci14czV7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo2Oy1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0uZmxleC54czZ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTAlO2ZsZXgtYmFzaXM6NTAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1MCV9LmZsZXgub3JkZXIteHM2ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NzstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9LmZsZXgueHM3ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjU4LjMzMzMzMzMzMzMzMzMzNiU7ZmxleC1iYXNpczo1OC4zMzMzMzMzMzMzMzMzMzYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9yZGVyLXhzN3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjg7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5mbGV4LnhzOHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo2Ni42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo2Ni42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci14czh7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo5Oy1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0uZmxleC54czl7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NzUlO2ZsZXgtYmFzaXM6NzUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo3NSV9LmZsZXgub3JkZXIteHM5ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTA7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5mbGV4LnhzMTB7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ODMuMzMzMzMzMzMzMzMzMzQlO2ZsZXgtYmFzaXM6ODMuMzMzMzMzMzMzMzMzMzQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub3JkZXIteHMxMHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExOy1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5mbGV4LnhzMTF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OTEuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6OTEuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXIteHMxMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEyOy1tcy1mbGV4LW9yZGVyOjExO29yZGVyOjExfS5mbGV4LnhzMTJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTAwJTtmbGV4LWJhc2lzOjEwMCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjEwMCV9LmZsZXgub3JkZXIteHMxMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEzOy1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5mbGV4Lm9mZnNldC14czB7bWFyZ2luLWxlZnQ6MH0uZmxleC5vZmZzZXQteHMxe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vZmZzZXQteHMye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub2Zmc2V0LXhzM3ttYXJnaW4tbGVmdDoyNSV9LmZsZXgub2Zmc2V0LXhzNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub2Zmc2V0LXhzNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub2Zmc2V0LXhzNnttYXJnaW4tbGVmdDo1MCV9LmZsZXgub2Zmc2V0LXhzN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9mZnNldC14czh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC14czl7bWFyZ2luLWxlZnQ6NzUlfS5mbGV4Lm9mZnNldC14czEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vZmZzZXQteHMxMXttYXJnaW4tbGVmdDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LXhzMTJ7bWFyZ2luLWxlZnQ6MTAwJX19ICAgICBcXG5AbWVkaWEgKG1pbi13aWR0aDo2MDBweCl7LmZsZXguc20xey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjguMzMzMzMzMzMzMzMzMzMyJTtmbGV4LWJhc2lzOjguMzMzMzMzMzMzMzMzMzMyJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9yZGVyLXNtMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjI7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5mbGV4LnNtMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNi42NjY2NjY2NjY2NjY2NjQlO2ZsZXgtYmFzaXM6MTYuNjY2NjY2NjY2NjY2NjY0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vcmRlci1zbTJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozOy1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0uZmxleC5zbTN7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MjUlO2ZsZXgtYmFzaXM6MjUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoyNSV9LmZsZXgub3JkZXItc20zey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NDstbXMtZmxleC1vcmRlcjozO29yZGVyOjN9LmZsZXguc200ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjMzLjMzMzMzMzMzMzMzMzMzJTtmbGV4LWJhc2lzOjMzLjMzMzMzMzMzMzMzMzMzJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9yZGVyLXNtNHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjU7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5mbGV4LnNtNXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo0MS42NjY2NjY2NjY2NjY2NyU7ZmxleC1iYXNpczo0MS42NjY2NjY2NjY2NjY2NyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vcmRlci1zbTV7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo2Oy1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0uZmxleC5zbTZ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTAlO2ZsZXgtYmFzaXM6NTAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1MCV9LmZsZXgub3JkZXItc202ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NzstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9LmZsZXguc203ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjU4LjMzMzMzMzMzMzMzMzMzNiU7ZmxleC1iYXNpczo1OC4zMzMzMzMzMzMzMzMzMzYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9yZGVyLXNtN3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjg7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5mbGV4LnNtOHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo2Ni42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo2Ni42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci1zbTh7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo5Oy1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0uZmxleC5zbTl7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NzUlO2ZsZXgtYmFzaXM6NzUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo3NSV9LmZsZXgub3JkZXItc205ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTA7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5mbGV4LnNtMTB7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ODMuMzMzMzMzMzMzMzMzMzQlO2ZsZXgtYmFzaXM6ODMuMzMzMzMzMzMzMzMzMzQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub3JkZXItc20xMHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExOy1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5mbGV4LnNtMTF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OTEuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6OTEuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXItc20xMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEyOy1tcy1mbGV4LW9yZGVyOjExO29yZGVyOjExfS5mbGV4LnNtMTJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTAwJTtmbGV4LWJhc2lzOjEwMCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjEwMCV9LmZsZXgub3JkZXItc20xMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEzOy1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5mbGV4Lm9mZnNldC1zbTB7bWFyZ2luLWxlZnQ6MH0uZmxleC5vZmZzZXQtc20xe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vZmZzZXQtc20ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub2Zmc2V0LXNtM3ttYXJnaW4tbGVmdDoyNSV9LmZsZXgub2Zmc2V0LXNtNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub2Zmc2V0LXNtNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub2Zmc2V0LXNtNnttYXJnaW4tbGVmdDo1MCV9LmZsZXgub2Zmc2V0LXNtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9mZnNldC1zbTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC1zbTl7bWFyZ2luLWxlZnQ6NzUlfS5mbGV4Lm9mZnNldC1zbTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vZmZzZXQtc20xMXttYXJnaW4tbGVmdDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LXNtMTJ7bWFyZ2luLWxlZnQ6MTAwJX19ICAgICBcXG5AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7LmZsZXgubWQxey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjguMzMzMzMzMzMzMzMzMzMyJTtmbGV4LWJhc2lzOjguMzMzMzMzMzMzMzMzMzMyJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9yZGVyLW1kMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjI7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5mbGV4Lm1kMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNi42NjY2NjY2NjY2NjY2NjQlO2ZsZXgtYmFzaXM6MTYuNjY2NjY2NjY2NjY2NjY0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vcmRlci1tZDJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozOy1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0uZmxleC5tZDN7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MjUlO2ZsZXgtYmFzaXM6MjUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoyNSV9LmZsZXgub3JkZXItbWQzey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NDstbXMtZmxleC1vcmRlcjozO29yZGVyOjN9LmZsZXgubWQ0ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjMzLjMzMzMzMzMzMzMzMzMzJTtmbGV4LWJhc2lzOjMzLjMzMzMzMzMzMzMzMzMzJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9yZGVyLW1kNHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjU7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5mbGV4Lm1kNXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo0MS42NjY2NjY2NjY2NjY2NyU7ZmxleC1iYXNpczo0MS42NjY2NjY2NjY2NjY2NyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vcmRlci1tZDV7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo2Oy1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0uZmxleC5tZDZ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTAlO2ZsZXgtYmFzaXM6NTAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1MCV9LmZsZXgub3JkZXItbWQ2ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NzstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9LmZsZXgubWQ3ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjU4LjMzMzMzMzMzMzMzMzMzNiU7ZmxleC1iYXNpczo1OC4zMzMzMzMzMzMzMzMzMzYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9yZGVyLW1kN3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjg7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5mbGV4Lm1kOHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo2Ni42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo2Ni42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci1tZDh7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo5Oy1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0uZmxleC5tZDl7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NzUlO2ZsZXgtYmFzaXM6NzUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo3NSV9LmZsZXgub3JkZXItbWQ5ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTA7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5mbGV4Lm1kMTB7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ODMuMzMzMzMzMzMzMzMzMzQlO2ZsZXgtYmFzaXM6ODMuMzMzMzMzMzMzMzMzMzQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub3JkZXItbWQxMHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExOy1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5mbGV4Lm1kMTF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OTEuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6OTEuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXItbWQxMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEyOy1tcy1mbGV4LW9yZGVyOjExO29yZGVyOjExfS5mbGV4Lm1kMTJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTAwJTtmbGV4LWJhc2lzOjEwMCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjEwMCV9LmZsZXgub3JkZXItbWQxMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEzOy1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5mbGV4Lm9mZnNldC1tZDB7bWFyZ2luLWxlZnQ6MH0uZmxleC5vZmZzZXQtbWQxe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vZmZzZXQtbWQye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub2Zmc2V0LW1kM3ttYXJnaW4tbGVmdDoyNSV9LmZsZXgub2Zmc2V0LW1kNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub2Zmc2V0LW1kNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub2Zmc2V0LW1kNnttYXJnaW4tbGVmdDo1MCV9LmZsZXgub2Zmc2V0LW1kN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9mZnNldC1tZDh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC1tZDl7bWFyZ2luLWxlZnQ6NzUlfS5mbGV4Lm9mZnNldC1tZDEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vZmZzZXQtbWQxMXttYXJnaW4tbGVmdDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LW1kMTJ7bWFyZ2luLWxlZnQ6MTAwJX19ICAgICBcXG5AbWVkaWEgKG1pbi13aWR0aDoxMjY0cHgpey5mbGV4LmxnMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4LjMzMzMzMzMzMzMzMzMzMiU7ZmxleC1iYXNpczo4LjMzMzMzMzMzMzMzMzMzMiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vcmRlci1sZzF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoyOy1tcy1mbGV4LW9yZGVyOjE7b3JkZXI6MX0uZmxleC5sZzJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTYuNjY2NjY2NjY2NjY2NjY0JTtmbGV4LWJhc2lzOjE2LjY2NjY2NjY2NjY2NjY2NCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub3JkZXItbGcyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MzstbXMtZmxleC1vcmRlcjoyO29yZGVyOjJ9LmZsZXgubGczey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjI1JTtmbGV4LWJhc2lzOjI1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MjUlfS5mbGV4Lm9yZGVyLWxnM3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjQ7LW1zLWZsZXgtb3JkZXI6MztvcmRlcjozfS5mbGV4LmxnNHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTozMy4zMzMzMzMzMzMzMzMzMyU7ZmxleC1iYXNpczozMy4zMzMzMzMzMzMzMzMzMyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vcmRlci1sZzR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo1Oy1tcy1mbGV4LW9yZGVyOjQ7b3JkZXI6NH0uZmxleC5sZzV7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NDEuNjY2NjY2NjY2NjY2NjclO2ZsZXgtYmFzaXM6NDEuNjY2NjY2NjY2NjY2NjclOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub3JkZXItbGc1ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NjstbXMtZmxleC1vcmRlcjo1O29yZGVyOjV9LmZsZXgubGc2ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjUwJTtmbGV4LWJhc2lzOjUwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTAlfS5mbGV4Lm9yZGVyLWxnNnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjc7LW1zLWZsZXgtb3JkZXI6NjtvcmRlcjo2fS5mbGV4LmxnN3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1OC4zMzMzMzMzMzMzMzMzMzYlO2ZsZXgtYmFzaXM6NTguMzMzMzMzMzMzMzMzMzM2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vcmRlci1sZzd7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo4Oy1tcy1mbGV4LW9yZGVyOjc7b3JkZXI6N30uZmxleC5sZzh7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NjYuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6NjYuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXItbGc4ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6OTstbXMtZmxleC1vcmRlcjo4O29yZGVyOjh9LmZsZXgubGc5ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjc1JTtmbGV4LWJhc2lzOjc1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NzUlfS5mbGV4Lm9yZGVyLWxnOXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEwOy1tcy1mbGV4LW9yZGVyOjk7b3JkZXI6OX0uZmxleC5sZzEwey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjgzLjMzMzMzMzMzMzMzMzM0JTtmbGV4LWJhc2lzOjgzLjMzMzMzMzMzMzMzMzM0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9yZGVyLWxnMTB7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMTstbXMtZmxleC1vcmRlcjoxMDtvcmRlcjoxMH0uZmxleC5sZzExey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjkxLjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjkxLjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLWxnMTF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMjstbXMtZmxleC1vcmRlcjoxMTtvcmRlcjoxMX0uZmxleC5sZzEyey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjEwMCU7ZmxleC1iYXNpczoxMDAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxMDAlfS5mbGV4Lm9yZGVyLWxnMTJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMzstbXMtZmxleC1vcmRlcjoxMjtvcmRlcjoxMn0uZmxleC5vZmZzZXQtbGcwe21hcmdpbi1sZWZ0OjB9LmZsZXgub2Zmc2V0LWxnMXttYXJnaW4tbGVmdDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub2Zmc2V0LWxnMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9mZnNldC1sZzN7bWFyZ2luLWxlZnQ6MjUlfS5mbGV4Lm9mZnNldC1sZzR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9mZnNldC1sZzV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9mZnNldC1sZzZ7bWFyZ2luLWxlZnQ6NTAlfS5mbGV4Lm9mZnNldC1sZzd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vZmZzZXQtbGc4e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQtbGc5e21hcmdpbi1sZWZ0Ojc1JX0uZmxleC5vZmZzZXQtbGcxMHttYXJnaW4tbGVmdDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub2Zmc2V0LWxnMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC1sZzEye21hcmdpbi1sZWZ0OjEwMCV9fSAgICAgXFxuQG1lZGlhIChtaW4td2lkdGg6MTkwNHB4KXsuZmxleC54bDF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OC4zMzMzMzMzMzMzMzMzMzIlO2ZsZXgtYmFzaXM6OC4zMzMzMzMzMzMzMzMzMzIlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub3JkZXIteGwxey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjstbXMtZmxleC1vcmRlcjoxO29yZGVyOjF9LmZsZXgueGwyey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjE2LjY2NjY2NjY2NjY2NjY2NCU7ZmxleC1iYXNpczoxNi42NjY2NjY2NjY2NjY2NjQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9yZGVyLXhsMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjM7LW1zLWZsZXgtb3JkZXI6MjtvcmRlcjoyfS5mbGV4LnhsM3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToyNSU7ZmxleC1iYXNpczoyNSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjI1JX0uZmxleC5vcmRlci14bDN7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo0Oy1tcy1mbGV4LW9yZGVyOjM7b3JkZXI6M30uZmxleC54bDR7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MzMuMzMzMzMzMzMzMzMzMzMlO2ZsZXgtYmFzaXM6MzMuMzMzMzMzMzMzMzMzMzMlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub3JkZXIteGw0ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NTstbXMtZmxleC1vcmRlcjo0O29yZGVyOjR9LmZsZXgueGw1ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjQxLjY2NjY2NjY2NjY2NjY3JTtmbGV4LWJhc2lzOjQxLjY2NjY2NjY2NjY2NjY3JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9yZGVyLXhsNXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjY7LW1zLWZsZXgtb3JkZXI6NTtvcmRlcjo1fS5mbGV4LnhsNnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1MCU7ZmxleC1iYXNpczo1MCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjUwJX0uZmxleC5vcmRlci14bDZ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo3Oy1tcy1mbGV4LW9yZGVyOjY7b3JkZXI6Nn0uZmxleC54bDd7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTguMzMzMzMzMzMzMzMzMzM2JTtmbGV4LWJhc2lzOjU4LjMzMzMzMzMzMzMzMzMzNiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub3JkZXIteGw3ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ODstbXMtZmxleC1vcmRlcjo3O29yZGVyOjd9LmZsZXgueGw4ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjY2LjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjY2LjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLXhsOHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjk7LW1zLWZsZXgtb3JkZXI6ODtvcmRlcjo4fS5mbGV4LnhsOXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo3NSU7ZmxleC1iYXNpczo3NSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjc1JX0uZmxleC5vcmRlci14bDl7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMDstbXMtZmxleC1vcmRlcjo5O29yZGVyOjl9LmZsZXgueGwxMHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4My4zMzMzMzMzMzMzMzMzNCU7ZmxleC1iYXNpczo4My4zMzMzMzMzMzMzMzMzNCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vcmRlci14bDEwey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTE7LW1zLWZsZXgtb3JkZXI6MTA7b3JkZXI6MTB9LmZsZXgueGwxMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo5MS42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo5MS42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci14bDExey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTI7LW1zLWZsZXgtb3JkZXI6MTE7b3JkZXI6MTF9LmZsZXgueGwxMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxMDAlO2ZsZXgtYmFzaXM6MTAwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTAwJX0uZmxleC5vcmRlci14bDEyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTM7LW1zLWZsZXgtb3JkZXI6MTI7b3JkZXI6MTJ9LmZsZXgub2Zmc2V0LXhsMHttYXJnaW4tbGVmdDowfS5mbGV4Lm9mZnNldC14bDF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9mZnNldC14bDJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vZmZzZXQteGwze21hcmdpbi1sZWZ0OjI1JX0uZmxleC5vZmZzZXQteGw0e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vZmZzZXQteGw1e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vZmZzZXQteGw2e21hcmdpbi1sZWZ0OjUwJX0uZmxleC5vZmZzZXQteGw3e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub2Zmc2V0LXhsOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LXhsOXttYXJnaW4tbGVmdDo3NSV9LmZsZXgub2Zmc2V0LXhsMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9mZnNldC14bDExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQteGwxMnttYXJnaW4tbGVmdDoxMDAlfX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lm5hdmlnYXRpb24tZHJhd2VyLC50aGVtZS0tbGlnaHQgLm5hdmlnYXRpb24tZHJhd2Vye2JhY2tncm91bmQtY29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lm5hdmlnYXRpb24tZHJhd2VyIC5kaXZpZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lm5hdmlnYXRpb24tZHJhd2VyOm5vdCgubmF2aWdhdGlvbi1kcmF3ZXItLWZsb2F0aW5nKSAubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlciwudGhlbWUtLWxpZ2h0IC5uYXZpZ2F0aW9uLWRyYXdlciAuZGl2aWRlciwudGhlbWUtLWxpZ2h0IC5uYXZpZ2F0aW9uLWRyYXdlcjpub3QoLm5hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZykgLm5hdmlnYXRpb24tZHJhd2VyX19ib3JkZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLm5hdmlnYXRpb24tZHJhd2VyLC50aGVtZS0tZGFyayAubmF2aWdhdGlvbi1kcmF3ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5uYXZpZ2F0aW9uLWRyYXdlciAuZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLm5hdmlnYXRpb24tZHJhd2VyOm5vdCgubmF2aWdhdGlvbi1kcmF3ZXItLWZsb2F0aW5nKSAubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlciwudGhlbWUtLWRhcmsgLm5hdmlnYXRpb24tZHJhd2VyIC5kaXZpZGVyLC50aGVtZS0tZGFyayAubmF2aWdhdGlvbi1kcmF3ZXI6bm90KC5uYXZpZ2F0aW9uLWRyYXdlci0tZmxvYXRpbmcpIC5uYXZpZ2F0aW9uLWRyYXdlcl9fYm9yZGVye2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjEyKX0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlcnstd2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmU7ZGlzcGxheTpibG9jaztsZWZ0OjA7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO3BhZGRpbmc6MCAwIDEwMHB4O3BvaW50ZXItZXZlbnRzOmF1dG87dG9wOjA7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtO3otaW5kZXg6Mzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlcltkYXRhLWJvb3RlZD10cnVlXXstd2Via2l0LXRyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpOy13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLGJvcmRlci1ib3R0b20sYm9yZGVyLWJvdHRvbS1jb2xvcixib3JkZXItYm90dG9tLXdpZHRoLGJvcmRlci1jb2xvcixib3JkZXItbGVmdCxib3JkZXItbGVmdC1jb2xvcixib3JkZXItbGVmdC13aWR0aCxib3JkZXItcmlnaHQsYm9yZGVyLXJpZ2h0LWNvbG9yLGJvcmRlci1yaWdodC13aWR0aCxib3JkZXItdG9wLGJvcmRlci10b3AtY29sb3IsYm9yZGVyLXRvcC13aWR0aCxib3JkZXItd2lkdGgsYm90dG9tLGNvbG9yLGhlaWdodCxsZWZ0LG1hcmdpbixtYXJnaW4tYm90dG9tLG1hcmdpbi1sZWZ0LG1hcmdpbi1yaWdodCxtYXJnaW4tdG9wLG1heC13aWR0aCxtaW4taGVpZ2h0LG1pbi13aWR0aCxvcGFjaXR5LHBhZGRpbmcscGFkZGluZy1ib3R0b20scGFkZGluZy1sZWZ0LHBhZGRpbmctcmlnaHQscGFkZGluZy10b3AscmlnaHQsdG9wLHdpZHRoLC13ZWJraXQtYm94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW47dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLGJvcmRlci1ib3R0b20sYm9yZGVyLWJvdHRvbS1jb2xvcixib3JkZXItYm90dG9tLXdpZHRoLGJvcmRlci1jb2xvcixib3JkZXItbGVmdCxib3JkZXItbGVmdC1jb2xvcixib3JkZXItbGVmdC13aWR0aCxib3JkZXItcmlnaHQsYm9yZGVyLXJpZ2h0LWNvbG9yLGJvcmRlci1yaWdodC13aWR0aCxib3JkZXItdG9wLGJvcmRlci10b3AtY29sb3IsYm9yZGVyLXRvcC13aWR0aCxib3JkZXItd2lkdGgsYm90dG9tLGNvbG9yLGhlaWdodCxsZWZ0LG1hcmdpbixtYXJnaW4tYm90dG9tLG1hcmdpbi1sZWZ0LG1hcmdpbi1yaWdodCxtYXJnaW4tdG9wLG1heC13aWR0aCxtaW4taGVpZ2h0LG1pbi13aWR0aCxvcGFjaXR5LHBhZGRpbmcscGFkZGluZy1ib3R0b20scGFkZGluZy1sZWZ0LHBhZGRpbmctcmlnaHQscGFkZGluZy10b3AscmlnaHQsdG9wLHdpZHRoLC13ZWJraXQtYm94LXNoYWRvdywtd2Via2l0LXRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW47dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLGJvcmRlci1ib3R0b20sYm9yZGVyLWJvdHRvbS1jb2xvcixib3JkZXItYm90dG9tLXdpZHRoLGJvcmRlci1jb2xvcixib3JkZXItbGVmdCxib3JkZXItbGVmdC1jb2xvcixib3JkZXItbGVmdC13aWR0aCxib3JkZXItcmlnaHQsYm9yZGVyLXJpZ2h0LWNvbG9yLGJvcmRlci1yaWdodC13aWR0aCxib3JkZXItdG9wLGJvcmRlci10b3AtY29sb3IsYm9yZGVyLXRvcC13aWR0aCxib3JkZXItd2lkdGgsYm90dG9tLGJveC1zaGFkb3csY29sb3IsaGVpZ2h0LGxlZnQsbWFyZ2luLG1hcmdpbi1ib3R0b20sbWFyZ2luLWxlZnQsbWFyZ2luLXJpZ2h0LG1hcmdpbi10b3AsbWF4LXdpZHRoLG1pbi1oZWlnaHQsbWluLXdpZHRoLG9wYWNpdHkscGFkZGluZyxwYWRkaW5nLWJvdHRvbSxwYWRkaW5nLWxlZnQscGFkZGluZy1yaWdodCxwYWRkaW5nLXRvcCxyaWdodCx0b3AsdHJhbnNmb3JtLHRyYW5zZm9ybS1vcmlnaW4sd2lkdGg7dHJhbnNpdGlvbi1wcm9wZXJ0eTpiYWNrZ3JvdW5kLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLGJvcmRlci1ib3R0b20sYm9yZGVyLWJvdHRvbS1jb2xvcixib3JkZXItYm90dG9tLXdpZHRoLGJvcmRlci1jb2xvcixib3JkZXItbGVmdCxib3JkZXItbGVmdC1jb2xvcixib3JkZXItbGVmdC13aWR0aCxib3JkZXItcmlnaHQsYm9yZGVyLXJpZ2h0LWNvbG9yLGJvcmRlci1yaWdodC13aWR0aCxib3JkZXItdG9wLGJvcmRlci10b3AtY29sb3IsYm9yZGVyLXRvcC13aWR0aCxib3JkZXItd2lkdGgsYm90dG9tLGJveC1zaGFkb3csY29sb3IsaGVpZ2h0LGxlZnQsbWFyZ2luLG1hcmdpbi1ib3R0b20sbWFyZ2luLWxlZnQsbWFyZ2luLXJpZ2h0LG1hcmdpbi10b3AsbWF4LXdpZHRoLG1pbi1oZWlnaHQsbWluLXdpZHRoLG9wYWNpdHkscGFkZGluZyxwYWRkaW5nLWJvdHRvbSxwYWRkaW5nLWxlZnQscGFkZGluZy1yaWdodCxwYWRkaW5nLXRvcCxyaWdodCx0b3AsdHJhbnNmb3JtLHRyYW5zZm9ybS1vcmlnaW4sd2lkdGgsLXdlYmtpdC1ib3gtc2hhZG93LC13ZWJraXQtdHJhbnNmb3JtLC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjt0cmFuc2l0aW9uLXByb3BlcnR5OmJhY2tncm91bmQsYmFja2dyb3VuZC1jb2xvcixib3JkZXIsYm9yZGVyLWJvdHRvbSxib3JkZXItYm90dG9tLWNvbG9yLGJvcmRlci1ib3R0b20td2lkdGgsYm9yZGVyLWNvbG9yLGJvcmRlci1sZWZ0LGJvcmRlci1sZWZ0LWNvbG9yLGJvcmRlci1sZWZ0LXdpZHRoLGJvcmRlci1yaWdodCxib3JkZXItcmlnaHQtY29sb3IsYm9yZGVyLXJpZ2h0LXdpZHRoLGJvcmRlci10b3AsYm9yZGVyLXRvcC1jb2xvcixib3JkZXItdG9wLXdpZHRoLGJvcmRlci13aWR0aCxib3R0b20sYm94LXNoYWRvdyxjb2xvcixoZWlnaHQsbGVmdCxtYXJnaW4sbWFyZ2luLWJvdHRvbSxtYXJnaW4tbGVmdCxtYXJnaW4tcmlnaHQsbWFyZ2luLXRvcCxtYXgtd2lkdGgsbWluLWhlaWdodCxtaW4td2lkdGgsb3BhY2l0eSxwYWRkaW5nLHBhZGRpbmctYm90dG9tLHBhZGRpbmctbGVmdCxwYWRkaW5nLXJpZ2h0LHBhZGRpbmctdG9wLHJpZ2h0LHRvcCx0cmFuc2Zvcm0sdHJhbnNmb3JtLW9yaWdpbix3aWR0aCwtd2Via2l0LXRyYW5zZm9ybSwtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW59ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlcntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO2hlaWdodDoxMDAlO3dpZHRoOjFweH0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlci5uYXZpZ2F0aW9uLWRyYXdlci0tcmlnaHQ6YWZ0ZXJ7bGVmdDowO3JpZ2h0OmF1dG99ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXItLXJpZ2h0e2xlZnQ6YXV0bztyaWdodDowfSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyLS1yaWdodD4ubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlcntyaWdodDphdXRvO2xlZnQ6MH0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlci0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGV9ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXItLWZpeGVke3Bvc2l0aW9uOmZpeGVkfSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZzphZnRlcntkaXNwbGF5Om5vbmV9ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXItLW1pbmktdmFyaWFudHtvdmVyZmxvdzpoaWRkZW59ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXItLW1pbmktdmFyaWFudCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJX0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5saXN0X190aWxlX19hY3Rpb24sLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmxpc3RfX3RpbGVfX2F2YXRhcnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDo0OHB4fSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmxpc3RfX3RpbGU6YWZ0ZXIsLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmxpc3RfX3RpbGVfX2NvbnRlbnR7b3BhY2l0eTowfSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmRpdmlkZXIsLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmxpc3QtLWdyb3VwLC5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5zdWJoZWFkZXJ7ZGlzcGxheTpub25lIWltcG9ydGFudH0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlci0taXMtbW9iaWxlLC5uYXZpZ2F0aW9uLWRyYXdlci0tdGVtcG9yYXJ5e3otaW5kZXg6Nn0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlci0taXMtbW9iaWxlOm5vdCgubmF2aWdhdGlvbi1kcmF3ZXItLWNsb3NlKSwubmF2aWdhdGlvbi1kcmF3ZXItLXRlbXBvcmFyeTpub3QoLm5hdmlnYXRpb24tZHJhd2VyLS1jbG9zZSl7LXdlYmtpdC1ib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgOHB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSwwIDE2cHggMjRweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlciAubGlzdHtiYWNrZ3JvdW5kOmluaGVyaXR9ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXI+Lmxpc3QgLmxpc3RfX3RpbGV7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lO2ZvbnQtd2VpZ2h0OjUwMH0gICAgIFxcbi5uYXZpZ2F0aW9uLWRyYXdlcj4ubGlzdCAubGlzdF9fdGlsZS0tYWN0aXZlIC5saXN0X190aWxlX190aXRsZXtjb2xvcjppbmhlcml0fSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyPi5saXN0IC5saXN0LS1ncm91cCAubGlzdF9fdGlsZXtmb250LXdlaWdodDo0MDB9ICAgICBcXG4ubmF2aWdhdGlvbi1kcmF3ZXI+Lmxpc3QgLmxpc3QtLWdyb3VwX19oZWFkZXItLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fSAgICAgXFxuLm5hdmlnYXRpb24tZHJhd2VyPi5saXN0Om5vdCgubGlzdC0tZGVuc2UpIC5saXN0X190aWxle2ZvbnQtc2l6ZToxNHB4fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGFnaW5hdGlvbl9faXRlbSwudGhlbWUtLWxpZ2h0IC5wYWdpbmF0aW9uX19pdGVte2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDAwfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlLC50aGVtZS0tbGlnaHQgLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZXtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiwudGhlbWUtLWxpZ2h0IC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9ue2JhY2tncm91bmQ6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnBhZ2luYXRpb25fX25hdmlnYXRpb24gLmljb24sLnRoZW1lLS1saWdodCAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnBhZ2luYXRpb25fX2l0ZW0sLnRoZW1lLS1kYXJrIC5wYWdpbmF0aW9uX19pdGVte2JhY2tncm91bmQ6IzQyNDI0Mjtjb2xvcjojZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmUsLnRoZW1lLS1kYXJrIC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmV7Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiwudGhlbWUtLWRhcmsgLnBhZ2luYXRpb25fX25hdmlnYXRpb257YmFja2dyb3VuZDojNDI0MjQyfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uIC5pY29uLC50aGVtZS0tZGFyayAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiAuaWNvbntjb2xvcjojZmZmfSAgICAgXFxuLnBhZ2luYXRpb257ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXJnaW46MDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9ICAgICBcXG4ucGFnaW5hdGlvbiwucGFnaW5hdGlvbj5saXstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0gICAgIFxcbi5wYWdpbmF0aW9uPmxpe2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9ICAgICBcXG4ucGFnaW5hdGlvbi0tY2lyY2xlIC5wYWdpbmF0aW9uX19pdGVtLC5wYWdpbmF0aW9uLS1jaXJjbGUgLnBhZ2luYXRpb25fX21vcmUsLnBhZ2luYXRpb24tLWNpcmNsZSAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbntib3JkZXItcmFkaXVzOjUwJX0gICAgIFxcbi5wYWdpbmF0aW9uLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjZ9ICAgICBcXG4ucGFnaW5hdGlvbl9faXRlbXstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxNHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7aGVpZ2h0OjM0cHg7d2lkdGg6MzRweDttYXJnaW46LjNyZW07dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllcigwLDAsLjIsMSl9ICAgICBcXG4ucGFnaW5hdGlvbl9faXRlbS0tYWN0aXZley13ZWJraXQtYm94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLnBhZ2luYXRpb25fX25hdmlnYXRpb257LXdlYmtpdC1ib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMik7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZTtoZWlnaHQ6MnJlbTtib3JkZXItcmFkaXVzOjRweDt3aWR0aDoycmVtO21hcmdpbjouM3JlbSAxMHB4fSAgICAgXFxuLnBhZ2luYXRpb25fX25hdmlnYXRpb24gLmljb257Zm9udC1zaXplOjJyZW07LXdlYmtpdC10cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKTt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9ICAgICBcXG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi0tZGlzYWJsZWR7b3BhY2l0eTouNjtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLnBhZ2luYXRpb25fX21vcmV7bWFyZ2luOi4zcmVtO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LXdlYmtpdC1ib3gtYWxpZ246ZW5kOy1tcy1mbGV4LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDoycmVtO3dpZHRoOjJyZW19ICAgICBcXG4ucGFyYWxsYXh7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MH0gICAgIFxcbi5wYXJhbGxheF9faW1hZ2UtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTtjb250YWluOnN0cmljdH0gICAgIFxcbi5wYXJhbGxheF9faW1hZ2V7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDo1MCU7bWluLXdpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO2Rpc3BsYXk6bm9uZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm07LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3otaW5kZXg6MX0gICAgIFxcbi5wYXJhbGxheF9fY29udGVudHtjb2xvcjojZmZmO2hlaWdodDoxMDAlO3otaW5kZXg6Mjtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDFyZW19ICAgICBcXG4ucmFkaW8tZ3JvdXAgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVyLC5yYWRpby1ncm91cCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2Rpc3BsYXk6bm9uZX0gICAgIFxcbi5yYWRpby1ncm91cCAuaW5wdXQtZ3JvdXB7cGFkZGluZzowfSAgICAgXFxuLnJhZGlvLWdyb3VwLS1jb2x1bW4gLmlucHV0LWdyb3VwX19pbnB1dHtkaXNwbGF5OmJsb2NrfSAgICAgXFxuLnJhZGlvLWdyb3VwLS1yb3cgLmlucHV0LWdyb3VwX19pbnB1dHstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fSAgICAgXFxuLnJhZGlvLWdyb3VwLmlucHV0LWdyb3VwLS1lcnJvciAucmFkaW8gLmljb24tLXNlbGVjdGlvbi1jb250cm9sLC5yYWRpby1ncm91cC5pbnB1dC1ncm91cC0tZXJyb3IgLnJhZGlvIGxhYmVse2NvbG9yOmluaGVyaXR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyIGxhYmVsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjaywuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrLWZpbGwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjaywudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrLWZpbGx7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RpY2ssLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdGljaywudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrX19jb250YWluZXI6YWZ0ZXJ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KSAuc2xpZGVyX190aHVtYi0tbGFiZWwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWItLWxhYmVse2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMjYpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWJ7Ym9yZGVyOjNweCBzb2xpZCByZ2JhKDAsMCwwLC4yNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KTpmb2N1cyAuc2xpZGVyX190aHVtYiwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KTpmb2N1cyAuc2xpZGVyX190aHVtYntib3JkZXI6M3B4IHNvbGlkIHJnYmEoMCwwLDAsLjM4KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5zbGlkZXJfX3RodW1iLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5zbGlkZXJfX3RodW1ie2JhY2tncm91bmQ6bm9uZTtib3JkZXI6M3B4IHNvbGlkIHJnYmEoMCwwLDAsLjI2KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkLmlucHV0LWdyb3VwLS1kaXJ0eSAuc2xpZGVyX190aHVtYiwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZC5pbnB1dC1ncm91cC0tZGlydHkgLnNsaWRlcl9fdGh1bWJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yNik7Ym9yZGVyOjAgc29saWQgdHJhbnNwYXJlbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyOmZvY3VzIC5zbGlkZXJfX3RyYWNrLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXI6Zm9jdXMgLnNsaWRlcl9fdHJhY2t7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4zOCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyIGxhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjaywuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2stZmlsbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2ssLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrLWZpbGx7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdGljaywuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2tfX2NvbnRhaW5lcjphZnRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdGljaywudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2tfX2NvbnRhaW5lcjphZnRlcntib3JkZXI6MXB4IHNvbGlkICNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLS1sYWJlbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLS1sYWJlbHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4yKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KSAuc2xpZGVyX190aHVtYntib3JkZXI6M3B4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4yKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSk6Zm9jdXMgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KTpmb2N1cyAuc2xpZGVyX190aHVtYntib3JkZXI6M3B4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4zKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuc2xpZGVyX190aHVtYntiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjNweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkLmlucHV0LWdyb3VwLS1kaXJ0eSAuc2xpZGVyX190aHVtYiwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkLmlucHV0LWdyb3VwLS1kaXJ0eSAuc2xpZGVyX190aHVtYntiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4yKTtib3JkZXI6MCBzb2xpZCB0cmFuc3BhcmVudH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlcjpmb2N1cyAuc2xpZGVyX190cmFjaywudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXI6Zm9jdXMgLnNsaWRlcl9fdHJhY2t7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuMyl9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlcnstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtwYWRkaW5nLXJpZ2h0OjE2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtkaXNwbGF5Om5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuaW5wdXQtZ3JvdXBfX2lucHV0ey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgMTAwJTtmbGV4OjEgMSAxMDAlfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWx7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMSBhdXRvO2ZsZXg6MCAxIGF1dG87d2lkdGg6YXV0bzstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtc2l6ZToxOHB4Oy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlciBsYWJlbCsuaW5wdXQtZ3JvdXBfX2lucHV0e21hcmdpbi1sZWZ0OjE2cHg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG99ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlIC5zbGlkZXJfX3RodW1iey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMS4yKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjIpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuc2xpZGVyX190cmFja3std2Via2l0LXRyYW5zaXRpb246bm9uZTt0cmFuc2l0aW9uOm5vbmV9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlIC5zbGlkZXJfX3RodW1iLWNvbnRhaW5lci0tbGFiZWwgLnNsaWRlcl9fdGh1bWIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuc2xpZGVyX190aHVtYi1jb250YWluZXItLWxhYmVsIC5zbGlkZXJfX3RodW1iOmhvdmVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMCl9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlIC5zbGlkZXJfX3RodW1iLWNvbnRhaW5lciwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlIC5zbGlkZXJfX3RyYWNrLWZpbGx7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZS5pbnB1dC1ncm91cC0tdGlja3MgLnNsaWRlcl9fdGljaywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlLmlucHV0LWdyb3VwLS10aWNrcyAuc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVye29wYWNpdHk6MX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5zbGlkZXJfX3RodW1iey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKC41KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkLmlucHV0LWdyb3VwLS1kaXJ0eXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIC5zbGlkZXJ7bWFyZ2luLWxlZnQ6NDBweH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbiAuc2xpZGVye21hcmdpbi1yaWdodDo0MHB4fSAgICAgXFxuLnNsaWRlcntjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDozMHB4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9ICAgICBcXG4uc2xpZGVyX190cmFja19fY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtoZWlnaHQ6MnB4O3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufSAgICAgXFxuLnNsaWRlcl9fdHJhY2tfX2NvbnRhaW5lcjphZnRlcntjb250ZW50OlxcXCJcXFwiO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7aGVpZ2h0OjJweDstd2Via2l0LXRyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoycHg7b3BhY2l0eTowfSAgICAgXFxuLnNsaWRlcl9fdGh1bWIsLnNsaWRlcl9fdGljaywuc2xpZGVyX190cmFja3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0gICAgIFxcbi5zbGlkZXJfX3RyYWNrey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0O292ZXJmbG93OmhpZGRlbn0gICAgIFxcbi5zbGlkZXJfX3RyYWNrLC5zbGlkZXJfX3RyYWNrLWZpbGx7aGVpZ2h0OjJweDtsZWZ0OjA7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0gICAgIFxcbi5zbGlkZXJfX3RyYWNrLWZpbGx7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0fSAgICAgXFxuLnNsaWRlcl9fdGlja3MtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtoZWlnaHQ6MnB4O3dpZHRoOjEwMCU7dG9wOjUwJTtvdmVyZmxvdzpoaWRkZW59ICAgICBcXG4uc2xpZGVyX190aWNrey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO29wYWNpdHk6MH0gICAgIFxcbi5zbGlkZXJfX3RodW1iLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZX0gICAgIFxcbi5zbGlkZXJfX3RodW1iLC5zbGlkZXJfX3RodW1iLWNvbnRhaW5lcnt0b3A6NTAlOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnNsaWRlcl9fdGh1bWJ7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtsZWZ0Oi04cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKC44KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguOCk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfSAgICAgXFxuLnNsaWRlcl9fdGh1bWItLWxhYmVsX19jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXR9ICAgICBcXG4uc2xpZGVyX190aHVtYi0tbGFiZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOiNmZmY7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtib3JkZXItcmFkaXVzOjUwJSA1MCUgMDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xNHB4O3RvcDotNDBweDstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXRyYW5zaXRpb246LjNzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246LjNzIGVhc2UtaW4tb3V0fSAgICAgXFxuLnNsaWRlcl9fdGh1bWItLWxhYmVsIHNwYW57LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfSAgICAgXFxuLnNsaWRlcl9fdHJhY2ssLnNsaWRlcl9fdHJhY2stZmlsbHtwb3NpdGlvbjphYnNvbHV0ZX0gICAgIFxcbi5zbmFja3twb3NpdGlvbjpmaXhlZDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiNmZmY7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjEwMDA7Zm9udC1zaXplOjE0cHg7bGVmdDowO3JpZ2h0OjB9ICAgICBcXG4uc25hY2stLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfSAgICAgXFxuLnNuYWNrLS10b3B7dG9wOjB9ICAgICBcXG4uc25hY2stLWJvdHRvbXtib3R0b206MH0gICAgIFxcbi5zbmFja19fd3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzI7cG9pbnRlci1ldmVudHM6YXV0bzstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggNXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCA2cHggMTBweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxOHB4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggNXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCA2cHggMTBweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxOHB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLnNuYWNrX19jb250ZW50LC5zbmFja19fd3JhcHBlcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCV9ICAgICBcXG4uc25hY2tfX2NvbnRlbnR7aGVpZ2h0OjQ4cHg7cGFkZGluZzoxNHB4IDI0cHg7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtvdmVyZmxvdzpoaWRkZW59ICAgICBcXG4uc25hY2tfX2NvbnRlbnQgLmJ0bntjb2xvcjojZmZmOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO21hcmdpbjowIDAgMCAyNHB4O2hlaWdodDphdXRvO21pbi13aWR0aDphdXRvO3dpZHRoOmF1dG99ICAgICBcXG4uc25hY2tfX2NvbnRlbnQgLmJ0bl9fY29udGVudHtwYWRkaW5nOjhweDttYXJnaW46LThweH0gICAgIFxcbi5zbmFja19fY29udGVudCAuYnRuX19jb250ZW50OmJlZm9yZXtkaXNwbGF5Om5vbmV9ICAgICBcXG4uc25hY2stLW11bHRpLWxpbmUgLnNuYWNrX19jb250ZW50e2hlaWdodDo4MHB4O3BhZGRpbmc6MjRweH0gICAgIFxcbi5zbmFjay0tdmVydGljYWwgLnNuYWNrX19jb250ZW50e2hlaWdodDoxMTJweDtwYWRkaW5nOjI0cHggMjRweCAxNHB4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofSAgICAgXFxuLnNuYWNrLS12ZXJ0aWNhbCAuc25hY2tfX2NvbnRlbnQgLmJ0bi5idG57LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO21hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDoyNHB4fSAgICAgXFxuLnNuYWNrLS12ZXJ0aWNhbCAuc25hY2tfX2NvbnRlbnQgLmJ0bl9fY29udGVudHtwYWRkaW5nOjA7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG87bWFyZ2luOjB9ICAgICBcXG4uc25hY2stLWF1dG8taGVpZ2h0IC5zbmFja19fY29udGVudHtoZWlnaHQ6YXV0b30gICAgIFxcbi5zbmFjay10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc25hY2stdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSksIC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnNuYWNrLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlIC5zbmFja19fY29udGVudCwuc25hY2stdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmUgLnNuYWNrX19jb250ZW50ey13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBsaW5lYXIgLjFzO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgbGluZWFyIC4xc30gICAgIFxcbi5zbmFjay10cmFuc2l0aW9uLWVudGVyIC5zbmFja19fY29udGVudHtvcGFjaXR5OjB9ICAgICBcXG4uc25hY2stdHJhbnNpdGlvbi1lbnRlci10byAuc25hY2tfX2NvbnRlbnQsLnNuYWNrLXRyYW5zaXRpb24tbGVhdmUgLnNuYWNrX19jb250ZW50e29wYWNpdHk6MX0gICAgIFxcbi5zbmFjay10cmFuc2l0aW9uLWVudGVyLnNuYWNrLnNuYWNrLS10b3AsLnNuYWNrLXRyYW5zaXRpb24tbGVhdmUtdG8uc25hY2suc25hY2stLXRvcHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoLTEwMCUgLSA4cHgpKTt0cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKC0xMDAlIC0gOHB4KSl9ICAgICBcXG4uc25hY2stdHJhbnNpdGlvbi1lbnRlci5zbmFjay5zbmFjay0tYm90dG9tLC5zbmFjay10cmFuc2l0aW9uLWxlYXZlLXRvLnNuYWNrLnNuYWNrLS1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKX0gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2MDBweCl7LnNuYWNrX193cmFwcGVye3dpZHRoOmF1dG87bWF4LXdpZHRoOjU2OHB4O21pbi13aWR0aDoyODhweDttYXJnaW46MCBhdXRvO2JvcmRlci1yYWRpdXM6MnB4fS5zbmFjay0tbGVmdCAuc25hY2tfX3dyYXBwZXJ7bWFyZ2luLWxlZnQ6MH0uc25hY2stLXJpZ2h0IC5zbmFja19fd3JhcHBlcnttYXJnaW4tcmlnaHQ6MH0uc25hY2stLWxlZnQsLnNuYWNrLS1yaWdodHttYXJnaW46MCAyNHB4fS5zbmFjay0tbGVmdC5zbmFjay0tdG9wLC5zbmFjay0tcmlnaHQuc25hY2stLXRvcHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDI0cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDI0cHgpfS5zbmFjay0tbGVmdC5zbmFjay0tYm90dG9tLC5zbmFjay0tcmlnaHQuc25hY2stLWJvdHRvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0yNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjRweCl9LnNuYWNrX19jb250ZW50IC5idG46Zmlyc3Qtb2YtdHlwZXttYXJnaW4tbGVmdDo0OHB4fX0gICAgIFxcbi5zcGVlZC1kaWFse3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLnNwZWVkLWRpYWwtLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfSAgICAgXFxuLnNwZWVkLWRpYWwtLWZpeGVke3Bvc2l0aW9uOmZpeGVkfSAgICAgXFxuLnNwZWVkLWRpYWwtLWFic29sdXRlLC5zcGVlZC1kaWFsLS1maXhlZHt6LWluZGV4OjR9ICAgICBcXG4uc3BlZWQtZGlhbC0tYWJzb2x1dGU+LmJ0bi0tZmxvYXRpbmcsLnNwZWVkLWRpYWwtLWZpeGVkPi5idG4tLWZsb2F0aW5ne21hcmdpbjowfSAgICAgXFxuLnNwZWVkLWRpYWwtLXRvcDpub3QoLnNwZWVkLWRpYWwtLWFic29sdXRlKXt0b3A6MTZweH0gICAgIFxcbi5zcGVlZC1kaWFsLS10b3Auc3BlZWQtZGlhbC0tYWJzb2x1dGV7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfSAgICAgXFxuLnNwZWVkLWRpYWwtLWJvdHRvbTpub3QoLnNwZWVkLWRpYWwtLWFic29sdXRlKXtib3R0b206MTZweH0gICAgIFxcbi5zcGVlZC1kaWFsLS1ib3R0b20uc3BlZWQtZGlhbC0tYWJzb2x1dGV7Ym90dG9tOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNTAlKX0gICAgIFxcbi5zcGVlZC1kaWFsLS1sZWZ0e2xlZnQ6MTZweH0gICAgIFxcbi5zcGVlZC1kaWFsLS1yaWdodHtyaWdodDoxNnB4fSAgICAgXFxuLnNwZWVkLWRpYWwtLWRpcmVjdGlvbi1sZWZ0IC5zcGVlZC1kaWFsX19saXN0LC5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tcmlnaHQgLnNwZWVkLWRpYWxfX2xpc3R7aGVpZ2h0OjEwMCU7dG9wOjB9ICAgICBcXG4uc3BlZWQtZGlhbC0tZGlyZWN0aW9uLWJvdHRvbSAuc3BlZWQtZGlhbF9fbGlzdCwuc3BlZWQtZGlhbC0tZGlyZWN0aW9uLXRvcCAuc3BlZWQtZGlhbF9fbGlzdHtsZWZ0OjA7d2lkdGg6MTAwJX0gICAgIFxcbi5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tdG9wIC5zcGVlZC1kaWFsX19saXN0ey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7Ym90dG9tOjEwMCV9ICAgICBcXG4uc3BlZWQtZGlhbC0tZGlyZWN0aW9uLXJpZ2h0IC5zcGVlZC1kaWFsX19saXN0ey13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7bGVmdDoxMDAlfSAgICAgXFxuLnNwZWVkLWRpYWwtLWRpcmVjdGlvbi1ib3R0b20gLnNwZWVkLWRpYWxfX2xpc3R7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dG9wOjEwMCV9ICAgICBcXG4uc3BlZWQtZGlhbC0tZGlyZWN0aW9uLWxlZnQgLnNwZWVkLWRpYWxfX2xpc3R7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO3JpZ2h0OjEwMCV9ICAgICBcXG4uc3BlZWQtZGlhbF9fbGlzdHstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGV9ICAgICBcXG4uc3BlZWQtZGlhbF9fbGlzdCAuYnRuOmZpcnN0LWNoaWxkey13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouMDVzO3RyYW5zaXRpb24tZGVsYXk6LjA1c30gICAgIFxcbi5zcGVlZC1kaWFsX19saXN0IC5idG46bnRoLWNoaWxkKDIpey13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouMXM7dHJhbnNpdGlvbi1kZWxheTouMXN9ICAgICBcXG4uc3BlZWQtZGlhbF9fbGlzdCAuYnRuOm50aC1jaGlsZCgzKXstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6LjE1czt0cmFuc2l0aW9uLWRlbGF5Oi4xNXN9ICAgICBcXG4uc3BlZWQtZGlhbF9fbGlzdCAuYnRuOm50aC1jaGlsZCg0KXstd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6LjJzO3RyYW5zaXRpb24tZGVsYXk6LjJzfSAgICAgXFxuLnNwZWVkLWRpYWxfX2xpc3QgLmJ0bjpudGgtY2hpbGQoNSl7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5Oi4yNXM7dHJhbnNpdGlvbi1kZWxheTouMjVzfSAgICAgXFxuLnNwZWVkLWRpYWxfX2xpc3QgLmJ0bjpudGgtY2hpbGQoNil7LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5Oi4zczt0cmFuc2l0aW9uLWRlbGF5Oi4zc30gICAgIFxcbi5zcGVlZC1kaWFsX19saXN0IC5idG46bnRoLWNoaWxkKDcpey13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTouMzVzO3RyYW5zaXRpb24tZGVsYXk6LjM1c30gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIsLnRoZW1lLS1saWdodCAuc3RlcHBlcntiYWNrZ3JvdW5kOiNmZmZ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tYWN0aXZlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKSAuc3RlcHBlcl9fc3RlcF9fc3RlcCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tYWN0aXZlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKSAuc3RlcHBlcl9fc3RlcF9fc3RlcHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjM4KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCAuaWNvbiwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwX19zdGVwLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAgLmljb257Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX2hlYWRlciAuZGl2aWRlciwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19oZWFkZXIgLmRpdmlkZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1hY3RpdmUgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSAuc3RlcHBlcl9fbGFiZWx7dGV4dC1zaGFkb3c6MCAwIDAgIzAwMH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMDYpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6aG92ZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbHt0ZXh0LXNoYWRvdzowIDAgMCAjMDAwfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tY29tcGxldGUgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlIC5zdGVwcGVyX19sYWJlbHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1pbmFjdGl2ZS5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKTpob3ZlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1pbmFjdGl2ZS5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKTpob3ZlciAuc3RlcHBlcl9fc3RlcF9fc3RlcHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVse2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXItLW5vbi1saW5lYXIgLnN0ZXBwZXJfX3N0ZXA6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX2xhYmVsLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsIHNtYWxsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXItLW5vbi1saW5lYXIgLnN0ZXBwZXJfX3N0ZXA6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsIHNtYWxse2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19jb250ZW50Om5vdCg6bGFzdC1jaGlsZCksLnRoZW1lLS1saWdodCAuc3RlcHBlci0tdmVydGljYWwgLnN0ZXBwZXJfX2NvbnRlbnQ6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyLC50aGVtZS0tZGFyayAuc3RlcHBlcntiYWNrZ3JvdW5kOiMzMDMwMzB9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXA6bm90KC5zdGVwcGVyX19zdGVwLS1hY3RpdmUpOm5vdCguc3RlcHBlcl9fc3RlcC0tY29tcGxldGUpOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpIC5zdGVwcGVyX19zdGVwX19zdGVwLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcDpub3QoLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXB7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuNSl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19zdGVwX19zdGVwIC5pY29uLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAgLmljb257Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVyLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVye2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjEyKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tYWN0aXZlIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSAuc3RlcHBlcl9fbGFiZWx7dGV4dC1zaGFkb3c6MCAwIDAgI2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6aG92ZXIsLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpob3ZlcntiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4wNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbHt0ZXh0LXNoYWRvdzowIDAgMCAjZmZmfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSAuc3RlcHBlcl9fbGFiZWwsLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSAuc3RlcHBlcl9fbGFiZWx7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0taW5hY3RpdmUuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcik6aG92ZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAsLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1pbmFjdGl2ZS5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKTpob3ZlciAuc3RlcHBlcl9fc3RlcF9fc3RlcHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC43NSl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fbGFiZWx7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyLS1ub24tbGluZWFyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tY29tcGxldGUpOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpIC5zdGVwcGVyX19sYWJlbCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsIHNtYWxsLC50aGVtZS0tZGFyayAuc3RlcHBlci0tbm9uLWxpbmVhciAuc3RlcHBlcl9fc3RlcDpub3QoLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKSAuc3RlcHBlcl9fbGFiZWwsLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19sYWJlbCBzbWFsbHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19jb250ZW50Om5vdCg6bGFzdC1jaGlsZCksLnRoZW1lLS1kYXJrIC5zdGVwcGVyLS12ZXJ0aWNhbCAuc3RlcHBlcl9fY29udGVudDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1sZWZ0OjFweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMTIpfSAgICAgXFxuLnN0ZXBwZXJ7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLnN0ZXBwZXIsLnN0ZXBwZXJfX2hlYWRlcnstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4uc3RlcHBlcl9faGVhZGVye2hlaWdodDo3MnB4Oy13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNoO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59ICAgICBcXG4uc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVyey1tcy1mbGV4LWl0ZW0tYWxpZ246Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO21hcmdpbjowIC0xNnB4fSAgICAgXFxuLnN0ZXBwZXJfX2l0ZW1ze3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0gICAgIFxcbi5zdGVwcGVyX19zdGVwX19zdGVwey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjEycHg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MjRweDttYXJnaW4tcmlnaHQ6OHB4O21pbi13aWR0aDoyNHB4O3dpZHRoOjI0cHg7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0gICAgIFxcbi5zdGVwcGVyX19zdGVwX19zdGVwIC5pY29ue2ZvbnQtc2l6ZToxOHB4fSAgICAgXFxuLnN0ZXBwZXJfX3N0ZXB7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O3BhZGRpbmc6MjRweDtwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi5zdGVwcGVyX19zdGVwLS1hY3RpdmUgLnN0ZXBwZXJfX2xhYmVsey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjYsMSk7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC40LDAsLjYsMSl9ICAgICBcXG4uc3RlcHBlcl9fc3RlcC0tZWRpdGFibGV7Y3Vyc29yOnBvaW50ZXJ9ICAgICBcXG4uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fc3RlcF9fc3RlcHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOmluaGVyaXR9ICAgICBcXG4uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fc3RlcF9fc3RlcCAuaWNvbntmb250LXNpemU6MjRweDtjb2xvcjppbmhlcml0fSAgICAgXFxuLnN0ZXBwZXJfX3N0ZXAuc3RlcHBlcl9fc3RlcC0tZXJyb3IgLnN0ZXBwZXJfX2xhYmVse2NvbG9yOmluaGVyaXQ7dGV4dC1zaGFkb3c6bm9uZTtmb250LXdlaWdodDo1MDB9ICAgICBcXG4uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fbGFiZWwgc21hbGx7Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5zdGVwcGVyX19sYWJlbHstd2Via2l0LWJveC1hbGlnbjpzdGFydDstbXMtZmxleC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dGV4dC1hbGlnbjpsZWZ0fSAgICAgXFxuLnN0ZXBwZXJfX2xhYmVsIHNtYWxse2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjMwMDt0ZXh0LXNoYWRvdzpub25lfSAgICAgXFxuLnN0ZXBwZXJfX3dyYXBwZXJ7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX0gICAgIFxcbi5zdGVwcGVyX19jb250ZW50e3RvcDowO3BhZGRpbmc6MjRweCAyNHB4IDE2cHg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG87d2lkdGg6MTAwJX0gICAgIFxcbi5zdGVwcGVyX19jb250ZW50Pi5idG57bWFyZ2luOjI0cHggOHB4IDhweCAwfSAgICAgXFxuLnN0ZXBwZXItLWlzLWJvb3RlZCAuc3RlcHBlcl9fY29udGVudCwuc3RlcHBlci0taXMtYm9vdGVkIC5zdGVwcGVyX193cmFwcGVyey13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnN0ZXBwZXItLXZlcnRpY2Fse3BhZGRpbmctYm90dG9tOjM2cHh9ICAgICBcXG4uc3RlcHBlci0tdmVydGljYWwgLnN0ZXBwZXJfX2NvbnRlbnR7bWFyZ2luOi04cHggLTM2cHggLTE2cHggMzZweDtwYWRkaW5nOjE2cHggNjBweCAxNnB4IDIzcHg7d2lkdGg6YXV0b30gICAgIFxcbi5zdGVwcGVyLS12ZXJ0aWNhbCAuc3RlcHBlcl9fc3RlcHtwYWRkaW5nOjI0cHggMjRweCAxNnB4fSAgICAgXFxuLnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19zdGVwX19zdGVwe21hcmdpbi1yaWdodDoxMnB4fSAgICAgXFxuLnN0ZXBwZXItLWFsdC1sYWJlbHMgLnN0ZXBwZXJfX2hlYWRlcntoZWlnaHQ6YXV0b30gICAgIFxcbi5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19oZWFkZXIgLmRpdmlkZXJ7bWFyZ2luOjM1cHggLTY3cHggMDstbXMtZmxleC1pdGVtLWFsaWduOnN0YXJ0O2FsaWduLXNlbGY6ZmxleC1zdGFydH0gICAgIFxcbi5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19zdGVwey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNzVweDtmbGV4LWJhc2lzOjE3NXB4fSAgICAgXFxuLnN0ZXBwZXItLWFsdC1sYWJlbHMgLnN0ZXBwZXJfX3N0ZXAgc21hbGx7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXJ9ICAgICBcXG4uc3RlcHBlci0tYWx0LWxhYmVscyAuc3RlcHBlcl9fc3RlcF9fc3RlcHttYXJnaW4tcmlnaHQ6MDttYXJnaW4tYm90dG9tOjExcHh9ICAgICBcXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTU5cHgpey5zdGVwcGVyOm5vdCguc3RlcHBlci0tdmVydGljYWwpIC5zdGVwcGVyX19sYWJlbHtkaXNwbGF5Om5vbmV9LnN0ZXBwZXI6bm90KC5zdGVwcGVyLS12ZXJ0aWNhbCkgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXB7bWFyZ2luLXJpZ2h0OjB9fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KSAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fY29udGFpbmVyLC50aGVtZS0tbGlnaHQgLnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcntjb2xvcjpyZ2JhKDAsMCwwLC4zOCkhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXIsLnRoZW1lLS1saWdodCAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6bm90KC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZSksLnRoZW1lLS1saWdodCAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6bm90KC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZSl7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZTphZnRlciwudGhlbWUtLWxpZ2h0IC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZS0tYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUsLnRoZW1lLS1saWdodCAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGV7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUtLWFjdGl2ZSwudGhlbWUtLWxpZ2h0IC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZS0tYWN0aXZle2NvbG9yOmluaGVyaXR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zd2l0Y2guaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXIsLnRoZW1lLS1saWdodCAuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2JkYmRiZCFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zd2l0Y2guaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUsLnRoZW1lLS1saWdodCAuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xle2NvbG9yOnJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lciwudGhlbWUtLWRhcmsgLnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMykhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTphZnRlciwudGhlbWUtLWRhcmsgLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2JkYmRiZH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6bm90KC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZSksLnRoZW1lLS1kYXJrIC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTpub3QoLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZS0tYWN0aXZlKXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmU6YWZ0ZXIsLnRoZW1lLS1kYXJrIC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZS0tYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZSwudGhlbWUtLWRhcmsgLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xle2NvbG9yOmhzbGEoMCwwJSwxMDAlLC4zKX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUtLWFjdGl2ZSwudGhlbWUtLWRhcmsgLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xlLS1hY3RpdmV7Y29sb3I6aW5oZXJpdH0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVyLC50aGVtZS0tZGFyayAuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQyNDI0MiFpbXBvcnRhbnR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN3aXRjaC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZSwudGhlbWUtLWRhcmsgLnN3aXRjaC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMSkhaW1wb3J0YW50fSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHN7ei1pbmRleDowfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoLmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbiBsYWJlbCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2guaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiBsYWJlbHtsZWZ0OjYycHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2guaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fY29udGFpbmVye21hcmdpbi1sZWZ0OjZweH0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLnN3aXRjaC5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24gLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbntsZWZ0OjQwcHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcntjb2xvcjppbmhlcml0O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjM2cHh9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcltjbGFzcyo9XFxcIi0tdGV4dFxcXCJdIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO2NvbG9yOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjE0cHg7dG9wOjUwJTtsZWZ0OjA7d2lkdGg6MzRweDtib3JkZXItcmFkaXVzOjhweDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xlLS1hY3RpdmV7b3BhY2l0eTouNX0gICAgIFxcbi5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTVweCwtMjRweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTVweCwtMjRweCk7LXdlYmtpdC10cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKTt6LWluZGV4OjE7bGVmdDowfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXJ7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6cG9pbnRlcjt3aWR0aDoyMHB4O2JvcmRlci1yYWRpdXM6NTAlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2hlaWdodDoyMHB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpfSAgICAgXFxuLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMnB4LC0yNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCwtMjRweCl9ICAgICBcXG4uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2ggbGFiZWx7cGFkZGluZy1sZWZ0OjE0cHh9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zeXN0ZW0tYmFyLC50aGVtZS0tbGlnaHQgLnN5c3RlbS1iYXJ7YmFja2dyb3VuZC1jb2xvcjojZTBlMGUwO2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN5c3RlbS1iYXIgLmljb24sLnRoZW1lLS1saWdodCAuc3lzdGVtLWJhciAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zeXN0ZW0tYmFyLS1saWdodHMtb3V0LC50aGVtZS0tbGlnaHQgLnN5c3RlbS1iYXItLWxpZ2h0cy1vdXR7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuNykhaW1wb3J0YW50fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zeXN0ZW0tYmFyLC50aGVtZS0tZGFyayAuc3lzdGVtLWJhcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zeXN0ZW0tYmFyIC5pY29uLC50aGVtZS0tZGFyayAuc3lzdGVtLWJhciAuaWNvbntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN5c3RlbS1iYXItLWxpZ2h0cy1vdXQsLnRoZW1lLS1kYXJrIC5zeXN0ZW0tYmFyLS1saWdodHMtb3V0e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMikhaW1wb3J0YW50fSAgICAgXFxuLnN5c3RlbS1iYXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7cGFkZGluZzowIDhweH0gICAgIFxcbi5zeXN0ZW0tYmFyIC5pY29ue2ZvbnQtc2l6ZToxNnB4fSAgICAgXFxuLnN5c3RlbS1iYXItLWFic29sdXRlLC5zeXN0ZW0tYmFyLS1maXhlZHtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OjN9ICAgICBcXG4uc3lzdGVtLWJhci0tZml4ZWR7cG9zaXRpb246Zml4ZWR9ICAgICBcXG4uc3lzdGVtLWJhci0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGV9ICAgICBcXG4uc3lzdGVtLWJhci0tc3RhdHVzIC5pY29ue21hcmdpbi1yaWdodDo0cHh9ICAgICBcXG4uc3lzdGVtLWJhci0td2luZG93IC5pY29ue2ZvbnQtc2l6ZToyMHB4O21hcmdpbi1yaWdodDo4cHh9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJzX19iYXIsLnRoZW1lLS1saWdodCAudGFic19fYmFye2JhY2tncm91bmQtY29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRhYnNfX2JhciAudGFic19fZGl2LC50aGVtZS0tbGlnaHQgLnRhYnNfX2JhciAudGFic19fZGl2e2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRhYnNfX2JhciAudGFic19faXRlbS0tZGlzYWJsZWQsLnRoZW1lLS1saWdodCAudGFic19fYmFyIC50YWJzX19pdGVtLS1kaXNhYmxlZHtjb2xvcjpyZ2JhKDAsMCwwLC4yNil9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYnNfX2JhciwudGhlbWUtLWRhcmsgLnRhYnNfX2JhcntiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYnNfX2JhciAudGFic19fZGl2LC50aGVtZS0tZGFyayAudGFic19fYmFyIC50YWJzX19kaXZ7Y29sb3I6I2ZmZn0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGFic19fYmFyIC50YWJzX19pdGVtLS1kaXNhYmxlZCwudGhlbWUtLWRhcmsgLnRhYnNfX2JhciAudGFic19faXRlbS0tZGlzYWJsZWR7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjMpfSAgICAgXFxuLnRhYnMsLnRhYnNfX2Jhcntwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi50YWJzX19pY29uey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3dpZHRoOjMycHh9ICAgICBcXG4udGFic19faWNvbi0tcHJldntsZWZ0OjRweH0gICAgIFxcbi50YWJzX19pY29uLS1uZXh0e3JpZ2h0OjRweH0gICAgIFxcbi50YWJzX193cmFwcGVye292ZXJmbG93OmhpZGRlbjtjb250YWluOmNvbnRlbnQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0gICAgIFxcbi50YWJzX193cmFwcGVyLS1zaG93LWFycm93c3ttYXJnaW4tbGVmdDo0MHB4O21hcmdpbi1yaWdodDo0MHB4fSAgICAgXFxuLnRhYnNfX3dyYXBwZXItLXNob3ctYXJyb3dzIC50YWJzX19jb250YWluZXItLWFsaWduLXdpdGgtdGl0bGV7cGFkZGluZy1sZWZ0OjE2cHh9ICAgICBcXG4udGFic19fY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ4cHg7bGlzdC1zdHlsZS10eXBlOm5vbmU7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNnMgY3ViaWMtYmV6aWVyKC44NiwwLC4wNywxKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSksIC13ZWJraXQtdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpLC13ZWJraXQtdHJhbnNmb3JtIC42cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpO3doaXRlLXNwYWNlOm5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi50YWJzX19jb250YWluZXIsLnRhYnNfX2NvbnRhaW5lci0tZ3JvdyAudGFic19fZGl2LC50YWJzX19jb250YWluZXItLW92ZXJmbG93IC50YWJzX19kaXZ7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG99ICAgICBcXG4udGFic19fY29udGFpbmVyLS1ncm93IC50YWJzX19kaXZ7bWF4LXdpZHRoOm5vbmV9ICAgICBcXG4udGFic19fY29udGFpbmVyLS1pY29ucy1hbmQtdGV4dHtoZWlnaHQ6NzJweH0gICAgIFxcbi50YWJzX19jb250YWluZXItLWFsaWduLXdpdGgtdGl0bGV7cGFkZGluZy1sZWZ0OjU2cHh9ICAgICBcXG4udGFic19fY29udGFpbmVyLS1jZW50ZXJlZCAudGFic19fZGl2LC50YWJzX19jb250YWluZXItLWZpeGVkLXRhYnMgLnRhYnNfX2RpdiwudGFic19fY29udGFpbmVyLS1pY29ucy1hbmQtdGV4dCAudGFic19fZGl2e21pbi13aWR0aDo3MnB4fSAgICAgXFxuLnRhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQgLnRhYnNfX3NsaWRlci13cmFwcGVyKy50YWJzX19kaXYsLnRhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQ+LnRhYnNfX2RpdjpmaXJzdC1jaGlsZCwudGFic19fY29udGFpbmVyLS1maXhlZC10YWJzIC50YWJzX19zbGlkZXItd3JhcHBlcisudGFic19fZGl2LC50YWJzX19jb250YWluZXItLWZpeGVkLXRhYnM+LnRhYnNfX2RpdjpmaXJzdC1jaGlsZCwudGFic19fY29udGFpbmVyLS1yaWdodCAudGFic19fc2xpZGVyLXdyYXBwZXIrLnRhYnNfX2RpdiwudGFic19fY29udGFpbmVyLS1yaWdodD4udGFic19fZGl2OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OmF1dG99ICAgICBcXG4udGFic19fY29udGFpbmVyLS1jZW50ZXJlZD4udGFic19fZGl2Omxhc3QtY2hpbGQsLnRhYnNfX2NvbnRhaW5lci0tZml4ZWQtdGFicz4udGFic19fZGl2Omxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OmF1dG99ICAgICBcXG4udGFic19fY29udGFpbmVyLS1pY29ucy1hbmQtdGV4dCAudGFic19faXRlbXstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfSAgICAgXFxuLnRhYnNfX2NvbnRhaW5lci0taWNvbnMtYW5kLXRleHQgLnRhYnNfX2l0ZW0gLmljb257bWFyZ2luLWJvdHRvbTo2cHh9ICAgICBcXG4udGFic19fZGl2ey1tcy1mbGV4LWFsaWduOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDEgYXV0bztmbGV4OjAgMSBhdXRvO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDpub3JtYWw7aGVpZ2h0OmluaGVyaXQ7bWF4LXdpZHRoOjI2NHB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9ICAgICBcXG4udGFic19fZGl2LC50YWJzX19pdGVtey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfSAgICAgXFxuLnRhYnNfX2l0ZW17LW1zLWZsZXgtYWxpZ246Y2VudGVyO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxO2ZsZXg6MSAxOy1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjI2NHB4O2ZsZXgtYmFzaXM6MjY0cHg7aGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXgtd2lkdGg6aW5oZXJpdDtwYWRkaW5nOjZweCAxMnB4O3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3JtYWx9ICAgICBcXG4udGFic19faXRlbTpub3QoLnRhYnNfX2l0ZW0tLWFjdGl2ZSl7b3BhY2l0eTouN30gICAgIFxcbi50YWJzX19pdGVtLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLnRhYnNfX3NsaWRlcntoZWlnaHQ6MnB4O3dpZHRoOjEwMCV9ICAgICBcXG4udGFic19fc2xpZGVyLXdyYXBwZXJ7Ym90dG9tOjA7bWFyZ2luOjAhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfSAgICAgXFxuLnRhYnNfX2l0ZW1ze292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0gICAgIFxcbi50YWJzX19jb250ZW50e3dpZHRoOjEwMCU7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC44NiwwLC4wNywxKTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjRzIGN1YmljLWJlemllciguODYsMCwuMDcsMSksIC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpfSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjU5OXB4KXsudGFic19fd3JhcHBlci0tc2hvdy1hcnJvd3MgLnRhYnNfX2NvbnRhaW5lci0tYWxpZ24td2l0aC10aXRsZXtwYWRkaW5nLWxlZnQ6MjRweH0udGFic19fY29udGFpbmVyLS1hbGlnbi13aXRoLXRpdGxle3BhZGRpbmctbGVmdDo2NHB4fS50YWJzX19jb250YWluZXItLWZpeGVkLXRhYnMgLnRhYnNfX2Rpdnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b319ICAgICBcXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjAwcHgpey50YWJzX19jb250YWluZXItLWNlbnRlcmVkIC50YWJzX19kaXYsLnRhYnNfX2NvbnRhaW5lci0tZml4ZWQtdGFicyAudGFic19fZGl2LC50YWJzX19jb250YWluZXItLWljb25zLWFuZC10ZXh0IC50YWJzX19kaXZ7bWluLXdpZHRoOjE2MHB4fX0gICAgIFxcbi50aW1lLXBpY2tlci10aXRsZXtjb2xvcjojZmZmO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7bGluZS1oZWlnaHQ6MTstd2Via2l0LWJveC1wYWNrOmVuZDstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9ICAgICBcXG4udGltZS1waWNrZXItdGl0bGVfX3RpbWV7d2hpdGUtc3BhY2U6bm93cmFwfSAgICAgXFxuLnRpbWUtcGlja2VyLXRpdGxlX190aW1lIC5waWNrZXJfX3RpdGxlX19idG4sLnRpbWUtcGlja2VyLXRpdGxlX190aW1lIHNwYW57LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDtoZWlnaHQ6NzBweDtmb250LXNpemU6NzBweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfSAgICAgXFxuLnRpbWUtcGlja2VyLXRpdGxlX19hbXBtey1tcy1mbGV4LWl0ZW0tYWxpZ246ZW5kO2FsaWduLXNlbGY6ZmxleC1lbmQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LXNpemU6MTZweDttYXJnaW46OHB4IDAgNnB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9ICAgICBcXG4udGltZS1waWNrZXItdGl0bGVfX2FtcG0gZGl2Om9ubHktY2hpbGR7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30gICAgIFxcbi5waWNrZXJfX3RpdGxlLS1sYW5kc2NhcGUgLnRpbWUtcGlja2VyLXRpdGxley13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCV9ICAgICBcXG4ucGlja2VyX190aXRsZS0tbGFuZHNjYXBlIC50aW1lLXBpY2tlci10aXRsZV9fdGltZXt0ZXh0LWFsaWduOnJpZ2h0fSAgICAgXFxuLnBpY2tlcl9fdGl0bGUtLWxhbmRzY2FwZSAudGltZS1waWNrZXItdGl0bGVfX3RpbWUgLnBpY2tlcl9fdGl0bGVfX2J0biwucGlja2VyX190aXRsZS0tbGFuZHNjYXBlIC50aW1lLXBpY2tlci10aXRsZV9fdGltZSBzcGFue2hlaWdodDo1NXB4O2ZvbnQtc2l6ZTo1NXB4fSAgICAgXFxuLnBpY2tlcl9fdGl0bGUtLWxhbmRzY2FwZSAudGltZS1waWNrZXItdGl0bGVfX2FtcG17bWFyZ2luOjE2cHggMCAwOy1tcy1mbGV4LWl0ZW0tYWxpZ246aW5pdGlhbDthbGlnbi1zZWxmOmF1dG87dGV4dC1hbGlnbjpjZW50ZXJ9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jaywudGhlbWUtLWxpZ2h0IC50aW1lLXBpY2tlci1jbG9ja3tiYWNrZ3JvdW5kOiNlMGUwZTB9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVkLC50aGVtZS0tbGlnaHQgLnRpbWUtcGlja2VyLWNsb2NrPnNwYW4uZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwuMjYpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZC5hY3RpdmUsLnRoZW1lLS1saWdodCAudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZC5hY3RpdmV7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjMpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGUgLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kLC50aGVtZS0tbGlnaHQgLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlIC50aW1lLXBpY2tlci1jbG9ja19faGFuZHtiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXIsLnRoZW1lLS1saWdodCAudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGUgLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmFmdGVye2NvbG9yOiNiZGJkYmR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZT5zcGFuLmFjdGl2ZSwudGhlbWUtLWxpZ2h0IC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZT5zcGFuLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmR9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRpbWUtcGlja2VyLWNsb2NrLC50aGVtZS0tZGFyayAudGltZS1waWNrZXItY2xvY2t7YmFja2dyb3VuZDojNjE2MTYxfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZC5hY3RpdmUsLnRoZW1lLS1kYXJrIC50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVkLC50aGVtZS0tZGFyayAudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZC5hY3RpdmV7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjMpfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQsLnRoZW1lLS1kYXJrIC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmR7YmFja2dyb3VuZC1jb2xvcjojNzU3NTc1fSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXIsLnRoZW1lLS1kYXJrIC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXJ7Y29sb3I6Izc1NzU3NX0gICAgIFxcbi5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGU+c3Bhbi5hY3RpdmUsLnRoZW1lLS1kYXJrIC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZT5zcGFuLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiM3NTc1NzV9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2t7Ym9yZGVyLXJhZGl1czoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0gICAgIFxcbi50aW1lLXBpY2tlci1jbG9ja19fY29udGFpbmVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjEwcHh9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2tfX2hhbmR7aGVpZ2h0OmNhbGMoNTAlIC0gMjhweCk7d2lkdGg6MnB4O2JvdHRvbTo1MCU7bGVmdDpjYWxjKDUwJSAtIDFweCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBib3R0b207dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3Bvc2l0aW9uOmFic29sdXRlO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTt6LWluZGV4OjF9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YmVmb3Jle2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXdpZHRoOjJweDt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O3RvcDotMyV9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXIsLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmJlZm9yZXtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLXJhZGl1czoxMDAlO2NvbnRlbnQ6XFxcIlxcXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfSAgICAgXFxuLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmFmdGVye2hlaWdodDo4cHg7d2lkdGg6OHB4O3RvcDoxMDAlO2JhY2tncm91bmQtY29sb3I6aW5oZXJpdH0gICAgIFxcbi50aW1lLXBpY2tlci1jbG9jaz5zcGFuey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTAwJTtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxNnB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGVmdDpjYWxjKDUwJSAtIDQwcHggLyAyKTtoZWlnaHQ6NDBweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6Y2FsYyg1MCUgLSA0MHB4IC8gMik7d2lkdGg6NDBweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2s+c3Bhbj5zcGFue3otaW5kZXg6MX0gICAgIFxcbi50aW1lLXBpY2tlci1jbG9jaz5zcGFuOmFmdGVyLC50aW1lLXBpY2tlci1jbG9jaz5zcGFuOmJlZm9yZXtjb250ZW50OlxcXCJcXFwiO2JvcmRlci1yYWRpdXM6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO2hlaWdodDoxNHB4O3dpZHRoOjE0cHg7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2hlaWdodDo0MHB4O3dpZHRoOjQwcHh9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2s+c3Bhbi5hY3RpdmV7Y29sb3I6I2ZmZjtjdXJzb3I6ZGVmYXVsdDt6LWluZGV4OjJ9ICAgICBcXG4udGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudG9vbGJhciwudGhlbWUtLWxpZ2h0IC50b29sYmFye2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9ICAgICBcXG4uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRvb2xiYXIsLnRoZW1lLS1kYXJrIC50b29sYmFye2JhY2tncm91bmQtY29sb3I6IzIxMjEyMTtjb2xvcjojZmZmfSAgICAgXFxuLnRvb2xiYXJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lOy13ZWJraXQtYm94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTt3aWxsLWNoYW5nZTpwYWRkaW5nLWxlZnR9ICAgICBcXG4udG9vbGJhcltkYXRhLWJvb3RlZD10cnVlXXstd2Via2l0LXRyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpfSAgICAgXFxuLnRvb2xiYXIgLmlucHV0LWdyb3VwLS1zb2xvIC5pbnB1dC1ncm91cF9fZGV0YWlsc3tkaXNwbGF5Om5vbmV9ICAgICBcXG4udG9vbGJhciAuaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lOm5vdCguaW5wdXQtZ3JvdXAtLXNvbG8pe3BhZGRpbmc6MH0gICAgIFxcbi50b29sYmFyIC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmU6bm90KC5pbnB1dC1ncm91cC0tc29sbykgbGFiZWx7dG9wOmF1dG99ICAgICBcXG4udG9vbGJhciAudGFic3t3aWR0aDoxMDAlfSAgICAgXFxuLnRvb2xiYXJfX3RpdGxle2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzouMDJlbTttYXJnaW4tbGVmdDoxNnB4O3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30gICAgIFxcbi50b29sYmFyX19jb250ZW50LC50b29sYmFyX19leHRlbnNpb257LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0gICAgIFxcbi50b29sYmFyX19jb250ZW50Pi5saXN0LC50b29sYmFyX19leHRlbnNpb24+Lmxpc3R7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWFyZ2luOjAhaW1wb3J0YW50O21heC1oZWlnaHQ6MTAwJX0gICAgIFxcbi50b29sYmFyX19jb250ZW50Pi5idG46bGFzdC1jaGlsZCwudG9vbGJhcl9fY29udGVudD4ubWVudTpsYXN0LWNoaWxkLC50b29sYmFyX19leHRlbnNpb24+LmJ0bjpsYXN0LWNoaWxkLC50b29sYmFyX19leHRlbnNpb24+Lm1lbnU6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6OHB4fSAgICAgXFxuLnRvb2xiYXJfX2NvbnRlbnQ+LmJ0bjpmaXJzdC1jaGlsZCwudG9vbGJhcl9fY29udGVudD4ubWVudTpmaXJzdC1jaGlsZCwudG9vbGJhcl9fZXh0ZW5zaW9uPi5idG46Zmlyc3QtY2hpbGQsLnRvb2xiYXJfX2V4dGVuc2lvbj4ubWVudTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4cHh9ICAgICBcXG4udG9vbGJhcl9fY29udGVudD46bm90KC5idG4pOm5vdCgubWVudSk6Zmlyc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKSwudG9vbGJhcl9fZXh0ZW5zaW9uPjpub3QoLmJ0bik6bm90KC5tZW51KTpmaXJzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpe21hcmdpbi1sZWZ0OjE2cHh9ICAgICBcXG4udG9vbGJhcl9fY29udGVudD46bm90KC5idG4pOm5vdCgubWVudSk6bGFzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpLC50b29sYmFyX19leHRlbnNpb24+Om5vdCguYnRuKTpub3QoLm1lbnUpOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tcmlnaHQ6MTZweH0gICAgIFxcbi50b29sYmFyX19pdGVtc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2hlaWdodDppbmhlcml0O21heC13aWR0aDoxMDAlO3BhZGRpbmc6MH0gICAgIFxcbi50b29sYmFyX19pdGVtcyAuYnRuey13ZWJraXQtYm94LWFsaWduOnN0cmV0Y2g7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofSAgICAgXFxuLnRvb2xiYXJfX2l0ZW1zIC50b29sdGlwLC50b29sYmFyX19pdGVtcyAudG9vbHRpcD5zcGFue2hlaWdodDppbmhlcml0fSAgICAgXFxuLnRvb2xiYXJfX2l0ZW1zIC5idG4sLnRvb2xiYXJfX2l0ZW1zIC5tZW51LC50b29sYmFyX19pdGVtcyAubWVudV9fYWN0aXZhdG9ye2hlaWdodDppbmhlcml0O21hcmdpbjowfSAgICAgXFxuLnRvb2xiYXItLWNhcmR7Ym9yZGVyLXJhZGl1czoycHggMnB4IDAgMDstd2Via2l0LWJveC1zaGFkb3c6MCAwIDAgMCByZ2JhKDAsMCwwLC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsLjE0KSwwIDAgMCAwIHJnYmEoMCwwLDAsLjEyKTtib3gtc2hhZG93OjAgMCAwIDAgcmdiYSgwLDAsMCwuMiksMCAwIDAgMCByZ2JhKDAsMCwwLC4xNCksMCAwIDAgMCByZ2JhKDAsMCwwLC4xMil9ICAgICBcXG4udG9vbGJhci0tZml4ZWR7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoyfSAgICAgXFxuLnRvb2xiYXItLWFic29sdXRlLC50b29sYmFyLS1maXhlZHt0b3A6MDtsZWZ0OjB9ICAgICBcXG4udG9vbGJhci0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfSAgICAgXFxuLnRvb2xiYXItLWZsb2F0aW5ne2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjE2cHg7d2lkdGg6YXV0b30gICAgIFxcbi50b29sYmFyLS1jbGlwcGVke3otaW5kZXg6M30gICAgIFxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTlweCl7LnRvb2xiYXIgLnRvb2xiYXJfX2NvbnRlbnQ+LmJ0bjpsYXN0LWNoaWxkLC50b29sYmFyIC50b29sYmFyX19leHRlbnNpb24+LmJ0bjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDoxN3B4fS50b29sYmFyIC50b29sYmFyX19jb250ZW50Pi5idG46Zmlyc3QtY2hpbGQsLnRvb2xiYXIgLnRvb2xiYXJfX2V4dGVuc2lvbj4uYnRuOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjE3cHh9LnRvb2xiYXIgLnRvb2xiYXJfX2NvbnRlbnQ+Om5vdCguYnRuKTpub3QoLm1lbnUpOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCksLnRvb2xiYXIgLnRvb2xiYXJfX2V4dGVuc2lvbj46bm90KC5idG4pOm5vdCgubWVudSk6Zmlyc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tbGVmdDoyNHB4fS50b29sYmFyIC50b29sYmFyX19jb250ZW50Pjpub3QoLmJ0bik6bm90KC5tZW51KTpsYXN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCksLnRvb2xiYXIgLnRvb2xiYXJfX2V4dGVuc2lvbj46bm90KC5idG4pOm5vdCgubWVudSk6bGFzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpe21hcmdpbi1yaWdodDoyNHB4fX0gICAgIFxcbi50b29sdGlwe3Bvc2l0aW9uOnJlbGF0aXZlfSAgICAgXFxuLnRvb2x0aXBfX2NvbnRlbnR7YmFja2dyb3VuZDojNjE2MTYxO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzo1cHggOHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtdHJhbnNmb3JtOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOi4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOi4xNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDphdXRvOy13ZWJraXQtYm94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0gICAgIFxcbi50b29sdGlwX19jb250ZW50W2NsYXNzKj0tYWN0aXZlXXtwb2ludGVyLWV2ZW50czpub25lfSAgICAgXFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk1OXB4KXsudG9vbHRpcCAudG9vbHRpcF9fY29udGVudHtwYWRkaW5nOjEwcHggMTZweH19XCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkubWluLmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQTs7OztFQUlFO0FBQ0YscUJBQXFCLElBQUksYUFBYSxDQUFDLFFBQVEsZUFBZSxDQUFDLFFBQVEsZ0JBQWdCLENBQUMsQ0FBQztBQUFBLGFBQWEsSUFBSSxhQUFhLENBQUMsUUFBUSxlQUFlLENBQUMsUUFBUSxnQkFBZ0IsQ0FBQyxDQUFDO0FBQUEsT0FBTyxnQ0FBZ0MsMkJBQTJCLENBQUM7QUFBQSxhQUFhLG9CQUFvQixDQUFDO0FBQUEseUNBQXlDLDBCQUEwQixDQUFDO0FBQUEsb0JBQW9CLHlCQUF5QixDQUFDO0FBQUEsT0FBTyxnQ0FBZ0MsMkJBQTJCLENBQUM7QUFBQSxhQUFhLG9CQUFvQixDQUFDO0FBQUEseUNBQXlDLDBCQUEwQixDQUFDO0FBQUEsb0JBQW9CLHlCQUF5QixDQUFDO0FBQUEsYUFBYSx1Q0FBdUMsa0NBQWtDLENBQUM7QUFBQSxtQkFBbUIsMkJBQTJCLENBQUM7QUFBQSxxREFBcUQsaUNBQWlDLENBQUM7QUFBQSwwQkFBMEIsZ0NBQWdDLENBQUM7QUFBQSxLQUFLLG1D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MkMsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsNEJBQTRCLENBQUM7QUFBQSxrQkFBa0IsOEJBQThCLENBQUM7QUFBQSxpREFBaUQsa0NBQWtDLENBQUM7QUFBQSw4QkFBOEIsdUJBQXVCLENBQUM7QUFBQSwyRUFBMkUsNkJBQTZCLENBQUM7QUFBQSxrQkFBa0IsOEJBQThCLENBQUM7QUFBQSxpREFBaUQsa0NBQWtDLENBQUM7QUFBQSw4QkFBOEIsdUJBQXVCLENBQUM7QUFBQSwyRUFBMkUsNkJBQTZCLENBQUM7QUFBQSxrQkFBa0IsOEJBQThCLENBQUM7QUFBQSxpREFBaUQsa0NBQWtDLENBQUM7QUFBQSw4QkFBOEIsdUJBQXVCLENBQUM7QUFBQSwyRUFBMkUsNkJBQTZCLENBQUM7QUFBQSxrQkFBa0IsOEJBQThCLENBQUM7QUFBQSxpREFBaUQsa0NBQWtDLENBQUM7QUFBQSw4QkFBOEIsdUJBQXVCLENBQUM7QUFBQSwyRUFBMkUsNkJBQTZCLENBQUM7QUFBQSxrQkFBa0IsOEJBQThCLENBQUM7QUFBQSxpREFBaUQsa0NBQWtDLENBQUM7QUFBQSw4QkFBOEIsdUJBQXVCLENBQUM7QUFBQSwyRUFBMkUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsOEJBQThCLENBQUM7QUFBQSwrQ0FBK0Msa0NBQWtDLENBQUM7QUFBQSw2QkFBNkIsdUJBQXVCLENBQUM7QUFBQSx5RUFBeUUsNkJBQTZCLENBQUM7QUFBQSxpQkFBaUIsMkJBQTJCLENBQUM7QUFBQSwrQ0FBK0MsK0JBQStCLENBQUM7QUFBQSw2QkFBNkIsb0JBQW9CLENBQUM7QUFBQSx5RUFBeUUsMEJBQTBCLENBQUM7QUFBQSxhQUFhLG1DQUFtQyw4QkFBOEIsQ0FBQztBQUFBLG1CQUFtQix1QkFBdUIsQ0FBQztBQUFBLHFEQUFxRCw2QkFBNkIsQ0FBQztBQUFBLDBCQUEwQiw0QkFBNEIsQ0FBQztBQUFBLHVCQUF1Qiw4QkFBOEIsQ0FBQztBQUFBLDJEQUEyRCxrQ0FBa0MsQ0FBQztBQUFBLG1DQUFtQyx1QkFBdUIsQ0FBQztBQUFBLHFGQUFxRiw2QkFBNkIsQ0FBQztBQUFBLHVCQUF1Qiw4QkFBOEIsQ0FBQztBQUFBLDJEQUEyRCxrQ0FBa0MsQ0FBQztBQUFBLG1DQUFtQyx1QkFBdUIsQ0FBQztBQUFBLHFGQUFxRiw2QkFBNkIsQ0FBQztBQUFBLHVCQUF1Qiw4QkFBOEIsQ0FBQztBQUFBLDJEQUEyRCxrQ0FBa0MsQ0FBQztBQUFBLG1DQUFtQyx1QkFBdUIsQ0FBQztBQUFBLHFGQUFxRiw2QkFBNkIsQ0FBQztBQUFBLHVCQUF1Qiw4QkFBOEIsQ0FBQztBQUFBLDJEQUEyRCxrQ0FBa0MsQ0FBQztBQUFBLG1DQUFtQyx1QkFBdUIsQ0FBQztBQUFBLHFGQUFxRiw2QkFBNkIsQ0FBQztBQUFBLHVCQUF1Qiw4QkFBOEIsQ0FBQztBQUFBLDJEQUEyRCxrQ0FBa0MsQ0FBQztBQUFBLG1DQUFtQyx1QkFBdUIsQ0FBQztBQUFBLHFGQUFxRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLHNCQUFzQiw4QkFBOEIsQ0FBQztBQUFBLHlEQUF5RCxrQ0FBa0MsQ0FBQztBQUFBLGtDQUFrQyx1QkFBdUIsQ0FBQztBQUFBLG1GQUFtRiw2QkFBNkIsQ0FBQztBQUFBLFFBQVEsbUNBQW1DLDhCQUE4QixDQUFDO0FBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUFBLDJDQUEyQyw2QkFBNkIsQ0FBQztBQUFBLHFCQUFxQiw0QkFBNEIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLE1BQU0sbUNBQW1DLDhCQUE4QixDQUFDO0FBQUEsWUFBWSx1QkFBdUIsQ0FBQztBQUFBLHVDQUF1Qyw2QkFBNkIsQ0FBQztBQUFBLG1CQUFtQiw0QkFBNEIsQ0FBQztBQUFBLGdCQUFnQiw4QkFBOEIsQ0FBQztBQUFBLDZDQUE2QyxrQ0FBa0MsQ0FBQztBQUFBLDRCQUE0Qix1QkFBdUIsQ0FBQztBQUFBLHVFQUF1RSw2QkFBNkIsQ0FBQztBQUFBLGdCQUFnQiw4QkFBOEIsQ0FBQztBQUFBLDZDQUE2QyxrQ0FBa0MsQ0FBQztBQUFBLDRCQUE0Qix1QkFBdUIsQ0FBQztBQUFBLHVFQUF1RSw2QkFBNkIsQ0FBQztBQUFBLGdCQUFnQiw4QkFBOEIsQ0FBQztBQUFBLDZDQUE2QyxrQ0FBa0MsQ0FBQztBQUFBLDRCQUE0Qix1QkFBdUIsQ0FBQztBQUFBLHVFQUF1RSw2QkFBNkIsQ0FBQztBQUFBLGdCQUFnQiw4QkFBOEIsQ0FBQztBQUFBLDZDQUE2QyxrQ0FBa0MsQ0FBQztBQUFBLDRCQUE0Qix1QkFBdUIsQ0FBQztBQUFBLHVFQUF1RSw2QkFBNkIsQ0FBQztBQUFBLGdCQUFnQiw4QkFBOEIsQ0FBQztBQUFBLDZDQUE2QyxrQ0FBa0MsQ0FBQztBQUFBLDRCQUE0Qix1QkFBdUIsQ0FBQztBQUFBLHVFQUF1RSw2QkFBNkIsQ0FBQztBQUFBLGVBQWUsOEJBQThCLENBQUM7QUFBQSwyQ0FBMkMsa0NBQWtDLENBQUM7QUFBQSwyQkFBMkIsdUJBQXVCLENBQUM7QUFBQSxxRUFBcUUsNkJBQTZCLENBQUM7QUFBQSxlQUFlLDhCQUE4QixDQUFDO0FBQUEsMkNBQTJDLGtDQUFrQyxDQUFDO0FBQUEsMkJBQTJCLHVCQUF1QixDQUFDO0FBQUEscUVBQXFFLDZCQUE2QixDQUFDO0FBQUEsZUFBZSw4QkFBOEIsQ0FBQztBQUFBLDJDQUEyQyxrQ0FBa0MsQ0FBQztBQUFBLDJCQUEyQix1QkFBdUIsQ0FBQztBQUFBLHFFQUFxRSw2QkFBNkIsQ0FBQztBQUFBLGVBQWUsOEJBQThCLENBQUM7QUFBQSwyQ0FBMkMsa0NBQWtDLENBQUM7QUFBQSwyQkFBMkIsdUJBQXVCLENBQUM7QUFBQSxxRUFBcUUsNkJBQTZCLENBQUM7QUFBQSxlQUFlLDhCQUE4QixDQUFDO0FBQUEsMkNBQTJDLGtDQUFrQyxDQUFDO0FBQUEsMkJBQTJCLHVCQUF1QixDQUFDO0FBQUEscUVBQXFFLDZCQUE2QixDQUFDO0FBQUEsZUFBZSw4QkFBOEIsQ0FBQztBQUFBLDJDQUEyQyxrQ0FBa0MsQ0FBQztBQUFBLDJCQUEyQix1QkFBdUIsQ0FBQztBQUFBLHFFQUFxRSw2QkFBNkIsQ0FBQztBQUFBLGVBQWUsOEJBQThCLENBQUM7QUFBQSwyQ0FBMkMsa0NBQWtDLENBQUM7QUFBQSwyQkFBMkIsdUJBQXVCLENBQUM7QUFBQSxxRUFBcUUsNkJBQTZCLENBQUM7QUFBQSxlQUFlLDhCQUE4QixDQUFDO0FBQUEsMkNBQTJDLGtDQUFrQyxDQUFDO0FBQUEsMkJBQTJCLHVCQUF1QixDQUFDO0FBQUEscUVBQXFFLDZCQUE2QixDQUFDO0FBQUEsWUFBWSxtQ0FBbUMsOEJBQThCLENBQUM7QUFBQSxrQkFBa0IsdUJBQXVCLENBQUM7QUFBQSxtREFBbUQsNkJBQTZCLENBQUM7QUFBQSx5QkFBeUIsNEJBQTRCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsOEJBQThCLENBQUM7QUFBQSx1REFBdUQsa0NBQWtDLENBQUM7QUFBQSxpQ0FBaUMsdUJBQXVCLENBQUM7QUFBQSxpRkFBaUYsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsOEJBQThCLENBQUM7QUFBQSx1REFBdUQsa0NBQWtDLENBQUM7QUFBQSxpQ0FBaUMsdUJBQXVCLENBQUM7QUFBQSxpRkFBaUYsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsOEJBQThCLENBQUM7QUFBQSx1REFBdUQsa0NBQWtDLENBQUM7QUFBQSxpQ0FBaUMsdUJBQXVCLENBQUM7QUFBQSxpRkFBaUYsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsOEJBQThCLENBQUM7QUFBQSx1REFBdUQsa0NBQWtDLENBQUM7QUFBQSxpQ0FBaUMsdUJBQXVCLENBQUM7QUFBQSxpRkFBaUYsNkJBQTZCLENBQUM7QUFBQSxxQkFBcUIsOEJBQThCLENB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QSwyREFBMkQsa0NBQWtDLENBQUM7QUFBQSxtQ0FBbUMsdUJBQXVCLENBQUM7QUFBQSxxRkFBcUYsNkJBQTZCLENBQUM7QUFBQSx1QkFBdUIsOEJBQThCLENBQUM7QUFBQSwyREFBMkQsa0NBQWtDLENBQUM7QUFBQSxtQ0FBbUMsdUJBQXVCLENBQUM7QUFBQSxxRkFBcUYsNkJBQTZCLENBQUM7QUFBQSx1QkFBdUIsOEJBQThCLENBQUM7QUFBQSwyREFBMkQsa0NBQWtDLENBQUM7QUFBQSxtQ0FBbUMsdUJBQXVCLENBQUM7QUFBQSxxRkFBcUYsNkJBQTZCLENBQUM7QUFBQSx1QkFBdUIsOEJBQThCLENBQUM7QUFBQSwyREFBMkQsa0NBQWtDLENBQUM7QUFBQSxtQ0FBbUMsdUJBQXVCLENBQUM7QUFBQSxxRkFBcUYsNkJBQTZCLENBQUM7QUFBQSx1QkFBdUIsOEJBQThCLENBQUM7QUFBQSwyREFBMkQsa0NBQWtDLENBQUM7QUFBQSxtQ0FBbUMsdUJBQXVCLENBQUM7QUFBQSxxRkFBcUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJBQXVCLENBQUM7QUFBQSxtRkFBbUYsNkJBQTZCLENBQUM7QUFBQSxzQkFBc0IsOEJBQThCLENBQUM7QUFBQSx5REFBeUQsa0NBQWtDLENBQUM7QUFBQSxrQ0FBa0MsdUJB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QUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2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QUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGtCQUFrQiw4QkFBOEIsQ0FBQztBQUFBLGlEQUFpRCxrQ0FBa0MsQ0FBQztBQUFBLDhCQUE4Qix1QkFBdUIsQ0FBQztBQUFBLDJFQUEyRSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIsQ0FBQztBQUFBLGlCQUFpQiw4QkFBOEIsQ0FBQztBQUFBLCtDQUErQyxrQ0FBa0MsQ0FBQztBQUFBLDZCQUE2Qix1QkFBdUIsQ0FBQztBQUFBLHlFQUF5RSw2QkFBNkIs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LENBQUMsQ0FBQ1wiLFwiZmlsZVwiOlwidnVldGlmeS5taW4uY3NzXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIi8qIVxcbiogVnVldGlmeSB2MS4wLjE3XFxuKiBGb3JnZWQgYnkgSm9obiBMZWlkZXJcXG4qIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS5cXG4qLyAgICAgXFxuQC13ZWJraXQta2V5ZnJhbWVzIGF7NTkle21hcmdpbi1sZWZ0OjB9NjAlLDgwJXttYXJnaW4tbGVmdDoycHh9NzAlLDkwJXttYXJnaW4tbGVmdDotMnB4fX1Aa2V5ZnJhbWVzIGF7NTkle21hcmdpbi1sZWZ0OjB9NjAlLDgwJXttYXJnaW4tbGVmdDoycHh9NzAlLDkwJXttYXJnaW4tbGVmdDotMnB4fX0uYmxhY2t7YmFja2dyb3VuZC1jb2xvcjojMDAwIWltcG9ydGFudDtib3JkZXItY29sb3I6IzAwMCFpbXBvcnRhbnR9LmJsYWNrLS10ZXh0e2NvbG9yOiMwMDAhaW1wb3J0YW50fS5ibGFjay0tdGV4dCBpbnB1dCwuYmxhY2stLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwMCFpbXBvcnRhbnR9LmJsYWNrLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiMwMDAhaW1wb3J0YW50fS53aGl0ZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmYhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojZmZmIWltcG9ydGFudH0ud2hpdGUtLXRleHR7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LndoaXRlLS10ZXh0IGlucHV0LC53aGl0ZS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZmIWltcG9ydGFudH0ud2hpdGUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6I2ZmZiFpbXBvcnRhbnR9LnRyYW5zcGFyZW50e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9LnRyYW5zcGFyZW50LS10ZXh0e2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0udHJhbnNwYXJlbnQtLXRleHQgaW5wdXQsLnRyYW5zcGFyZW50LS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0udHJhbnNwYXJlbnQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5yZWR7YmFja2dyb3VuZC1jb2xvcjojZjQ0MzM2IWltcG9ydGFudDtib3JkZXItY29sb3I6I2Y0NDMzNiFpbXBvcnRhbnR9LnJlZC0tdGV4dHtjb2xvcjojZjQ0MzM2IWltcG9ydGFudH0ucmVkLS10ZXh0IGlucHV0LC5yZWQtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y0NDMzNiFpbXBvcnRhbnR9LnJlZC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojZjQ0MzM2IWltcG9ydGFudH0ucmVkLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2ZmZWJlZSFpbXBvcnRhbnR9LnJlZC5saWdodGVuLTUsLnJlZC5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZWJlZSFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2ZmZWJlZSFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZWJlZSFpbXBvcnRhbnR9LnJlZC5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmZmNkZDIhaW1wb3J0YW50fS5yZWQubGlnaHRlbi00LC5yZWQubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmNkZDIhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNmZmNkZDIhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmNkZDIhaW1wb3J0YW50fS5yZWQubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojZWY5YTlhIWltcG9ydGFudH0ucmVkLmxpZ2h0ZW4tMywucmVkLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWY5YTlhIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZWY5YTlhIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWY5YTlhIWltcG9ydGFudH0ucmVkLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6I2U1NzM3MyFpbXBvcnRhbnR9LnJlZC5saWdodGVuLTIsLnJlZC5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U1NzM3MyFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2U1NzM3MyFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLnJlZC0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2U1NzM3MyFpbXBvcnRhbnR9LnJlZC5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNlZjUzNTAhaW1wb3J0YW50fS5yZWQubGlnaHRlbi0xLC5yZWQubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlZjUzNTAhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiNlZjUzNTAhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5yZWQtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlZjUzNTAhaW1wb3J0YW50fS5yZWQuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiNlNTM5MzUhaW1wb3J0YW50fS5yZWQuZGFya2VuLTEsLnJlZC5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTUzOTM1IWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNlNTM5MzUhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZTUzOTM1IWltcG9ydGFudH0ucmVkLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojZDMyZjJmIWltcG9ydGFudH0ucmVkLmRhcmtlbi0yLC5yZWQuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2QzMmYyZiFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojZDMyZjJmIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5yZWQtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2QzMmYyZiFpbXBvcnRhbnR9LnJlZC5kYXJrZW4tM3tib3JkZXItY29sb3I6I2M2MjgyOCFpbXBvcnRhbnR9LnJlZC5kYXJrZW4tMywucmVkLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjNjI4MjghaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6I2M2MjgyOCFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjNjI4MjghaW1wb3J0YW50fS5yZWQuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiNiNzFjMWMhaW1wb3J0YW50fS5yZWQuZGFya2VuLTQsLnJlZC5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjcxYzFjIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiNiNzFjMWMhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnJlZC0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjcxYzFjIWltcG9ydGFudH0ucmVkLmFjY2VudC0xe2JvcmRlci1jb2xvcjojZmY4YTgwIWltcG9ydGFudH0ucmVkLmFjY2VudC0xLC5yZWQuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmOGE4MCFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZmY4YTgwIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5yZWQtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmOGE4MCFpbXBvcnRhbnR9LnJlZC5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmNTI1MiFpbXBvcnRhbnR9LnJlZC5hY2NlbnQtMiwucmVkLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjUyNTIhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6I2ZmNTI1MiFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwucmVkLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjUyNTIhaW1wb3J0YW50fS5yZWQuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNmZjE3NDQhaW1wb3J0YW50fS5yZWQuYWNjZW50LTMsLnJlZC5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmYxNzQ0IWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmZjE3NDQhaW1wb3J0YW50fS5yZWQtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmYxNzQ0IWltcG9ydGFudH0ucmVkLmFjY2VudC00e2JvcmRlci1jb2xvcjojZDUwMDAwIWltcG9ydGFudH0ucmVkLmFjY2VudC00LC5yZWQuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q1MDAwMCFpbXBvcnRhbnR9LnJlZC0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojZDUwMDAwIWltcG9ydGFudH0ucmVkLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5yZWQtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q1MDAwMCFpbXBvcnRhbnR9LnBpbmt7YmFja2dyb3VuZC1jb2xvcjojZTkxZTYzIWltcG9ydGFudDtib3JkZXItY29sb3I6I2U5MWU2MyFpbXBvcnRhbnR9LnBpbmstLXRleHR7Y29sb3I6I2U5MWU2MyFpbXBvcnRhbnR9LnBpbmstLXRleHQgaW5wdXQsLnBpbmstLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2U5MWU2MyFpbXBvcnRhbnR9LnBpbmstLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6I2U5MWU2MyFpbXBvcnRhbnR9LnBpbmsubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZmNlNGVjIWltcG9ydGFudH0ucGluay5saWdodGVuLTUsLnBpbmsubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmY2U0ZWMhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmNlNGVjIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmY2U0ZWMhaW1wb3J0YW50fS5waW5rLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2Y4YmJkMCFpbXBvcnRhbnR9LnBpbmsubGlnaHRlbi00LC5waW5rLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjhiYmQwIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2Y4YmJkMCFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjhiYmQwIWltcG9ydGFudH0ucGluay5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmNDhmYjEhaW1wb3J0YW50fS5waW5rLmxpZ2h0ZW4tMywucGluay5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y0OGZiMSFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNmNDhmYjEhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y0OGZiMSFpbXBvcnRhbnR9LnBpbmsubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZjA2MjkyIWltcG9ydGFudH0ucGluay5saWdodGVuLTIsLnBpbmsubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmMDYyOTIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZjA2MjkyIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmMDYyOTIhaW1wb3J0YW50fS5waW5rLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6I2VjNDA3YSFpbXBvcnRhbnR9LnBpbmsubGlnaHRlbi0xLC5waW5rLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWM0MDdhIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2VjNDA3YSFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5waW5rLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWM0MDdhIWltcG9ydGFudH0ucGluay5kYXJrZW4tMXtib3JkZXItY29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9LnBpbmsuZGFya2VuLTEsLnBpbmsuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q4MWI2MCFpbXBvcnRhbnR9LnBpbmsuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNjMjE4NWIhaW1wb3J0YW50fS5waW5rLmRhcmtlbi0yLC5waW5rLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjMjE4NWIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNjMjE4NWIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5waW5rLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjMjE4NWIhaW1wb3J0YW50fS5waW5rLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojYWQxNDU3IWltcG9ydGFudH0ucGluay5kYXJrZW4tMywucGluay5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYWQxNDU3IWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojYWQxNDU3IWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYWQxNDU3IWltcG9ydGFudH0ucGluay5kYXJrZW4tNHtib3JkZXItY29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9LnBpbmsuZGFya2VuLTQsLnBpbmsuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6Izg4MGU0ZiFpbXBvcnRhbnR9LnBpbmsuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmZjgwYWIhaW1wb3J0YW50fS5waW5rLmFjY2VudC0xLC5waW5rLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjgwYWIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZjgwYWIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5waW5rLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjgwYWIhaW1wb3J0YW50fS5waW5rLmFjY2VudC0ye2JvcmRlci1jb2xvcjojZmY0MDgxIWltcG9ydGFudH0ucGluay5hY2NlbnQtMiwucGluay5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY0MDgxIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZmY0MDgxIWltcG9ydGFudH0ucGluay0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwucGluay0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY0MDgxIWltcG9ydGFudH0ucGluay5hY2NlbnQtM3tib3JkZXItY29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9LnBpbmsuYWNjZW50LTMsLnBpbmsuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9LnBpbmstLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnBpbmstLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Y1MDA1NyFpbXBvcnRhbnR9LnBpbmsuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNjNTExNjIhaW1wb3J0YW50fS5waW5rLmFjY2VudC00LC5waW5rLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjNTExNjIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNjNTExNjIhaW1wb3J0YW50fS5waW5rLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5waW5rLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjNTExNjIhaW1wb3J0YW50fS5wdXJwbGV7YmFja2dyb3VuZC1jb2xvcjojOWMyN2IwIWltcG9ydGFudDtib3JkZXItY29sb3I6IzljMjdiMCFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dHtjb2xvcjojOWMyN2IwIWltcG9ydGFudH0ucHVycGxlLS10ZXh0IGlucHV0LC5wdXJwbGUtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzljMjdiMCFpbXBvcnRhbnR9LnB1cnBsZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojOWMyN2IwIWltcG9ydGFudH0ucHVycGxlLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9LnB1cnBsZS5saWdodGVuLTUsLnB1cnBsZS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2YzZTVmNSFpbXBvcnRhbnR9LnB1cnBsZS5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNlMWJlZTchaW1wb3J0YW50fS5wdXJwbGUubGlnaHRlbi00LC5wdXJwbGUubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlMWJlZTchaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNlMWJlZTchaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlMWJlZTchaW1wb3J0YW50fS5wdXJwbGUubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojY2U5M2Q4IWltcG9ydGFudH0ucHVycGxlLmxpZ2h0ZW4tMywucHVycGxlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojY2U5M2Q4IWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojY2U5M2Q4IWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwucHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojY2U5M2Q4IWltcG9ydGFudH0ucHVycGxlLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9LnB1cnBsZS5saWdodGVuLTIsLnB1cnBsZS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2JhNjhjOCFpbXBvcnRhbnR9LnB1cnBsZS5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNhYjQ3YmMhaW1wb3J0YW50fS5wdXJwbGUubGlnaHRlbi0xLC5wdXJwbGUubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNhYjQ3YmMhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiNhYjQ3YmMhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhYjQ3YmMhaW1wb3J0YW50fS5wdXJwbGUuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiM4ZTI0YWEhaW1wb3J0YW50fS5wdXJwbGUuZGFya2VuLTEsLnB1cnBsZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOGUyNGFhIWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiM4ZTI0YWEhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOGUyNGFhIWltcG9ydGFudH0ucHVycGxlLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojN2IxZmEyIWltcG9ydGFudH0ucHVycGxlLmRhcmtlbi0yLC5wdXJwbGUuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzdiMWZhMiFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojN2IxZmEyIWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzdiMWZhMiFpbXBvcnRhbnR9LnB1cnBsZS5kYXJrZW4tM3tib3JkZXItY29sb3I6IzZhMWI5YSFpbXBvcnRhbnR9LnB1cnBsZS5kYXJrZW4tMywucHVycGxlLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2YTFiOWEhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzZhMWI5YSFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2YTFiOWEhaW1wb3J0YW50fS5wdXJwbGUuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiM0YTE0OGMhaW1wb3J0YW50fS5wdXJwbGUuZGFya2VuLTQsLnB1cnBsZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNGExNDhjIWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiM0YTE0OGMhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNGExNDhjIWltcG9ydGFudH0ucHVycGxlLmFjY2VudC0xe2JvcmRlci1jb2xvcjojZWE4MGZjIWltcG9ydGFudH0ucHVycGxlLmFjY2VudC0xLC5wdXJwbGUuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VhODBmYyFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZWE4MGZjIWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VhODBmYyFpbXBvcnRhbnR9LnB1cnBsZS5hY2NlbnQtMntib3JkZXItY29sb3I6I2UwNDBmYiFpbXBvcnRhbnR9LnB1cnBsZS5hY2NlbnQtMiwucHVycGxlLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlMDQwZmIhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6I2UwNDBmYiFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlMDQwZmIhaW1wb3J0YW50fS5wdXJwbGUuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNkNTAwZjkhaW1wb3J0YW50fS5wdXJwbGUuYWNjZW50LTMsLnB1cnBsZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDUwMGY5IWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNkNTAwZjkhaW1wb3J0YW50fS5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZDUwMGY5IWltcG9ydGFudH0ucHVycGxlLmFjY2VudC00e2JvcmRlci1jb2xvcjojYTBmIWltcG9ydGFudH0ucHVycGxlLmFjY2VudC00LC5wdXJwbGUuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2EwZiFpbXBvcnRhbnR9LnB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojYTBmIWltcG9ydGFudH0ucHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2EwZiFpbXBvcnRhbnR9LmRlZXAtcHVycGxle2JhY2tncm91bmQtY29sb3I6IzY3M2FiNyFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM2NzNhYjchaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dHtjb2xvcjojNjczYWI3IWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NzNhYjchaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojNjczYWI3IWltcG9ydGFudH0uZGVlcC1wdXJwbGUubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZWRlN2Y2IWltcG9ydGFudH0uZGVlcC1wdXJwbGUubGlnaHRlbi01LC5kZWVwLXB1cnBsZS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VkZTdmNiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZWRlN2Y2IWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VkZTdmNiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2QxYzRlOSFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmxpZ2h0ZW4tNCwuZGVlcC1wdXJwbGUubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkMWM0ZTkhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2QxYzRlOSFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkMWM0ZTkhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNiMzlkZGIhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5saWdodGVuLTMsLmRlZXAtcHVycGxlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjM5ZGRiIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNiMzlkZGIhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjM5ZGRiIWltcG9ydGFudH0uZGVlcC1wdXJwbGUubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojOTU3NWNkIWltcG9ydGFudH0uZGVlcC1wdXJwbGUubGlnaHRlbi0yLC5kZWVwLXB1cnBsZS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6Izk1NzVjZCFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojOTU3NWNkIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6Izk1NzVjZCFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzdlNTdjMiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmxpZ2h0ZW4tMSwuZGVlcC1wdXJwbGUubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM3ZTU3YzIhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzdlNTdjMiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3ZTU3YzIhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5kYXJrZW4tMXtib3JkZXItY29sb3I6IzVlMzViMSFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmRhcmtlbi0xLC5kZWVwLXB1cnBsZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNWUzNWIxIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzVlMzViMSFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNWUzNWIxIWltcG9ydGFudH0uZGVlcC1wdXJwbGUuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiM1MTJkYTghaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5kYXJrZW4tMiwuZGVlcC1wdXJwbGUuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzUxMmRhOCFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiM1MTJkYTghaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzUxMmRhOCFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojNDUyN2EwIWltcG9ydGFudH0uZGVlcC1wdXJwbGUuZGFya2VuLTMsLmRlZXAtcHVycGxlLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NTI3YTAhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojNDUyN2EwIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0NTI3YTAhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzMxMWI5MiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmRhcmtlbi00LC5kZWVwLXB1cnBsZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMzExYjkyIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzMxMWI5MiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMzExYjkyIWltcG9ydGFudH0uZGVlcC1wdXJwbGUuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNiMzg4ZmYhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5hY2NlbnQtMSwuZGVlcC1wdXJwbGUuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IzODhmZiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNiMzg4ZmYhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2IzODhmZiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojN2M0ZGZmIWltcG9ydGFudH0uZGVlcC1wdXJwbGUuYWNjZW50LTIsLmRlZXAtcHVycGxlLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM3YzRkZmYhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojN2M0ZGZmIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3YzRkZmYhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5hY2NlbnQtM3tib3JkZXItY29sb3I6IzY1MWZmZiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLmFjY2VudC0zLC5kZWVwLXB1cnBsZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNjUxZmZmIWltcG9ydGFudH0uZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzY1MWZmZiFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNjUxZmZmIWltcG9ydGFudH0uZGVlcC1wdXJwbGUuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiM2MjAwZWEhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS5hY2NlbnQtNCwuZGVlcC1wdXJwbGUuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzYyMDBlYSFpbXBvcnRhbnR9LmRlZXAtcHVycGxlLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiM2MjAwZWEhaW1wb3J0YW50fS5kZWVwLXB1cnBsZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuZGVlcC1wdXJwbGUtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzYyMDBlYSFpbXBvcnRhbnR9LmluZGlnb3tiYWNrZ3JvdW5kLWNvbG9yOiMzZjUxYjUhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojM2Y1MWI1IWltcG9ydGFudH0uaW5kaWdvLS10ZXh0e2NvbG9yOiMzZjUxYjUhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQgaW5wdXQsLmluZGlnby0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojM2Y1MWI1IWltcG9ydGFudH0uaW5kaWdvLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiMzZjUxYjUhaW1wb3J0YW50fS5pbmRpZ28ubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZThlYWY2IWltcG9ydGFudH0uaW5kaWdvLmxpZ2h0ZW4tNSwuaW5kaWdvLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZThlYWY2IWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZThlYWY2IWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZThlYWY2IWltcG9ydGFudH0uaW5kaWdvLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2M1Y2FlOSFpbXBvcnRhbnR9LmluZGlnby5saWdodGVuLTQsLmluZGlnby5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M1Y2FlOSFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2M1Y2FlOSFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2M1Y2FlOSFpbXBvcnRhbnR9LmluZGlnby5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fS5pbmRpZ28ubGlnaHRlbi0zLC5pbmRpZ28ubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5ZmE4ZGEhaW1wb3J0YW50fS5pbmRpZ28ubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojNzk4NmNiIWltcG9ydGFudH0uaW5kaWdvLmxpZ2h0ZW4tMiwuaW5kaWdvLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzk4NmNiIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojNzk4NmNiIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNzk4NmNiIWltcG9ydGFudH0uaW5kaWdvLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzVjNmJjMCFpbXBvcnRhbnR9LmluZGlnby5saWdodGVuLTEsLmluZGlnby5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzVjNmJjMCFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzVjNmJjMCFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmluZGlnby0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzVjNmJjMCFpbXBvcnRhbnR9LmluZGlnby5kYXJrZW4tMXtib3JkZXItY29sb3I6IzM5NDlhYiFpbXBvcnRhbnR9LmluZGlnby5kYXJrZW4tMSwuaW5kaWdvLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzOTQ5YWIhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzM5NDlhYiFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzOTQ5YWIhaW1wb3J0YW50fS5pbmRpZ28uZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiMzMDNmOWYhaW1wb3J0YW50fS5pbmRpZ28uZGFya2VuLTIsLmluZGlnby5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMzAzZjlmIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMzMDNmOWYhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMzAzZjlmIWltcG9ydGFudH0uaW5kaWdvLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojMjgzNTkzIWltcG9ydGFudH0uaW5kaWdvLmRhcmtlbi0zLC5pbmRpZ28uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI4MzU5MyFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojMjgzNTkzIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI4MzU5MyFpbXBvcnRhbnR9LmluZGlnby5kYXJrZW4tNHtib3JkZXItY29sb3I6IzFhMjM3ZSFpbXBvcnRhbnR9LmluZGlnby5kYXJrZW4tNCwuaW5kaWdvLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMxYTIzN2UhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzFhMjM3ZSFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMxYTIzN2UhaW1wb3J0YW50fS5pbmRpZ28uYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiM4YzllZmYhaW1wb3J0YW50fS5pbmRpZ28uYWNjZW50LTEsLmluZGlnby5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOGM5ZWZmIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiM4YzllZmYhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOGM5ZWZmIWltcG9ydGFudH0uaW5kaWdvLmFjY2VudC0ye2JvcmRlci1jb2xvcjojNTM2ZGZlIWltcG9ydGFudH0uaW5kaWdvLmFjY2VudC0yLC5pbmRpZ28uYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzUzNmRmZSFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojNTM2ZGZlIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5pbmRpZ28tLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzUzNmRmZSFpbXBvcnRhbnR9LmluZGlnby5hY2NlbnQtM3tib3JkZXItY29sb3I6IzNkNWFmZSFpbXBvcnRhbnR9LmluZGlnby5hY2NlbnQtMywuaW5kaWdvLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzZDVhZmUhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzNkNWFmZSFpbXBvcnRhbnR9LmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwuaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzZDVhZmUhaW1wb3J0YW50fS5pbmRpZ28uYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiMzMDRmZmUhaW1wb3J0YW50fS5pbmRpZ28uYWNjZW50LTQsLmluZGlnby5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMzA0ZmZlIWltcG9ydGFudH0uaW5kaWdvLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMzMDRmZmUhaW1wb3J0YW50fS5pbmRpZ28tLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLmluZGlnby0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMzA0ZmZlIWltcG9ydGFudH0uYmx1ZXtiYWNrZ3JvdW5kLWNvbG9yOiMyMTk2ZjMhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojMjE5NmYzIWltcG9ydGFudH0uYmx1ZS0tdGV4dHtjb2xvcjojMjE5NmYzIWltcG9ydGFudH0uYmx1ZS0tdGV4dCBpbnB1dCwuYmx1ZS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjE5NmYzIWltcG9ydGFudH0uYmx1ZS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojMjE5NmYzIWltcG9ydGFudH0uYmx1ZS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlM2YyZmQhaW1wb3J0YW50fS5ibHVlLmxpZ2h0ZW4tNSwuYmx1ZS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2UzZjJmZCFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlM2YyZmQhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UzZjJmZCFpbXBvcnRhbnR9LmJsdWUubGlnaHRlbi00e2JvcmRlci1jb2xvcjojYmJkZWZiIWltcG9ydGFudH0uYmx1ZS5saWdodGVuLTQsLmJsdWUubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiYmRlZmIhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojYmJkZWZiIWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiYmRlZmIhaW1wb3J0YW50fS5ibHVlLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6IzkwY2FmOSFpbXBvcnRhbnR9LmJsdWUubGlnaHRlbi0zLC5ibHVlLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOTBjYWY5IWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6IzkwY2FmOSFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOTBjYWY5IWltcG9ydGFudH0uYmx1ZS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM2NGI1ZjYhaW1wb3J0YW50fS5ibHVlLmxpZ2h0ZW4tMiwuYmx1ZS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY0YjVmNiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiM2NGI1ZjYhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzY0YjVmNiFpbXBvcnRhbnR9LmJsdWUubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojNDJhNWY1IWltcG9ydGFudH0uYmx1ZS5saWdodGVuLTEsLmJsdWUubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0MmE1ZjUhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojNDJhNWY1IWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0MmE1ZjUhaW1wb3J0YW50fS5ibHVlLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojMWU4OGU1IWltcG9ydGFudH0uYmx1ZS5kYXJrZW4tMSwuYmx1ZS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWU4OGU1IWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojMWU4OGU1IWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMWU4OGU1IWltcG9ydGFudH0uYmx1ZS5kYXJrZW4tMntib3JkZXItY29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9LmJsdWUuZGFya2VuLTIsLmJsdWUuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzE5NzZkMiFpbXBvcnRhbnR9LmJsdWUuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiMxNTY1YzAhaW1wb3J0YW50fS5ibHVlLmRhcmtlbi0zLC5ibHVlLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMxNTY1YzAhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMxNTY1YzAhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMxNTY1YzAhaW1wb3J0YW50fS5ibHVlLmRhcmtlbi00e2JvcmRlci1jb2xvcjojMGQ0N2ExIWltcG9ydGFudH0uYmx1ZS5kYXJrZW4tNCwuYmx1ZS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMGQ0N2ExIWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojMGQ0N2ExIWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMGQ0N2ExIWltcG9ydGFudH0uYmx1ZS5hY2NlbnQtMXtib3JkZXItY29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9LmJsdWUuYWNjZW50LTEsLmJsdWUuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgyYjFmZiFpbXBvcnRhbnR9LmJsdWUuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiM0NDhhZmYhaW1wb3J0YW50fS5ibHVlLmFjY2VudC0yLC5ibHVlLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0NDhhZmYhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiM0NDhhZmYhaW1wb3J0YW50fS5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0NDhhZmYhaW1wb3J0YW50fS5ibHVlLmFjY2VudC0ze2JvcmRlci1jb2xvcjojMjk3OWZmIWltcG9ydGFudH0uYmx1ZS5hY2NlbnQtMywuYmx1ZS5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjk3OWZmIWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojMjk3OWZmIWltcG9ydGFudH0uYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwuYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjk3OWZmIWltcG9ydGFudH0uYmx1ZS5hY2NlbnQtNHtib3JkZXItY29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9LmJsdWUuYWNjZW50LTQsLmJsdWUuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9LmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLmJsdWUtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI5NjJmZiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWV7YmFja2dyb3VuZC1jb2xvcjojMDNhOWY0IWltcG9ydGFudDtib3JkZXItY29sb3I6IzAzYTlmNCFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHR7Y29sb3I6IzAzYTlmNCFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAzYTlmNCFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6IzAzYTlmNCFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZTFmNWZlIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5saWdodGVuLTUsLmxpZ2h0LWJsdWUubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlMWY1ZmUhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZTFmNWZlIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlMWY1ZmUhaW1wb3J0YW50fS5saWdodC1ibHVlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2IzZTVmYyFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUubGlnaHRlbi00LC5saWdodC1ibHVlLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjNlNWZjIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2IzZTVmYyFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjNlNWZjIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiM4MWQ0ZmEhaW1wb3J0YW50fS5saWdodC1ibHVlLmxpZ2h0ZW4tMywubGlnaHQtYmx1ZS5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgxZDRmYSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiM4MWQ0ZmEhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgxZDRmYSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojNGZjM2Y3IWltcG9ydGFudH0ubGlnaHQtYmx1ZS5saWdodGVuLTIsLmxpZ2h0LWJsdWUubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0ZmMzZjchaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojNGZjM2Y3IWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0ZmMzZjchaW1wb3J0YW50fS5saWdodC1ibHVlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzI5YjZmNiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUubGlnaHRlbi0xLC5saWdodC1ibHVlLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjliNmY2IWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzI5YjZmNiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjliNmY2IWltcG9ydGFudH0ubGlnaHQtYmx1ZS5kYXJrZW4tMXtib3JkZXItY29sb3I6IzAzOWJlNSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuZGFya2VuLTEsLmxpZ2h0LWJsdWUuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAzOWJlNSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzAzOWJlNSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAzOWJlNSFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiMwMjg4ZDEhaW1wb3J0YW50fS5saWdodC1ibHVlLmRhcmtlbi0yLC5saWdodC1ibHVlLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMjg4ZDEhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMwMjg4ZDEhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMjg4ZDEhaW1wb3J0YW50fS5saWdodC1ibHVlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojMDI3N2JkIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5kYXJrZW4tMywubGlnaHQtYmx1ZS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDI3N2JkIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojMDI3N2JkIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDI3N2JkIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzAxNTc5YiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuZGFya2VuLTQsLmxpZ2h0LWJsdWUuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAxNTc5YiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzAxNTc5YiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAxNTc5YiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiM4MGQ4ZmYhaW1wb3J0YW50fS5saWdodC1ibHVlLmFjY2VudC0xLC5saWdodC1ibHVlLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM4MGQ4ZmYhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiM4MGQ4ZmYhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4MGQ4ZmYhaW1wb3J0YW50fS5saWdodC1ibHVlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojNDBjNGZmIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5hY2NlbnQtMiwubGlnaHQtYmx1ZS5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDBjNGZmIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojNDBjNGZmIWltcG9ydGFudH0ubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwubGlnaHQtYmx1ZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNDBjNGZmIWltcG9ydGFudH0ubGlnaHQtYmx1ZS5hY2NlbnQtM3tib3JkZXItY29sb3I6IzAwYjBmZiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuYWNjZW50LTMsLmxpZ2h0LWJsdWUuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYjBmZiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzAwYjBmZiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmxpZ2h0LWJsdWUtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwYjBmZiFpbXBvcnRhbnR9LmxpZ2h0LWJsdWUuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiMwMDkxZWEhaW1wb3J0YW50fS5saWdodC1ibHVlLmFjY2VudC00LC5saWdodC1ibHVlLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDkxZWEhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMwMDkxZWEhaW1wb3J0YW50fS5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5saWdodC1ibHVlLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDkxZWEhaW1wb3J0YW50fS5jeWFue2JhY2tncm91bmQtY29sb3I6IzAwYmNkNCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiMwMGJjZDQhaW1wb3J0YW50fS5jeWFuLS10ZXh0e2NvbG9yOiMwMGJjZDQhaW1wb3J0YW50fS5jeWFuLS10ZXh0IGlucHV0LC5jeWFuLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGJjZDQhaW1wb3J0YW50fS5jeWFuLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiMwMGJjZDQhaW1wb3J0YW50fS5jeWFuLmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2UwZjdmYSFpbXBvcnRhbnR9LmN5YW4ubGlnaHRlbi01LC5jeWFuLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTBmN2ZhIWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2UwZjdmYSFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZTBmN2ZhIWltcG9ydGFudH0uY3lhbi5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNiMmViZjIhaW1wb3J0YW50fS5jeWFuLmxpZ2h0ZW4tNCwuY3lhbi5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2IyZWJmMiFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNiMmViZjIhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2IyZWJmMiFpbXBvcnRhbnR9LmN5YW4ubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojODBkZWVhIWltcG9ydGFudH0uY3lhbi5saWdodGVuLTMsLmN5YW4ubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM4MGRlZWEhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojODBkZWVhIWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4MGRlZWEhaW1wb3J0YW50fS5jeWFuLmxpZ2h0ZW4tMntib3JkZXItY29sb3I6IzRkZDBlMSFpbXBvcnRhbnR9LmN5YW4ubGlnaHRlbi0yLC5jeWFuLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNGRkMGUxIWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6IzRkZDBlMSFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNGRkMGUxIWltcG9ydGFudH0uY3lhbi5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiMyNmM2ZGEhaW1wb3J0YW50fS5jeWFuLmxpZ2h0ZW4tMSwuY3lhbi5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzI2YzZkYSFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiMyNmM2ZGEhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuY3lhbi0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzI2YzZkYSFpbXBvcnRhbnR9LmN5YW4uZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiMwMGFjYzEhaW1wb3J0YW50fS5jeWFuLmRhcmtlbi0xLC5jeWFuLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMGFjYzEhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiMwMGFjYzEhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGFjYzEhaW1wb3J0YW50fS5jeWFuLmRhcmtlbi0ye2JvcmRlci1jb2xvcjojMDA5N2E3IWltcG9ydGFudH0uY3lhbi5kYXJrZW4tMiwuY3lhbi5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA5N2E3IWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojMDA5N2E3IWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuY3lhbi0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDA5N2E3IWltcG9ydGFudH0uY3lhbi5kYXJrZW4tM3tib3JkZXItY29sb3I6IzAwODM4ZiFpbXBvcnRhbnR9LmN5YW4uZGFya2VuLTMsLmN5YW4uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwODM4ZiFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzAwODM4ZiFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwODM4ZiFpbXBvcnRhbnR9LmN5YW4uZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiMwMDYwNjQhaW1wb3J0YW50fS5jeWFuLmRhcmtlbi00LC5jeWFuLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDYwNjQhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMwMDYwNjQhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDYwNjQhaW1wb3J0YW50fS5jeWFuLmFjY2VudC0xe2JvcmRlci1jb2xvcjojODRmZmZmIWltcG9ydGFudH0uY3lhbi5hY2NlbnQtMSwuY3lhbi5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojODRmZmZmIWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojODRmZmZmIWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojODRmZmZmIWltcG9ydGFudH0uY3lhbi5hY2NlbnQtMntib3JkZXItY29sb3I6IzE4ZmZmZiFpbXBvcnRhbnR9LmN5YW4uYWNjZW50LTIsLmN5YW4uYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzE4ZmZmZiFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6IzE4ZmZmZiFpbXBvcnRhbnR9LmN5YW4tLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmN5YW4tLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzE4ZmZmZiFpbXBvcnRhbnR9LmN5YW4uYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fS5jeWFuLmFjY2VudC0zLC5jeWFuLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fS5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5jeWFuLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMGU1ZmYhaW1wb3J0YW50fS5jeWFuLmFjY2VudC00e2JvcmRlci1jb2xvcjojMDBiOGQ0IWltcG9ydGFudH0uY3lhbi5hY2NlbnQtNCwuY3lhbi5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDBiOGQ0IWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojMDBiOGQ0IWltcG9ydGFudH0uY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuY3lhbi0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDBiOGQ0IWltcG9ydGFudH0udGVhbHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDk2ODghaW1wb3J0YW50O2JvcmRlci1jb2xvcjojMDA5Njg4IWltcG9ydGFudH0udGVhbC0tdGV4dHtjb2xvcjojMDA5Njg4IWltcG9ydGFudH0udGVhbC0tdGV4dCBpbnB1dCwudGVhbC0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDA5Njg4IWltcG9ydGFudH0udGVhbC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojMDA5Njg4IWltcG9ydGFudH0udGVhbC5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlMGYyZjEhaW1wb3J0YW50fS50ZWFsLmxpZ2h0ZW4tNSwudGVhbC5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2UwZjJmMSFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlMGYyZjEhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UwZjJmMSFpbXBvcnRhbnR9LnRlYWwubGlnaHRlbi00e2JvcmRlci1jb2xvcjojYjJkZmRiIWltcG9ydGFudH0udGVhbC5saWdodGVuLTQsLnRlYWwubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiMmRmZGIhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojYjJkZmRiIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMmRmZGIhaW1wb3J0YW50fS50ZWFsLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6IzgwY2JjNCFpbXBvcnRhbnR9LnRlYWwubGlnaHRlbi0zLC50ZWFsLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojODBjYmM0IWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6IzgwY2JjNCFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojODBjYmM0IWltcG9ydGFudH0udGVhbC5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiM0ZGI2YWMhaW1wb3J0YW50fS50ZWFsLmxpZ2h0ZW4tMiwudGVhbC5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzRkYjZhYyFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiM0ZGI2YWMhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzRkYjZhYyFpbXBvcnRhbnR9LnRlYWwubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojMjZhNjlhIWltcG9ydGFudH0udGVhbC5saWdodGVuLTEsLnRlYWwubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMyNmE2OWEhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojMjZhNjlhIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyNmE2OWEhaW1wb3J0YW50fS50ZWFsLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojMDA4OTdiIWltcG9ydGFudH0udGVhbC5kYXJrZW4tMSwudGVhbC5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA4OTdiIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojMDA4OTdiIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDA4OTdiIWltcG9ydGFudH0udGVhbC5kYXJrZW4tMntib3JkZXItY29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9LnRlYWwuZGFya2VuLTIsLnRlYWwuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwNzk2YiFpbXBvcnRhbnR9LnRlYWwuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiMwMDY5NWMhaW1wb3J0YW50fS50ZWFsLmRhcmtlbi0zLC50ZWFsLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDY5NWMhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiMwMDY5NWMhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC50ZWFsLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMwMDY5NWMhaW1wb3J0YW50fS50ZWFsLmRhcmtlbi00e2JvcmRlci1jb2xvcjojMDA0ZDQwIWltcG9ydGFudH0udGVhbC5kYXJrZW4tNCwudGVhbC5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA0ZDQwIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojMDA0ZDQwIWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDA0ZDQwIWltcG9ydGFudH0udGVhbC5hY2NlbnQtMXtib3JkZXItY29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9LnRlYWwuYWNjZW50LTEsLnRlYWwuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2E3ZmZlYiFpbXBvcnRhbnR9LnRlYWwuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiM2NGZmZGEhaW1wb3J0YW50fS50ZWFsLmFjY2VudC0yLC50ZWFsLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NGZmZGEhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiM2NGZmZGEhaW1wb3J0YW50fS50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC50ZWFsLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NGZmZGEhaW1wb3J0YW50fS50ZWFsLmFjY2VudC0ze2JvcmRlci1jb2xvcjojMWRlOWI2IWltcG9ydGFudH0udGVhbC5hY2NlbnQtMywudGVhbC5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWRlOWI2IWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojMWRlOWI2IWltcG9ydGFudH0udGVhbC0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwudGVhbC0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMWRlOWI2IWltcG9ydGFudH0udGVhbC5hY2NlbnQtNHtib3JkZXItY29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9LnRlYWwuYWNjZW50LTQsLnRlYWwuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9LnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLnRlYWwtLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwYmZhNSFpbXBvcnRhbnR9LmdyZWVue2JhY2tncm91bmQtY29sb3I6IzRjYWY1MCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM0Y2FmNTAhaW1wb3J0YW50fS5ncmVlbi0tdGV4dHtjb2xvcjojNGNhZjUwIWltcG9ydGFudH0uZ3JlZW4tLXRleHQgaW5wdXQsLmdyZWVuLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0Y2FmNTAhaW1wb3J0YW50fS5ncmVlbi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojNGNhZjUwIWltcG9ydGFudH0uZ3JlZW4ubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZThmNWU5IWltcG9ydGFudH0uZ3JlZW4ubGlnaHRlbi01LC5ncmVlbi5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U4ZjVlOSFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZThmNWU5IWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2U4ZjVlOSFpbXBvcnRhbnR9LmdyZWVuLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2M4ZTZjOSFpbXBvcnRhbnR9LmdyZWVuLmxpZ2h0ZW4tNCwuZ3JlZW4ubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjOGU2YzkhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2M4ZTZjOSFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjOGU2YzkhaW1wb3J0YW50fS5ncmVlbi5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNhNWQ2YTchaW1wb3J0YW50fS5ncmVlbi5saWdodGVuLTMsLmdyZWVuLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTVkNmE3IWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNhNWQ2YTchaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYTVkNmE3IWltcG9ydGFudH0uZ3JlZW4ubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojODFjNzg0IWltcG9ydGFudH0uZ3JlZW4ubGlnaHRlbi0yLC5ncmVlbi5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgxYzc4NCFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojODFjNzg0IWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgxYzc4NCFpbXBvcnRhbnR9LmdyZWVuLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzY2YmI2YSFpbXBvcnRhbnR9LmdyZWVuLmxpZ2h0ZW4tMSwuZ3JlZW4ubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2NmJiNmEhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzY2YmI2YSFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2NmJiNmEhaW1wb3J0YW50fS5ncmVlbi5kYXJrZW4tMXtib3JkZXItY29sb3I6IzQzYTA0NyFpbXBvcnRhbnR9LmdyZWVuLmRhcmtlbi0xLC5ncmVlbi5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDNhMDQ3IWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzQzYTA0NyFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNDNhMDQ3IWltcG9ydGFudH0uZ3JlZW4uZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiMzODhlM2MhaW1wb3J0YW50fS5ncmVlbi5kYXJrZW4tMiwuZ3JlZW4uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzM4OGUzYyFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiMzODhlM2MhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzM4OGUzYyFpbXBvcnRhbnR9LmdyZWVuLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojMmU3ZDMyIWltcG9ydGFudH0uZ3JlZW4uZGFya2VuLTMsLmdyZWVuLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMyZTdkMzIhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojMmU3ZDMyIWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMyZTdkMzIhaW1wb3J0YW50fS5ncmVlbi5kYXJrZW4tNHtib3JkZXItY29sb3I6IzFiNWUyMCFpbXBvcnRhbnR9LmdyZWVuLmRhcmtlbi00LC5ncmVlbi5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWI1ZTIwIWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzFiNWUyMCFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMWI1ZTIwIWltcG9ydGFudH0uZ3JlZW4uYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNiOWY2Y2EhaW1wb3J0YW50fS5ncmVlbi5hY2NlbnQtMSwuZ3JlZW4uYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2I5ZjZjYSFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNiOWY2Y2EhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2I5ZjZjYSFpbXBvcnRhbnR9LmdyZWVuLmFjY2VudC0ye2JvcmRlci1jb2xvcjojNjlmMGFlIWltcG9ydGFudH0uZ3JlZW4uYWNjZW50LTIsLmdyZWVuLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2OWYwYWUhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojNjlmMGFlIWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2OWYwYWUhaW1wb3J0YW50fS5ncmVlbi5hY2NlbnQtM3tib3JkZXItY29sb3I6IzAwZTY3NiFpbXBvcnRhbnR9LmdyZWVuLmFjY2VudC0zLC5ncmVlbi5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDBlNjc2IWltcG9ydGFudH0uZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6IzAwZTY3NiFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMDBlNjc2IWltcG9ydGFudH0uZ3JlZW4uYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiMwMGM4NTMhaW1wb3J0YW50fS5ncmVlbi5hY2NlbnQtNCwuZ3JlZW4uYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwYzg1MyFpbXBvcnRhbnR9LmdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiMwMGM4NTMhaW1wb3J0YW50fS5ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwYzg1MyFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVue2JhY2tncm91bmQtY29sb3I6IzhiYzM0YSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM4YmMzNGEhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dHtjb2xvcjojOGJjMzRhIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiM4YmMzNGEhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojOGJjMzRhIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4ubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZjFmOGU5IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4ubGlnaHRlbi01LC5saWdodC1ncmVlbi5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2YxZjhlOSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZjFmOGU5IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2YxZjhlOSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2RjZWRjOCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tNCwubGlnaHQtZ3JlZW4ubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkY2VkYzghaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2RjZWRjOCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkY2VkYzghaW1wb3J0YW50fS5saWdodC1ncmVlbi5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNjNWUxYTUhaW1wb3J0YW50fS5saWdodC1ncmVlbi5saWdodGVuLTMsLmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYzVlMWE1IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNjNWUxYTUhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYzVlMWE1IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4ubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojYWVkNTgxIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4ubGlnaHRlbi0yLC5saWdodC1ncmVlbi5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2FlZDU4MSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojYWVkNTgxIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2FlZDU4MSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6IzljY2M2NSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmxpZ2h0ZW4tMSwubGlnaHQtZ3JlZW4ubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM5Y2NjNjUhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6IzljY2M2NSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM5Y2NjNjUhaW1wb3J0YW50fS5saWdodC1ncmVlbi5kYXJrZW4tMXtib3JkZXItY29sb3I6IzdjYjM0MiFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmRhcmtlbi0xLC5saWdodC1ncmVlbi5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojN2NiMzQyIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6IzdjYjM0MiFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojN2NiMzQyIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4uZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiM2ODlmMzghaW1wb3J0YW50fS5saWdodC1ncmVlbi5kYXJrZW4tMiwubGlnaHQtZ3JlZW4uZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY4OWYzOCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiM2ODlmMzghaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzY4OWYzOCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojNTU4YjJmIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4uZGFya2VuLTMsLmxpZ2h0LWdyZWVuLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM1NThiMmYhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojNTU4YjJmIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM1NThiMmYhaW1wb3J0YW50fS5saWdodC1ncmVlbi5kYXJrZW4tNHtib3JkZXItY29sb3I6IzMzNjkxZSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmRhcmtlbi00LC5saWdodC1ncmVlbi5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMzM2OTFlIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzMzNjkxZSFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMzM2OTFlIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4uYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNjY2ZmOTAhaW1wb3J0YW50fS5saWdodC1ncmVlbi5hY2NlbnQtMSwubGlnaHQtZ3JlZW4uYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2NjZmY5MCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNjY2ZmOTAhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2NjZmY5MCFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmFjY2VudC0ye2JvcmRlci1jb2xvcjojYjJmZjU5IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4uYWNjZW50LTIsLmxpZ2h0LWdyZWVuLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiMmZmNTkhaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojYjJmZjU5IWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiMmZmNTkhaW1wb3J0YW50fS5saWdodC1ncmVlbi5hY2NlbnQtM3tib3JkZXItY29sb3I6Izc2ZmYwMyFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLmFjY2VudC0zLC5saWdodC1ncmVlbi5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzZmZjAzIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6Izc2ZmYwMyFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNzZmZjAzIWltcG9ydGFudH0ubGlnaHQtZ3JlZW4uYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiM2NGRkMTchaW1wb3J0YW50fS5saWdodC1ncmVlbi5hY2NlbnQtNCwubGlnaHQtZ3JlZW4uYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzY0ZGQxNyFpbXBvcnRhbnR9LmxpZ2h0LWdyZWVuLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiM2NGRkMTchaW1wb3J0YW50fS5saWdodC1ncmVlbi0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwubGlnaHQtZ3JlZW4tLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzY0ZGQxNyFpbXBvcnRhbnR9LmxpbWV7YmFja2dyb3VuZC1jb2xvcjojY2RkYzM5IWltcG9ydGFudDtib3JkZXItY29sb3I6I2NkZGMzOSFpbXBvcnRhbnR9LmxpbWUtLXRleHR7Y29sb3I6I2NkZGMzOSFpbXBvcnRhbnR9LmxpbWUtLXRleHQgaW5wdXQsLmxpbWUtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2NkZGMzOSFpbXBvcnRhbnR9LmxpbWUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQ6I2NkZGMzOSFpbXBvcnRhbnR9LmxpbWUubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZjlmYmU3IWltcG9ydGFudH0ubGltZS5saWdodGVuLTUsLmxpbWUubGlnaHRlbi01LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmOWZiZTchaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZjlmYmU3IWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi01IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmOWZiZTchaW1wb3J0YW50fS5saW1lLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2YwZjRjMyFpbXBvcnRhbnR9LmxpbWUubGlnaHRlbi00LC5saW1lLmxpZ2h0ZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjBmNGMzIWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2YwZjRjMyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjBmNGMzIWltcG9ydGFudH0ubGltZS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNlNmVlOWMhaW1wb3J0YW50fS5saW1lLmxpZ2h0ZW4tMywubGltZS5saWdodGVuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2U2ZWU5YyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNlNmVlOWMhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2U2ZWU5YyFpbXBvcnRhbnR9LmxpbWUubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZGNlNzc1IWltcG9ydGFudH0ubGltZS5saWdodGVuLTIsLmxpbWUubGlnaHRlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNkY2U3NzUhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZGNlNzc1IWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNkY2U3NzUhaW1wb3J0YW50fS5saW1lLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6I2Q0ZTE1NyFpbXBvcnRhbnR9LmxpbWUubGlnaHRlbi0xLC5saW1lLmxpZ2h0ZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZDRlMTU3IWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2Q0ZTE1NyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZDRlMTU3IWltcG9ydGFudH0ubGltZS5kYXJrZW4tMXtib3JkZXItY29sb3I6I2MwY2EzMyFpbXBvcnRhbnR9LmxpbWUuZGFya2VuLTEsLmxpbWUuZGFya2VuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2MwY2EzMyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6I2MwY2EzMyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2MwY2EzMyFpbXBvcnRhbnR9LmxpbWUuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNhZmI0MmIhaW1wb3J0YW50fS5saW1lLmRhcmtlbi0yLC5saW1lLmRhcmtlbi0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNhZmI0MmIhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNhZmI0MmIhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWRhcmtlbi0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhZmI0MmIhaW1wb3J0YW50fS5saW1lLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojOWU5ZDI0IWltcG9ydGFudH0ubGltZS5kYXJrZW4tMywubGltZS5kYXJrZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojOWU5ZDI0IWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojOWU5ZDI0IWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwubGltZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOWU5ZDI0IWltcG9ydGFudH0ubGltZS5kYXJrZW4tNHtib3JkZXItY29sb3I6IzgyNzcxNyFpbXBvcnRhbnR9LmxpbWUuZGFya2VuLTQsLmxpbWUuZGFya2VuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzgyNzcxNyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6IzgyNzcxNyFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tZGFya2VuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzgyNzcxNyFpbXBvcnRhbnR9LmxpbWUuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmNGZmODEhaW1wb3J0YW50fS5saW1lLmFjY2VudC0xLC5saW1lLmFjY2VudC0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmNGZmODEhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmNGZmODEhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmNGZmODEhaW1wb3J0YW50fS5saW1lLmFjY2VudC0ye2JvcmRlci1jb2xvcjojZWVmZjQxIWltcG9ydGFudH0ubGltZS5hY2NlbnQtMiwubGltZS5hY2NlbnQtMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVmZjQxIWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZWVmZjQxIWltcG9ydGFudH0ubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwubGltZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWVmZjQxIWltcG9ydGFudH0ubGltZS5hY2NlbnQtM3tib3JkZXItY29sb3I6I2M2ZmYwMCFpbXBvcnRhbnR9LmxpbWUuYWNjZW50LTMsLmxpbWUuYWNjZW50LTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2M2ZmYwMCFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6I2M2ZmYwMCFpbXBvcnRhbnR9LmxpbWUtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmxpbWUtLXRleHQudGV4dC0tYWNjZW50LTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2M2ZmYwMCFpbXBvcnRhbnR9LmxpbWUuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNhZWVhMDAhaW1wb3J0YW50fS5saW1lLmFjY2VudC00LC5saW1lLmFjY2VudC00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNhZWVhMDAhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNhZWVhMDAhaW1wb3J0YW50fS5saW1lLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5saW1lLS10ZXh0LnRleHQtLWFjY2VudC00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNhZWVhMDAhaW1wb3J0YW50fS55ZWxsb3d7YmFja2dyb3VuZC1jb2xvcjojZmZlYjNiIWltcG9ydGFudDtib3JkZXItY29sb3I6I2ZmZWIzYiFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dHtjb2xvcjojZmZlYjNiIWltcG9ydGFudH0ueWVsbG93LS10ZXh0IGlucHV0LC55ZWxsb3ctLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZWIzYiFpbXBvcnRhbnR9LnllbGxvdy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojZmZlYjNiIWltcG9ydGFudH0ueWVsbG93LmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2ZmZmRlNyFpbXBvcnRhbnR9LnllbGxvdy5saWdodGVuLTUsLnllbGxvdy5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZmRlNyFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2ZmZmRlNyFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZmRlNyFpbXBvcnRhbnR9LnllbGxvdy5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNmZmY5YzQhaW1wb3J0YW50fS55ZWxsb3cubGlnaHRlbi00LC55ZWxsb3cubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY5YzQhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNmZmY5YzQhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmY5YzQhaW1wb3J0YW50fS55ZWxsb3cubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojZmZmNTlkIWltcG9ydGFudH0ueWVsbG93LmxpZ2h0ZW4tMywueWVsbG93LmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmNTlkIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojZmZmNTlkIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZmNTlkIWltcG9ydGFudH0ueWVsbG93LmxpZ2h0ZW4tMntib3JkZXItY29sb3I6I2ZmZjE3NiFpbXBvcnRhbnR9LnllbGxvdy5saWdodGVuLTIsLnllbGxvdy5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjE3NiFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6I2ZmZjE3NiFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLnllbGxvdy0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZjE3NiFpbXBvcnRhbnR9LnllbGxvdy5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiNmZmVlNTghaW1wb3J0YW50fS55ZWxsb3cubGlnaHRlbi0xLC55ZWxsb3cubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmVlNTghaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiNmZmVlNTghaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmVlNTghaW1wb3J0YW50fS55ZWxsb3cuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiNmZGQ4MzUhaW1wb3J0YW50fS55ZWxsb3cuZGFya2VuLTEsLnllbGxvdy5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmRkODM1IWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiNmZGQ4MzUhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmRkODM1IWltcG9ydGFudH0ueWVsbG93LmRhcmtlbi0ye2JvcmRlci1jb2xvcjojZmJjMDJkIWltcG9ydGFudH0ueWVsbG93LmRhcmtlbi0yLC55ZWxsb3cuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZiYzAyZCFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojZmJjMDJkIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZiYzAyZCFpbXBvcnRhbnR9LnllbGxvdy5kYXJrZW4tM3tib3JkZXItY29sb3I6I2Y5YTgyNSFpbXBvcnRhbnR9LnllbGxvdy5kYXJrZW4tMywueWVsbG93LmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmOWE4MjUhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6I2Y5YTgyNSFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmOWE4MjUhaW1wb3J0YW50fS55ZWxsb3cuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiNmNTdmMTchaW1wb3J0YW50fS55ZWxsb3cuZGFya2VuLTQsLnllbGxvdy5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjU3ZjE3IWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiNmNTdmMTchaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLnllbGxvdy0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjU3ZjE3IWltcG9ydGFudH0ueWVsbG93LmFjY2VudC0xe2JvcmRlci1jb2xvcjojZmZmZjhkIWltcG9ydGFudH0ueWVsbG93LmFjY2VudC0xLC55ZWxsb3cuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZmY4ZCFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMXtjb2xvcjojZmZmZjhkIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZmY4ZCFpbXBvcnRhbnR9LnllbGxvdy5hY2NlbnQtMntib3JkZXItY29sb3I6I2ZmMCFpbXBvcnRhbnR9LnllbGxvdy5hY2NlbnQtMiwueWVsbG93LmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjAhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tYWNjZW50LTJ7Y29sb3I6I2ZmMCFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjAhaW1wb3J0YW50fS55ZWxsb3cuYWNjZW50LTN7Ym9yZGVyLWNvbG9yOiNmZmVhMDAhaW1wb3J0YW50fS55ZWxsb3cuYWNjZW50LTMsLnllbGxvdy5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZlYTAwIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC0ze2NvbG9yOiNmZmVhMDAhaW1wb3J0YW50fS55ZWxsb3ctLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlYTAwIWltcG9ydGFudH0ueWVsbG93LmFjY2VudC00e2JvcmRlci1jb2xvcjojZmZkNjAwIWltcG9ydGFudH0ueWVsbG93LmFjY2VudC00LC55ZWxsb3cuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZDYwMCFpbXBvcnRhbnR9LnllbGxvdy0tdGV4dC50ZXh0LS1hY2NlbnQtNHtjb2xvcjojZmZkNjAwIWltcG9ydGFudH0ueWVsbG93LS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC55ZWxsb3ctLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZDYwMCFpbXBvcnRhbnR9LmFtYmVye2JhY2tncm91bmQtY29sb3I6I2ZmYzEwNyFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiNmZmMxMDchaW1wb3J0YW50fS5hbWJlci0tdGV4dHtjb2xvcjojZmZjMTA3IWltcG9ydGFudH0uYW1iZXItLXRleHQgaW5wdXQsLmFtYmVyLS10ZXh0IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmMxMDchaW1wb3J0YW50fS5hbWJlci0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojZmZjMTA3IWltcG9ydGFudH0uYW1iZXIubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZmZmOGUxIWltcG9ydGFudH0uYW1iZXIubGlnaHRlbi01LC5hbWJlci5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjhlMSFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmZmOGUxIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tbGlnaHRlbi01IGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZjhlMSFpbXBvcnRhbnR9LmFtYmVyLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2ZmZWNiMyFpbXBvcnRhbnR9LmFtYmVyLmxpZ2h0ZW4tNCwuYW1iZXIubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmVjYjMhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2ZmZWNiMyFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNCBpbnB1dCwuYW1iZXItLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmVjYjMhaW1wb3J0YW50fS5hbWJlci5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmZmUwODIhaW1wb3J0YW50fS5hbWJlci5saWdodGVuLTMsLmFtYmVyLmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZlMDgyIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNmZmUwODIhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTMgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZlMDgyIWltcG9ydGFudH0uYW1iZXIubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZmZkNTRmIWltcG9ydGFudH0uYW1iZXIubGlnaHRlbi0yLC5hbWJlci5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZDU0ZiFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZmZkNTRmIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tbGlnaHRlbi0yIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZDU0ZiFpbXBvcnRhbnR9LmFtYmVyLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6I2ZmY2EyOCFpbXBvcnRhbnR9LmFtYmVyLmxpZ2h0ZW4tMSwuYW1iZXIubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmNhMjghaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2ZmY2EyOCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMSBpbnB1dCwuYW1iZXItLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmNhMjghaW1wb3J0YW50fS5hbWJlci5kYXJrZW4tMXtib3JkZXItY29sb3I6I2ZmYjMwMCFpbXBvcnRhbnR9LmFtYmVyLmRhcmtlbi0xLC5hbWJlci5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZiMzAwIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6I2ZmYjMwMCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0xIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZiMzAwIWltcG9ydGFudH0uYW1iZXIuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNmZmEwMDAhaW1wb3J0YW50fS5hbWJlci5kYXJrZW4tMiwuYW1iZXIuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmYTAwMCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNmZmEwMDAhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tMiBpbnB1dCwuYW1iZXItLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmYTAwMCFpbXBvcnRhbnR9LmFtYmVyLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojZmY4ZjAwIWltcG9ydGFudH0uYW1iZXIuZGFya2VuLTMsLmFtYmVyLmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjhmMDAhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojZmY4ZjAwIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tZGFya2VuLTMgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjhmMDAhaW1wb3J0YW50fS5hbWJlci5kYXJrZW4tNHtib3JkZXItY29sb3I6I2ZmNmYwMCFpbXBvcnRhbnR9LmFtYmVyLmRhcmtlbi00LC5hbWJlci5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY2ZjAwIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6I2ZmNmYwMCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWRhcmtlbi00IGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY2ZjAwIWltcG9ydGFudH0uYW1iZXIuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmZmU1N2YhaW1wb3J0YW50fS5hbWJlci5hY2NlbnQtMSwuYW1iZXIuYWNjZW50LTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZTU3ZiFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZmU1N2YhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMSBpbnB1dCwuYW1iZXItLXRleHQudGV4dC0tYWNjZW50LTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZTU3ZiFpbXBvcnRhbnR9LmFtYmVyLmFjY2VudC0ye2JvcmRlci1jb2xvcjojZmZkNzQwIWltcG9ydGFudH0uYW1iZXIuYWNjZW50LTIsLmFtYmVyLmFjY2VudC0yLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmQ3NDAhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZmZkNzQwIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tYWNjZW50LTIgaW5wdXQsLmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0yIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmQ3NDAhaW1wb3J0YW50fS5hbWJlci5hY2NlbnQtM3tib3JkZXItY29sb3I6I2ZmYzQwMCFpbXBvcnRhbnR9LmFtYmVyLmFjY2VudC0zLC5hbWJlci5hY2NlbnQtMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZjNDAwIWltcG9ydGFudH0uYW1iZXItLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6I2ZmYzQwMCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC0zIGlucHV0LC5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZjNDAwIWltcG9ydGFudH0uYW1iZXIuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNmZmFiMDAhaW1wb3J0YW50fS5hbWJlci5hY2NlbnQtNCwuYW1iZXIuYWNjZW50LTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmYWIwMCFpbXBvcnRhbnR9LmFtYmVyLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNmZmFiMDAhaW1wb3J0YW50fS5hbWJlci0tdGV4dC50ZXh0LS1hY2NlbnQtNCBpbnB1dCwuYW1iZXItLXRleHQudGV4dC0tYWNjZW50LTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmYWIwMCFpbXBvcnRhbnR9Lm9yYW5nZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZjk4MDAhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojZmY5ODAwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0e2NvbG9yOiNmZjk4MDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQgaW5wdXQsLm9yYW5nZS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY5ODAwIWltcG9ydGFudH0ub3JhbmdlLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNmZjk4MDAhaW1wb3J0YW50fS5vcmFuZ2UubGlnaHRlbi01e2JvcmRlci1jb2xvcjojZmZmM2UwIWltcG9ydGFudH0ub3JhbmdlLmxpZ2h0ZW4tNSwub3JhbmdlLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmM2UwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNXtjb2xvcjojZmZmM2UwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZmM2UwIWltcG9ydGFudH0ub3JhbmdlLmxpZ2h0ZW4tNHtib3JkZXItY29sb3I6I2ZmZTBiMiFpbXBvcnRhbnR9Lm9yYW5nZS5saWdodGVuLTQsLm9yYW5nZS5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZTBiMiFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTR7Y29sb3I6I2ZmZTBiMiFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmZTBiMiFpbXBvcnRhbnR9Lm9yYW5nZS5saWdodGVuLTN7Ym9yZGVyLWNvbG9yOiNmZmNjODAhaW1wb3J0YW50fS5vcmFuZ2UubGlnaHRlbi0zLC5vcmFuZ2UubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmNjODAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0ze2NvbG9yOiNmZmNjODAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmNjODAhaW1wb3J0YW50fS5vcmFuZ2UubGlnaHRlbi0ye2JvcmRlci1jb2xvcjojZmZiNzRkIWltcG9ydGFudH0ub3JhbmdlLmxpZ2h0ZW4tMiwub3JhbmdlLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZiNzRkIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMntjb2xvcjojZmZiNzRkIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZiNzRkIWltcG9ydGFudH0ub3JhbmdlLmxpZ2h0ZW4tMXtib3JkZXItY29sb3I6I2ZmYTcyNiFpbXBvcnRhbnR9Lm9yYW5nZS5saWdodGVuLTEsLm9yYW5nZS5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmYTcyNiFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTF7Y29sb3I6I2ZmYTcyNiFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmYTcyNiFpbXBvcnRhbnR9Lm9yYW5nZS5kYXJrZW4tMXtib3JkZXItY29sb3I6I2ZiOGMwMCFpbXBvcnRhbnR9Lm9yYW5nZS5kYXJrZW4tMSwub3JhbmdlLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmYjhjMDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTF7Y29sb3I6I2ZiOGMwMCFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmYjhjMDAhaW1wb3J0YW50fS5vcmFuZ2UuZGFya2VuLTJ7Ym9yZGVyLWNvbG9yOiNmNTdjMDAhaW1wb3J0YW50fS5vcmFuZ2UuZGFya2VuLTIsLm9yYW5nZS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjU3YzAwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0ye2NvbG9yOiNmNTdjMDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZjU3YzAwIWltcG9ydGFudH0ub3JhbmdlLmRhcmtlbi0ze2JvcmRlci1jb2xvcjojZWY2YzAwIWltcG9ydGFudH0ub3JhbmdlLmRhcmtlbi0zLC5vcmFuZ2UuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VmNmMwMCFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tM3tjb2xvcjojZWY2YzAwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VmNmMwMCFpbXBvcnRhbnR9Lm9yYW5nZS5kYXJrZW4tNHtib3JkZXItY29sb3I6I2U2NTEwMCFpbXBvcnRhbnR9Lm9yYW5nZS5kYXJrZW4tNCwub3JhbmdlLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlNjUxMDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTR7Y29sb3I6I2U2NTEwMCFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNlNjUxMDAhaW1wb3J0YW50fS5vcmFuZ2UuYWNjZW50LTF7Ym9yZGVyLWNvbG9yOiNmZmQxODAhaW1wb3J0YW50fS5vcmFuZ2UuYWNjZW50LTEsLm9yYW5nZS5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZkMTgwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0xe2NvbG9yOiNmZmQxODAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTEgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmZkMTgwIWltcG9ydGFudH0ub3JhbmdlLmFjY2VudC0ye2JvcmRlci1jb2xvcjojZmZhYjQwIWltcG9ydGFudH0ub3JhbmdlLmFjY2VudC0yLC5vcmFuZ2UuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmYWI0MCFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMntjb2xvcjojZmZhYjQwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0yIGlucHV0LC5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmYWI0MCFpbXBvcnRhbnR9Lm9yYW5nZS5hY2NlbnQtM3tib3JkZXItY29sb3I6I2ZmOTEwMCFpbXBvcnRhbnR9Lm9yYW5nZS5hY2NlbnQtMywub3JhbmdlLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjkxMDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTN7Y29sb3I6I2ZmOTEwMCFpbXBvcnRhbnR9Lm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMyBpbnB1dCwub3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjkxMDAhaW1wb3J0YW50fS5vcmFuZ2UuYWNjZW50LTR7Ym9yZGVyLWNvbG9yOiNmZjZkMDAhaW1wb3J0YW50fS5vcmFuZ2UuYWNjZW50LTQsLm9yYW5nZS5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY2ZDAwIWltcG9ydGFudH0ub3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC00e2NvbG9yOiNmZjZkMDAhaW1wb3J0YW50fS5vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTQgaW5wdXQsLm9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY2ZDAwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2V7YmFja2dyb3VuZC1jb2xvcjojZmY1NzIyIWltcG9ydGFudDtib3JkZXItY29sb3I6I2ZmNTcyMiFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0e2NvbG9yOiNmZjU3MjIhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dCBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNTcyMiFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiNmZjU3MjIhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmYmU5ZTchaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5saWdodGVuLTUsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmJlOWU3IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNmYmU5ZTchaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmJlOWU3IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZmZjY2JjIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UubGlnaHRlbi00LC5kZWVwLW9yYW5nZS5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmY2NiYyFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZmZjY2JjIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmY2NiYyFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2ZmYWI5MSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmxpZ2h0ZW4tMywuZGVlcC1vcmFuZ2UubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmFiOTEhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2ZmYWI5MSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmFiOTEhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNmZjhhNjUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5saWdodGVuLTIsLmRlZXAtb3JhbmdlLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY4YTY1IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiNmZjhhNjUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY4YTY1IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojZmY3MDQzIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UubGlnaHRlbi0xLC5kZWVwLW9yYW5nZS5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNzA0MyFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojZmY3MDQzIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNzA0MyFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojZjQ1MTFlIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UuZGFya2VuLTEsLmRlZXAtb3JhbmdlLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmNDUxMWUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojZjQ1MTFlIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmNDUxMWUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5kYXJrZW4tMntib3JkZXItY29sb3I6I2U2NGExOSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmRhcmtlbi0yLC5kZWVwLW9yYW5nZS5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTY0YTE5IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6I2U2NGExOSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZTY0YTE5IWltcG9ydGFudH0uZGVlcC1vcmFuZ2UuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiNkODQzMTUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5kYXJrZW4tMywuZGVlcC1vcmFuZ2UuZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q4NDMxNSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiNkODQzMTUhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q4NDMxNSFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmRhcmtlbi00e2JvcmRlci1jb2xvcjojYmYzNjBjIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UuZGFya2VuLTQsLmRlZXAtb3JhbmdlLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiZjM2MGMhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojYmYzNjBjIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiZjM2MGMhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5hY2NlbnQtMXtib3JkZXItY29sb3I6I2ZmOWU4MCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmFjY2VudC0xLC5kZWVwLW9yYW5nZS5hY2NlbnQtMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmY5ZTgwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTF7Y29sb3I6I2ZmOWU4MCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0xIGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZmY5ZTgwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UuYWNjZW50LTJ7Ym9yZGVyLWNvbG9yOiNmZjZlNDAhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5hY2NlbnQtMiwuZGVlcC1vcmFuZ2UuYWNjZW50LTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmNmU0MCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0ye2NvbG9yOiNmZjZlNDAhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtMiBpbnB1dCwuZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZmNmU0MCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmFjY2VudC0ze2JvcmRlci1jb2xvcjojZmYzZDAwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UuYWNjZW50LTMsLmRlZXAtb3JhbmdlLmFjY2VudC0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZjNkMDAhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtM3tjb2xvcjojZmYzZDAwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTMgaW5wdXQsLmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZjNkMDAhaW1wb3J0YW50fS5kZWVwLW9yYW5nZS5hY2NlbnQtNHtib3JkZXItY29sb3I6I2RkMmMwMCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLmFjY2VudC00LC5kZWVwLW9yYW5nZS5hY2NlbnQtNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZGQyYzAwIWltcG9ydGFudH0uZGVlcC1vcmFuZ2UtLXRleHQudGV4dC0tYWNjZW50LTR7Y29sb3I6I2RkMmMwMCFpbXBvcnRhbnR9LmRlZXAtb3JhbmdlLS10ZXh0LnRleHQtLWFjY2VudC00IGlucHV0LC5kZWVwLW9yYW5nZS0tdGV4dC50ZXh0LS1hY2NlbnQtNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZGQyYzAwIWltcG9ydGFudH0uYnJvd257YmFja2dyb3VuZC1jb2xvcjojNzk1NTQ4IWltcG9ydGFudDtib3JkZXItY29sb3I6Izc5NTU0OCFpbXBvcnRhbnR9LmJyb3duLS10ZXh0e2NvbG9yOiM3OTU1NDghaW1wb3J0YW50fS5icm93bi0tdGV4dCBpbnB1dCwuYnJvd24tLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6Izc5NTU0OCFpbXBvcnRhbnR9LmJyb3duLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kOiM3OTU1NDghaW1wb3J0YW50fS5icm93bi5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNlZmViZTkhaW1wb3J0YW50fS5icm93bi5saWdodGVuLTUsLmJyb3duLmxpZ2h0ZW4tNS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWZlYmU5IWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNlZmViZTkhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWZlYmU5IWltcG9ydGFudH0uYnJvd24ubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZDdjY2M4IWltcG9ydGFudH0uYnJvd24ubGlnaHRlbi00LC5icm93bi5saWdodGVuLTQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2Q3Y2NjOCFpbXBvcnRhbnR9LmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZDdjY2M4IWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5icm93bi0tdGV4dC50ZXh0LS1saWdodGVuLTQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2Q3Y2NjOCFpbXBvcnRhbnR9LmJyb3duLmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2JjYWFhNCFpbXBvcnRhbnR9LmJyb3duLmxpZ2h0ZW4tMywuYnJvd24ubGlnaHRlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiY2FhYTQhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2JjYWFhNCFpbXBvcnRhbnR9LmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiY2FhYTQhaW1wb3J0YW50fS5icm93bi5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNhMTg4N2YhaW1wb3J0YW50fS5icm93bi5saWdodGVuLTIsLmJyb3duLmxpZ2h0ZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYTE4ODdmIWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiNhMTg4N2YhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYTE4ODdmIWltcG9ydGFudH0uYnJvd24ubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojOGQ2ZTYzIWltcG9ydGFudH0uYnJvd24ubGlnaHRlbi0xLC5icm93bi5saWdodGVuLTEtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzhkNmU2MyFpbXBvcnRhbnR9LmJyb3duLS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojOGQ2ZTYzIWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5icm93bi0tdGV4dC50ZXh0LS1saWdodGVuLTEgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzhkNmU2MyFpbXBvcnRhbnR9LmJyb3duLmRhcmtlbi0xe2JvcmRlci1jb2xvcjojNmQ0YzQxIWltcG9ydGFudH0uYnJvd24uZGFya2VuLTEsLmJyb3duLmRhcmtlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2ZDRjNDEhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojNmQ0YzQxIWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM2ZDRjNDEhaW1wb3J0YW50fS5icm93bi5kYXJrZW4tMntib3JkZXItY29sb3I6IzVkNDAzNyFpbXBvcnRhbnR9LmJyb3duLmRhcmtlbi0yLC5icm93bi5kYXJrZW4tMi0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNWQ0MDM3IWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzVkNDAzNyFpbXBvcnRhbnR9LmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5icm93bi0tdGV4dC50ZXh0LS1kYXJrZW4tMiB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNWQ0MDM3IWltcG9ydGFudH0uYnJvd24uZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiM0ZTM0MmUhaW1wb3J0YW50fS5icm93bi5kYXJrZW4tMywuYnJvd24uZGFya2VuLTMtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzRlMzQyZSFpbXBvcnRhbnR9LmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiM0ZTM0MmUhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTMgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzRlMzQyZSFpbXBvcnRhbnR9LmJyb3duLmRhcmtlbi00e2JvcmRlci1jb2xvcjojM2UyNzIzIWltcG9ydGFudH0uYnJvd24uZGFya2VuLTQsLmJyb3duLmRhcmtlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzZTI3MjMhaW1wb3J0YW50fS5icm93bi0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojM2UyNzIzIWltcG9ydGFudH0uYnJvd24tLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmJyb3duLS10ZXh0LnRleHQtLWRhcmtlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzZTI3MjMhaW1wb3J0YW50fS5ibHVlLWdyZXl7YmFja2dyb3VuZC1jb2xvcjojNjA3ZDhiIWltcG9ydGFudDtib3JkZXItY29sb3I6IzYwN2Q4YiFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dHtjb2xvcjojNjA3ZDhiIWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0IGlucHV0LC5ibHVlLWdyZXktLXRleHQgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzYwN2Q4YiFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojNjA3ZDhiIWltcG9ydGFudH0uYmx1ZS1ncmV5LmxpZ2h0ZW4tNXtib3JkZXItY29sb3I6I2VjZWZmMSFpbXBvcnRhbnR9LmJsdWUtZ3JleS5saWdodGVuLTUsLmJsdWUtZ3JleS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2VjZWZmMSFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTV7Y29sb3I6I2VjZWZmMSFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTUgaW5wdXQsLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2VjZWZmMSFpbXBvcnRhbnR9LmJsdWUtZ3JleS5saWdodGVuLTR7Ym9yZGVyLWNvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fS5ibHVlLWdyZXkubGlnaHRlbi00LC5ibHVlLWdyZXkubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00e2NvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00IGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNjZmQ4ZGMhaW1wb3J0YW50fS5ibHVlLWdyZXkubGlnaHRlbi0ze2JvcmRlci1jb2xvcjojYjBiZWM1IWltcG9ydGFudH0uYmx1ZS1ncmV5LmxpZ2h0ZW4tMywuYmx1ZS1ncmV5LmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojYjBiZWM1IWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tM3tjb2xvcjojYjBiZWM1IWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojYjBiZWM1IWltcG9ydGFudH0uYmx1ZS1ncmV5LmxpZ2h0ZW4tMntib3JkZXItY29sb3I6IzkwYTRhZSFpbXBvcnRhbnR9LmJsdWUtZ3JleS5saWdodGVuLTIsLmJsdWUtZ3JleS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzkwYTRhZSFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTJ7Y29sb3I6IzkwYTRhZSFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTIgaW5wdXQsLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzkwYTRhZSFpbXBvcnRhbnR9LmJsdWUtZ3JleS5saWdodGVuLTF7Ym9yZGVyLWNvbG9yOiM3ODkwOWMhaW1wb3J0YW50fS5ibHVlLWdyZXkubGlnaHRlbi0xLC5ibHVlLWdyZXkubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM3ODkwOWMhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xe2NvbG9yOiM3ODkwOWMhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xIGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM3ODkwOWMhaW1wb3J0YW50fS5ibHVlLWdyZXkuZGFya2VuLTF7Ym9yZGVyLWNvbG9yOiM1NDZlN2EhaW1wb3J0YW50fS5ibHVlLWdyZXkuZGFya2VuLTEsLmJsdWUtZ3JleS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNTQ2ZTdhIWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0xe2NvbG9yOiM1NDZlN2EhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tZGFya2VuLTEgaW5wdXQsLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNTQ2ZTdhIWltcG9ydGFudH0uYmx1ZS1ncmV5LmRhcmtlbi0ye2JvcmRlci1jb2xvcjojNDU1YTY0IWltcG9ydGFudH0uYmx1ZS1ncmV5LmRhcmtlbi0yLC5ibHVlLWdyZXkuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQ1NWE2NCFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMntjb2xvcjojNDU1YTY0IWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0yIGlucHV0LC5ibHVlLWdyZXktLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzQ1NWE2NCFpbXBvcnRhbnR9LmJsdWUtZ3JleS5kYXJrZW4tM3tib3JkZXItY29sb3I6IzM3NDc0ZiFpbXBvcnRhbnR9LmJsdWUtZ3JleS5kYXJrZW4tMywuYmx1ZS1ncmV5LmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMzNzQ3NGYhaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tZGFya2VuLTN7Y29sb3I6IzM3NDc0ZiFpbXBvcnRhbnR9LmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMyBpbnB1dCwuYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiMzNzQ3NGYhaW1wb3J0YW50fS5ibHVlLWdyZXkuZGFya2VuLTR7Ym9yZGVyLWNvbG9yOiMyNjMyMzghaW1wb3J0YW50fS5ibHVlLWdyZXkuZGFya2VuLTQsLmJsdWUtZ3JleS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjYzMjM4IWltcG9ydGFudH0uYmx1ZS1ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi00e2NvbG9yOiMyNjMyMzghaW1wb3J0YW50fS5ibHVlLWdyZXktLXRleHQudGV4dC0tZGFya2VuLTQgaW5wdXQsLmJsdWUtZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjYzMjM4IWltcG9ydGFudH0uZ3JleXtiYWNrZ3JvdW5kLWNvbG9yOiM5ZTllOWUhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojOWU5ZTllIWltcG9ydGFudH0uZ3JleS0tdGV4dHtjb2xvcjojOWU5ZTllIWltcG9ydGFudH0uZ3JleS0tdGV4dCBpbnB1dCwuZ3JleS0tdGV4dCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojOWU5ZTllIWltcG9ydGFudH0uZ3JleS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZDojOWU5ZTllIWltcG9ydGFudH0uZ3JleS5saWdodGVuLTV7Ym9yZGVyLWNvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS5ncmV5LmxpZ2h0ZW4tNSwuZ3JleS5saWdodGVuLTUtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYSFpbXBvcnRhbnR9LmdyZXktLXRleHQudGV4dC0tbGlnaHRlbi01e2NvbG9yOiNmYWZhZmEhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNSBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTUgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2ZhZmFmYSFpbXBvcnRhbnR9LmdyZXkubGlnaHRlbi00e2JvcmRlci1jb2xvcjojZjVmNWY1IWltcG9ydGFudH0uZ3JleS5saWdodGVuLTQsLmdyZXkubGlnaHRlbi00LS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjUhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tNHtjb2xvcjojZjVmNWY1IWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTQgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tbGlnaHRlbi00IHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmNWY1ZjUhaW1wb3J0YW50fS5ncmV5LmxpZ2h0ZW4tM3tib3JkZXItY29sb3I6I2VlZSFpbXBvcnRhbnR9LmdyZXkubGlnaHRlbi0zLC5ncmV5LmxpZ2h0ZW4tMy0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWVlIWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTN7Y29sb3I6I2VlZSFpbXBvcnRhbnR9LmdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0zIGlucHV0LC5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMyB0ZXh0YXJlYXtjYXJldC1jb2xvcjojZWVlIWltcG9ydGFudH0uZ3JleS5saWdodGVuLTJ7Ym9yZGVyLWNvbG9yOiNlMGUwZTAhaW1wb3J0YW50fS5ncmV5LmxpZ2h0ZW4tMiwuZ3JleS5saWdodGVuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6I2UwZTBlMCFpbXBvcnRhbnR9LmdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0ye2NvbG9yOiNlMGUwZTAhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMiBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6I2UwZTBlMCFpbXBvcnRhbnR9LmdyZXkubGlnaHRlbi0xe2JvcmRlci1jb2xvcjojYmRiZGJkIWltcG9ydGFudH0uZ3JleS5saWdodGVuLTEsLmdyZXkubGlnaHRlbi0xLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmQhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWxpZ2h0ZW4tMXtjb2xvcjojYmRiZGJkIWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1saWdodGVuLTEgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tbGlnaHRlbi0xIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNiZGJkYmQhaW1wb3J0YW50fS5ncmV5LmRhcmtlbi0xe2JvcmRlci1jb2xvcjojNzU3NTc1IWltcG9ydGFudH0uZ3JleS5kYXJrZW4tMSwuZ3JleS5kYXJrZW4tMS0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzU3NTc1IWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMXtjb2xvcjojNzU3NTc1IWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMSBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tMSB0ZXh0YXJlYXtjYXJldC1jb2xvcjojNzU3NTc1IWltcG9ydGFudH0uZ3JleS5kYXJrZW4tMntib3JkZXItY29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9LmdyZXkuZGFya2VuLTIsLmdyZXkuZGFya2VuLTItLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9LmdyZXktLXRleHQudGV4dC0tZGFya2VuLTJ7Y29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9LmdyZXktLXRleHQudGV4dC0tZGFya2VuLTIgaW5wdXQsLmdyZXktLXRleHQudGV4dC0tZGFya2VuLTIgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzYxNjE2MSFpbXBvcnRhbnR9LmdyZXkuZGFya2VuLTN7Ym9yZGVyLWNvbG9yOiM0MjQyNDIhaW1wb3J0YW50fS5ncmV5LmRhcmtlbi0zLC5ncmV5LmRhcmtlbi0zLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDIhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0ze2NvbG9yOiM0MjQyNDIhaW1wb3J0YW50fS5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0zIGlucHV0LC5ncmV5LS10ZXh0LnRleHQtLWRhcmtlbi0zIHRleHRhcmVhe2NhcmV0LWNvbG9yOiM0MjQyNDIhaW1wb3J0YW50fS5ncmV5LmRhcmtlbi00e2JvcmRlci1jb2xvcjojMjEyMTIxIWltcG9ydGFudH0uZ3JleS5kYXJrZW4tNCwuZ3JleS5kYXJrZW4tNC0tYWZ0ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjEyMTIxIWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tNHtjb2xvcjojMjEyMTIxIWltcG9ydGFudH0uZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tNCBpbnB1dCwuZ3JleS0tdGV4dC50ZXh0LS1kYXJrZW4tNCB0ZXh0YXJlYXtjYXJldC1jb2xvcjojMjEyMTIxIWltcG9ydGFudH0uc2hhZGVzLmJsYWNre2JvcmRlci1jb2xvcjojMDAwIWltcG9ydGFudH0uc2hhZGVzLmJsYWNrLC5zaGFkZXMuYmxhY2stLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9LnNoYWRlcy0tdGV4dC50ZXh0LS1ibGFja3tjb2xvcjojMDAwIWltcG9ydGFudH0uc2hhZGVzLS10ZXh0LnRleHQtLWJsYWNrIGlucHV0LC5zaGFkZXMtLXRleHQudGV4dC0tYmxhY2sgdGV4dGFyZWF7Y2FyZXQtY29sb3I6IzAwMCFpbXBvcnRhbnR9LnNoYWRlcy53aGl0ZXtib3JkZXItY29sb3I6I2ZmZiFpbXBvcnRhbnR9LnNoYWRlcy53aGl0ZSwuc2hhZGVzLndoaXRlLS1hZnRlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmYhaW1wb3J0YW50fS5zaGFkZXMtLXRleHQudGV4dC0td2hpdGV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnNoYWRlcy0tdGV4dC50ZXh0LS13aGl0ZSBpbnB1dCwuc2hhZGVzLS10ZXh0LnRleHQtLXdoaXRlIHRleHRhcmVhe2NhcmV0LWNvbG9yOiNmZmYhaW1wb3J0YW50fS5zaGFkZXMudHJhbnNwYXJlbnR7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0uc2hhZGVzLnRyYW5zcGFyZW50LC5zaGFkZXMudHJhbnNwYXJlbnQtLWFmdGVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5zaGFkZXMtLXRleHQudGV4dC0tdHJhbnNwYXJlbnR7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5zaGFkZXMtLXRleHQudGV4dC0tdHJhbnNwYXJlbnQgaW5wdXQsLnNoYWRlcy0tdGV4dC50ZXh0LS10cmFuc3BhcmVudCB0ZXh0YXJlYXtjYXJldC1jb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnR9LmVsZXZhdGlvbi0we2JveC1zaGFkb3c6MCAwIDAgMCByZ2JhKDAsMCwwLC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsLjE0KSwwIDAgMCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0xe2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0ye2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0ze2JveC1zaGFkb3c6MCAzcHggM3B4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAzcHggNHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDhweCAwIHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi00e2JveC1zaGFkb3c6MCAycHggNHB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCA0cHggNXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tNXtib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNXB4IDhweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxNHB4IDAgcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uZWxldmF0aW9uLTZ7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tN3tib3gtc2hhZG93OjAgNHB4IDVweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgN3B4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDJweCAxNnB4IDFweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tOHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tOXtib3gtc2hhZG93OjAgNXB4IDZweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOXB4IDEycHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNnB4IDJweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTB7Ym94LXNoYWRvdzowIDZweCA2cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDEwcHggMTRweCAxcHggcmdiYSgwLDAsMCwuMTQpLDAgNHB4IDE4cHggM3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0xMXtib3gtc2hhZG93OjAgNnB4IDdweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTFweCAxNXB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCA0cHggMjBweCAzcHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uZWxldmF0aW9uLTEye2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxMnB4IDE3cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyMnB4IDRweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTN7Ym94LXNoYWRvdzowIDdweCA4cHggLTRweCByZ2JhKDAsMCwwLC4yKSwwIDEzcHggMTlweCAycHggcmdiYSgwLDAsMCwuMTQpLDAgNXB4IDI0cHggNHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0xNHtib3gtc2hhZG93OjAgN3B4IDlweCAtNHB4IHJnYmEoMCwwLDAsLjIpLDAgMTRweCAyMXB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA1cHggMjZweCA0cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uZWxldmF0aW9uLTE1e2JveC1zaGFkb3c6MCA4cHggOXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNXB4IDIycHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAyOHB4IDVweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTZ7Ym94LXNoYWRvdzowIDhweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMHB4IDVweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTd7Ym94LXNoYWRvdzowIDhweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxN3B4IDI2cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDZweCAzMnB4IDVweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTh7Ym94LXNoYWRvdzowIDlweCAxMXB4IC01cHggcmdiYSgwLDAsMCwuMiksMCAxOHB4IDI4cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDdweCAzNHB4IDZweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMTl7Ym94LXNoYWRvdzowIDlweCAxMnB4IC02cHggcmdiYSgwLDAsMCwuMiksMCAxOXB4IDI5cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDdweCAzNnB4IDZweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMjB7Ym94LXNoYWRvdzowIDEwcHggMTNweCAtNnB4IHJnYmEoMCwwLDAsLjIpLDAgMjBweCAzMXB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA4cHggMzhweCA3cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uZWxldmF0aW9uLTIxe2JveC1zaGFkb3c6MCAxMHB4IDEzcHggLTZweCByZ2JhKDAsMCwwLC4yKSwwIDIxcHggMzNweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOHB4IDQwcHggN3B4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9LmVsZXZhdGlvbi0yMntib3gtc2hhZG93OjAgMTBweCAxNHB4IC02cHggcmdiYSgwLDAsMCwuMiksMCAyMnB4IDM1cHggM3B4IHJnYmEoMCwwLDAsLjE0KSwwIDhweCA0MnB4IDdweCByZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5lbGV2YXRpb24tMjN7Ym94LXNoYWRvdzowIDExcHggMTRweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjNweCAzNnB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDRweCA4cHggcmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uZWxldmF0aW9uLTI0e2JveC1zaGFkb3c6MCAxMXB4IDE1cHggLTdweCByZ2JhKDAsMCwwLC4yKSwwIDI0cHggMzhweCAzcHggcmdiYSgwLDAsMCwuMTQpLDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsLjEyKSFpbXBvcnRhbnR9aHRtbHtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3cteTpzY3JvbGw7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCV9Kiw6YWZ0ZXIsOmJlZm9yZXtib3gtc2l6aW5nOmluaGVyaXR9OmFmdGVyLDpiZWZvcmV7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dmVydGljYWwtYWxpZ246aW5oZXJpdH0qe2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtwYWRkaW5nOjA7bWFyZ2luOjB9YXVkaW86bm90KFtjb250cm9sc10pe2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MH1ocntvdmVyZmxvdzp2aXNpYmxlfWFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLG1haW4sbWVudSxuYXYsc2VjdGlvbixzdW1tYXJ5e2Rpc3BsYXk6YmxvY2t9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1zbWFsbHtmb250LXNpemU6ODAlfVtoaWRkZW5dLHRlbXBsYXRle2Rpc3BsYXk6bm9uZX1hYmJyW3RpdGxlXXtib3JkZXItYm90dG9tOjFweCBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6b2JqZWN0c31hOmFjdGl2ZSxhOmhvdmVye291dGxpbmUtd2lkdGg6MH1jb2RlLGtiZCxwcmUsc2FtcHtmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlfWIsc3Ryb25ne2ZvbnQtd2VpZ2h0OmJvbGRlcn1kZm57Zm9udC1zdHlsZTppdGFsaWN9bWFya3tiYWNrZ3JvdW5kLWNvbG9yOiNmZjA7Y29sb3I6IzAwMH1zdWIsc3Vwe2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfWlucHV0e2JvcmRlci1yYWRpdXM6MH1bcm9sZT1idXR0b25dLFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF0sYnV0dG9ue2N1cnNvcjpwb2ludGVyfVtkaXNhYmxlZF17Y3Vyc29yOmRlZmF1bHR9W3R5cGU9bnVtYmVyXXt3aWR0aDphdXRvfVt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX10ZXh0YXJlYXtvdmVyZmxvdzphdXRvO3Jlc2l6ZTp2ZXJ0aWNhbH1idXR0b24saW5wdXQsb3B0Z3JvdXAsc2VsZWN0LHRleHRhcmVhe2ZvbnQ6aW5oZXJpdH1vcHRncm91cHtmb250LXdlaWdodDo3MDB9YnV0dG9ue292ZXJmbG93OnZpc2libGV9W3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lcixidXR0b246Oi1tb3otZm9jdXMtaW5uZXJ7Ym9yZGVyLXN0eWxlOjA7cGFkZGluZzowfVt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsYnV0dG9uOi1tb3otZm9jdXNyaW5ne291dGxpbmU6MDtib3JkZXI6MH1bdHlwZT1yZXNldF0sW3R5cGU9c3VibWl0XSxidXR0b24saHRtbCBbdHlwZT1idXR0b25dey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixpbnB1dCxzZWxlY3QsdGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6bm9uZTtjb2xvcjppbmhlcml0fXNlbGVjdHstbW96LWFwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1zZWxlY3Q6Oi1tcy1leHBhbmR7ZGlzcGxheTpub25lfXNlbGVjdDo6LW1zLXZhbHVle2NvbG9yOmN1cnJlbnRDb2xvcn1sZWdlbmR7Ym9yZGVyOjA7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OnRhYmxlO21heC13aWR0aDoxMDAlO3doaXRlLXNwYWNlOm5vcm1hbH06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Zm9udDppbmhlcml0fVt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtvdXRsaW5lLW9mZnNldDotMnB4fWltZ3tib3JkZXItc3R5bGU6bm9uZX1wcm9ncmVzc3t2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59YXVkaW8sY2FudmFzLHByb2dyZXNzLHZpZGVve2Rpc3BsYXk6aW5saW5lLWJsb2NrfVthcmlhLWJ1c3k9dHJ1ZV17Y3Vyc29yOnByb2dyZXNzfVthcmlhLWNvbnRyb2xzXXtjdXJzb3I6cG9pbnRlcn1bYXJpYS1kaXNhYmxlZF17Y3Vyc29yOmRlZmF1bHR9OjotbW96LXNlbGVjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOiNiM2Q0ZmM7Y29sb3I6IzAwMDt0ZXh0LXNoYWRvdzpub25lfTo6c2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2IzZDRmYztjb2xvcjojMDAwO3RleHQtc2hhZG93Om5vbmV9LmJvdHRvbS1zaGVldC10cmFuc2l0aW9uLWVudGVyLC5ib3R0b20tc2hlZXQtdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfS5jYXJvdXNlbC10cmFuc2l0aW9uLWVudGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpfS5jYXJvdXNlbC10cmFuc2l0aW9uLWxlYXZlLC5jYXJvdXNlbC10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5jYXJvdXNlbC1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXIsLmNhcm91c2VsLXRyYW5zaXRpb24tbGVhdmUsLmNhcm91c2VsLXRyYW5zaXRpb24tbGVhdmUtdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKX0uY2Fyb3VzZWwtcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLC5jYXJvdXNlbC1yZXZlcnNlLXRyYW5zaXRpb24tbGVhdmUtdG97cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSl9LmRpYWxvZy10cmFuc2l0aW9uLWVudGVyLC5kaWFsb2ctdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSguNSk7dHJhbnNmb3JtOnNjYWxlKC41KTtvcGFjaXR5OjB9LmRpYWxvZy10cmFuc2l0aW9uLWVudGVyLXRvLC5kaWFsb2ctdHJhbnNpdGlvbi1sZWF2ZXtvcGFjaXR5OjF9LmRpYWxvZy1ib3R0b20tdHJhbnNpdGlvbi1lbnRlciwuZGlhbG9nLWJvdHRvbS10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSl9LnBpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSwucGlja2VyLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5waWNrZXItdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1lbnRlciwucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10bywucGlja2VyLXRyYW5zaXRpb24tZW50ZXIsLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MH0ucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1lbnRlci10bywucGlja2VyLXRyYW5zaXRpb24tZW50ZXItdG97dHJhbnN0aW9uOnRyYW5zbGF0ZSgwLDApfS5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLC5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSwucGlja2VyLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10bywucGlja2VyLXRyYW5zaXRpb24tbGVhdmUsLnBpY2tlci10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSwucGlja2VyLXRyYW5zaXRpb24tbGVhdmUtdG97cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50fS5waWNrZXItdHJhbnNpdGlvbi1lbnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfS5waWNrZXItcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLC5waWNrZXItdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSl9LnBpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24tbGVhdmUtdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKX0ucGlja2VyLXRpdGxlLXRyYW5zaXRpb24tZW50ZXItdG8sLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfS5waWNrZXItdGl0bGUtdHJhbnNpdGlvbi1lbnRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTEwMCUpfS5waWNrZXItdGl0bGUtdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSl9LnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZlLC5waWNrZXItdGl0bGUtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmUsLnBpY2tlci10aXRsZS10cmFuc2l0aW9uLWxlYXZlLXRve3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0udGFiLXRyYW5zaXRpb24tZW50ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSl9LnRhYi10cmFuc2l0aW9uLWVudGVyLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfS50YWItdHJhbnNpdGlvbi1sZWF2ZSwudGFiLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS50YWItdHJhbnNpdGlvbi1sZWF2ZS10b3twb3NpdGlvbjphYnNvbHV0ZX0udGFiLXJldmVyc2UtdHJhbnNpdGlvbi1lbnRlciwudGFiLXRyYW5zaXRpb24tbGVhdmUtdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKX0udGFiLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZSwudGFiLXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10b3t0b3A6MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMTAwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxMDAlKX0uc2NhbGUtdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsLnNjYWxlLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC42LDEpfS5zY2FsZS10cmFuc2l0aW9uLWVudGVyLC5zY2FsZS10cmFuc2l0aW9uLWxlYXZlLC5zY2FsZS10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm06c2NhbGUoMCl9LnNsaWRlLXktdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsLnNsaWRlLXktdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uc2xpZGUteS10cmFuc2l0aW9uLWVudGVyLC5zbGlkZS15LXRyYW5zaXRpb24tbGVhdmUtdG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xNXB4KX0uc2xpZGUteS1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5zbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uc2xpZGUteS1yZXZlcnNlLXRyYW5zaXRpb24tZW50ZXIsLnNsaWRlLXktcmV2ZXJzZS10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDE1cHgpfS5zbGlkZS14LXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5zbGlkZS14LXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LnNsaWRlLXgtdHJhbnNpdGlvbi1lbnRlciwuc2xpZGUteC10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xNXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTVweCl9LnNsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LnNsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uLWVudGVyLC5zbGlkZS14LXJldmVyc2UtdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxNXB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxNXB4KX0uZmFkZS10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuZmFkZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZXt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5mYWRlLXRyYW5zaXRpb24tZW50ZXIsLmZhZGUtdHJhbnNpdGlvbi1sZWF2ZS10b3tvcGFjaXR5OjB9LmZhYi10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuZmFiLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LmZhYi10cmFuc2l0aW9uLWVudGVyLC5mYWItdHJhbnNpdGlvbi1sZWF2ZS10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06c2NhbGUoMCkgcm90YXRlKC00NWRlZyl9LmJsb2NrcXVvdGV7cGFkZGluZzoxNnB4IDAgMTZweCAyNHB4O2ZvbnQtc2l6ZToxOHB4O2ZvbnQtd2VpZ2h0OjMwMH1jb2RlLGtiZHtkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXItcmFkaXVzOjNweDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtmb250LXNpemU6ODUlO2ZvbnQtd2VpZ2h0OjkwMH1jb2RlOmFmdGVyLGNvZGU6YmVmb3JlLGtiZDphZnRlcixrYmQ6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXFxBMFxcXCI7bGV0dGVyLXNwYWNpbmc6LTFweH1jb2Rle2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtjb2xvcjojYmQ0MTQ3O2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKX1rYmR7YmFja2dyb3VuZDojNDI0MjQyO2NvbG9yOiNmZmZ9aHRtbHtmb250LXNpemU6MTRweDtvdmVyZmxvdy14OmhpZGRlbjt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCl9LmFwcGxpY2F0aW9ue2ZvbnQtZmFtaWx5OlJvYm90byxzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuNX06Oi1tcy1jbGVhciw6Oi1tcy1yZXZlYWx7ZGlzcGxheTpub25lfS5icm93c2VyLWxpc3R7cGFkZGluZy1sZWZ0OjI0cHh9LmJyb3dzZXItbGlzdC0tdW5zdHlsZWR7bGlzdC1zdHlsZS10eXBlOm5vbmV9LmRpc3BsYXktNHtmb250LXNpemU6MTEycHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzotLjA0ZW0haW1wb3J0YW50fS5kaXNwbGF5LTN7Zm9udC1zaXplOjU2cHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjM1IWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzotLjAyZW0haW1wb3J0YW50fS5kaXNwbGF5LTJ7Zm9udC1zaXplOjQ1cHghaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjQ4cHghaW1wb3J0YW50fS5kaXNwbGF5LTEsLmRpc3BsYXktMntmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6bm9ybWFsIWltcG9ydGFudH0uZGlzcGxheS0xe2ZvbnQtc2l6ZTozNHB4IWltcG9ydGFudDtsaW5lLWhlaWdodDo0MHB4IWltcG9ydGFudH0uaGVhZGxpbmV7Zm9udC1zaXplOjI0cHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDozMnB4IWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzpub3JtYWwhaW1wb3J0YW50fS50aXRsZXtmb250LXNpemU6MjBweCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOi4wMmVtIWltcG9ydGFudH0uc3ViaGVhZGluZ3tmb250LXNpemU6MTZweCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwfS5ib2R5LTJ7Zm9udC13ZWlnaHQ6NTAwfS5ib2R5LTEsLmJvZHktMntmb250LXNpemU6MTRweCFpbXBvcnRhbnR9LmJvZHktMSwuY2FwdGlvbntmb250LXdlaWdodDo0MDB9LmNhcHRpb257Zm9udC1zaXplOjEycHghaW1wb3J0YW50fXB7bWFyZ2luLWJvdHRvbToxNnB4fS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteS1oaWRkZW57b3ZlcmZsb3cteTpoaWRkZW59LnJpZ2h0e2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0ubGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0ubXgtYXV0b3ttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9Lm10LTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXItMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1iLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWwtMCwubXgtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubXgtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm15LTB7bWFyZ2luLXRvcDowIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tYS0we21hcmdpbjowIWltcG9ydGFudH0ucHQtMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHItMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wYi0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wbC0wLC5weC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucHgtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5weS0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wYS0we3BhZGRpbmc6MCFpbXBvcnRhbnR9Lm10LTF7bWFyZ2luLXRvcDo0cHghaW1wb3J0YW50fS5tci0xe21hcmdpbi1yaWdodDo0cHghaW1wb3J0YW50fS5tYi0xe21hcmdpbi1ib3R0b206NHB4IWltcG9ydGFudH0ubWwtMSwubXgtMXttYXJnaW4tbGVmdDo0cHghaW1wb3J0YW50fS5teC0xe21hcmdpbi1yaWdodDo0cHghaW1wb3J0YW50fS5teS0xe21hcmdpbi10b3A6NHB4IWltcG9ydGFudDttYXJnaW4tYm90dG9tOjRweCFpbXBvcnRhbnR9Lm1hLTF7bWFyZ2luOjRweCFpbXBvcnRhbnR9LnB0LTF7cGFkZGluZy10b3A6NHB4IWltcG9ydGFudH0ucHItMXtwYWRkaW5nLXJpZ2h0OjRweCFpbXBvcnRhbnR9LnBiLTF7cGFkZGluZy1ib3R0b206NHB4IWltcG9ydGFudH0ucGwtMSwucHgtMXtwYWRkaW5nLWxlZnQ6NHB4IWltcG9ydGFudH0ucHgtMXtwYWRkaW5nLXJpZ2h0OjRweCFpbXBvcnRhbnR9LnB5LTF7cGFkZGluZy10b3A6NHB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTo0cHghaW1wb3J0YW50fS5wYS0xe3BhZGRpbmc6NHB4IWltcG9ydGFudH0ubXQtMnttYXJnaW4tdG9wOjhweCFpbXBvcnRhbnR9Lm1yLTJ7bWFyZ2luLXJpZ2h0OjhweCFpbXBvcnRhbnR9Lm1iLTJ7bWFyZ2luLWJvdHRvbTo4cHghaW1wb3J0YW50fS5tbC0yLC5teC0ye21hcmdpbi1sZWZ0OjhweCFpbXBvcnRhbnR9Lm14LTJ7bWFyZ2luLXJpZ2h0OjhweCFpbXBvcnRhbnR9Lm15LTJ7bWFyZ2luLXRvcDo4cHghaW1wb3J0YW50O21hcmdpbi1ib3R0b206OHB4IWltcG9ydGFudH0ubWEtMnttYXJnaW46OHB4IWltcG9ydGFudH0ucHQtMntwYWRkaW5nLXRvcDo4cHghaW1wb3J0YW50fS5wci0ye3BhZGRpbmctcmlnaHQ6OHB4IWltcG9ydGFudH0ucGItMntwYWRkaW5nLWJvdHRvbTo4cHghaW1wb3J0YW50fS5wbC0yLC5weC0ye3BhZGRpbmctbGVmdDo4cHghaW1wb3J0YW50fS5weC0ye3BhZGRpbmctcmlnaHQ6OHB4IWltcG9ydGFudH0ucHktMntwYWRkaW5nLXRvcDo4cHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjhweCFpbXBvcnRhbnR9LnBhLTJ7cGFkZGluZzo4cHghaW1wb3J0YW50fS5tdC0ze21hcmdpbi10b3A6MTZweCFpbXBvcnRhbnR9Lm1yLTN7bWFyZ2luLXJpZ2h0OjE2cHghaW1wb3J0YW50fS5tYi0ze21hcmdpbi1ib3R0b206MTZweCFpbXBvcnRhbnR9Lm1sLTMsLm14LTN7bWFyZ2luLWxlZnQ6MTZweCFpbXBvcnRhbnR9Lm14LTN7bWFyZ2luLXJpZ2h0OjE2cHghaW1wb3J0YW50fS5teS0ze21hcmdpbi10b3A6MTZweCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToxNnB4IWltcG9ydGFudH0ubWEtM3ttYXJnaW46MTZweCFpbXBvcnRhbnR9LnB0LTN7cGFkZGluZy10b3A6MTZweCFpbXBvcnRhbnR9LnByLTN7cGFkZGluZy1yaWdodDoxNnB4IWltcG9ydGFudH0ucGItM3twYWRkaW5nLWJvdHRvbToxNnB4IWltcG9ydGFudH0ucGwtMywucHgtM3twYWRkaW5nLWxlZnQ6MTZweCFpbXBvcnRhbnR9LnB4LTN7cGFkZGluZy1yaWdodDoxNnB4IWltcG9ydGFudH0ucHktM3twYWRkaW5nLXRvcDoxNnB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxNnB4IWltcG9ydGFudH0ucGEtM3twYWRkaW5nOjE2cHghaW1wb3J0YW50fS5tdC00e21hcmdpbi10b3A6MjRweCFpbXBvcnRhbnR9Lm1yLTR7bWFyZ2luLXJpZ2h0OjI0cHghaW1wb3J0YW50fS5tYi00e21hcmdpbi1ib3R0b206MjRweCFpbXBvcnRhbnR9Lm1sLTQsLm14LTR7bWFyZ2luLWxlZnQ6MjRweCFpbXBvcnRhbnR9Lm14LTR7bWFyZ2luLXJpZ2h0OjI0cHghaW1wb3J0YW50fS5teS00e21hcmdpbi10b3A6MjRweCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToyNHB4IWltcG9ydGFudH0ubWEtNHttYXJnaW46MjRweCFpbXBvcnRhbnR9LnB0LTR7cGFkZGluZy10b3A6MjRweCFpbXBvcnRhbnR9LnByLTR7cGFkZGluZy1yaWdodDoyNHB4IWltcG9ydGFudH0ucGItNHtwYWRkaW5nLWJvdHRvbToyNHB4IWltcG9ydGFudH0ucGwtNCwucHgtNHtwYWRkaW5nLWxlZnQ6MjRweCFpbXBvcnRhbnR9LnB4LTR7cGFkZGluZy1yaWdodDoyNHB4IWltcG9ydGFudH0ucHktNHtwYWRkaW5nLXRvcDoyNHB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToyNHB4IWltcG9ydGFudH0ucGEtNHtwYWRkaW5nOjI0cHghaW1wb3J0YW50fS5tdC01e21hcmdpbi10b3A6NDhweCFpbXBvcnRhbnR9Lm1yLTV7bWFyZ2luLXJpZ2h0OjQ4cHghaW1wb3J0YW50fS5tYi01e21hcmdpbi1ib3R0b206NDhweCFpbXBvcnRhbnR9Lm1sLTUsLm14LTV7bWFyZ2luLWxlZnQ6NDhweCFpbXBvcnRhbnR9Lm14LTV7bWFyZ2luLXJpZ2h0OjQ4cHghaW1wb3J0YW50fS5teS01e21hcmdpbi10b3A6NDhweCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTo0OHB4IWltcG9ydGFudH0ubWEtNXttYXJnaW46NDhweCFpbXBvcnRhbnR9LnB0LTV7cGFkZGluZy10b3A6NDhweCFpbXBvcnRhbnR9LnByLTV7cGFkZGluZy1yaWdodDo0OHB4IWltcG9ydGFudH0ucGItNXtwYWRkaW5nLWJvdHRvbTo0OHB4IWltcG9ydGFudH0ucGwtNSwucHgtNXtwYWRkaW5nLWxlZnQ6NDhweCFpbXBvcnRhbnR9LnB4LTV7cGFkZGluZy1yaWdodDo0OHB4IWltcG9ydGFudH0ucHktNXtwYWRkaW5nLXRvcDo0OHB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTo0OHB4IWltcG9ydGFudH0ucGEtNXtwYWRkaW5nOjQ4cHghaW1wb3J0YW50fUBtZWRpYSBzY3JlZW57W2hpZGRlbn49c2NyZWVuXXtkaXNwbGF5OmluaGVyaXR9W2hpZGRlbn49c2NyZWVuXTpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cyk6bm90KDp0YXJnZXQpe3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDtjbGlwOnJlY3QoMCAwIDAgMCkhaW1wb3J0YW50fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTk5cHgpey5oaWRkZW4teHMtb25seXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjAwcHgpIGFuZCAobWF4LXdpZHRoOjk1OXB4KXsuaGlkZGVuLXNtLW9ubHl7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk1OXB4KXsuaGlkZGVuLXNtLWFuZC1kb3due2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2MDBweCl7LmhpZGRlbi1zbS1hbmQtdXB7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KSBhbmQgKG1heC13aWR0aDoxMjYzcHgpey5oaWRkZW4tbWQtb25seXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTI2M3B4KXsuaGlkZGVuLW1kLWFuZC1kb3due2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5NjBweCl7LmhpZGRlbi1tZC1hbmQtdXB7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyNjRweCkgYW5kIChtYXgtd2lkdGg6MTkwM3B4KXsuaGlkZGVuLWxnLW9ubHl7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjE5MDNweCl7LmhpZGRlbi1sZy1hbmQtZG93bntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTI2NHB4KXsuaGlkZGVuLWxnLWFuZC11cHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTkwNHB4KXsuaGlkZGVuLXhsLW9ubHl7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MCl7LnRleHQteHMtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXhzLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9LnRleHQteHMtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQteHMtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo2MDBweCl7LnRleHQtc20tbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXNtLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9LnRleHQtc20tcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtc20tanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7LnRleHQtbWQtbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LW1kLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9LnRleHQtbWQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtbWQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnkhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjY0cHgpey50ZXh0LWxnLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1sZy1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS50ZXh0LWxnLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LWxnLWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTkwNHB4KXsudGV4dC14bC1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQteGwtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0udGV4dC14bC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC14bC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeSFpbXBvcnRhbnR9fS5hcHBsaWNhdGlvbiwuYXBwbGljYXRpb24tLXdyYXB7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0uYXBwbGljYXRpb24tLXdyYXB7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjEwMHZoO21heC13aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfS5hcHBsaWNhdGlvbi50aGVtZS0tbGlnaHR7YmFja2dyb3VuZDojZmFmYWZhO2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0uYXBwbGljYXRpb24udGhlbWUtLWxpZ2h0IGF7Y3Vyc29yOnBvaW50ZXJ9LmFwcGxpY2F0aW9uLnRoZW1lLS1saWdodCAudGV4dC0tcHJpbWFyeXtjb2xvcjpyZ2JhKDAsMCwwLC44NykhaW1wb3J0YW50fS5hcHBsaWNhdGlvbi50aGVtZS0tbGlnaHQgLnRleHQtLXNlY29uZGFyeXtjb2xvcjpyZ2JhKDAsMCwwLC41NCkhaW1wb3J0YW50fS5hcHBsaWNhdGlvbi50aGVtZS0tbGlnaHQgLnRleHQtLWRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjM4KSFpbXBvcnRhbnR9LmFwcGxpY2F0aW9uLnRoZW1lLS1kYXJre2JhY2tncm91bmQ6IzMwMzAzMDtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbi50aGVtZS0tZGFyayBhe2N1cnNvcjpwb2ludGVyfS5hcHBsaWNhdGlvbi50aGVtZS0tZGFyayAudGV4dC0tcHJpbWFyeXtjb2xvcjojZmZmIWltcG9ydGFudH0uYXBwbGljYXRpb24udGhlbWUtLWRhcmsgLnRleHQtLXNlY29uZGFyeXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNykhaW1wb3J0YW50fS5hcHBsaWNhdGlvbi50aGVtZS0tZGFyayAudGV4dC0tZGlzYWJsZWR7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpIWltcG9ydGFudH1AbWVkaWEgcHJpbnR7QC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpey5hcHBsaWNhdGlvbiwuYXBwbGljYXRpb24tLXdyYXB7ZGlzcGxheTpibG9ja319fS5hbGVydHtib3JkZXItcmFkaXVzOjA7Ym9yZGVyLXdpZHRoOjRweCAwIDA7Ym9yZGVyLXN0eWxlOnNvbGlkO2NvbG9yOiNmZmY7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtmb250LXNpemU6MTRweDttYXJnaW46NHB4IGF1dG87cGFkZGluZzoxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LmFsZXJ0IC5hbGVydF9faWNvbi5pY29uLC5hbGVydF9fZGlzbWlzc2libGUgLmljb257LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7Y29sb3I6cmdiYSgwLDAsMCwuMyk7Zm9udC1zaXplOjI0cHh9LmFsZXJ0LS1vdXRsaW5lIC5pY29ue2NvbG9yOmluaGVyaXQhaW1wb3J0YW50fS5hbGVydF9faWNvbnttYXJnaW4tcmlnaHQ6MTZweH0uYWxlcnRfX2Rpc21pc3NpYmxley1tcy1mbGV4LWl0ZW0tYWxpZ246c3RhcnQ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O2NvbG9yOmluaGVyaXQ7bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6MDt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0uYWxlcnRfX2Rpc21pc3NpYmxlOmhvdmVye29wYWNpdHk6Ljh9LmFsZXJ0LS1uby1pY29uIC5hbGVydF9faWNvbntkaXNwbGF5Om5vbmV9LmFsZXJ0PmRpdnstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxO2ZsZXg6MSAxfS5hbGVydC5hbGVydHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uYWxlcnQuYWxlcnQtLW91dGxpbmV7Ym9yZGVyOjFweCBzb2xpZCBjdXJyZW50Q29sb3IhaW1wb3J0YW50fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjAwcHgpey5hbGVydF9faWNvbntkaXNwbGF5Om5vbmV9fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmljb24sLnRoZW1lLS1saWdodCAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaWNvbi5pY29uLS1kaXNhYmxlZDpub3QoLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiksLnRoZW1lLS1saWdodCAuaWNvbi5pY29uLS1kaXNhYmxlZDpub3QoLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbil7Y29sb3I6cmdiYSgwLDAsMCwuMzgpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmljb24sLnRoZW1lLS1kYXJrIC5pY29ue2NvbG9yOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pY29uLmljb24tLWRpc2FibGVkOm5vdCguaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uKSwudGhlbWUtLWRhcmsgLmljb24uaWNvbi0tZGlzYWJsZWQ6bm90KC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24pe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KSFpbXBvcnRhbnR9Lmljb257LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczpcXFwibGlnYVxcXCI7Zm9udC1mZWF0dXJlLXNldHRpbmdzOlxcXCJsaWdhXFxcIjtmb250LXNpemU6MjRweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjE7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lmljb24uaWNvbi0tbGFyZ2V7Zm9udC1zaXplOjIuNXJlbX0uaWNvbi5pY29uLS1tZWRpdW17Zm9udC1zaXplOjJyZW19Lmljb24uaWNvbi0teC1sYXJnZXtmb250LXNpemU6M3JlbX0uaWNvbi5pY29uLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5hdmF0YXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmF2YXRhciwuYXZhdGFyIC5pY29uLC5hdmF0YXIgaW1ne2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXh9LmF2YXRhciAuaWNvbiwuYXZhdGFyIGltZ3toZWlnaHQ6aW5oZXJpdDt3aWR0aDppbmhlcml0fS5hdmF0YXItLXRpbGUsLmF2YXRhci0tdGlsZSAuaWNvbiwuYXZhdGFyLS10aWxlIGltZ3tib3JkZXItcmFkaXVzOjB9LmJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS5iYWRnZV9fYmFkZ2V7Y29sb3I6I2ZmZjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTFweDtyaWdodDotMjJweDtib3JkZXItcmFkaXVzOjUwJTtoZWlnaHQ6MjJweDt3aWR0aDoyMnB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdzstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uYmFkZ2VfX2JhZGdlLC5iYWRnZV9fYmFkZ2UgLmljb257Zm9udC1zaXplOjE0cHh9LmJhZGdlLS1vdmVybGFwIC5iYWRnZV9fYmFkZ2V7dG9wOi04cHg7cmlnaHQ6LThweH0uYmFkZ2UtLW92ZXJsYXAuYmFkZ2UtLWxlZnQgLmJhZGdlX19iYWRnZXtsZWZ0Oi04cHg7cmlnaHQ6YXV0b30uYmFkZ2UtLW92ZXJsYXAuYmFkZ2UtLWJvdHRvbSAuYmFkZ2VfX2JhZGdle2JvdHRvbTotOHB4O3RvcDphdXRvfS5iYWRnZS0tbGVmdCAuYmFkZ2VfX2JhZGdle2xlZnQ6LTIycHh9LmJhZGdlLS1ib3R0b20gLmJhZGdlX19iYWRnZXtib3R0b206LTExcHg7dG9wOmF1dG99LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYm90dG9tLW5hdiwudGhlbWUtLWxpZ2h0IC5ib3R0b20tbmF2e2JhY2tncm91bmQtY29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJvdHRvbS1uYXYsLnRoZW1lLS1kYXJrIC5ib3R0b20tbmF2e2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mn0uYm90dG9tLW5hdntib3R0b206MDtib3gtc2hhZG93OjAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSg2MHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2MHB4KTt0cmFuc2l0aW9uOmFsbCAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoxMDAlO3otaW5kZXg6NH0uYm90dG9tLW5hdi0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGV9LmJvdHRvbS1uYXYtLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0uYm90dG9tLW5hdi0tZml4ZWR7cG9zaXRpb246Zml4ZWR9LmJvdHRvbS1uYXYgLmJ0bntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lIWltcG9ydGFudDtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7bWF4LXdpZHRoOjE2OHB4O21pbi13aWR0aDo4MHB4O3BhZGRpbmc6NnB4IDAgMTBweDt0ZXh0LXRyYW5zZm9ybTpub25lO29wYWNpdHk6LjU7d2lkdGg6MTAwJX0uYm90dG9tLW5hdiAuYnRuIC5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpyZXZlcnNlOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmb250LXNpemU6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXA7d2lsbC1jaGFuZ2U6Zm9udC1zaXplfS5ib3R0b20tbmF2IC5idG4gLmJ0bl9fY29udGVudCBpLmljb257Y29sb3I6aW5oZXJpdDttYXJnaW4tYm90dG9tOjRweDt0cmFuc2l0aW9uOmFsbCAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uYm90dG9tLW5hdiAuYnRuIC5idG5fX2NvbnRlbnQgc3BhbntsaW5lLWhlaWdodDoxfS5ib3R0b20tbmF2IC5idG4tLWFjdGl2ZXtvcGFjaXR5OjF9LmJvdHRvbS1uYXYgLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnR7Zm9udC1zaXplOjE0cHh9LmJvdHRvbS1uYXYgLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnQ6YmVmb3Jle29wYWNpdHk6MH0uYm90dG9tLW5hdiAuYnRuLS1hY3RpdmUgLmJ0bl9fY29udGVudCAuaWNvbnstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfS5ib3R0b20tbmF2IC5idG46bm90KC5idG4tLWFjdGl2ZSl7LXdlYmtpdC1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO2ZpbHRlcjpncmF5c2NhbGUoMTAwJSl9LmJvdHRvbS1uYXYtLXNoaWZ0IC5idG5fX2NvbnRlbnR7Zm9udC1zaXplOjE0cHh9LmJvdHRvbS1uYXYtLXNoaWZ0IC5idG57dHJhbnNpdGlvbjphbGwgLjNzO21pbi13aWR0aDo1NnB4O21heC13aWR0aDo5NnB4fS5ib3R0b20tbmF2LS1zaGlmdCAuYnRuLS1hY3RpdmV7bWluLXdpZHRoOjk2cHg7bWF4LXdpZHRoOjE2OHB4fS5ib3R0b20tbmF2LS1zaGlmdCAuYnRuOm5vdCguYnRuLS1hY3RpdmUpIC5idG5fX2NvbnRlbnQgLmljb257LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgxMHB4KTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgxMHB4KX0uYm90dG9tLW5hdi0tc2hpZnQgLmJ0bjpub3QoLmJ0bi0tYWN0aXZlKSAuYnRuX19jb250ZW50IHNwYW57Y29sb3I6dHJhbnNwYXJlbnR9LmJvdHRvbS1zaGVldC5kaWFsb2d7LW1zLWZsZXgtaXRlbS1hbGlnbjplbmQ7YWxpZ24tc2VsZjpmbGV4LWVuZDtib3JkZXItcmFkaXVzOjA7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCAxMDAlO2ZsZXg6MSAwIDEwMCU7bWFyZ2luOjA7bWluLXdpZHRoOjEwMCU7b3ZlcmZsb3c6dmlzaWJsZTt0cmFuc2l0aW9uOi40cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5ib3R0b20tc2hlZXQuZGlhbG9nLmJvdHRvbS1zaGVldC0taW5zZXR7bWF4LXdpZHRoOjcwJTttaW4td2lkdGg6MH1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTk5cHgpey5ib3R0b20tc2hlZXQuZGlhbG9nLmJvdHRvbS1zaGVldC0taW5zZXR7bWF4LXdpZHRoOm5vbmV9fS5kaWFsb2d7Ym94LXNoYWRvdzowIDExcHggMTVweCAtN3B4IHJnYmEoMCwwLDAsLjIpLDAgMjRweCAzOHB4IDNweCByZ2JhKDAsMCwwLC4xNCksMCA5cHggNDZweCA4cHggcmdiYSgwLDAsMCwuMTIpO2JvcmRlci1yYWRpdXM6MnB4O21hcmdpbjoyNHB4O292ZXJmbG93LXk6YXV0bztwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6aW5oZXJpdH0uZGlhbG9nLC5kaWFsb2dfX2NvbnRlbnR7dHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXQ7d2lkdGg6MTAwJX0uZGlhbG9nX19jb250ZW50ey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpmaXhlZDt0b3A6MDt6LWluZGV4OjY7b3V0bGluZTpub25lfS5kaWFsb2c6bm90KC5kaWFsb2ctLWZ1bGxzY3JlZW4pe21heC1oZWlnaHQ6OTAlfS5kaWFsb2dfX2NvbnRhaW5lcntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmRpYWxvZy0tZnVsbHNjcmVlbnttYXJnaW46MDtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpmaXhlZDtvdmVyZmxvdy15OmF1dG87dG9wOjA7bGVmdDowfS5kaWFsb2ctLWZ1bGxzY3JlZW4+LmNhcmR7bWluLWhlaWdodDoxMDAlO21pbi13aWR0aDoxMDAlO21hcmdpbjowIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50fS5kaWFsb2ctLXNjcm9sbGFibGUsLmRpYWxvZy0tc2Nyb2xsYWJsZT4uY2FyZHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS5kaWFsb2ctLXNjcm9sbGFibGU+LmNhcmR7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmRpYWxvZy0tc2Nyb2xsYWJsZT4uY2FyZD4uY2FyZF9fYWN0aW9ucywuZGlhbG9nLS1zY3JvbGxhYmxlPi5jYXJkPi5jYXJkX190aXRsZXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30uZGlhbG9nLS1zY3JvbGxhYmxlPi5jYXJkPi5jYXJkX190ZXh0e292ZXJmbG93LXk6YXV0bzstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjouNXMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt6LWluZGV4OjV9Lm92ZXJsYXktLWFic29sdXRlLC5vdmVybGF5OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZX0ub3ZlcmxheTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojMjEyMTIxO2JvdHRvbTowO2NvbnRlbnQ6XFxcIlxcXCI7aGVpZ2h0OjEwMCU7bGVmdDowO29wYWNpdHk6MDtyaWdodDowO3RvcDowO3RyYW5zaXRpb246aW5oZXJpdDt0cmFuc2l0aW9uLWRlbGF5Oi4xNXM7d2lkdGg6MTAwJX0ub3ZlcmxheS0tYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG87LW1zLXRvdWNoLWFjdGlvbjpub25lO3RvdWNoLWFjdGlvbjpub25lfS5vdmVybGF5LS1hY3RpdmU6YmVmb3Jle29wYWNpdHk6LjQ2fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJyZWFkY3J1bWJzIGxpLmJyZWFkY3J1bWJzX19kaXZpZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJyZWFkY3J1bWJzIGxpIC5icmVhZGNydW1ic19faXRlbS0tZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnJlYWRjcnVtYnMgbGk6bGFzdC1jaGlsZCAuYnJlYWRjcnVtYnNfX2l0ZW0sLnRoZW1lLS1saWdodCAuYnJlYWRjcnVtYnMgbGkuYnJlYWRjcnVtYnNfX2RpdmlkZXIsLnRoZW1lLS1saWdodCAuYnJlYWRjcnVtYnMgbGkgLmJyZWFkY3J1bWJzX19pdGVtLS1kaXNhYmxlZCwudGhlbWUtLWxpZ2h0IC5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIC5icmVhZGNydW1ic19faXRlbXtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5icmVhZGNydW1icyBsaS5icmVhZGNydW1ic19fZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJyZWFkY3J1bWJzIGxpIC5icmVhZGNydW1ic19faXRlbS0tZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIC5icmVhZGNydW1ic19faXRlbSwudGhlbWUtLWRhcmsgLmJyZWFkY3J1bWJzIGxpLmJyZWFkY3J1bWJzX19kaXZpZGVyLC50aGVtZS0tZGFyayAuYnJlYWRjcnVtYnMgbGkgLmJyZWFkY3J1bWJzX19pdGVtLS1kaXNhYmxlZCwudGhlbWUtLWRhcmsgLmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQgLmJyZWFkY3J1bWJzX19pdGVte2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0uYnJlYWRjcnVtYnN7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDEgYXV0bztmbGV4OjAgMSBhdXRvO2xpc3Qtc3R5bGUtdHlwZTpub25lO21hcmdpbjowO3BhZGRpbmc6MThweCAxMnB4fS5icmVhZGNydW1icywuYnJlYWRjcnVtYnMgbGl7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uYnJlYWRjcnVtYnMgbGl7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjE0cHh9LmJyZWFkY3J1bWJzIGxpIC5pY29ue2ZvbnQtc2l6ZToxNnB4fS5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIGF7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0uYnJlYWRjcnVtYnMgbGk6bnRoLWNoaWxkKDJuKXtwYWRkaW5nOjAgMTJweH0uYnJlYWRjcnVtYnMtLWxhcmdlIGxpLC5icmVhZGNydW1icy0tbGFyZ2UgbGkgLmljb257Zm9udC1zaXplOjE2cHh9LmJyZWFkY3J1bWJzX19pdGVtey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uYnJlYWRjcnVtYnNfX2l0ZW0tLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9LnJpcHBsZV9fY29udGFpbmVye2JvcmRlci1yYWRpdXM6aW5oZXJpdDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3otaW5kZXg6MDtjb250YWluOnN0cmljdH0ucmlwcGxlX19hbmltYXRpb24sLnJpcHBsZV9fY29udGFpbmVye2NvbG9yOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO292ZXJmbG93OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lfS5yaXBwbGVfX2FuaW1hdGlvbntib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtvcGFjaXR5OjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sb3BhY2l0eX0ucmlwcGxlX19hbmltYXRpb24tLWVudGVye3RyYW5zaXRpb246bm9uZX0ucmlwcGxlX19hbmltYXRpb24tLXZpc2libGV7b3BhY2l0eTouMTV9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLC50aGVtZS0tbGlnaHQgLmJ0bntjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLmJ0bi0tZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLmJ0bi0tZGlzYWJsZWQgLmljb24sLnRoZW1lLS1saWdodCAuYnRuLmJ0bi0tZGlzYWJsZWQsLnRoZW1lLS1saWdodCAuYnRuLmJ0bi0tZGlzYWJsZWQgLmljb257Y29sb3I6cmdiYSgwLDAsMCwuMjYpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5idG4uYnRuLS1kaXNhYmxlZDpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpLC50aGVtZS0tbGlnaHQgLmJ0bi5idG4tLWRpc2FibGVkOm5vdCguYnRuLS1pY29uKTpub3QoLmJ0bi0tZmxhdCl7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xMikhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpLC50aGVtZS0tbGlnaHQgLmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0biwudGhlbWUtLWRhcmsgLmJ0bntjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuYnRuLmJ0bi0tZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5idG4uYnRuLS1kaXNhYmxlZCAuaWNvbiwudGhlbWUtLWRhcmsgLmJ0bi5idG4tLWRpc2FibGVkLC50aGVtZS0tZGFyayAuYnRuLmJ0bi0tZGlzYWJsZWQgLmljb257Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjMpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0bi5idG4tLWRpc2FibGVkOm5vdCguYnRuLS1pY29uKTpub3QoLmJ0bi0tZmxhdCksLnRoZW1lLS1kYXJrIC5idG4uYnRuLS1kaXNhYmxlZDpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjEyKSFpbXBvcnRhbnR9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5idG46bm90KC5idG4tLWljb24pOm5vdCguYnRuLS1mbGF0KSwudGhlbWUtLWRhcmsgLmJ0bjpub3QoLmJ0bi0taWNvbik6bm90KC5idG4tLWZsYXQpe2JhY2tncm91bmQtY29sb3I6IzIxMjEyMX0uYnRuey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjM2cHg7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMSBhdXRvO2ZsZXg6MCAxIGF1dG87Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjZweCA4cHg7bWluLXdpZHRoOjg4cHg7b3V0bGluZTowO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpLGNvbG9yIDFtcztwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5idG5fX2NvbnRlbnQ6YmVmb3Jle2JvcmRlci1yYWRpdXM6aW5oZXJpdDtjb2xvcjppbmhlcml0O2NvbnRlbnQ6XFxcIlxcXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2hlaWdodDoxMDAlO29wYWNpdHk6LjEyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0uYnRuLS1zbWFsbHtmb250LXNpemU6MTNweDtoZWlnaHQ6MjhweH0uYnRuLS1zbWFsbCAuYnRuX19jb250ZW50e3BhZGRpbmc6MCA4cHh9LmJ0bi0tbGFyZ2V7Zm9udC1zaXplOjE1cHg7aGVpZ2h0OjQ0cHh9LmJ0bi0tbGFyZ2UgLmJ0bl9fY29udGVudHtwYWRkaW5nOjAgMzJweH0uYnRuLS1hY3RpdmUgLmJ0bl9fY29udGVudDpiZWZvcmUsLmJ0bjpmb2N1cyAuYnRuX19jb250ZW50OmJlZm9yZSwuYnRuOmhvdmVyIC5idG5fX2NvbnRlbnQ6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yfS5idG5fX2NvbnRlbnR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czppbmhlcml0O2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6aW5oZXJpdDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0bzstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowIGF1dG87cGFkZGluZzowIDE2cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6aW5oZXJpdH0uYnRuIC5idG5fX2NvbnRlbnQgLmljb257Y29sb3I6aW5oZXJpdH0uYnRuLS1mbGF0e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmJ0bjpub3QoLmJ0bi0tZGVwcmVzc2VkKXt3aWxsLWNoYW5nZTpib3gtc2hhZG93O2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKX0uYnRuOm5vdCguYnRuLS1kZXByZXNzZWQpOmFjdGl2ZXtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9LmJ0bjpub3QoLmJ0bi0tZGVwcmVzc2VkKTphY3RpdmUgLmJ0bl9fY29udGVudCwuYnRuOm5vdCguYnRuLS1kZXByZXNzZWQpOmZvY3VzIC5idG5fX2NvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7dG9wOjA7bGVmdDowfS5idG4tLWljb257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NTAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjA7d2lkdGg6MzZweH0uYnRuLS1pY29uLmJ0bi0tc21hbGx7d2lkdGg6MjhweH0uYnRuLS1pY29uLmJ0bi0tbGFyZ2V7d2lkdGg6NDRweH0uYnRuLS1mbG9hdGluZywuYnRuLS1pY29uIC5idG5fX2NvbnRlbnQ6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfS5idG4tLWZsb2F0aW5ne21pbi13aWR0aDowO2hlaWdodDo1NnB4O3dpZHRoOjU2cHg7cGFkZGluZzowfS5idG4tLWZsb2F0aW5nLmJ0bi0tYWJzb2x1dGUsLmJ0bi0tZmxvYXRpbmcuYnRuLS1maXhlZHt6LWluZGV4OjR9LmJ0bi0tZmxvYXRpbmc6bm90KC5idG4tLWRlcHJlc3NlZCl7Ym94LXNoYWRvdzowIDNweCA1cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDZweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDE4cHggMCByZ2JhKDAsMCwwLC4xMil9LmJ0bi0tZmxvYXRpbmc6bm90KC5idG4tLWRlcHJlc3NlZCk6YWN0aXZle2JveC1zaGFkb3c6MCA3cHggOHB4IC00cHggcmdiYSgwLDAsMCwuMiksMCAxMnB4IDE3cHggMnB4IHJnYmEoMCwwLDAsLjE0KSwwIDVweCAyMnB4IDRweCByZ2JhKDAsMCwwLC4xMil9LmJ0bi0tZmxvYXRpbmcgLmJ0bl9fY29udGVudHstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bzttYXJnaW46MDtwYWRkaW5nOjB9LmJ0bi0tZmxvYXRpbmc6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCV9LmJ0bi0tZmxvYXRpbmcgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKXt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5idG4tLWZsb2F0aW5nIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6Zmlyc3QtY2hpbGR7b3BhY2l0eToxfS5idG4tLWZsb2F0aW5nIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6bGFzdC1jaGlsZHtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfS5idG4tLWZsb2F0aW5nIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6Zmlyc3QtY2hpbGQsLmJ0bi0tZmxvYXRpbmcgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKTpsYXN0LWNoaWxkey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5idG4tLWZsb2F0aW5nLmJ0bi0tYWN0aXZlIC5idG5fX2NvbnRlbnQgOm5vdCg6b25seS1jaGlsZCk6Zmlyc3QtY2hpbGR7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LmJ0bi0tZmxvYXRpbmcuYnRuLS1hY3RpdmUgLmJ0bl9fY29udGVudCA6bm90KDpvbmx5LWNoaWxkKTpsYXN0LWNoaWxke29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMCk7dHJhbnNmb3JtOnJvdGF0ZSgwKX0uYnRuLS1mbG9hdGluZyAuaWNvbntoZWlnaHQ6aW5oZXJpdDt3aWR0aDppbmhlcml0fS5idG4tLWZsb2F0aW5nLmJ0bi0tc21hbGx7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweH0uYnRuLS1mbG9hdGluZy5idG4tLXNtYWxsIC5pY29ue2ZvbnQtc2l6ZToxOHB4fS5idG4tLWZsb2F0aW5nLmJ0bi0tbGFyZ2V7aGVpZ2h0OjcycHg7d2lkdGg6NzJweH0uYnRuLS1mbG9hdGluZy5idG4tLWxhcmdlIC5pY29ue2ZvbnQtc2l6ZTozMHB4fS5idG4tLXJldmVyc2UgLmJ0bl9fY29udGVudHstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LmJ0bi0tcmV2ZXJzZS5idG4tLWNvbHVtbiAuYnRuX19jb250ZW50ey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9LmJ0bi0tYWJzb2x1dGUsLmJ0bi0tZml4ZWR7bWFyZ2luOjB9LmJ0bi5idG4tLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfS5idG4uYnRuLS1maXhlZHtwb3NpdGlvbjpmaXhlZH0uYnRuLS10b3A6bm90KC5idG4tLWFic29sdXRlKXt0b3A6MTZweH0uYnRuLS10b3AuYnRuLS1hYnNvbHV0ZXt0b3A6LTI4cHh9LmJ0bi0tdG9wLmJ0bi0tYWJzb2x1dGUuYnRuLS1zbWFsbHt0b3A6LTIwcHh9LmJ0bi0tdG9wLmJ0bi0tYWJzb2x1dGUuYnRuLS1sYXJnZXt0b3A6LTM2cHh9LmJ0bi0tYm90dG9tOm5vdCguYnRuLS1hYnNvbHV0ZSl7Ym90dG9tOjE2cHh9LmJ0bi0tYm90dG9tLmJ0bi0tYWJzb2x1dGV7Ym90dG9tOi0yOHB4fS5idG4tLWJvdHRvbS5idG4tLWFic29sdXRlLmJ0bi0tc21hbGx7Ym90dG9tOi0yMHB4fS5idG4tLWJvdHRvbS5idG4tLWFic29sdXRlLmJ0bi0tbGFyZ2V7Ym90dG9tOi0zNnB4fS5idG4tLWxlZnR7bGVmdDoxNnB4fS5idG4tLXJpZ2h0e3JpZ2h0OjE2cHh9LmJ0bi5idG4tLWRpc2FibGVke2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZX0uYnRuLS1pY29uIC5idG5fX2NvbnRlbnR7cGFkZGluZzowfS5idG4tLWxvYWRlcntwb2ludGVyLWV2ZW50czpub25lfS5idG4tLWxvYWRlciAuYnRuX19jb250ZW50e29wYWNpdHk6MH0uYnRuX19sb2FkaW5ney13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0uYnRuX19sb2FkaW5nIC5pY29uLS1sZWZ0e21hcmdpbi1yaWdodDoxcmVtO2xpbmUtaGVpZ2h0OmluaGVyaXR9LmJ0bl9fbG9hZGluZyAuaWNvbi0tcmlnaHR7bWFyZ2luLWxlZnQ6MXJlbTtsaW5lLWhlaWdodDppbmhlcml0fS5idG4uYnRuLS1vdXRsaW5le2JvcmRlcjoxcHggc29saWQgY3VycmVudENvbG9yO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZX0uYnRuLmJ0bi0tb3V0bGluZTpob3Zlcntib3gtc2hhZG93Om5vbmV9LmJ0bi0tYmxvY2t7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjE7bWFyZ2luOjZweCAwO3dpZHRoOjEwMCV9LmJ0bi0tcm91bmQsLmJ0bi0tcm91bmQ6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czoyOHB4fS5idG4gLmljb24tLXJpZ2h0e21hcmdpbi1sZWZ0OjE2cHh9LmJ0biAuaWNvbi0tbGVmdHttYXJnaW4tcmlnaHQ6MTZweH0uYnRuLmFjY2VudCwuYnRuLmVycm9yLC5idG4uaW5mbywuYnRuLnByaW1hcnksLmJ0bi5zZWNvbmRhcnksLmJ0bi5zdWNjZXNzLC5idG4ud2FybmluZ3tjb2xvcjojZmZmfS5wcm9ncmVzcy1jaXJjdWxhcntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4fS5wcm9ncmVzcy1jaXJjdWxhciBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttYXJnaW46YXV0bztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjB9LnByb2dyZXNzLWNpcmN1bGFyLS1pbmRldGVybWluYXRlIHN2Z3std2Via2l0LWFuaW1hdGlvbjpjIDEuNHMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjpjIDEuNHMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXR9LnByb2dyZXNzLWNpcmN1bGFyLS1pbmRldGVybWluYXRlIC5wcm9ncmVzcy1jaXJjdWxhcl9fb3ZlcmxheXstd2Via2l0LWFuaW1hdGlvbjpiIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmIgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtZGFzaGFycmF5OjgwLDIwMDtzdHJva2UtZGFzaG9mZnNldDowcHh9LnByb2dyZXNzLWNpcmN1bGFyX191bmRlcmxheXtzdHJva2U6cmdiYSgwLDAsMCwuMSk7ei1pbmRleDoxfS5wcm9ncmVzcy1jaXJjdWxhcl9fb3ZlcmxheXtzdHJva2U6Y3VycmVudENvbG9yO3otaW5kZXg6Mjt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXR9LnByb2dyZXNzLWNpcmN1bGFyX19pbmZve3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfUAtd2Via2l0LWtleWZyYW1lcyBiezAle3N0cm9rZS1kYXNoYXJyYXk6MSwyMDA7c3Ryb2tlLWRhc2hvZmZzZXQ6MHB4fTUwJXtzdHJva2UtZGFzaGFycmF5OjEwMCwyMDA7c3Ryb2tlLWRhc2hvZmZzZXQ6LTE1cHh9dG97c3Ryb2tlLWRhc2hhcnJheToxMDAsMjAwO3N0cm9rZS1kYXNob2Zmc2V0Oi0xMjVweH19QGtleWZyYW1lcyBiezAle3N0cm9rZS1kYXNoYXJyYXk6MSwyMDA7c3Ryb2tlLWRhc2hvZmZzZXQ6MHB4fTUwJXtzdHJva2UtZGFzaGFycmF5OjEwMCwyMDA7c3Ryb2tlLWRhc2hvZmZzZXQ6LTE1cHh9dG97c3Ryb2tlLWRhc2hhcnJheToxMDAsMjAwO3N0cm9rZS1kYXNob2Zmc2V0Oi0xMjVweH19QC13ZWJraXQta2V5ZnJhbWVzIGN7dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyBje3Rvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmJ0bi10b2dnbGUsLnRoZW1lLS1saWdodCAuYnRuLXRvZ2dsZXtiYWNrZ3JvdW5kOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLXRvZ2dsZSAuYnRuLC50aGVtZS0tbGlnaHQgLmJ0bi10b2dnbGUgLmJ0bntjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuYnRuLXRvZ2dsZSAuYnRuLmJ0bi0tYWN0aXZlOm5vdCg6bGFzdC1jaGlsZCk6bm90KFtkYXRhLW9ubHktY2hpbGRdKSwudGhlbWUtLWxpZ2h0IC5idG4tdG9nZ2xlIC5idG4uYnRuLS1hY3RpdmU6bm90KDpsYXN0LWNoaWxkKTpub3QoW2RhdGEtb25seS1jaGlsZF0pe2JvcmRlci1yaWdodC1jb2xvcjpyZ2JhKDAsMCwwLC4yNil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5idG4tdG9nZ2xlLC50aGVtZS0tZGFyayAuYnRuLXRvZ2dsZXtiYWNrZ3JvdW5kOiM0MjQyNDJ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5idG4tdG9nZ2xlIC5idG4sLnRoZW1lLS1kYXJrIC5idG4tdG9nZ2xlIC5idG57Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmJ0bi10b2dnbGUgLmJ0bi5idG4tLWFjdGl2ZTpub3QoOmxhc3QtY2hpbGQpOm5vdChbZGF0YS1vbmx5LWNoaWxkXSksLnRoZW1lLS1kYXJrIC5idG4tdG9nZ2xlIC5idG4uYnRuLS1hY3RpdmU6bm90KDpsYXN0LWNoaWxkKTpub3QoW2RhdGEtb25seS1jaGlsZF0pe2JvcmRlci1yaWdodC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMyl9LmJ0bi10b2dnbGV7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDtib3JkZXItcmFkaXVzOjJweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO3dpbGwtY2hhbmdlOmJhY2tncm91bmQsYm94LXNoYWRvd30uYnRuLXRvZ2dsZSAuYnRuey13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOmF1dG87d2lkdGg6YXV0bztwYWRkaW5nOjAgOHB4O21hcmdpbjowO29wYWNpdHk6LjQ7Ym9yZGVyLXJhZGl1czowfS5idG4tdG9nZ2xlIC5idG46bm90KDpsYXN0LWNoaWxkKXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5idG4tdG9nZ2xlIC5idG46YWZ0ZXJ7ZGlzcGxheTpub25lfS5idG4tdG9nZ2xlIC5idG4uYnRuLS1hY3RpdmV7b3BhY2l0eToxfS5idG4tdG9nZ2xlIC5idG5fX2NvbnRlbnR7cGFkZGluZzowfS5idG4tdG9nZ2xlIC5idG4gc3BhbisuaWNvbntmb250LXNpemU6bWVkaXVtO21hcmdpbi1sZWZ0OjEwcHh9LmJ0bi10b2dnbGUgLmJ0bjpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOjJweCAwIDAgMnB4fS5idG4tdG9nZ2xlIC5idG46bGFzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMnB4IDJweCAwfS5idG4tdG9nZ2xlLS1zZWxlY3RlZHtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuY2FyZCwudGhlbWUtLWxpZ2h0IC5jYXJke2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5jYXJkLC50aGVtZS0tZGFyayAuY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDI7Y29sb3I6I2ZmZn0uY2FyZHtkaXNwbGF5OmJsb2NrO2JvcmRlci1yYWRpdXM6MnB4O21pbi13aWR0aDowO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtZGVjb3JhdGlvbjpub25lO2JveC1zaGFkb3c6MCAycHggMXB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCAxcHggMXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDNweCAwIHJnYmEoMCwwLDAsLjEyKX0uY2FyZD46Zmlyc3QtY2hpbGQ6bm90KC5idG4pe2JvcmRlci10b3AtbGVmdC1yYWRpdXM6aW5oZXJpdDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czppbmhlcml0fS5jYXJkPjpsYXN0LWNoaWxkOm5vdCguYnRuKXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmluaGVyaXQ7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6aW5oZXJpdH0uY2FyZC0tcmFpc2Vke2JveC1zaGFkb3c6MCAzcHggM3B4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAzcHggNHB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDhweCAwIHJnYmEoMCwwLDAsLjEyKX0uY2FyZC0tdGlsZXtib3JkZXItcmFkaXVzOjB9LmNhcmQtLWZsYXR7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfS5jYXJkLS1ob3ZlcntjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTpib3gtc2hhZG93fS5jYXJkLS1ob3Zlcjpob3Zlcntib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9LmNhcmRfX3RpdGxley13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MTZweH0uY2FyZF9fdGl0bGUtLXByaW1hcnl7cGFkZGluZy10b3A6MjRweH0uY2FyZF9fdGV4dHtwYWRkaW5nOjE2cHg7d2lkdGg6MTAwJX0uY2FyZF9fbWVkaWF7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNhcmRfX21lZGlhIGltZ3t3aWR0aDoxMDAlfS5jYXJkX19tZWRpYV9fYmFja2dyb3VuZHtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LmNhcmRfX21lZGlhX19jb250ZW50ey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvO3Bvc2l0aW9uOnJlbGF0aXZlfS5jYXJkX19hY3Rpb25zLC5jYXJkX19tZWRpYV9fY29udGVudHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS5jYXJkX19hY3Rpb25zey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6OHB4IDRweH0uY2FyZF9fYWN0aW9ucyAuYnRuLC5jYXJkX19hY3Rpb25zPip7bWFyZ2luOjAgNHB4fS5jYXJvdXNlbHtoZWlnaHQ6NTAwcHg7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpfS5jYXJvdXNlbF9fbGVmdCwuY2Fyb3VzZWxfX3JpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7ei1pbmRleDoxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9LmNhcm91c2VsX19sZWZ0IC5idG4sLmNhcm91c2VsX19yaWdodCAuYnRue2NvbG9yOiNmZmY7bWFyZ2luOjAhaW1wb3J0YW50O2hlaWdodDphdXRvO3dpZHRoOmF1dG99LmNhcm91c2VsX19sZWZ0IC5idG4gaSwuY2Fyb3VzZWxfX3JpZ2h0IC5idG4gaXtmb250LXNpemU6NDhweH0uY2Fyb3VzZWxfX2xlZnQgLmJ0bjpob3ZlciwuY2Fyb3VzZWxfX3JpZ2h0IC5idG46aG92ZXJ7YmFja2dyb3VuZDpub25lfS5jYXJvdXNlbF9fbGVmdHtsZWZ0OjVweH0uY2Fyb3VzZWxfX3JpZ2h0e3JpZ2h0OjVweH0uY2Fyb3VzZWxfX2NvbnRyb2xze2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym90dG9tOjA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6NTBweDtsaXN0LXN0eWxlLXR5cGU6bm9uZTt3aWR0aDoxMDAlO3otaW5kZXg6MX0uY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVte2NvbG9yOiNmZmY7bWFyZ2luOjAgOHB4IWltcG9ydGFudH0uY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVtIGl7b3BhY2l0eTouNTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5jYXJvdXNlbF9fY29udHJvbHNfX2l0ZW0tLWFjdGl2ZSBpe29wYWNpdHk6MTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmNhcm91c2VsX19jb250cm9sc19faXRlbTpob3ZlcntiYWNrZ3JvdW5kOm5vbmV9LmNhcm91c2VsX19jb250cm9sc19faXRlbTpob3ZlciBpe29wYWNpdHk6Ljh9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuanVtYm90cm9uX19jb250ZW50LC50aGVtZS0tbGlnaHQgLmp1bWJvdHJvbl9fY29udGVudHtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5qdW1ib3Ryb25fX2NvbnRlbnQsLnRoZW1lLS1kYXJrIC5qdW1ib3Ryb25fX2NvbnRlbnR7Y29sb3I6I2ZmZn0uanVtYm90cm9ue2Rpc3BsYXk6YmxvY2s7dG9wOjA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoxMDAlfS5qdW1ib3Ryb25fX3dyYXBwZXJ7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246aW5oZXJpdDt3aWR0aDoxMDAlfS5qdW1ib3Ryb25fX2JhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7Y29udGFpbjpzdHJpY3Q7dHJhbnNpdGlvbjppbmhlcml0fS5qdW1ib3Ryb25fX2ltYWdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO21pbi13aWR0aDoxMDAlO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTt0cmFuc2l0aW9uOmluaGVyaXR9Lmp1bWJvdHJvbl9fY29udGVudHtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOmluaGVyaXR9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAgaW5wdXQsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAgdGV4dGFyZWEsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgaW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgdGV4dGFyZWF7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIHRleHRhcmVhOmRpc2FibGVkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIHRleHRhcmVhOmRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgLmlucHV0LWdyb3VwX19tZXNzYWdlcywudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgLmlucHV0LWdyb3VwX19tZXNzYWdlc3tjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIC5pbnB1dC1ncm91cF9faW5wdXR7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG97YmFja2dyb3VuZDojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVke2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTYpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2Vke2JhY2tncm91bmQ6IzQyNDI0Mn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGlucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb24sLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgaW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgbGFiZWx7Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlydHkgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYTpub3QoLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYS0tYWN0aXZlKSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlydHkgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYTpub3QoLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYS0tYWN0aXZlKXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIGxhYmVsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSBsYWJlbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgbGFiZWwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNDIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCkgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uOm5vdCg6aG92ZXIpLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCkgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbjpub3QoOmhvdmVyKSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbjpub3QoOmhvdmVyKSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb246bm90KDpob3Zlcil7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3Zlci5pbnB1dC1ncm91cC0tdGV4dGFyZWE6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1vdmVyZmxvdyk6bm90KC5pbnB1dC1ncm91cC0tc2VnbWVudGVkKTpub3QoLmlucHV0LWdyb3VwLS1lZGl0YWJsZSk6aG92ZXIuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIC5pbnB1dC1ncm91cF9faW5wdXR7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsLjg3KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbiwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29ue2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMCwwLDAsLjM4KSAwLHJnYmEoMCwwLDAsLjM4KSAzMyUsdHJhbnNwYXJlbnQgMCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19wcmVmaXgsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXgsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19wcmVmaXgsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXh7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlzYWJsZWRfX3ByZWZpeCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19zdWZmaXgsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXNhYmxlZF9fcHJlZml4LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlzYWJsZWRfX3N1ZmZpeHtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cCBpbnB1dCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwIHRleHRhcmVhLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAgaW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCB0ZXh0YXJlYXtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAgaW5wdXQ6ZGlzYWJsZWQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cCB0ZXh0YXJlYTpkaXNhYmxlZCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwIGlucHV0OmRpc2FibGVkLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAgdGV4dGFyZWE6ZGlzYWJsZWR7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fbWVzc2FnZXMsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikgLmlucHV0LWdyb3VwX19tZXNzYWdlc3tjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tdGV4dGFyZWE6bm90KC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCkgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlcjoycHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8sLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sb3tiYWNrZ3JvdW5kOiM0MjQyNDJ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVke2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjE2KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWR7YmFja2dyb3VuZDojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgaW5wdXQsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCBsYWJlbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sby1pbnZlcnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbiwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLWludmVydGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIGlucHV0LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNvbG8taW52ZXJ0ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpcnR5IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWE6bm90KC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEtLWFjdGl2ZSksLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlydHkgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYTpub3QoLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYS0tYWN0aXZlKXtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIGxhYmVsLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIGxhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgbGFiZWwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIGxhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cDpub3QoLmlucHV0LWdyb3VwLS1lcnJvcik6bm90KC5pbnB1dC1ncm91cC0tZm9jdXNlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbjpub3QoOmhvdmVyKSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCkgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbjpub3QoOmhvdmVyKSwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCkgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uOm5vdCg6aG92ZXIpLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uOm5vdCg6aG92ZXIpe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKTpub3QoLmlucHV0LWdyb3VwLS1mb2N1c2VkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpOm5vdCguaW5wdXQtZ3JvdXAtLW92ZXJmbG93KTpub3QoLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWVkaXRhYmxlKTpob3ZlciAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXA6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpOm5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKTpub3QoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCk6bm90KC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cpOm5vdCguaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCk6bm90KC5pbnB1dC1ncm91cC0tZWRpdGFibGUpOmhvdmVyLmlucHV0LWdyb3VwLS10ZXh0YXJlYTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKSAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlci1jb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZSwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3JlLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb24sLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb257Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmUsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLGhzbGEoMCwwJSwxMDAlLC41KSAwLGhzbGEoMCwwJSwxMDAlLC41KSAzMyUsdHJhbnNwYXJlbnQgMCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19wcmVmaXgsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3N1ZmZpeHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19wcmVmaXgsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19zdWZmaXgsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19wcmVmaXgsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWRpc2FibGVkX19zdWZmaXh7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5pbnB1dC1ncm91cHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDE7ZmxleDoxIDE7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO21pbi13aWR0aDoyNHB4O3BhZGRpbmc6MThweCAwIDA7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5pbnB1dC1ncm91cCBpbnB1dHt3aWR0aDoxMDAlfS5pbnB1dC1ncm91cCBsYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDozMHB4O2hlaWdodDozMHB4O21heC13aWR0aDo5MCU7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmU7dGV4dC1hbGlnbjpsZWZ0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcCBsZWZ0O3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSk7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCU7ei1pbmRleDowfS5pbnB1dC1ncm91cF9faW5wdXR7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIDEwMCU7ZmxleDoxIDAgMTAwJTttaW4td2lkdGg6MDttaW4taGVpZ2h0OjMwcHh9LmlucHV0LWdyb3VwX19pY29uLWNie2N1cnNvcjpwb2ludGVyfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZXJyb3IgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVycm9yIC5pbnB1dC1ncm91cF9fcHJlcGVuZC1pY29uLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbntjb2xvcjppbmhlcml0fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24gbGFiZWwsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gbGFiZWwsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgbGFiZWx7bWF4LXdpZHRoOjc1JX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gbGFiZWx7bWF4LXdpZHRoOjY1JX0uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbntwYWRkaW5nOjAgNnB4fS5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXBfX3ByZXBlbmQtaWNvbnstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZS5pbnB1dC1ncm91cC0tZGlydHkgbGFiZWwsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvLmlucHV0LWdyb3VwLS1kaXJ0eSBsYWJlbHtkaXNwbGF5Om5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xve21pbi1oZWlnaHQ6NDZweDtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nOjA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvIGxhYmVse3RvcDo4cHg7cGFkZGluZy1sZWZ0OjE2cHg7LXdlYmtpdC10cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc29sbyAuaW5wdXQtZ3JvdXBfX2lucHV0ey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6OHB4IDE2cHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zb2xvIC5pbnB1dC1ncm91cF9fZGV0YWlsc3tkaXNwbGF5Om5vbmV9LmlucHV0LWdyb3VwLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lfS5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtcG9zaXRpb246Ym90dG9tO2JhY2tncm91bmQtc2l6ZTozcHggMXB4O2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSk6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVse2NvbG9yOmluaGVyaXR9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKTpub3QoLmlucHV0LWdyb3VwLS1lcnJvcikuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dHtib3JkZXItY29sb3I6aW5oZXJpdH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQ6bm90KC5pbnB1dC1ncm91cC0tZGlzYWJsZWQpIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlcnstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKX0uaW5wdXQtZ3JvdXAtLXJlcXVpcmVkIGxhYmVsOmFmdGVye2NvbnRlbnQ6XFxcIipcXFwifS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZXJyb3IgbGFiZWx7LXdlYmtpdC1hbmltYXRpb246YSAuNnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTthbmltYXRpb246YSAuNnMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVycm9yIC5pbnB1dC1ncm91cF9fbWVzc2FnZXN7Y29sb3I6aW5oZXJpdH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVycm9yIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9LmlucHV0LWdyb3VwIC5zbGlkZS15LXRyYW5zaXRpb24tbGVhdmUsLmlucHV0LWdyb3VwIC5zbGlkZS15LXRyYW5zaXRpb24tbGVhdmUtdG97cG9zaXRpb246YWJzb2x1dGV9LmlucHV0LWdyb3VwX19kZXRhaWxze2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nLXRvcDo0cHg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCAxMDAlO2ZsZXg6MSAwIDEwMCU7Zm9udC1zaXplOjEycHg7bWluLWhlaWdodDoyNnB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfS5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2NvbnRlbnQ6XFxcIlxcXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcjtjb2xvcjppbmhlcml0O3RvcDowO2hlaWdodDoycHg7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDApO3RyYW5zZm9ybTpzY2FsZVgoMCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXIgMDt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXIgMDt3aWR0aDoxMDAlO3otaW5kZXg6MX0uaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle3RvcDowO2hlaWdodDoxcHg7d2lkdGg6MTAwJTt6LWluZGV4OjB9LmlucHV0LWdyb3VwLS1oaWRlLWRldGFpbHMgLmlucHV0LWdyb3VwX19kZXRhaWxze21pbi1oZWlnaHQ6MnB4O3BhZGRpbmc6MH0uaW5wdXQtZ3JvdXAtLWFzeW5jLWxvYWRpbmcgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVyLC5pbnB1dC1ncm91cC0tYXN5bmMtbG9hZGluZyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2Rpc3BsYXk6bm9uZX0uaW5wdXQtZ3JvdXAgLnByb2dyZXNzLWxpbmVhcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7bWFyZ2luOjB9LmlucHV0LWdyb3VwX19lcnJvciwuaW5wdXQtZ3JvdXBfX2hpbnR7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuMjUsMSl9LmlucHV0LWdyb3VwX19lcnJvcntjb2xvcjppbmhlcml0fS5pbnB1dC1ncm91cC0tZWRpdGFibGUuaW5wdXQtZ3JvdXAtLWFjdGl2ZSwuaW5wdXQtZ3JvdXAtLW92ZXJmbG93LmlucHV0LWdyb3VwLS1hY3RpdmUsLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQuaW5wdXQtZ3JvdXAtLWFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tYWN0aXZlIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1hY3RpdmUgLmljb24tLXNlbGVjdGlvbi1jb250cm9se2NvbG9yOmluaGVyaXR9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0e2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1yYWRpbywudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1yYWRpb3tjb2xvcjppbmhlcml0fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyBsYWJlbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgbGFiZWx7Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmljb24tLXNlbGVjdGlvbi1jb250cm9sLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tYWN0aXZlIC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7Y29sb3I6aW5oZXJpdH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0e2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmljb24tLWNoZWNrYm94LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwX19pbnB1dCAuaWNvbi0tcmFkaW8sLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXBfX2lucHV0IC5pY29uLS1jaGVja2JveCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cF9faW5wdXQgLmljb24tLXJhZGlve2NvbG9yOmluaGVyaXR9LmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLXRhYi1mb2N1c2VkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YmVmb3JlLC5pbnB1dC1ncm91cC0tdGFiLWZvY3VzZWQgLmlucHV0LWdyb3VwOmZvY3VzIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDEpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgxKTtvcGFjaXR5Oi4xNX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19pbnB1dHtjb2xvcjppbmhlcml0O3dpZHRoOjEwMCU7cG9zaXRpb246cmVsYXRpdmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19pbnB1dCAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2x7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7aGVpZ2h0OjMwcHg7bWFyZ2luOmF1dG99LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuaW5wdXQtZ3JvdXAtLWVycm9yIC5pbnB1dC1ncm91cF9faW5wdXQgLmljb24tLXNlbGVjdGlvbi1jb250cm9sLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1lcnJvciBsYWJlbHtjb2xvcjppbmhlcml0fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MzJweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7ei1pbmRleDoxfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzOm5vdCguaW5wdXQtZ3JvdXAtLWRpc2FibGVkKSBsYWJlbHtwb2ludGVyLWV2ZW50czphbGx9LmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZXtib3JkZXItcmFkaXVzOjUwJTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTJweCwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LC01MCUpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgY2VudGVyO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0b3A6NTAlO2xlZnQ6MH0uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmJlZm9yZXtjb250ZW50OlxcXCJcXFwiO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7YmFja2dyb3VuZDpjdXJyZW50Q29sb3I7Ym9yZGVyLXJhZGl1czo1MCU7bGVmdDo1MCU7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSguMyk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC4zKTtvcGFjaXR5OjA7dHJhbnNpdGlvbjouNHMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXJ9LmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2wsLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxle2xlZnQ6MzhweH0uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIGxhYmVse2xlZnQ6NzZweH0uaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjMycHh9LmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgbGFiZWx7bGVmdDo3NnB4fS5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb257bGVmdDo3MnB4fS5pbnB1dC1ncm91cC0tYXBwZW5kLWljb24uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgbGFiZWx7bGVmdDoxMTJweH0uaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5yYWRpby1ncm91cC0tcm93IC5pY29uLS1zZWxlY3Rpb24tY29udHJvbCwuaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbi5yYWRpby1ncm91cC0tcm93IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGV7bGVmdDoxNHB4fS5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uLnJhZGlvLWdyb3VwLS1yb3cgbGFiZWx7bGVmdDo1MnB4fS5wcm9ncmVzcy1saW5lYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDttYXJnaW46MXJlbSAwO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfS5wcm9ncmVzcy1saW5lYXJfX2Jhcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0ucHJvZ3Jlc3MtbGluZWFyX19iYXIsLnByb2dyZXNzLWxpbmVhcl9fYmFyX19kZXRlcm1pbmF0ZXtoZWlnaHQ6aW5oZXJpdDt0cmFuc2l0aW9uOi4yc30ucHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUgLmxvbmcsLnByb2dyZXNzLWxpbmVhcl9fYmFyX19pbmRldGVybWluYXRlIC5zaG9ydHtoZWlnaHQ6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7d2lsbC1jaGFuZ2U6bGVmdCxyaWdodDt3aWR0aDphdXRvO2JhY2tncm91bmQtY29sb3I6aW5oZXJpdH0ucHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSAubG9uZ3std2Via2l0LWFuaW1hdGlvbjpkO2FuaW1hdGlvbjpkOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjIuMnM7YW5pbWF0aW9uLWR1cmF0aW9uOjIuMnM7LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGV9LnByb2dyZXNzLWxpbmVhcl9fYmFyX19pbmRldGVybWluYXRlLS1hY3RpdmUgLnNob3J0ey13ZWJraXQtYW5pbWF0aW9uOmU7YW5pbWF0aW9uOmU7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246Mi4yczthbmltYXRpb24tZHVyYXRpb246Mi4yczstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZX0ucHJvZ3Jlc3MtbGluZWFyX19iYWNrZ3JvdW5ke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtib3R0b206MDt0cmFuc2l0aW9uOi4zcyBlYXNlLWlufS5wcm9ncmVzcy1saW5lYXItLXF1ZXJ5IC5wcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZS0tYWN0aXZlIC5sb25ney13ZWJraXQtYW5pbWF0aW9uOmY7YW5pbWF0aW9uOmY7LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246MnM7YW5pbWF0aW9uLWR1cmF0aW9uOjJzOy13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS5wcm9ncmVzcy1saW5lYXItLXF1ZXJ5IC5wcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZS0tYWN0aXZlIC5zaG9ydHstd2Via2l0LWFuaW1hdGlvbjpnO2FuaW1hdGlvbjpnOy13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOjJzO2FuaW1hdGlvbi1kdXJhdGlvbjoyczstd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZX1ALXdlYmtpdC1rZXlmcmFtZXMgZHswJXtsZWZ0Oi05MCU7cmlnaHQ6MTAwJX02MCV7bGVmdDotOTAlO3JpZ2h0OjEwMCV9dG97bGVmdDoxMDAlO3JpZ2h0Oi0zNSV9fUBrZXlmcmFtZXMgZHswJXtsZWZ0Oi05MCU7cmlnaHQ6MTAwJX02MCV7bGVmdDotOTAlO3JpZ2h0OjEwMCV9dG97bGVmdDoxMDAlO3JpZ2h0Oi0zNSV9fUAtd2Via2l0LWtleWZyYW1lcyBlezAle2xlZnQ6LTIwMCU7cmlnaHQ6MTAwJX02MCV7bGVmdDoxMDclO3JpZ2h0Oi04JX10b3tsZWZ0OjEwNyU7cmlnaHQ6LTglfX1Aa2V5ZnJhbWVzIGV7MCV7bGVmdDotMjAwJTtyaWdodDoxMDAlfTYwJXtsZWZ0OjEwNyU7cmlnaHQ6LTglfXRve2xlZnQ6MTA3JTtyaWdodDotOCV9fUAtd2Via2l0LWtleWZyYW1lcyBmezAle3JpZ2h0Oi05MCU7bGVmdDoxMDAlfTYwJXtyaWdodDotOTAlO2xlZnQ6MTAwJX10b3tyaWdodDoxMDAlO2xlZnQ6LTM1JX19QGtleWZyYW1lcyBmezAle3JpZ2h0Oi05MCU7bGVmdDoxMDAlfTYwJXtyaWdodDotOTAlO2xlZnQ6MTAwJX10b3tyaWdodDoxMDAlO2xlZnQ6LTM1JX19QC13ZWJraXQta2V5ZnJhbWVzIGd7MCV7cmlnaHQ6LTIwMCU7bGVmdDoxMDAlfTYwJXtyaWdodDoxMDclO2xlZnQ6LTglfXRve3JpZ2h0OjEwNyU7bGVmdDotOCV9fUBrZXlmcmFtZXMgZ3swJXtyaWdodDotMjAwJTtsZWZ0OjEwMCV9NjAle3JpZ2h0OjEwNyU7bGVmdDotOCV9dG97cmlnaHQ6MTA3JTtsZWZ0Oi04JX19LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuY2hpcCwudGhlbWUtLWxpZ2h0IC5jaGlwe2JhY2tncm91bmQ6I2UwZTBlMDtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5jaGlwLC50aGVtZS0tZGFyayAuY2hpcHtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5jaGlwe2JvcmRlci1yYWRpdXM6MjhweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2ZvbnQtc2l6ZToxM3B4O21hcmdpbjo0cHg7b3V0bGluZTpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LmNoaXAsLmNoaXAgLmNoaXBfX2NvbnRlbnR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmNoaXAgLmNoaXBfX2NvbnRlbnR7Ym9yZGVyLXJhZGl1czoyOHB4O2N1cnNvcjpkZWZhdWx0O2hlaWdodDozMnB4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzowIDEycHg7d2hpdGUtc3BhY2U6bm93cmFwO3otaW5kZXg6MX0uY2hpcC0tcmVtb3ZhYmxlIC5jaGlwX19jb250ZW50e3BhZGRpbmc6MCA0cHggMCAxMnB4fS5jaGlwIC5hdmF0YXJ7aGVpZ2h0OjMycHghaW1wb3J0YW50O21hcmdpbi1sZWZ0Oi0xMnB4O21hcmdpbi1yaWdodDo4cHg7bWluLXdpZHRoOjMycHg7d2lkdGg6MzJweCFpbXBvcnRhbnR9LmNoaXAgLmF2YXRhciBpbWd7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0uY2hpcC0tYWN0aXZlOm5vdCguY2hpcC0tZGlzYWJsZWQpLC5jaGlwLS1zZWxlY3RlZDpub3QoLmNoaXAtLWRpc2FibGVkKSwuY2hpcDpmb2N1czpub3QoLmNoaXAtLWRpc2FibGVkKXtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuMTMpO292ZXJmbG93OmhpZGRlbjtib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9LmNoaXAtLWFjdGl2ZTpub3QoLmNoaXAtLWRpc2FibGVkKTphZnRlciwuY2hpcC0tc2VsZWN0ZWQ6bm90KC5jaGlwLS1kaXNhYmxlZCk6YWZ0ZXIsLmNoaXA6Zm9jdXM6bm90KC5jaGlwLS1kaXNhYmxlZCk6YWZ0ZXJ7YmFja2dyb3VuZDpjdXJyZW50Q29sb3I7Ym9yZGVyLXJhZGl1czppbmhlcml0O2NvbnRlbnQ6XFxcIlxcXCI7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3RyYW5zaXRpb246aW5oZXJpdDt3aWR0aDoxMDAlO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTouMTN9LmNoaXAtLWxhYmVsLC5jaGlwLS1sYWJlbCAuY2hpcF9fY29udGVudHtib3JkZXItcmFkaXVzOjJweH0uY2hpcC5jaGlwLmNoaXAtLW91dGxpbmV7YmFja2dyb3VuZDp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOmN1cnJlbnRDb2xvcjtjb2xvcjojOWU5ZTllfS5jaGlwLS1zbWFsbHtoZWlnaHQ6MjZweH0uY2hpcC0tc21hbGwgLmF2YXRhcntoZWlnaHQ6MjZweDttaW4td2lkdGg6MjZweDt3aWR0aDoyNnB4fS5jaGlwLS1zbWFsbCAuaWNvbiwuY2hpcF9fY2xvc2V7Zm9udC1zaXplOjIwcHh9LmNoaXBfX2Nsb3Nley13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDttYXJnaW46MCAycHggMCA4cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5jaGlwX19jbG9zZT4uaWNvbntjb2xvcjppbmhlcml0IWltcG9ydGFudDtmb250LXNpemU6MjBweDtvcGFjaXR5Oi41fS5jaGlwX19jbG9zZT4uaWNvbjpob3ZlcntvcGFjaXR5OjF9LmNoaXAtLXNlbGVjdC1tdWx0aXttYXJnaW46NHB4IDRweCA0cHggMH0uY2hpcCAuaWNvbntjb2xvcjppbmhlcml0fS5jaGlwIC5pY29uLS1yaWdodHttYXJnaW4tbGVmdDoxMnB4O21hcmdpbi1yaWdodDotOHB4fS5jaGlwIC5pY29uLS1sZWZ0e21hcmdpbi1sZWZ0Oi04cHg7bWFyZ2luLXJpZ2h0OjEycHh9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9ucywudGhlbWUtLWxpZ2h0IC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25ze2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwudGhlbWUtLWxpZ2h0IC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwudGhlbWUtLWxpZ2h0IC5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtjb2xvcjpyZ2JhKDAsMCwwLC41NCkhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9ucywudGhlbWUtLWRhcmsgLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnN7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRhLWl0ZXJhdG9yIC5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwudGhlbWUtLWRhcmsgLmRhdGEtaXRlcmF0b3IgLmRhdGEtaXRlcmF0b3JfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tZGFyayAuZGF0YS1pdGVyYXRvciAuZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWF7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpIWltcG9ydGFudH0uZGF0YS1pdGVyYXRvcl9fYWN0aW9uc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6ZW5kOy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LXNpemU6MTJweDstbXMtZmxleC13cmFwOndyYXAtcmV2ZXJzZTtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlfS5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zIC5idG57Y29sb3I6aW5oZXJpdH0uZGF0YS1pdGVyYXRvcl9fYWN0aW9ucyAuYnRuOmxhc3Qtb2YtdHlwZXttYXJnaW4tbGVmdDoxNHB4fS5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19yYW5nZS1jb250cm9sc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6NDhweH0uZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fcGFnaW5hdGlvbntkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyO21hcmdpbjowIDMycHggMCAyNHB4fS5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3R7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1yaWdodDoxNHB4fS5kYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3R7bWFyZ2luOjEzcHggMCAxM3B4IDM0cHg7cGFkZGluZzowO3Bvc2l0aW9uOnN0YXRpY30uZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWF7Zm9udC1zaXplOjEycHh9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IC5pbnB1dC1ncm91cF9faW5wdXR7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuNil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjpwbGFjZWhvbGRlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2NvdW50ZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fY291bnRlcntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggLmlucHV0LWdyb3VwX19pbnB1dCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2lucHV0e2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjEpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tZXJyb3IpIC5pbnB1dC1ncm91cF9fY291bnRlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLWVycm9yKSAuaW5wdXQtZ3JvdXBfX2NvdW50ZXJ7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBsYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MThweDtsZWZ0OjB9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0e3BhZGRpbmctYm90dG9tOjFweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhe2ZvbnQtc2l6ZToxNnB4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6aW5oZXJpdDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjppbmhlcml0O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OjpwbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOmluaGVyaXQ7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXR7Ym94LXNoYWRvdzpub25lOy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTtoZWlnaHQ6MzBweDttYXJnaW46MDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIGlucHV0OmZvY3Vze291dGxpbmU6bm9uZX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQ6ZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWF7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMTtmbGV4OjEgMX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgdGV4dGFyZWE6Zm9jdXN7b3V0bGluZTpub25lfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgbGFiZWx7dG9wOjEzcHh9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS10ZXh0YXJlYSAuaW5wdXQtZ3JvdXBfX2lucHV0e2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246LjRzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgdGV4dGFyZWF7Zm9udC1zaXplOjE2cHg7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIGxhYmVse3RvcDozMHB4O2xlZnQ6MTVweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXRleHRhcmVhOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpIC5pbnB1dC1ncm91cF9faW5wdXR7cGFkZGluZzozMHB4IDAgMCAxM3B4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tdGV4dGFyZWEgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtvcGFjaXR5OjB9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkIC5pbnB1dC1ncm91cF9fY291bnRlcnttYXJnaW4tbGVmdDphdXRvO3doaXRlLXNwYWNlOm5vd3JhcH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgLmlucHV0LWdyb3VwX19jb3VudGVyLS1lcnJvcntjb2xvcjppbmhlcml0fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLWRpcnR5IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLWRpcnR5IHRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye29wYWNpdHk6MH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyLmlucHV0LWdyb3VwLS1kaXJ0eSB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntvcGFjaXR5OjB9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlci5pbnB1dC1ncm91cC0tZGlydHkgaW5wdXQ6OnBsYWNlaG9sZGVyLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLWRpcnR5IHRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjB9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1uby1yZXNpemUgdGV4dGFyZWF7cmVzaXplOm5vbmV9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gLmlucHV0LWdyb3VwX19wcmVwZW5kLWljb257LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bWluLXdpZHRoOjQwcHh9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gLmlucHV0LWdyb3VwX19kZXRhaWxze21hcmdpbi1sZWZ0OmF1dG87bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDQwcHgpfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIGxhYmVse2xlZnQ6NDBweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1mb2N1c2VkIGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZDpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLXBsYWNlaG9sZGVyIGxhYmVse29wYWNpdHk6MX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1mb2N1c2VkOm5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKSBsYWJlbCwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlcjpub3QoLmlucHV0LWdyb3VwLS10ZXh0YXJlYSkgbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMThweCkgc2NhbGUoLjc1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMThweCkgc2NhbGUoLjc1KX0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1mb2N1c2VkOm5vdCguaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGgpLmlucHV0LWdyb3VwLS10ZXh0YXJlYSBsYWJlbCwuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQ6bm90KC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUpLmlucHV0LWdyb3VwLS1wbGFjZWhvbGRlcjpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKS5pbnB1dC1ncm91cC0tdGV4dGFyZWEgbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtOHB4KSBzY2FsZSguNzUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC04cHgpIHNjYWxlKC43NSl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tZm9jdXNlZC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggbGFiZWwsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tcGxhY2Vob2xkZXIuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IGxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKC43NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKC43NSl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXJ0eS5pbnB1dC1ncm91cC0tc2VsZWN0IGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZGlydHk6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpIGxhYmVsey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE4cHgpIHNjYWxlKC43NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE4cHgpIHNjYWxlKC43NSl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1kaXJ0eTpub3QoLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoKS5pbnB1dC1ncm91cC0tdGV4dGFyZWEgbGFiZWx7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtOHB4KSBzY2FsZSguNzUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC04cHgpIHNjYWxlKC43NSl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1tdWx0aS1saW5lIHRleHRhcmVhe3BhZGRpbmctdG9wOjRweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQuaW5wdXQtZ3JvdXAtLWZ1bGwtd2lkdGh7cGFkZGluZzoxNnB4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCBsYWJlbHttYXJnaW4tbGVmdDoxNnB4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC5pbnB1dC1ncm91cC0tZnVsbC13aWR0aCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLmlucHV0LWdyb3VwLS1mdWxsLXdpZHRoIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7ZGlzcGxheTpub25lfS5pbnB1dC1ncm91cC0tcHJlZml4Om5vdCguaW5wdXQtZ3JvdXAtLWZvY3VzZWQpOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KSBsYWJlbHtsZWZ0OjE2cHh9LmlucHV0LWdyb3VwLS1wcmVmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19wcmVmaXgsLmlucHV0LWdyb3VwLS1wcmVmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXgsLmlucHV0LWdyb3VwLS1zdWZmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19wcmVmaXgsLmlucHV0LWdyb3VwLS1zdWZmaXggLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkX19zdWZmaXh7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDtmb250LXNpemU6MTZweDttYXJnaW4tdG9wOjFweH0uaW5wdXQtZ3JvdXAtLXByZWZpeCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeCwuaW5wdXQtZ3JvdXAtLXN1ZmZpeCAuaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfX3ByZWZpeHttYXJnaW4tcmlnaHQ6M3B4fS5pbnB1dC1ncm91cC0tcHJlZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4LC5pbnB1dC1ncm91cC0tc3VmZml4IC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZF9fc3VmZml4e21hcmdpbi1sZWZ0OjNweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94IGlucHV0LC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggdGV4dGFyZWF7Y3Vyc29yOnBvaW50ZXJ9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCBsYWJlbHtsZWZ0OjE2cHh9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2lucHV0ey13ZWJraXQtYm94LWFsaWduOmVuZDstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7Ym9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDtjdXJzb3I6cG9pbnRlcjttaW4taGVpZ2h0OjU2cHg7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3ggLmlucHV0LWdyb3VwX19kZXRhaWxze3BhZGRpbmc6OHB4IDE2cHggMDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveCAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YmVmb3Jle2hlaWdodDoycHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3guaW5wdXQtZ3JvdXAtLW11bHRpLWxpbmUgdGV4dGFyZWF7cGFkZGluZy1sZWZ0OjI0cHg7cGFkZGluZy1yaWdodDoyNHB4fS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3g6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpLmlucHV0LWdyb3VwLS1tdWx0aS1saW5lIC5pbnB1dC1ncm91cF9faW5wdXR7cGFkZGluZy10b3A6MjZweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKS5pbnB1dC1ncm91cC0tbXVsdGktbGluZSBsYWJlbHt0b3A6MjZweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKTpub3QoLmlucHV0LWdyb3VwLS1tdWx0aS1saW5lKSAuaW5wdXQtZ3JvdXBfX2lucHV0e3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKTpub3QoLmlucHV0LWdyb3VwLS1tdWx0aS1saW5lKSBsYWJlbHt0b3A6MzJweH0uaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQtYm94Om5vdCguaW5wdXQtZ3JvdXAtLXRleHRhcmVhKTpub3QoLmlucHV0LWdyb3VwLS1zaW5nbGUtbGluZSkuaW5wdXQtZ3JvdXAtLWRpcnR5IGxhYmVsLC5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3g6bm90KC5pbnB1dC1ncm91cC0tdGV4dGFyZWEpOm5vdCguaW5wdXQtZ3JvdXAtLXNpbmdsZS1saW5lKS5pbnB1dC1ncm91cC0tZm9jdXNlZCBsYWJlbHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KSBzY2FsZSguNzUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KSBzY2FsZSguNzUpfS5pbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3guaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7bWFyZ2luLWxlZnQ6NTZweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gNTZweCl9LmlucHV0LWdyb3VwLS10ZXh0LWZpZWxkLWJveC5pbnB1dC1ncm91cC0tcHJlcGVuZC1pY29uIGxhYmVse2xlZnQ6NTZweH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwudGhlbWUtLWxpZ2h0IC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdy5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZWRpdGFibGUuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdy5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tb3ZlcmZsb3cgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZC5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1lZGl0YWJsZS5pbnB1dC1ncm91cC0tZm9jdXNlZCAuaW5wdXQtZ3JvdXBfX2lucHV0LC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlciwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLW92ZXJmbG93LmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmhvdmVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNlbGVjdC5pbnB1dC1ncm91cC0tc2VnbWVudGVkLmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDpob3ZlcntiYWNrZ3JvdW5kOiM0MjQyNDJ9LmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZXtkaXNwbGF5OmJsb2NrO2hlaWdodDowfS5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGUtLWluZGV4e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb257dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0uaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLmlucHV0LWdyb3VwX19pY29uLWNsZWFyYWJsZXt0cmFuc2l0aW9uOm5vbmV9LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZSwuaW5wdXQtZ3JvdXAtLXNlbGVjdDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZXtwYWRkaW5nLWJvdHRvbToxcHg7aGVpZ2h0OjMwcHh9LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwLS1zZWxlY3RfX2F1dG9jb21wbGV0ZXtkaXNwbGF5OmlubGluZS1ibG9jaztvcGFjaXR5OjF9LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWZvY3VzZWQuaW5wdXQtZ3JvdXAtLXNlbGVjdC0tc2VsZWN0aW5nLWluZGV4IC5pbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGV7b3BhY2l0eTowfS5pbnB1dC1ncm91cC0tc2VsZWN0LmlucHV0LWdyb3VwLS1mb2N1c2VkLmlucHV0LWdyb3VwLS1vcGVuIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb246bm90KC5pbnB1dC1ncm91cF9faWNvbi1jbGVhcmFibGUpey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfS5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9faW5wdXR7Y3Vyc29yOnBvaW50ZXJ9LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWRpc2FibGVke2N1cnNvcjpkZWZhdWx0O3BvaW50ZXItZXZlbnRzOm5vbmV9LmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6M3B4IDRweCAzcHggMH0uaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLS1hY3RpdmV7Y29sb3I6aW5oZXJpdH0uaW5wdXQtZ3JvdXAtLXNlbGVjdCAubWVudXtkaXNwbGF5OmlubGluZX0uaW5wdXQtZ3JvdXAtLXNlbGVjdCAuZmFkZS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjB9LmlucHV0LWdyb3VwLS1zZWxlY3QuaW5wdXQtZ3JvdXAtLWF1dG9jb21wbGV0ZS5pbnB1dC1ncm91cC0tc2VhcmNoLWZvY3VzZWQgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtkaXNwbGF5Om5vbmV9LmlucHV0LWdyb3VwLS1hdXRvY29tcGxldGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25ze2N1cnNvcjp0ZXh0fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tY2hpcHMgLmlucHV0LWdyb3VwX19pbnB1dHtwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjB9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbntwYWRkaW5nOjB9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IGlucHV0LC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCBpbnB1dHtoZWlnaHQ6NDhweH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyBpbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIGlucHV0e3RvcDowO2xlZnQ6MDtwYWRkaW5nLWxlZnQ6MTZweH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnN7d2lkdGg6Y2FsYygxMDAlIC0gNTVweCl9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnMgLmJ0biwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucyAuYnRuLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucyAuYnRue2JvcmRlci1yYWRpdXM6MDttYXJnaW46MDtoZWlnaHQ6NDhweDt3aWR0aDoxMDAlfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zIC5idG4gLmJ0bl9fY29udGVudCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9ucyAuYnRuIC5idG5fX2NvbnRlbnQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zIC5idG4gLmJ0bl9fY29udGVudHstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OnN0YXJ0fS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IC5pbnB1dC1ncm91cF9faW5wdXQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dHt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93LmlucHV0LWdyb3VwLS1mb2N1c2VkIC5pbnB1dC1ncm91cF9faW5wdXQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQuaW5wdXQtZ3JvdXAtLWZvY3VzZWQgLmlucHV0LWdyb3VwX19pbnB1dHtib3gtc2hhZG93OjAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpLDAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMil9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSBsYWJlbCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLW92ZXJmbG93IGxhYmVsLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIGxhYmVse2xlZnQ6MTZweCFpbXBvcnRhbnQ7dG9wOjlweCFpbXBvcnRhbnR9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1lZGl0YWJsZSAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2RldGFpbHM6YWZ0ZXIsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVye2Rpc3BsYXk6bm9uZX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0LC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9faW5wdXR7cGFkZGluZzowfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tZWRpdGFibGUgLmlucHV0LWdyb3VwX19pbnB1dDpiZWZvcmUsLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZSwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlZ21lbnRlZCAuaW5wdXQtZ3JvdXBfX2lucHV0OmJlZm9yZXtjb250ZW50OlxcXCJcXFwiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxcHg7dG9wOjA7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb24sLmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1vdmVyZmxvdyAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2VnbWVudGVkIC5pbnB1dC1ncm91cF9fYXBwZW5kLWljb257d2lkdGg6NTVweH0uaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6aG92ZXI6YWZ0ZXIsLmlucHV0LWdyb3VwLS1zZWdtZW50ZWQgLmlucHV0LWdyb3VwX19pbnB1dDphZnRlciwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLWZvY3VzZWQuaW5wdXQtZ3JvdXAtLWVkaXRhYmxlIC5pbnB1dC1ncm91cF9faW5wdXQ6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xMik7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo1NXB4O2hlaWdodDo0OHB4O3RvcDowO3dpZHRoOjFweH0ubWVudV9fY29udGVudC0tc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGV7ZGlzcGxheTpub25lfS5tZW51X19jb250ZW50LS1hdXRvY29tcGxldGUsLm1lbnVfX2NvbnRlbnQtLWF1dG9jb21wbGV0ZT4uY2FyZHtib3JkZXItcmFkaXVzOjB9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGl2aWRlciwudGhlbWUtLWxpZ2h0IC5kaXZpZGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGl2aWRlciwudGhlbWUtLWRhcmsgLmRpdmlkZXJ7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMTIpfS5kaXZpZGVye2JvcmRlcjpub25lO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDttaW4taGVpZ2h0OjFweDstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjE7d2lkdGg6MTAwJX0uZGl2aWRlci0taW5zZXR7bWFyZ2luLWxlZnQ6NzJweDt3aWR0aDpjYWxjKDEwMCUgLSA3MnB4KX0ubWVudXtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm1lbnUtLWRpc2FibGVke2N1cnNvcjpkZWZhdWx0fS5tZW51LS1kaXNhYmxlZCAubWVudV9fYWN0aXZhdG9yLC5tZW51LS1kaXNhYmxlZCAubWVudV9fYWN0aXZhdG9yPip7Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZX0ubWVudV9fYWN0aXZhdG9yey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyO2hlaWdodDppbmhlcml0O3Bvc2l0aW9uOnJlbGF0aXZlfS5tZW51X19hY3RpdmF0b3IgaW5wdXRbcmVhZG9ubHlde2N1cnNvcjpwb2ludGVyfS5tZW51X19jb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci1yYWRpdXM6MnB4O21heC13aWR0aDo4MCU7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2NvbnRhaW46Y29udGVudDt3aWxsLWNoYW5nZTp0cmFuc2Zvcm07Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLC4yKSwwIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpfS5tZW51X19jb250ZW50LS1hY3RpdmV7cG9pbnRlci1ldmVudHM6bm9uZX0ubWVudV9fY29udGVudC0tZHJvcGRvd257Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfS5tZW51X19jb250ZW50Pi5jYXJke2NvbnRhaW46Y29udGVudDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5tZW51Pi5tZW51X19jb250ZW50e21heC13aWR0aDpub25lfS5tZW51LXRyYW5zaXRpb24tZW50ZXIgLmxpc3RfX3RpbGV7bWluLXdpZHRoOjA7dHJhbnNpdGlvbi1kZWxheTouNHM7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xNXB4KTtwb2ludGVyLWV2ZW50czpub25lfS5tZW51LXRyYW5zaXRpb24tZW50ZXItdG8gLmxpc3RfX3RpbGV7cG9pbnRlci1ldmVudHM6YXV0bztvcGFjaXR5OjF9Lm1lbnUtdHJhbnNpdGlvbi1lbnRlci10byAubGlzdF9fdGlsZS0tYWN0aXZley13ZWJraXQtdHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O3RyYW5zZm9ybTpub25lIWltcG9ydGFudH0ubWVudS10cmFuc2l0aW9uLWxlYXZlLXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMHB4KX0ubWVudS10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSwubWVudS10cmFuc2l0aW9uLWxlYXZlLXRve3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1lbnUtdHJhbnNpdGlvbi1lbnRlciwubWVudS10cmFuc2l0aW9uLWxlYXZlLXRve29wYWNpdHk6MH0ubWVudS10cmFuc2l0aW9uLWVudGVyLXRvLC5tZW51LXRyYW5zaXRpb24tbGVhdmV7b3BhY2l0eToxfS5tZW51LXRyYW5zaXRpb24tZW50ZXItYWN0aXZlLC5tZW51LXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3RyYW5zaXRpb246YWxsIC41cyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5tZW51LXRyYW5zaXRpb24tZW50ZXIubWVudV9fY29udGVudC0tYXV0byAubGlzdF9fdGlsZS0tYWN0aXZle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6YXV0b30uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdWJoZWFkZXIsLnRoZW1lLS1saWdodCAuc3ViaGVhZGVye2NvbG9yOnJnYmEoMCwwLDAsLjU0KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN1YmhlYWRlciwudGhlbWUtLWRhcmsgLnN1YmhlYWRlcntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LnN1YmhlYWRlcntoZWlnaHQ6NDhweDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgMTZweH0uc3ViaGVhZGVyLS1pbnNldHttYXJnaW4tbGVmdDo1NnB4fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QsLnRoZW1lLS1saWdodCAubGlzdHtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX3RpbGVfX3N1Yi10aXRsZSwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X190aWxlX19zdWItdGl0bGV7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX3RpbGVfX21hc2ssLnRoZW1lLS1saWdodCAubGlzdCAubGlzdF9fdGlsZV9fbWFza3tjb2xvcjpyZ2JhKDAsMCwwLC4zOCk7YmFja2dyb3VuZDojZWVlfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YWZ0ZXIsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQubGlzdCAubGlzdF9fZ3JvdXAtLWFjdGl2ZTpiZWZvcmUsLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQubGlzdCAubGlzdF9fZ3JvdXBfX2hlYWRlcjpob3ZlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5saXN0IC5saXN0X190aWxlLS1oaWdobGlnaHRlZCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5saXN0IC5saXN0X190aWxlLS1saW5rOmhvdmVyLC50aGVtZS0tbGlnaHQgLmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YWZ0ZXIsLnRoZW1lLS1saWdodCAubGlzdCAubGlzdF9fZ3JvdXAtLWFjdGl2ZTpiZWZvcmUsLnRoZW1lLS1saWdodCAubGlzdCAubGlzdF9fZ3JvdXBfX2hlYWRlcjpob3ZlciwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X190aWxlLS1oaWdobGlnaHRlZCwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X190aWxlLS1saW5rOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uIC5pY29uLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fdGlsZSwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbiAuaWNvbiwudGhlbWUtLWxpZ2h0IC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX3RpbGV7Y29sb3I6cmdiYSgwLDAsMCwuMzgpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QsLnRoZW1lLS1kYXJrIC5saXN0e2JhY2tncm91bmQ6IzQyNDI0Mjtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fdGlsZV9fc3ViLXRpdGxlLC50aGVtZS0tZGFyayAubGlzdCAubGlzdF9fdGlsZV9fc3ViLXRpdGxle2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX3RpbGVfX21hc2ssLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X190aWxlX19tYXNre2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fZ3JvdXAtLWFjdGl2ZTphZnRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YmVmb3JlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fZ3JvdXBfX2hlYWRlcjpob3ZlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmxpc3QgLmxpc3RfX3RpbGUtLWhpZ2hsaWdodGVkLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fdGlsZS0tbGluazpob3ZlciwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX2dyb3VwLS1hY3RpdmU6YWZ0ZXIsLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X19ncm91cC0tYWN0aXZlOmJlZm9yZSwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX2dyb3VwX19oZWFkZXI6aG92ZXIsLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X190aWxlLS1oaWdobGlnaHRlZCwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX3RpbGUtLWxpbms6aG92ZXJ7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubGlzdCAubGlzdF9fZ3JvdXAtLWRpc2FibGVkIC5saXN0X19ncm91cF9faGVhZGVyX19wcmVwZW5kLWljb24gLmljb24sLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX3RpbGUsLnRoZW1lLS1kYXJrIC5saXN0IC5saXN0X19ncm91cC0tZGlzYWJsZWQgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbiAuaWNvbiwudGhlbWUtLWRhcmsgLmxpc3QgLmxpc3RfX2dyb3VwLS1kaXNhYmxlZCAubGlzdF9fdGlsZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSkhaW1wb3J0YW50fS5saXN0e2xpc3Qtc3R5bGUtdHlwZTpub25lO3BhZGRpbmc6OHB4IDA7dHJhbnNpdGlvbjpoZWlnaHQgLjNzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS5saXN0IC5pbnB1dC1ncm91cHttYXJnaW46MH0ubGlzdF9fdGlsZXstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjppbmhlcml0O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDo0OHB4O21hcmdpbjowO3BhZGRpbmc6MCAxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5saXN0X190aWxlLS1saW5re2N1cnNvcjpwb2ludGVyfS5saXN0X190aWxlX19hY3Rpb24sLmxpc3RfX3RpbGVfX2NvbnRlbnR7aGVpZ2h0OjEwMCV9Lmxpc3RfX3RpbGVfX3N1Yi10aXRsZSwubGlzdF9fdGlsZV9fdGl0bGV7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0ubGlzdF9fdGlsZV9fdGl0bGV7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MjRweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmxlZnR9Lmxpc3RfX3RpbGVfX3N1Yi10aXRsZXtmb250LXNpemU6MTRweH0ubGlzdF9fdGlsZV9fYWN0aW9uLC5saXN0X190aWxlX19hdmF0YXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOnN0YXJ0Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7bWluLXdpZHRoOjU2cHh9Lmxpc3RfX3RpbGVfX2FjdGlvbiwubGlzdF9fdGlsZV9fYWN0aW9uIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5saXN0X190aWxlX19hY3Rpb24gLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHN7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMTtmbGV4OjAgMTtwYWRkaW5nOjB9Lmxpc3RfX3RpbGVfX2FjdGlvbiAuaW5wdXQtZ3JvdXBfX2RldGFpbHN7ZGlzcGxheTpub25lfS5saXN0X190aWxlX19hY3Rpb24gLmJ0bntwYWRkaW5nOjA7bWFyZ2luOjB9Lmxpc3RfX3RpbGVfX2FjdGlvbiAuYnRuLS1pY29ue21hcmdpbjotOHB4fS5saXN0X190aWxlX19hY3Rpb24tdGV4dHtjb2xvcjojOWU5ZTllO2ZvbnQtc2l6ZToxMnB4fS5saXN0X190aWxlX19hY3Rpb24tLXN0YWNrey13ZWJraXQtYm94LWFsaWduOmVuZDstbXMtZmxleC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4O3doaXRlLXNwYWNlOm5vd3JhcDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubGlzdF9fdGlsZV9fYWN0aW9uLS1zdGFjaywubGlzdF9fdGlsZV9fY29udGVudHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbH0ubGlzdF9fdGlsZV9fY29udGVudHt0ZXh0LWFsaWduOmxlZnQ7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5saXN0X190aWxlX19jb250ZW50fi5saXN0X190aWxlX19hY3Rpb246bm90KC5saXN0X190aWxlX19hY3Rpb24tLXN0YWNrKSwubGlzdF9fdGlsZV9fY29udGVudH4ubGlzdF9fdGlsZV9fYXZhdGFyey13ZWJraXQtYm94LXBhY2s6ZW5kOy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubGlzdF9fdGlsZS0tYWN0aXZlIC5saXN0X190aWxlX19hY3Rpb246Zmlyc3Qtb2YtdHlwZSAuaWNvbntjb2xvcjppbmhlcml0fS5saXN0X190aWxlLS1kaXNhYmxlZHtvcGFjaXR5Oi40IWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudH0ubGlzdF9fdGlsZS0tYXZhdGFye2hlaWdodDo1NnB4fS5saXN0LS1kZW5zZXtwYWRkaW5nLXRvcDo0cHg7cGFkZGluZy1ib3R0b206NHB4fS5saXN0LS1kZW5zZSAuc3ViaGVhZGVye2ZvbnQtc2l6ZToxM3B4O2hlaWdodDo0MHB4fS5saXN0LS1kZW5zZSAubGlzdF9fZ3JvdXAgLnN1YmhlYWRlcntoZWlnaHQ6NDBweH0ubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGV7Zm9udC1zaXplOjEzcHh9Lmxpc3QtLWRlbnNlIC5saXN0X190aWxlLS1hdmF0YXJ7aGVpZ2h0OjQ4cHh9Lmxpc3QtLWRlbnNlIC5saXN0X190aWxlOm5vdCgubGlzdF9fdGlsZS0tYXZhdGFyKXtoZWlnaHQ6NDBweH0ubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGUgLmljb257Zm9udC1zaXplOjIycHh9Lmxpc3QtLWRlbnNlIC5saXN0X190aWxlX19zdWItdGl0bGV7Zm9udC1zaXplOjEzcHh9Lmxpc3QtLXR3by1saW5lIC5saXN0X190aWxle2hlaWdodDo3MnB4fS5saXN0LS10d28tbGluZS5saXN0LS1kZW5zZSAubGlzdF9fdGlsZXtoZWlnaHQ6NjBweH0ubGlzdC0tdGhyZWUtbGluZSAubGlzdF9fdGlsZXtoZWlnaHQ6ODhweH0ubGlzdC0tdGhyZWUtbGluZSAubGlzdF9fdGlsZV9fYXZhdGFye21hcmdpbi10b3A6LTE4cHh9Lmxpc3QtLXRocmVlLWxpbmUgLmxpc3RfX3RpbGVfX3N1Yi10aXRsZXt3aGl0ZS1zcGFjZTpub3JtYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3h9Lmxpc3QtLXRocmVlLWxpbmUubGlzdC0tZGVuc2UgLmxpc3RfX3RpbGV7aGVpZ2h0Ojc2cHh9Lmxpc3Q+Lmxpc3RfX2dyb3VwOmJlZm9yZXt0b3A6MH0ubGlzdD4ubGlzdF9fZ3JvdXA6YmVmb3JlIC5saXN0X190aWxlX19hdmF0YXJ7bWFyZ2luLXRvcDotMTRweH0ubGlzdF9fZ3JvdXB7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246aW5oZXJpdH0ubGlzdF9fZ3JvdXA6YWZ0ZXIsLmxpc3RfX2dyb3VwOmJlZm9yZXtjb250ZW50OlxcXCJcXFwiO2hlaWdodDoxcHg7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWR0aDoxMDAlfS5saXN0X19ncm91cC0tYWN0aXZlfi5saXN0X19ncm91cDpiZWZvcmV7ZGlzcGxheTpub25lfS5saXN0X19ncm91cF9faGVhZGVyey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7bGlzdC1zdHlsZS10eXBlOm5vbmV9Lmxpc3RfX2dyb3VwX19oZWFkZXI+ZGl2Om5vdCgubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29uKTpub3QoLmxpc3RfX2dyb3VwX19oZWFkZXJfX2FwcGVuZC1pY29uKXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30ubGlzdF9fZ3JvdXBfX2hlYWRlciAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fYXBwZW5kLWljb24sLmxpc3RfX2dyb3VwX19oZWFkZXIgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbntwYWRkaW5nOjAgMTZweDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lmxpc3RfX2dyb3VwX19oZWFkZXItLXN1Yi1ncm91cHstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS5saXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXAgZGl2IC5saXN0X190aWxle3BhZGRpbmctbGVmdDowfS5saXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXAgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbntwYWRkaW5nOjAgMCAwIDQwcHg7bWFyZ2luLXJpZ2h0OjhweH0ubGlzdF9fZ3JvdXBfX2hlYWRlciAubGlzdF9fZ3JvdXBfX2hlYWRlcl9fcHJlcGVuZC1pY29ue2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpzdGFydDstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O21pbi13aWR0aDo1NnB4fS5saXN0X19ncm91cF9faGVhZGVyLS1hY3RpdmUgLmxpc3RfX2dyb3VwX19oZWFkZXJfX2FwcGVuZC1pY29uIC5pY29uey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfS5saXN0X19ncm91cF9faGVhZGVyLS1hY3RpdmUgLmxpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbiAuaWNvbntjb2xvcjppbmhlcml0fS5saXN0X19ncm91cF9faGVhZGVyLS1hY3RpdmUubGlzdF9fZ3JvdXBfX2hlYWRlci0tc3ViLWdyb3VwIC5saXN0X19ncm91cF9faGVhZGVyX19wcmVwZW5kLWljb24gLmljb257LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyl9Lmxpc3RfX2dyb3VwX19pdGVtc3twb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjA7dHJhbnNpdGlvbjppbmhlcml0fS5saXN0X19ncm91cF9faXRlbXM+ZGl2e2Rpc3BsYXk6YmxvY2t9Lmxpc3RfX2dyb3VwX19pdGVtcy0tbm8tYWN0aW9uIC5saXN0X190aWxle3BhZGRpbmctbGVmdDo3MnB4fS5saXN0X19ncm91cC0tZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0ubGlzdC0tc3ViaGVhZGVye3BhZGRpbmctdG9wOjB9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFibGUsLnRoZW1lLS1saWdodCAudGFibGV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOnJnYmEoMCwwLDAsLjg3KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZCwudGhlbWUtLWxpZ2h0IC50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFibGUgdGhlYWQgdGgsLnRoZW1lLS1saWdodCAudGFibGUgdGhlYWQgdGh7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRhYmxlIHRib2R5IHRyOm5vdCg6bGFzdC1jaGlsZCksLnRoZW1lLS1saWdodCAudGFibGUgdGJvZHkgdHI6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFibGUgdGJvZHkgdHJbYWN0aXZlXSwudGhlbWUtLWxpZ2h0IC50YWJsZSB0Ym9keSB0clthY3RpdmVde2JhY2tncm91bmQ6I2Y1ZjVmNX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0Ym9keSB0cjpob3Zlcjpub3QoLmRhdGF0YWJsZV9fZXhwYW5kLXJvdyksLnRoZW1lLS1saWdodCAudGFibGUgdGJvZHkgdHI6aG92ZXI6bm90KC5kYXRhdGFibGVfX2V4cGFuZC1yb3cpe2JhY2tncm91bmQ6I2VlZX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJsZSB0Zm9vdCB0ciwudGhlbWUtLWxpZ2h0IC50YWJsZSB0Zm9vdCB0cntib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSwudGhlbWUtLWRhcmsgLnRhYmxle2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mjtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQsLnRoZW1lLS1kYXJrIC50YWJsZSB0aGVhZCB0cjpmaXJzdC1jaGlsZHtib3JkZXItYm90dG9tOjFweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGFibGUgdGhlYWQgdGgsLnRoZW1lLS1kYXJrIC50YWJsZSB0aGVhZCB0aHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJsZSB0Ym9keSB0cjpub3QoOmxhc3QtY2hpbGQpLC50aGVtZS0tZGFyayAudGFibGUgdGJvZHkgdHI6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItYm90dG9tOjFweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGFibGUgdGJvZHkgdHJbYWN0aXZlXSwudGhlbWUtLWRhcmsgLnRhYmxlIHRib2R5IHRyW2FjdGl2ZV17YmFja2dyb3VuZDojNTA1MDUwfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGFibGUgdGJvZHkgdHI6aG92ZXI6bm90KC5kYXRhdGFibGVfX2V4cGFuZC1yb3cpLC50aGVtZS0tZGFyayAudGFibGUgdGJvZHkgdHI6aG92ZXI6bm90KC5kYXRhdGFibGVfX2V4cGFuZC1yb3cpe2JhY2tncm91bmQ6IzYxNjE2MX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYmxlIHRmb290IHRyLC50aGVtZS0tZGFyayAudGFibGUgdGZvb3QgdHJ7Ym9yZGVyLXRvcDoxcHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjEyKX0udGFibGVfX292ZXJmbG93e3dpZHRoOjEwMCU7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVufXRhYmxlLnRhYmxle2JvcmRlci1yYWRpdXM6MnB4O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCV9dGFibGUudGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGJvZHkgdGQ6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGJvZHkgdGg6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGJvZHkgdGg6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGhlYWQgdGQ6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGhlYWQgdGQ6bm90KDpmaXJzdC1jaGlsZCksdGFibGUudGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsdGFibGUudGFibGUgdGhlYWQgdGg6bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZzowIDI0cHh9dGFibGUudGFibGUgdGhlYWQgdHJ7aGVpZ2h0OjU2cHh9dGFibGUudGFibGUgdGhlYWQgdGh7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc2l6ZToxMnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2hpdGUtc3BhY2U6bm93cmFwOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX10YWJsZS50YWJsZSB0aGVhZCB0aC5zb3J0YWJsZXtwb2ludGVyLWV2ZW50czphdXRvfXRhYmxlLnRhYmxlIHRoZWFkIHRoPmRpdnt3aWR0aDoxMDAlfXRhYmxlLnRhYmxlIHRib2R5IHRye3RyYW5zaXRpb246YmFja2dyb3VuZCAuM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kfXRhYmxlLnRhYmxlIHRib2R5IHRkLHRhYmxlLnRhYmxlIHRib2R5IHRoe2hlaWdodDo0OHB4fXRhYmxlLnRhYmxlIHRib2R5IHRke2ZvbnQtd2VpZ2h0OjQwMDtmb250LXNpemU6MTNweH10YWJsZS50YWJsZSAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc3twYWRkaW5nOjB9dGFibGUudGFibGUgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMgLmlucHV0LWdyb3VwX19kZXRhaWxze2Rpc3BsYXk6bm9uZX10YWJsZS50YWJsZSAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5jaGVja2JveCAuaWNvbntsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfXRhYmxlLnRhYmxlIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzLmNoZWNrYm94IC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGV7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfXRhYmxlLnRhYmxlIHRmb290IHRye2hlaWdodDo0OHB4fXRhYmxlLnRhYmxlIHRmb290IHRyIHRke3BhZGRpbmc6MCAyNHB4fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUgaSwudGhlbWUtLWxpZ2h0IC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlIGl7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlIGksLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZTpob3ZlciwudGhlbWUtLWxpZ2h0IC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSwudGhlbWUtLWxpZ2h0IC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSBpLC50aGVtZS0tbGlnaHQgLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGU6aG92ZXJ7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zLC50aGVtZS0tbGlnaHQgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25ze2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC41NCk7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9uc19fc2VsZWN0IC5pbnB1dC1ncm91cC0tc2VsZWN0IC5pbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEsLnRoZW1lLS1saWdodCAuZGF0YXRhYmxlIC5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29uLC50aGVtZS0tbGlnaHQgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtjb2xvcjpyZ2JhKDAsMCwwLC41NCkhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZSBpLC50aGVtZS0tZGFyayAuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZSBpe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC41KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUgaSwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGU6aG92ZXIsLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlLmFjdGl2ZSwudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlIGksLnRoZW1lLS1kYXJrIC5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlOmhvdmVye2NvbG9yOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRhdGFibGUgLmRhdGF0YWJsZV9fYWN0aW9ucywudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25ze2JhY2tncm91bmQtY29sb3I6IzQyNDI0Mjtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyk7Ym9yZGVyLXRvcDoxcHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjEyKX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYSwudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19hcHBlbmQtaWNvbiwudGhlbWUtLWRhcmsgLmRhdGF0YWJsZSAuZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3QgLmlucHV0LWdyb3VwLS1zZWxlY3QgLmlucHV0LWdyb3VwX19zZWxlY3Rpb25zX19jb21tYXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNykhaW1wb3J0YW50fS5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxle2N1cnNvcjpwb2ludGVyfS5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlIGl7Zm9udC1zaXplOjE2cHg7dmVydGljYWwtYWxpZ246c3ViO2Rpc3BsYXk6aW5saW5lLWJsb2NrO29wYWNpdHk6MDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5kYXRhdGFibGUgdGhlYWQgdGguY29sdW1uLnNvcnRhYmxlOmhvdmVyIGl7b3BhY2l0eTouNn0uZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX0uZGF0YXRhYmxlIHRoZWFkIHRoLmNvbHVtbi5zb3J0YWJsZS5hY3RpdmUgaXtvcGFjaXR5OjF9LmRhdGF0YWJsZSB0aGVhZCB0aC5jb2x1bW4uc29ydGFibGUuYWN0aXZlLmRlc2MgaXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX0uZGF0YXRhYmxlX19hY3Rpb25ze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxMnB4Oy1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlO2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9LmRhdGF0YWJsZV9fYWN0aW9ucyAuYnRue2NvbG9yOmluaGVyaXR9LmRhdGF0YWJsZV9fYWN0aW9ucyAuYnRuOmxhc3Qtb2YtdHlwZXttYXJnaW4tbGVmdDoxNHB4fS5kYXRhdGFibGVfX2FjdGlvbnNfX3JhbmdlLWNvbnRyb2xze2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDo0OHB4fS5kYXRhdGFibGVfX2FjdGlvbnNfX3BhZ2luYXRpb257ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MCAzMnB4IDAgMjRweH0uZGF0YXRhYmxlX19hY3Rpb25zX19zZWxlY3R7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1yaWdodDoxNHB4fS5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdHttYXJnaW46MTNweCAwIDEzcHggMzRweDtwYWRkaW5nOjA7cG9zaXRpb246c3RhdGljfS5kYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCAuaW5wdXQtZ3JvdXAtLXNlbGVjdCAuaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1he2ZvbnQtc2l6ZToxMnB4fS5kYXRhdGFibGVfX3Byb2dyZXNzLC5kYXRhdGFibGVfX3Byb2dyZXNzIHRkLC5kYXRhdGFibGVfX3Byb2dyZXNzIHRoLC5kYXRhdGFibGVfX3Byb2dyZXNzIHRye2hlaWdodDphdXRvIWltcG9ydGFudH0uZGF0YXRhYmxlX19wcm9ncmVzcyB0aHtwYWRkaW5nOjAhaW1wb3J0YW50fS5kYXRhdGFibGVfX3Byb2dyZXNzIHRoIC5wcm9ncmVzcy1saW5lYXJ7dG9wOi0ycHg7bWFyZ2luOjAgMCAtMnB4fS5kYXRhdGFibGVfX2V4cGFuZC1yb3d7Ym9yZGVyOm5vbmUhaW1wb3J0YW50fS5kYXRhdGFibGVfX2V4cGFuZC1jb2x7cGFkZGluZzowIWltcG9ydGFudDtoZWlnaHQ6MCFpbXBvcnRhbnR9LmRhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWR7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpfS5kYXRhdGFibGVfX2V4cGFuZC1jb250ZW50e3RyYW5zaXRpb246aGVpZ2h0IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5kYXRhdGFibGVfX2V4cGFuZC1jb250ZW50Pi5jYXJke2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmV9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc21hbGwtZGlhbG9nX19hY3Rpb25zLC5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnNtYWxsLWRpYWxvZ19fY29udGVudCwudGhlbWUtLWxpZ2h0IC5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLnRoZW1lLS1saWdodCAuc21hbGwtZGlhbG9nX19jb250ZW50e2JhY2tncm91bmQ6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zbWFsbC1kaWFsb2cgYSwudGhlbWUtLWxpZ2h0IC5zbWFsbC1kaWFsb2cgYXtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zbWFsbC1kaWFsb2dfX2NvbnRlbnQsLnRoZW1lLS1kYXJrIC5zbWFsbC1kaWFsb2dfX2FjdGlvbnMsLnRoZW1lLS1kYXJrIC5zbWFsbC1kaWFsb2dfX2NvbnRlbnR7YmFja2dyb3VuZDojNDI0MjQyfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc21hbGwtZGlhbG9nIGEsLnRoZW1lLS1kYXJrIC5zbWFsbC1kaWFsb2cgYXtjb2xvcjojZmZmfS5zbWFsbC1kaWFsb2d7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5zbWFsbC1kaWFsb2dfX2NvbnRlbnR7cGFkZGluZzowIDI0cHh9LnNtYWxsLWRpYWxvZ19fYWN0aW9uc3t0ZXh0LWFsaWduOnJpZ2h0fS5zbWFsbC1kaWFsb2cgYXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDoxMDAlO3RleHQtZGVjb3JhdGlvbjpub25lfS5zbWFsbC1kaWFsb2cgYT4qe3dpZHRoOjEwMCV9LnNtYWxsLWRpYWxvZyAubWVudV9fYWN0aXZhdG9ye2hlaWdodDoxMDAlfS5kYXRlLXBpY2tlci10aXRsZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstbXMtZmxleC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO2xpbmUtaGVpZ2h0OjF9LmRhdGUtcGlja2VyLXRpdGxlX195ZWFyey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO21hcmdpbi1ib3R0b206OHB4fS5kYXRlLXBpY2tlci10aXRsZV9fZGF0ZXtmb250LXNpemU6MzRweDt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NTAwO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0uZGF0ZS1waWNrZXItdGl0bGVfX2RhdGU+ZGl2e3Bvc2l0aW9uOnJlbGF0aXZlfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGUtcGlja2VyLWhlYWRlciAuZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZTpub3QoLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUtLWRpc2FibGVkKSBzdHJvbmc6bm90KDpob3ZlciksLnRoZW1lLS1saWdodCAuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlOm5vdCguZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZS0tZGlzYWJsZWQpIHN0cm9uZzpub3QoOmhvdmVyKXtjb2xvcjpyZ2JhKDAsMCwwLC44NykhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGUtcGlja2VyLWhlYWRlciAuZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZS0tZGlzYWJsZWQgc3Ryb25nLC50aGVtZS0tbGlnaHQgLmRhdGUtcGlja2VyLWhlYWRlciAuZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZS0tZGlzYWJsZWQgc3Ryb25ne2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmRhdGUtcGlja2VyLWhlYWRlciAuZGF0ZS1waWNrZXItaGVhZGVyX192YWx1ZTpub3QoLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUtLWRpc2FibGVkKSBzdHJvbmc6bm90KDpob3ZlciksLnRoZW1lLS1kYXJrIC5kYXRlLXBpY2tlci1oZWFkZXIgLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWU6bm90KC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCkgc3Ryb25nOm5vdCg6aG92ZXIpe2NvbG9yOiNmZmYhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0ZS1waWNrZXItaGVhZGVyIC5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCBzdHJvbmcsLnRoZW1lLS1kYXJrIC5kYXRlLXBpY2tlci1oZWFkZXIgLmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUtLWRpc2FibGVkIHN0cm9uZ3tjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9LmRhdGUtcGlja2VyLWhlYWRlcntwYWRkaW5nOjRweCAxNnB4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjpyZWxhdGl2ZX0uZGF0ZS1waWNrZXItaGVhZGVyIC5idG57bWFyZ2luOjA7ei1pbmRleDphdXRvfS5kYXRlLXBpY2tlci1oZWFkZXIgLmljb257Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5kYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVley13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LmRhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUgc3Ryb25ne2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmRhdGUtcGlja2VyLXRhYmxlIHRoLC50aGVtZS0tbGlnaHQgLmRhdGUtcGlja2VyLXRhYmxlIHRoe2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5kYXRlLXBpY2tlci10YWJsZSAuYnRuLC50aGVtZS0tbGlnaHQgLmRhdGUtcGlja2VyLXRhYmxlIC5idG57Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZGF0ZS1waWNrZXItdGFibGUgdGgsLnRoZW1lLS1kYXJrIC5kYXRlLXBpY2tlci10YWJsZSB0aHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNSl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5kYXRlLXBpY2tlci10YWJsZSAuYnRuLC50aGVtZS0tZGFyayAuZGF0ZS1waWNrZXItdGFibGUgLmJ0bntjb2xvcjojZmZmfS5kYXRlLXBpY2tlci10YWJsZXtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjAgMTJweDtoZWlnaHQ6MjQycHh9LmRhdGUtcGlja2VyLXRhYmxlIHRhYmxle3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7dG9wOjA7dGFibGUtbGF5b3V0OmZpeGVkO3dpZHRoOjEwMCV9LmRhdGUtcGlja2VyLXRhYmxlIHRkLC5kYXRlLXBpY2tlci10YWJsZSB0aHt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZX0uZGF0ZS1waWNrZXItdGFibGUgdGh7Zm9udC1zaXplOjEycHh9LmRhdGUtcGlja2VyLXRhYmxlLS1kYXRlIC5idG57aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0uZGF0ZS1waWNrZXItdGFibGUgLmJ0bnt6LWluZGV4OmF1dG87bWFyZ2luOjA7Zm9udC1zaXplOjEycHh9LmRhdGUtcGlja2VyLXRhYmxlIC5idG4uYnRuLS1hY3RpdmV7Y29sb3I6I2ZmZn0uZGF0ZS1waWNrZXItdGFibGUtLW1vbnRoIHRke3dpZHRoOjMzLjMzMzMzMyU7aGVpZ2h0OjU2cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO3RleHQtYWxpZ246Y2VudGVyfS5kYXRlLXBpY2tlci10YWJsZS0tbW9udGggdGQgLmJ0bnttYXJnaW46MCBhdXRvO21heC13aWR0aDoxNjBweDttaW4td2lkdGg6NDBweDt3aWR0aDoxMDAlfS5kYXRlLXBpY2tlci10YWJsZS0tZGF0ZSB0aHtwYWRkaW5nOjhweCAwO2ZvbnQtd2VpZ2h0OjYwMH0uZGF0ZS1waWNrZXItdGFibGUtLWRhdGUgdGR7d2lkdGg6NDVweH0uZGF0ZS1waWNrZXItdGFibGVfX2V2ZW50e2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbToycHg7Y29udGVudDpcXFwiXFxcIjtkaXNwbGF5OmJsb2NrO2hlaWdodDo4cHg7bGVmdDo1MCU7cG9zaXRpb246YWJzb2x1dGU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNHB4KTt3aWR0aDo4cHh9LmRhdGUtcGlja2VyLXllYXJze2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjQwMDtoZWlnaHQ6MzM0cHg7bGlzdC1zdHlsZS10eXBlOm5vbmU7b3ZlcmZsb3c6YXV0bztwYWRkaW5nOjA7dGV4dC1hbGlnbjpjZW50ZXJ9LmRhdGUtcGlja2VyLXllYXJzIGxpe2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6OHB4IDA7dHJhbnNpdGlvbjpub25lfS5kYXRlLXBpY2tlci15ZWFycyBsaS5hY3RpdmV7Zm9udC1zaXplOjI2cHg7Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmc6MTBweCAwfS5kYXRlLXBpY2tlci15ZWFycyBsaTpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEyKX0ucGlja2VyLS1sYW5kc2NhcGUgLmRhdGUtcGlja2VyLXllYXJze2hlaWdodDoyODZweH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnBpY2tlciwudGhlbWUtLWRhcmsgLnBpY2tlcntjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsucGlja2VyIC5waWNrZXJfX2JvZHksLnRoZW1lLS1kYXJrIC5waWNrZXIgLnBpY2tlcl9fYm9keXtiYWNrZ3JvdW5kOiM0MjQyNDJ9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGlja2VyIC5waWNrZXJfX3RpdGxlLC50aGVtZS0tbGlnaHQgLnBpY2tlciAucGlja2VyX190aXRsZXtiYWNrZ3JvdW5kOiNlMGUwZTB9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5waWNrZXIgLnBpY2tlcl9fdGl0bGUsLnRoZW1lLS1kYXJrIC5waWNrZXIgLnBpY2tlcl9fdGl0bGV7YmFja2dyb3VuZDojNjE2MTYxfS5waWNrZXJ7Ym9yZGVyLXJhZGl1czoycHg7Y29udGFpbjpsYXlvdXQgc3R5bGU7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnBpY2tlciAuY2FyZF9fcm93LS1hY3Rpb25ze2JvcmRlcjpub25lO21hcmdpbi10b3A6LTIwcHh9LnBpY2tlci0tZnVsbC13aWR0aHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS5waWNrZXJfX3RpdGxle2NvbG9yOiNmZmY7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoycHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MnB4O3BhZGRpbmc6MTZweH0ucGlja2VyX190aXRsZV9fYnRue3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LnBpY2tlcl9fdGl0bGVfX2J0bi5hY3RpdmV7b3BhY2l0eToxfS5waWNrZXJfX3RpdGxlX19idG46bm90KC5hY3RpdmUpe29wYWNpdHk6LjY7Y3Vyc29yOnBvaW50ZXJ9LnBpY2tlcl9fdGl0bGVfX2J0bjpub3QoLmFjdGl2ZSk6aG92ZXJ7b3BhY2l0eToxfS5waWNrZXJfX2JvZHl7aGVpZ2h0OmF1dG87b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnBpY2tlcl9fYm9keT5kaXZ7d2lkdGg6MTAwJX0ucGlja2VyX19ib2R5PmRpdi5mYWRlLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZle3Bvc2l0aW9uOmFic29sdXRlfS5waWNrZXItLWxhbmRzY2FwZSAucGlja2VyX190aXRsZXtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7d2lkdGg6MTcwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3otaW5kZXg6MX0ucGlja2VyLS1sYW5kc2NhcGUgLnBpY2tlcl9fYWN0aW9ucywucGlja2VyLS1sYW5kc2NhcGUgLnBpY2tlcl9fYm9keXttYXJnaW4tbGVmdDoxNzBweH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5leHBhbnNpb24tcGFuZWwgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLC50aGVtZS0tbGlnaHQgLmV4cGFuc2lvbi1wYW5lbCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMTIpO2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb24sLnRoZW1lLS1saWdodCAuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb257Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmV4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcjpmb2N1cywudGhlbWUtLWxpZ2h0IC5leHBhbnNpb24tcGFuZWwtLWZvY3VzYWJsZSAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXI6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZWVlfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciwudGhlbWUtLWRhcmsgLmV4cGFuc2lvbi1wYW5lbCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjEyKTtiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDI7Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmV4cGFuc2lvbi1wYW5lbCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXIgLmV4cGFuc2lvbi1wYW5lbF9faGVhZGVyIC5pY29uLC50aGVtZS0tZGFyayAuZXhwYW5zaW9uLXBhbmVsIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmljb257Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmV4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcjpmb2N1cywudGhlbWUtLWRhcmsgLmV4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlIC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfS5leHBhbnNpb24tcGFuZWx7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtsaXN0LXN0eWxlLXR5cGU6bm9uZTtwYWRkaW5nOjA7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMCU7Ym94LXNoYWRvdzowIDJweCAxcHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwuMTIpfS5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIDEwMCU7ZmxleDoxIDAgMTAwJTttYXgtd2lkdGg6MTAwJTtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXI6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDpub25lIWltcG9ydGFudH0uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXIgLmhlYWRlcl9faWNvbnttYXJnaW4tbGVmdDphdXRvfS5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lciAuaGVhZGVyX19pY29uIC5pY29ue3RyYW5zaXRpb246bm9uZX0uZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXItLWFjdGl2ZT4uZXhwYW5zaW9uLXBhbmVsX19oZWFkZXIgLmhlYWRlcl9faWNvbiAuaWNvbnstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX0uZXhwYW5zaW9uLXBhbmVsX19oZWFkZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtjdXJzb3I6cG9pbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjEycHggMjRweH0uZXhwYW5zaW9uLXBhbmVsX19oZWFkZXI+Om5vdCguaGVhZGVyX19pY29uKXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0b30uZXhwYW5zaW9uLXBhbmVsX19ib2R5e3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LmV4cGFuc2lvbi1wYW5lbF9fYm9keSAuY2FyZHtib3JkZXItcmFkaXVzOjB9LmV4cGFuc2lvbi1wYW5lbC0taW5zZXQsLmV4cGFuc2lvbi1wYW5lbC0tcG9wb3V0LC5leHBhbnNpb24tcGFuZWxfX2JvZHkgLmNhcmR7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfS5leHBhbnNpb24tcGFuZWwtLWluc2V0IC5leHBhbnNpb24tcGFuZWxfX2NvbnRhaW5lci0tYWN0aXZlLC5leHBhbnNpb24tcGFuZWwtLXBvcG91dCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXItLWFjdGl2ZXttYXJnaW46MTZweDtib3gtc2hhZG93OjAgM3B4IDNweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgM3B4IDRweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA4cHggMCByZ2JhKDAsMCwwLC4xMil9LmV4cGFuc2lvbi1wYW5lbC0taW5zZXQgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLC5leHBhbnNpb24tcGFuZWwtLXBvcG91dCAuZXhwYW5zaW9uLXBhbmVsX19jb250YWluZXJ7bWF4LXdpZHRoOjk1JX0uZXhwYW5zaW9uLXBhbmVsLS1wb3BvdXQgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLS1hY3RpdmV7bWF4LXdpZHRoOjEwMCV9LmV4cGFuc2lvbi1wYW5lbC0taW5zZXQgLmV4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLS1hY3RpdmV7bWF4LXdpZHRoOjg1JX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5mb290ZXIsLnRoZW1lLS1saWdodCAuZm9vdGVye2JhY2tncm91bmQ6I2Y1ZjVmNTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5mb290ZXIsLnRoZW1lLS1kYXJrIC5mb290ZXJ7YmFja2dyb3VuZDojMjEyMTIxO2NvbG9yOiNmZmZ9LmZvb3Rlcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MCFpbXBvcnRhbnQ7LW1zLWZsZXg6MCAxIGF1dG8haW1wb3J0YW50O2ZsZXg6MCAxIGF1dG8haW1wb3J0YW50O21pbi1oZWlnaHQ6MzZweDt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uZm9vdGVyLS1hYnNvbHV0ZSwuZm9vdGVyLS1maXhlZHtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTt6LWluZGV4OjN9LmZvb3Rlci0taW5zZXR7ei1pbmRleDoyfS5mb290ZXItLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfS5mb290ZXItLWZpeGVke3Bvc2l0aW9uOmZpeGVkfS5jb250ZW50e3RyYW5zaXRpb246bm9uZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvO21heC13aWR0aDoxMDAlO3dpbGwtY2hhbmdlOnBhZGRpbmd9LmNvbnRlbnRbZGF0YS1ib290ZWQ9dHJ1ZV17dHJhbnNpdGlvbjouMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LmNvbnRlbnQtLXdyYXB7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWF4LXdpZHRoOjEwMCV9QG1lZGlhIHByaW50e0AtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXsuY29udGVudHtkaXNwbGF5OmJsb2NrfX19LmNvbnRhaW5lcnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAxIDEwMCU7ZmxleDoxIDEgMTAwJTttYXJnaW46YXV0bztwYWRkaW5nOjE2cHg7d2lkdGg6MTAwJX0uY29udGFpbmVyLmZsdWlke21heC13aWR0aDoxMDAlfS5jb250YWluZXIuZmlsbC1oZWlnaHR7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0uY29udGFpbmVyLmZpbGwtaGVpZ2h0IC5sYXlvdXR7aGVpZ2h0OjEwMCU7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99LmNvbnRhaW5lci5ncmlkLWxpc3QteHN7cGFkZGluZzoycHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteHMgLmxheW91dCAuZmxleHtwYWRkaW5nOjFweH0uY29udGFpbmVyLmdyaWQtbGlzdC14cyAubGF5b3V0Om9ubHktY2hpbGR7bWFyZ2luOi0xcHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteHMgLmxheW91dDpub3QoOm9ubHktY2hpbGQpe21hcmdpbjphdXRvIC0xcHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteHMgOm5vdCg6b25seS1jaGlsZCkgLmxheW91dDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOi0xcHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteHMgOm5vdCg6b25seS1jaGlsZCkgLmxheW91dDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206LTFweH0uY29udGFpbmVyLmdyaWQtbGlzdC1zbXtwYWRkaW5nOjRweH0uY29udGFpbmVyLmdyaWQtbGlzdC1zbSAubGF5b3V0IC5mbGV4e3BhZGRpbmc6MnB4fS5jb250YWluZXIuZ3JpZC1saXN0LXNtIC5sYXlvdXQ6b25seS1jaGlsZHttYXJnaW46LTJweH0uY29udGFpbmVyLmdyaWQtbGlzdC1zbSAubGF5b3V0Om5vdCg6b25seS1jaGlsZCl7bWFyZ2luOmF1dG8gLTJweH0uY29udGFpbmVyLmdyaWQtbGlzdC1zbSA6bm90KDpvbmx5LWNoaWxkKSAubGF5b3V0OmZpcnN0LWNoaWxke21hcmdpbi10b3A6LTJweH0uY29udGFpbmVyLmdyaWQtbGlzdC1zbSA6bm90KDpvbmx5LWNoaWxkKSAubGF5b3V0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTotMnB4fS5jb250YWluZXIuZ3JpZC1saXN0LW1ke3BhZGRpbmc6OHB4fS5jb250YWluZXIuZ3JpZC1saXN0LW1kIC5sYXlvdXQgLmZsZXh7cGFkZGluZzo0cHh9LmNvbnRhaW5lci5ncmlkLWxpc3QtbWQgLmxheW91dDpvbmx5LWNoaWxke21hcmdpbjotNHB4fS5jb250YWluZXIuZ3JpZC1saXN0LW1kIC5sYXlvdXQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW46YXV0byAtNHB4fS5jb250YWluZXIuZ3JpZC1saXN0LW1kIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotNHB4fS5jb250YWluZXIuZ3JpZC1saXN0LW1kIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOi00cHh9LmNvbnRhaW5lci5ncmlkLWxpc3QtbGd7cGFkZGluZzoxNnB4fS5jb250YWluZXIuZ3JpZC1saXN0LWxnIC5sYXlvdXQgLmZsZXh7cGFkZGluZzo4cHh9LmNvbnRhaW5lci5ncmlkLWxpc3QtbGcgLmxheW91dDpvbmx5LWNoaWxke21hcmdpbjotOHB4fS5jb250YWluZXIuZ3JpZC1saXN0LWxnIC5sYXlvdXQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW46YXV0byAtOHB4fS5jb250YWluZXIuZ3JpZC1saXN0LWxnIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotOHB4fS5jb250YWluZXIuZ3JpZC1saXN0LWxnIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOi04cHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteGx7cGFkZGluZzoyNHB4fS5jb250YWluZXIuZ3JpZC1saXN0LXhsIC5sYXlvdXQgLmZsZXh7cGFkZGluZzoxMnB4fS5jb250YWluZXIuZ3JpZC1saXN0LXhsIC5sYXlvdXQ6b25seS1jaGlsZHttYXJnaW46LTEycHh9LmNvbnRhaW5lci5ncmlkLWxpc3QteGwgLmxheW91dDpub3QoOm9ubHktY2hpbGQpe21hcmdpbjphdXRvIC0xMnB4fS5jb250YWluZXIuZ3JpZC1saXN0LXhsIDpub3QoOm9ubHktY2hpbGQpIC5sYXlvdXQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDotMTJweH0uY29udGFpbmVyLmdyaWQtbGlzdC14bCA6bm90KDpvbmx5LWNoaWxkKSAubGF5b3V0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTotMTJweH0ubGF5b3V0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcDttaW4td2lkdGg6MH0ubGF5b3V0LnJvd3std2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fS5sYXlvdXQucm93LnJldmVyc2V7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5sYXlvdXQuY29sdW1uey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5sYXlvdXQuY29sdW1uPi5mbGV4e21heC13aWR0aDoxMDAlfS5sYXlvdXQuY29sdW1uLnJldmVyc2V7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpyZXZlcnNlOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0ubGF5b3V0LndyYXB7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS5jaGlsZC1mbGV4PiosLmZsZXh7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99LmFsaWduLXN0YXJ0ey13ZWJraXQtYm94LWFsaWduOnN0YXJ0Oy1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LmFsaWduLWVuZHstd2Via2l0LWJveC1hbGlnbjplbmQ7LW1zLWZsZXgtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5hbGlnbi1jZW50ZXJ7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LmFsaWduLWJhc2VsaW5ley13ZWJraXQtYm94LWFsaWduOmJhc2VsaW5lOy1tcy1mbGV4LWFsaWduOmJhc2VsaW5lO2FsaWduLWl0ZW1zOmJhc2VsaW5lfS5hbGlnbi1jb250ZW50LXN0YXJ0ey1tcy1mbGV4LWxpbmUtcGFjazpzdGFydDthbGlnbi1jb250ZW50OmZsZXgtc3RhcnR9LmFsaWduLWNvbnRlbnQtZW5key1tcy1mbGV4LWxpbmUtcGFjazplbmQ7YWxpZ24tY29udGVudDpmbGV4LWVuZH0uYWxpZ24tY29udGVudC1jZW50ZXJ7LW1zLWZsZXgtbGluZS1wYWNrOmNlbnRlcjthbGlnbi1jb250ZW50OmNlbnRlcn0uYWxpZ24tY29udGVudC1zcGFjZS1iZXR3ZWVuey1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uYWxpZ24tY29udGVudC1zcGFjZS1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGU7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmR9Lmp1c3RpZnktc3RhcnR7LXdlYmtpdC1ib3gtcGFjazpzdGFydDstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5qdXN0aWZ5LWVuZHstd2Via2l0LWJveC1wYWNrOmVuZDstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lmp1c3RpZnktY2VudGVyey13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lmp1c3RpZnktc3BhY2UtYXJvdW5key1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfS5qdXN0aWZ5LXNwYWNlLWJldHdlZW57LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uZ3Jvdywuc3BhY2Vyey13ZWJraXQtYm94LWZsZXg6MSFpbXBvcnRhbnQ7LW1zLWZsZXgtcG9zaXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1ncm93OjEhaW1wb3J0YW50fS5ncm93ey1tcy1mbGV4LW5lZ2F0aXZlOjAhaW1wb3J0YW50O2ZsZXgtc2hyaW5rOjAhaW1wb3J0YW50fS5zaHJpbmt7LXdlYmtpdC1ib3gtZmxleDowIWltcG9ydGFudDstbXMtZmxleC1wb3NpdGl2ZTowIWltcG9ydGFudDtmbGV4LWdyb3c6MCFpbXBvcnRhbnQ7LW1zLWZsZXgtbmVnYXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9LnNjcm9sbC15e292ZXJmbG93LXk6YXV0b30uZmlsbC1oZWlnaHR7aGVpZ2h0OjEwMCV9LmhpZGUtb3ZlcmZsb3d7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudH0uc2hvdy1vdmVyZmxvd3tvdmVyZmxvdzp2aXNpYmxlIWltcG9ydGFudH0uZWxsaXBzaXMsLm5vLXdyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS5lbGxpcHNpc3tvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uZC1mbGV4e2Rpc3BsYXk6LXdlYmtpdC1ib3ghaW1wb3J0YW50O2Rpc3BsYXk6LW1zLWZsZXhib3ghaW1wb3J0YW50O2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnR9LmQtaW5saW5lLWZsZXh7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3ghaW1wb3J0YW50O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH0uZC1mbGV4PiosLmQtaW5saW5lLWZsZXg+Knstd2Via2l0LWJveC1mbGV4OjEhaW1wb3J0YW50Oy1tcy1mbGV4OjEgMSBhdXRvIWltcG9ydGFudDtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZC1ibG9ja3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uZC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLWlubGluZXtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk2MHB4KXsuY29udGFpbmVye21heC13aWR0aDo5MDBweH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyNjRweCl7LmNvbnRhaW5lcnttYXgtd2lkdGg6MTE4NXB4fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTkwNHB4KXsuY29udGFpbmVye21heC13aWR0aDoxNzg1cHh9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTlweCl7LmNvbnRhaW5lcntwYWRkaW5nOjI0cHh9fUBtZWRpYSAobWluLXdpZHRoOjApey5mbGV4LnhzMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4LjMzMzMzMzMzMzMzMzMzMiU7ZmxleC1iYXNpczo4LjMzMzMzMzMzMzMzMzMzMiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vcmRlci14czF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoyOy1tcy1mbGV4LW9yZGVyOjE7b3JkZXI6MX0uZmxleC54czJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTYuNjY2NjY2NjY2NjY2NjY0JTtmbGV4LWJhc2lzOjE2LjY2NjY2NjY2NjY2NjY2NCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub3JkZXIteHMyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MzstbXMtZmxleC1vcmRlcjoyO29yZGVyOjJ9LmZsZXgueHMzey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjI1JTtmbGV4LWJhc2lzOjI1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MjUlfS5mbGV4Lm9yZGVyLXhzM3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjQ7LW1zLWZsZXgtb3JkZXI6MztvcmRlcjozfS5mbGV4LnhzNHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTozMy4zMzMzMzMzMzMzMzMzMyU7ZmxleC1iYXNpczozMy4zMzMzMzMzMzMzMzMzMyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vcmRlci14czR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo1Oy1tcy1mbGV4LW9yZGVyOjQ7b3JkZXI6NH0uZmxleC54czV7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NDEuNjY2NjY2NjY2NjY2NjclO2ZsZXgtYmFzaXM6NDEuNjY2NjY2NjY2NjY2NjclOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub3JkZXIteHM1ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NjstbXMtZmxleC1vcmRlcjo1O29yZGVyOjV9LmZsZXgueHM2ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjUwJTtmbGV4LWJhc2lzOjUwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTAlfS5mbGV4Lm9yZGVyLXhzNnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjc7LW1zLWZsZXgtb3JkZXI6NjtvcmRlcjo2fS5mbGV4LnhzN3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1OC4zMzMzMzMzMzMzMzMzMzYlO2ZsZXgtYmFzaXM6NTguMzMzMzMzMzMzMzMzMzM2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vcmRlci14czd7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo4Oy1tcy1mbGV4LW9yZGVyOjc7b3JkZXI6N30uZmxleC54czh7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NjYuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6NjYuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXIteHM4ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6OTstbXMtZmxleC1vcmRlcjo4O29yZGVyOjh9LmZsZXgueHM5ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjc1JTtmbGV4LWJhc2lzOjc1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NzUlfS5mbGV4Lm9yZGVyLXhzOXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEwOy1tcy1mbGV4LW9yZGVyOjk7b3JkZXI6OX0uZmxleC54czEwey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjgzLjMzMzMzMzMzMzMzMzM0JTtmbGV4LWJhc2lzOjgzLjMzMzMzMzMzMzMzMzM0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9yZGVyLXhzMTB7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMTstbXMtZmxleC1vcmRlcjoxMDtvcmRlcjoxMH0uZmxleC54czExey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjkxLjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjkxLjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLXhzMTF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMjstbXMtZmxleC1vcmRlcjoxMTtvcmRlcjoxMX0uZmxleC54czEyey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjEwMCU7ZmxleC1iYXNpczoxMDAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxMDAlfS5mbGV4Lm9yZGVyLXhzMTJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMzstbXMtZmxleC1vcmRlcjoxMjtvcmRlcjoxMn0uZmxleC5vZmZzZXQteHMwe21hcmdpbi1sZWZ0OjB9LmZsZXgub2Zmc2V0LXhzMXttYXJnaW4tbGVmdDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub2Zmc2V0LXhzMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9mZnNldC14czN7bWFyZ2luLWxlZnQ6MjUlfS5mbGV4Lm9mZnNldC14czR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9mZnNldC14czV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9mZnNldC14czZ7bWFyZ2luLWxlZnQ6NTAlfS5mbGV4Lm9mZnNldC14czd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vZmZzZXQteHM4e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQteHM5e21hcmdpbi1sZWZ0Ojc1JX0uZmxleC5vZmZzZXQteHMxMHttYXJnaW4tbGVmdDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub2Zmc2V0LXhzMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC14czEye21hcmdpbi1sZWZ0OjEwMCV9fUBtZWRpYSAobWluLXdpZHRoOjYwMHB4KXsuZmxleC5zbTF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OC4zMzMzMzMzMzMzMzMzMzIlO2ZsZXgtYmFzaXM6OC4zMzMzMzMzMzMzMzMzMzIlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub3JkZXItc20xey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjstbXMtZmxleC1vcmRlcjoxO29yZGVyOjF9LmZsZXguc20yey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjE2LjY2NjY2NjY2NjY2NjY2NCU7ZmxleC1iYXNpczoxNi42NjY2NjY2NjY2NjY2NjQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9yZGVyLXNtMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjM7LW1zLWZsZXgtb3JkZXI6MjtvcmRlcjoyfS5mbGV4LnNtM3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToyNSU7ZmxleC1iYXNpczoyNSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjI1JX0uZmxleC5vcmRlci1zbTN7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo0Oy1tcy1mbGV4LW9yZGVyOjM7b3JkZXI6M30uZmxleC5zbTR7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MzMuMzMzMzMzMzMzMzMzMzMlO2ZsZXgtYmFzaXM6MzMuMzMzMzMzMzMzMzMzMzMlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub3JkZXItc200ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NTstbXMtZmxleC1vcmRlcjo0O29yZGVyOjR9LmZsZXguc201ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjQxLjY2NjY2NjY2NjY2NjY3JTtmbGV4LWJhc2lzOjQxLjY2NjY2NjY2NjY2NjY3JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9yZGVyLXNtNXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjY7LW1zLWZsZXgtb3JkZXI6NTtvcmRlcjo1fS5mbGV4LnNtNnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1MCU7ZmxleC1iYXNpczo1MCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjUwJX0uZmxleC5vcmRlci1zbTZ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo3Oy1tcy1mbGV4LW9yZGVyOjY7b3JkZXI6Nn0uZmxleC5zbTd7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTguMzMzMzMzMzMzMzMzMzM2JTtmbGV4LWJhc2lzOjU4LjMzMzMzMzMzMzMzMzMzNiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub3JkZXItc203ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ODstbXMtZmxleC1vcmRlcjo3O29yZGVyOjd9LmZsZXguc204ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjY2LjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjY2LjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLXNtOHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjk7LW1zLWZsZXgtb3JkZXI6ODtvcmRlcjo4fS5mbGV4LnNtOXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo3NSU7ZmxleC1iYXNpczo3NSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjc1JX0uZmxleC5vcmRlci1zbTl7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMDstbXMtZmxleC1vcmRlcjo5O29yZGVyOjl9LmZsZXguc20xMHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4My4zMzMzMzMzMzMzMzMzNCU7ZmxleC1iYXNpczo4My4zMzMzMzMzMzMzMzMzNCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vcmRlci1zbTEwey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTE7LW1zLWZsZXgtb3JkZXI6MTA7b3JkZXI6MTB9LmZsZXguc20xMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo5MS42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo5MS42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci1zbTExey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTI7LW1zLWZsZXgtb3JkZXI6MTE7b3JkZXI6MTF9LmZsZXguc20xMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxMDAlO2ZsZXgtYmFzaXM6MTAwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTAwJX0uZmxleC5vcmRlci1zbTEyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTM7LW1zLWZsZXgtb3JkZXI6MTI7b3JkZXI6MTJ9LmZsZXgub2Zmc2V0LXNtMHttYXJnaW4tbGVmdDowfS5mbGV4Lm9mZnNldC1zbTF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9mZnNldC1zbTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vZmZzZXQtc20ze21hcmdpbi1sZWZ0OjI1JX0uZmxleC5vZmZzZXQtc200e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vZmZzZXQtc201e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vZmZzZXQtc202e21hcmdpbi1sZWZ0OjUwJX0uZmxleC5vZmZzZXQtc203e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub2Zmc2V0LXNtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LXNtOXttYXJnaW4tbGVmdDo3NSV9LmZsZXgub2Zmc2V0LXNtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9mZnNldC1zbTExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQtc20xMnttYXJnaW4tbGVmdDoxMDAlfX1AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7LmZsZXgubWQxey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjguMzMzMzMzMzMzMzMzMzMyJTtmbGV4LWJhc2lzOjguMzMzMzMzMzMzMzMzMzMyJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9yZGVyLW1kMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjI7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5mbGV4Lm1kMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNi42NjY2NjY2NjY2NjY2NjQlO2ZsZXgtYmFzaXM6MTYuNjY2NjY2NjY2NjY2NjY0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vcmRlci1tZDJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDozOy1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0uZmxleC5tZDN7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MjUlO2ZsZXgtYmFzaXM6MjUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoyNSV9LmZsZXgub3JkZXItbWQzey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NDstbXMtZmxleC1vcmRlcjozO29yZGVyOjN9LmZsZXgubWQ0ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjMzLjMzMzMzMzMzMzMzMzMzJTtmbGV4LWJhc2lzOjMzLjMzMzMzMzMzMzMzMzMzJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9yZGVyLW1kNHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjU7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5mbGV4Lm1kNXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo0MS42NjY2NjY2NjY2NjY2NyU7ZmxleC1iYXNpczo0MS42NjY2NjY2NjY2NjY2NyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vcmRlci1tZDV7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo2Oy1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0uZmxleC5tZDZ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTAlO2ZsZXgtYmFzaXM6NTAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1MCV9LmZsZXgub3JkZXItbWQ2ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NzstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9LmZsZXgubWQ3ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjU4LjMzMzMzMzMzMzMzMzMzNiU7ZmxleC1iYXNpczo1OC4zMzMzMzMzMzMzMzMzMzYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9yZGVyLW1kN3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjg7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5mbGV4Lm1kOHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo2Ni42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo2Ni42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci1tZDh7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo5Oy1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0uZmxleC5tZDl7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NzUlO2ZsZXgtYmFzaXM6NzUlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo3NSV9LmZsZXgub3JkZXItbWQ5ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTA7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5mbGV4Lm1kMTB7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ODMuMzMzMzMzMzMzMzMzMzQlO2ZsZXgtYmFzaXM6ODMuMzMzMzMzMzMzMzMzMzQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub3JkZXItbWQxMHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjExOy1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5mbGV4Lm1kMTF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OTEuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6OTEuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXItbWQxMXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEyOy1tcy1mbGV4LW9yZGVyOjExO29yZGVyOjExfS5mbGV4Lm1kMTJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTAwJTtmbGV4LWJhc2lzOjEwMCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjEwMCV9LmZsZXgub3JkZXItbWQxMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEzOy1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5mbGV4Lm9mZnNldC1tZDB7bWFyZ2luLWxlZnQ6MH0uZmxleC5vZmZzZXQtbWQxe21hcmdpbi1sZWZ0OjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vZmZzZXQtbWQye21hcmdpbi1sZWZ0OjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub2Zmc2V0LW1kM3ttYXJnaW4tbGVmdDoyNSV9LmZsZXgub2Zmc2V0LW1kNHttYXJnaW4tbGVmdDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub2Zmc2V0LW1kNXttYXJnaW4tbGVmdDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub2Zmc2V0LW1kNnttYXJnaW4tbGVmdDo1MCV9LmZsZXgub2Zmc2V0LW1kN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMzMzMzMzMzMzYlfS5mbGV4Lm9mZnNldC1tZDh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC1tZDl7bWFyZ2luLWxlZnQ6NzUlfS5mbGV4Lm9mZnNldC1tZDEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vZmZzZXQtbWQxMXttYXJnaW4tbGVmdDo5MS42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LW1kMTJ7bWFyZ2luLWxlZnQ6MTAwJX19QG1lZGlhIChtaW4td2lkdGg6MTI2NHB4KXsuZmxleC5sZzF7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6OC4zMzMzMzMzMzMzMzMzMzIlO2ZsZXgtYmFzaXM6OC4zMzMzMzMzMzMzMzMzMzIlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub3JkZXItbGcxey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjstbXMtZmxleC1vcmRlcjoxO29yZGVyOjF9LmZsZXgubGcyey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjE2LjY2NjY2NjY2NjY2NjY2NCU7ZmxleC1iYXNpczoxNi42NjY2NjY2NjY2NjY2NjQlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9yZGVyLWxnMnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjM7LW1zLWZsZXgtb3JkZXI6MjtvcmRlcjoyfS5mbGV4LmxnM3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToyNSU7ZmxleC1iYXNpczoyNSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjI1JX0uZmxleC5vcmRlci1sZzN7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo0Oy1tcy1mbGV4LW9yZGVyOjM7b3JkZXI6M30uZmxleC5sZzR7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MzMuMzMzMzMzMzMzMzMzMzMlO2ZsZXgtYmFzaXM6MzMuMzMzMzMzMzMzMzMzMzMlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDozMy4zMzMzMzMzMzMzMzMzMyV9LmZsZXgub3JkZXItbGc0ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NTstbXMtZmxleC1vcmRlcjo0O29yZGVyOjR9LmZsZXgubGc1ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjQxLjY2NjY2NjY2NjY2NjY3JTtmbGV4LWJhc2lzOjQxLjY2NjY2NjY2NjY2NjY3JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9yZGVyLWxnNXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjY7LW1zLWZsZXgtb3JkZXI6NTtvcmRlcjo1fS5mbGV4LmxnNnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1MCU7ZmxleC1iYXNpczo1MCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjUwJX0uZmxleC5vcmRlci1sZzZ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo3Oy1tcy1mbGV4LW9yZGVyOjY7b3JkZXI6Nn0uZmxleC5sZzd7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NTguMzMzMzMzMzMzMzMzMzM2JTtmbGV4LWJhc2lzOjU4LjMzMzMzMzMzMzMzMzMzNiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub3JkZXItbGc3ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ODstbXMtZmxleC1vcmRlcjo3O29yZGVyOjd9LmZsZXgubGc4ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjY2LjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjY2LjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NjYuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLWxnOHstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjk7LW1zLWZsZXgtb3JkZXI6ODtvcmRlcjo4fS5mbGV4LmxnOXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo3NSU7ZmxleC1iYXNpczo3NSU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjc1JX0uZmxleC5vcmRlci1sZzl7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMDstbXMtZmxleC1vcmRlcjo5O29yZGVyOjl9LmZsZXgubGcxMHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4My4zMzMzMzMzMzMzMzMzNCU7ZmxleC1iYXNpczo4My4zMzMzMzMzMzMzMzMzNCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjgzLjMzMzMzMzMzMzMzMzM0JX0uZmxleC5vcmRlci1sZzEwey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTE7LW1zLWZsZXgtb3JkZXI6MTA7b3JkZXI6MTB9LmZsZXgubGcxMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo5MS42NjY2NjY2NjY2NjY2NiU7ZmxleC1iYXNpczo5MS42NjY2NjY2NjY2NjY2NiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vcmRlci1sZzExey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTI7LW1zLWZsZXgtb3JkZXI6MTE7b3JkZXI6MTF9LmZsZXgubGcxMnstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxMDAlO2ZsZXgtYmFzaXM6MTAwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MTAwJX0uZmxleC5vcmRlci1sZzEyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MTM7LW1zLWZsZXgtb3JkZXI6MTI7b3JkZXI6MTJ9LmZsZXgub2Zmc2V0LWxnMHttYXJnaW4tbGVmdDowfS5mbGV4Lm9mZnNldC1sZzF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMzMzMzMzMzMzIlfS5mbGV4Lm9mZnNldC1sZzJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY2NjY2NjY2NjY0JX0uZmxleC5vZmZzZXQtbGcze21hcmdpbi1sZWZ0OjI1JX0uZmxleC5vZmZzZXQtbGc0e21hcmdpbi1sZWZ0OjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vZmZzZXQtbGc1e21hcmdpbi1sZWZ0OjQxLjY2NjY2NjY2NjY2NjY3JX0uZmxleC5vZmZzZXQtbGc2e21hcmdpbi1sZWZ0OjUwJX0uZmxleC5vZmZzZXQtbGc3e21hcmdpbi1sZWZ0OjU4LjMzMzMzMzMzMzMzMzMzNiV9LmZsZXgub2Zmc2V0LWxnOHttYXJnaW4tbGVmdDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub2Zmc2V0LWxnOXttYXJnaW4tbGVmdDo3NSV9LmZsZXgub2Zmc2V0LWxnMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9mZnNldC1sZzExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQtbGcxMnttYXJnaW4tbGVmdDoxMDAlfX1AbWVkaWEgKG1pbi13aWR0aDoxOTA0cHgpey5mbGV4LnhsMXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo4LjMzMzMzMzMzMzMzMzMzMiU7ZmxleC1iYXNpczo4LjMzMzMzMzMzMzMzMzMzMiU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjguMzMzMzMzMzMzMzMzMzMyJX0uZmxleC5vcmRlci14bDF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoyOy1tcy1mbGV4LW9yZGVyOjE7b3JkZXI6MX0uZmxleC54bDJ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTYuNjY2NjY2NjY2NjY2NjY0JTtmbGV4LWJhc2lzOjE2LjY2NjY2NjY2NjY2NjY2NCU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjE2LjY2NjY2NjY2NjY2NjY2NCV9LmZsZXgub3JkZXIteGwyey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MzstbXMtZmxleC1vcmRlcjoyO29yZGVyOjJ9LmZsZXgueGwzey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjI1JTtmbGV4LWJhc2lzOjI1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6MjUlfS5mbGV4Lm9yZGVyLXhsM3std2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjQ7LW1zLWZsZXgtb3JkZXI6MztvcmRlcjozfS5mbGV4LnhsNHstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTozMy4zMzMzMzMzMzMzMzMzMyU7ZmxleC1iYXNpczozMy4zMzMzMzMzMzMzMzMzMyU7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4LXBvc2l0aXZlOjA7ZmxleC1ncm93OjA7bWF4LXdpZHRoOjMzLjMzMzMzMzMzMzMzMzMzJX0uZmxleC5vcmRlci14bDR7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo1Oy1tcy1mbGV4LW9yZGVyOjQ7b3JkZXI6NH0uZmxleC54bDV7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NDEuNjY2NjY2NjY2NjY2NjclO2ZsZXgtYmFzaXM6NDEuNjY2NjY2NjY2NjY2NjclOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo0MS42NjY2NjY2NjY2NjY2NyV9LmZsZXgub3JkZXIteGw1ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6NjstbXMtZmxleC1vcmRlcjo1O29yZGVyOjV9LmZsZXgueGw2ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjUwJTtmbGV4LWJhc2lzOjUwJTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTAlfS5mbGV4Lm9yZGVyLXhsNnstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjc7LW1zLWZsZXgtb3JkZXI6NjtvcmRlcjo2fS5mbGV4LnhsN3stbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTo1OC4zMzMzMzMzMzMzMzMzMzYlO2ZsZXgtYmFzaXM6NTguMzMzMzMzMzMzMzMzMzM2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vcmRlci14bDd7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDo4Oy1tcy1mbGV4LW9yZGVyOjc7b3JkZXI6N30uZmxleC54bDh7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6NjYuNjY2NjY2NjY2NjY2NjYlO2ZsZXgtYmFzaXM6NjYuNjY2NjY2NjY2NjY2NjYlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDo2Ni42NjY2NjY2NjY2NjY2NiV9LmZsZXgub3JkZXIteGw4ey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6OTstbXMtZmxleC1vcmRlcjo4O29yZGVyOjh9LmZsZXgueGw5ey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjc1JTtmbGV4LWJhc2lzOjc1JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6NzUlfS5mbGV4Lm9yZGVyLXhsOXstd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOjEwOy1tcy1mbGV4LW9yZGVyOjk7b3JkZXI6OX0uZmxleC54bDEwey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjgzLjMzMzMzMzMzMzMzMzM0JTtmbGV4LWJhc2lzOjgzLjMzMzMzMzMzMzMzMzM0JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6ODMuMzMzMzMzMzMzMzMzMzQlfS5mbGV4Lm9yZGVyLXhsMTB7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMTstbXMtZmxleC1vcmRlcjoxMDtvcmRlcjoxMH0uZmxleC54bDExey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjkxLjY2NjY2NjY2NjY2NjY2JTtmbGV4LWJhc2lzOjkxLjY2NjY2NjY2NjY2NjY2JTstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXgtcG9zaXRpdmU6MDtmbGV4LWdyb3c6MDttYXgtd2lkdGg6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9yZGVyLXhsMTF7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMjstbXMtZmxleC1vcmRlcjoxMTtvcmRlcjoxMX0uZmxleC54bDEyey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjEwMCU7ZmxleC1iYXNpczoxMDAlOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleC1wb3NpdGl2ZTowO2ZsZXgtZ3JvdzowO21heC13aWR0aDoxMDAlfS5mbGV4Lm9yZGVyLXhsMTJ7LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDoxMzstbXMtZmxleC1vcmRlcjoxMjtvcmRlcjoxMn0uZmxleC5vZmZzZXQteGwwe21hcmdpbi1sZWZ0OjB9LmZsZXgub2Zmc2V0LXhsMXttYXJnaW4tbGVmdDo4LjMzMzMzMzMzMzMzMzMzMiV9LmZsZXgub2Zmc2V0LXhsMnttYXJnaW4tbGVmdDoxNi42NjY2NjY2NjY2NjY2NjQlfS5mbGV4Lm9mZnNldC14bDN7bWFyZ2luLWxlZnQ6MjUlfS5mbGV4Lm9mZnNldC14bDR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzMzMzMzMzMzMlfS5mbGV4Lm9mZnNldC14bDV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY2NjY2NjY2NjclfS5mbGV4Lm9mZnNldC14bDZ7bWFyZ2luLWxlZnQ6NTAlfS5mbGV4Lm9mZnNldC14bDd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzMzMzMzMzMzM2JX0uZmxleC5vZmZzZXQteGw4e21hcmdpbi1sZWZ0OjY2LjY2NjY2NjY2NjY2NjY2JX0uZmxleC5vZmZzZXQteGw5e21hcmdpbi1sZWZ0Ojc1JX0uZmxleC5vZmZzZXQteGwxMHttYXJnaW4tbGVmdDo4My4zMzMzMzMzMzMzMzMzNCV9LmZsZXgub2Zmc2V0LXhsMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY2NjY2NjY2NjYlfS5mbGV4Lm9mZnNldC14bDEye21hcmdpbi1sZWZ0OjEwMCV9fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0Lm5hdmlnYXRpb24tZHJhd2VyLC50aGVtZS0tbGlnaHQgLm5hdmlnYXRpb24tZHJhd2Vye2JhY2tncm91bmQtY29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5uYXZpZ2F0aW9uLWRyYXdlciAuZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5uYXZpZ2F0aW9uLWRyYXdlcjpub3QoLm5hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZykgLm5hdmlnYXRpb24tZHJhd2VyX19ib3JkZXIsLnRoZW1lLS1saWdodCAubmF2aWdhdGlvbi1kcmF3ZXIgLmRpdmlkZXIsLnRoZW1lLS1saWdodCAubmF2aWdhdGlvbi1kcmF3ZXI6bm90KC5uYXZpZ2F0aW9uLWRyYXdlci0tZmxvYXRpbmcpIC5uYXZpZ2F0aW9uLWRyYXdlcl9fYm9yZGVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMTIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsubmF2aWdhdGlvbi1kcmF3ZXIsLnRoZW1lLS1kYXJrIC5uYXZpZ2F0aW9uLWRyYXdlcntiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5uYXZpZ2F0aW9uLWRyYXdlciAuZGl2aWRlciwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLm5hdmlnYXRpb24tZHJhd2VyOm5vdCgubmF2aWdhdGlvbi1kcmF3ZXItLWZsb2F0aW5nKSAubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlciwudGhlbWUtLWRhcmsgLm5hdmlnYXRpb24tZHJhd2VyIC5kaXZpZGVyLC50aGVtZS0tZGFyayAubmF2aWdhdGlvbi1kcmF3ZXI6bm90KC5uYXZpZ2F0aW9uLWRyYXdlci0tZmxvYXRpbmcpIC5uYXZpZ2F0aW9uLWRyYXdlcl9fYm9yZGVye2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjEyKX0ubmF2aWdhdGlvbi1kcmF3ZXJ7dHJhbnNpdGlvbjpub25lO2Rpc3BsYXk6YmxvY2s7bGVmdDowO21heC13aWR0aDoxMDAlO292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjtwYWRkaW5nOjAgMCAxMDBweDtwb2ludGVyLWV2ZW50czphdXRvO3RvcDowO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTt6LWluZGV4OjM7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9Lm5hdmlnYXRpb24tZHJhd2VyW2RhdGEtYm9vdGVkPXRydWVde3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZCxiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlcixib3JkZXItYm90dG9tLGJvcmRlci1ib3R0b20tY29sb3IsYm9yZGVyLWJvdHRvbS13aWR0aCxib3JkZXItY29sb3IsYm9yZGVyLWxlZnQsYm9yZGVyLWxlZnQtY29sb3IsYm9yZGVyLWxlZnQtd2lkdGgsYm9yZGVyLXJpZ2h0LGJvcmRlci1yaWdodC1jb2xvcixib3JkZXItcmlnaHQtd2lkdGgsYm9yZGVyLXRvcCxib3JkZXItdG9wLWNvbG9yLGJvcmRlci10b3Atd2lkdGgsYm9yZGVyLXdpZHRoLGJvdHRvbSxib3gtc2hhZG93LGNvbG9yLGhlaWdodCxsZWZ0LG1hcmdpbixtYXJnaW4tYm90dG9tLG1hcmdpbi1sZWZ0LG1hcmdpbi1yaWdodCxtYXJnaW4tdG9wLG1heC13aWR0aCxtaW4taGVpZ2h0LG1pbi13aWR0aCxvcGFjaXR5LHBhZGRpbmcscGFkZGluZy1ib3R0b20scGFkZGluZy1sZWZ0LHBhZGRpbmctcmlnaHQscGFkZGluZy10b3AscmlnaHQsdG9wLHRyYW5zZm9ybSx0cmFuc2Zvcm0tb3JpZ2luLHdpZHRoO3RyYW5zaXRpb24tcHJvcGVydHk6YmFja2dyb3VuZCxiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlcixib3JkZXItYm90dG9tLGJvcmRlci1ib3R0b20tY29sb3IsYm9yZGVyLWJvdHRvbS13aWR0aCxib3JkZXItY29sb3IsYm9yZGVyLWxlZnQsYm9yZGVyLWxlZnQtY29sb3IsYm9yZGVyLWxlZnQtd2lkdGgsYm9yZGVyLXJpZ2h0LGJvcmRlci1yaWdodC1jb2xvcixib3JkZXItcmlnaHQtd2lkdGgsYm9yZGVyLXRvcCxib3JkZXItdG9wLWNvbG9yLGJvcmRlci10b3Atd2lkdGgsYm9yZGVyLXdpZHRoLGJvdHRvbSxib3gtc2hhZG93LGNvbG9yLGhlaWdodCxsZWZ0LG1hcmdpbixtYXJnaW4tYm90dG9tLG1hcmdpbi1sZWZ0LG1hcmdpbi1yaWdodCxtYXJnaW4tdG9wLG1heC13aWR0aCxtaW4taGVpZ2h0LG1pbi13aWR0aCxvcGFjaXR5LHBhZGRpbmcscGFkZGluZy1ib3R0b20scGFkZGluZy1sZWZ0LHBhZGRpbmctcmlnaHQscGFkZGluZy10b3AscmlnaHQsdG9wLHRyYW5zZm9ybSx0cmFuc2Zvcm0tb3JpZ2luLHdpZHRoLC13ZWJraXQtdHJhbnNmb3JtLC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbn0ubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlcntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO2hlaWdodDoxMDAlO3dpZHRoOjFweH0ubmF2aWdhdGlvbi1kcmF3ZXIubmF2aWdhdGlvbi1kcmF3ZXItLXJpZ2h0OmFmdGVye2xlZnQ6MDtyaWdodDphdXRvfS5uYXZpZ2F0aW9uLWRyYXdlci0tcmlnaHR7bGVmdDphdXRvO3JpZ2h0OjB9Lm5hdmlnYXRpb24tZHJhd2VyLS1yaWdodD4ubmF2aWdhdGlvbi1kcmF3ZXJfX2JvcmRlcntyaWdodDphdXRvO2xlZnQ6MH0ubmF2aWdhdGlvbi1kcmF3ZXItLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfS5uYXZpZ2F0aW9uLWRyYXdlci0tZml4ZWR7cG9zaXRpb246Zml4ZWR9Lm5hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZzphZnRlcntkaXNwbGF5Om5vbmV9Lm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnR7b3ZlcmZsb3c6aGlkZGVufS5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5saXN0X19ncm91cF9faGVhZGVyX19wcmVwZW5kLWljb257LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG87LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlfS5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5saXN0X190aWxlX19hY3Rpb24sLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLmxpc3RfX3RpbGVfX2F2YXRhcnstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDo0OHB4fS5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5saXN0X190aWxlOmFmdGVyLC5uYXZpZ2F0aW9uLWRyYXdlci0tbWluaS12YXJpYW50IC5saXN0X190aWxlX19jb250ZW50e29wYWNpdHk6MH0ubmF2aWdhdGlvbi1kcmF3ZXItLW1pbmktdmFyaWFudCAuZGl2aWRlciwubmF2aWdhdGlvbi1kcmF3ZXItLW1pbmktdmFyaWFudCAubGlzdC0tZ3JvdXAsLm5hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQgLnN1YmhlYWRlcntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5uYXZpZ2F0aW9uLWRyYXdlci0taXMtbW9iaWxlLC5uYXZpZ2F0aW9uLWRyYXdlci0tdGVtcG9yYXJ5e3otaW5kZXg6Nn0ubmF2aWdhdGlvbi1kcmF3ZXItLWlzLW1vYmlsZTpub3QoLm5hdmlnYXRpb24tZHJhd2VyLS1jbG9zZSksLm5hdmlnYXRpb24tZHJhd2VyLS10ZW1wb3Jhcnk6bm90KC5uYXZpZ2F0aW9uLWRyYXdlci0tY2xvc2Upe2JveC1zaGFkb3c6MCA4cHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpLDAgMTZweCAyNHB4IDJweCByZ2JhKDAsMCwwLC4xNCksMCA2cHggMzBweCA1cHggcmdiYSgwLDAsMCwuMTIpfS5uYXZpZ2F0aW9uLWRyYXdlciAubGlzdHtiYWNrZ3JvdW5kOmluaGVyaXR9Lm5hdmlnYXRpb24tZHJhd2VyPi5saXN0IC5saXN0X190aWxle3RyYW5zaXRpb246bm9uZTtmb250LXdlaWdodDo1MDB9Lm5hdmlnYXRpb24tZHJhd2VyPi5saXN0IC5saXN0X190aWxlLS1hY3RpdmUgLmxpc3RfX3RpbGVfX3RpdGxle2NvbG9yOmluaGVyaXR9Lm5hdmlnYXRpb24tZHJhd2VyPi5saXN0IC5saXN0LS1ncm91cCAubGlzdF9fdGlsZXtmb250LXdlaWdodDo0MDB9Lm5hdmlnYXRpb24tZHJhd2VyPi5saXN0IC5saXN0LS1ncm91cF9faGVhZGVyLS1hY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ubmF2aWdhdGlvbi1kcmF3ZXI+Lmxpc3Q6bm90KC5saXN0LS1kZW5zZSkgLmxpc3RfX3RpbGV7Zm9udC1zaXplOjE0cHh9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQucGFnaW5hdGlvbl9faXRlbSwudGhlbWUtLWxpZ2h0IC5wYWdpbmF0aW9uX19pdGVte2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDAwfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSwudGhlbWUtLWxpZ2h0IC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmV7Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLC50aGVtZS0tbGlnaHQgLnBhZ2luYXRpb25fX25hdmlnYXRpb257YmFja2dyb3VuZDojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnBhZ2luYXRpb25fX25hdmlnYXRpb24gLmljb24sLnRoZW1lLS1saWdodCAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5wYWdpbmF0aW9uX19pdGVtLC50aGVtZS0tZGFyayAucGFnaW5hdGlvbl9faXRlbXtiYWNrZ3JvdW5kOiM0MjQyNDI7Y29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSwudGhlbWUtLWRhcmsgLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZXtjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiwudGhlbWUtLWRhcmsgLnBhZ2luYXRpb25fX25hdmlnYXRpb257YmFja2dyb3VuZDojNDI0MjQyfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiAuaWNvbiwudGhlbWUtLWRhcmsgLnBhZ2luYXRpb25fX25hdmlnYXRpb24gLmljb257Y29sb3I6I2ZmZn0ucGFnaW5hdGlvbntkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2xpc3Qtc3R5bGUtdHlwZTpub25lO21hcmdpbjowO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MH0ucGFnaW5hdGlvbiwucGFnaW5hdGlvbj5saXstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ucGFnaW5hdGlvbj5saXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4fS5wYWdpbmF0aW9uLS1jaXJjbGUgLnBhZ2luYXRpb25fX2l0ZW0sLnBhZ2luYXRpb24tLWNpcmNsZSAucGFnaW5hdGlvbl9fbW9yZSwucGFnaW5hdGlvbi0tY2lyY2xlIC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9ue2JvcmRlci1yYWRpdXM6NTAlfS5wYWdpbmF0aW9uLS1kaXNhYmxlZHtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjZ9LnBhZ2luYXRpb25fX2l0ZW17Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LXdlYmtpdC1pbmxpbmUtYm94O2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LXNpemU6MTRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2hlaWdodDozNHB4O3dpZHRoOjM0cHg7bWFyZ2luOi4zcmVtO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllcigwLDAsLjIsMSl9LnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZXtib3gtc2hhZG93OjAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpfS5wYWdpbmF0aW9uX19uYXZpZ2F0aW9ue2JveC1zaGFkb3c6MCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7aGVpZ2h0OjJyZW07Ym9yZGVyLXJhZGl1czo0cHg7d2lkdGg6MnJlbTttYXJnaW46LjNyZW0gMTBweH0ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbiAuaWNvbntmb250LXNpemU6MnJlbTt0cmFuc2l0aW9uOi4ycyBjdWJpYy1iZXppZXIoLjQsMCwuNiwxKTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnBhZ2luYXRpb25fX25hdmlnYXRpb24tLWRpc2FibGVke29wYWNpdHk6LjY7cG9pbnRlci1ldmVudHM6bm9uZX0ucGFnaW5hdGlvbl9fbW9yZXttYXJnaW46LjNyZW07ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDstd2Via2l0LWJveC1hbGlnbjplbmQ7LW1zLWZsZXgtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjJyZW07d2lkdGg6MnJlbX0ucGFyYWxsYXh7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6MH0ucGFyYWxsYXhfX2ltYWdlLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt6LWluZGV4OjE7Y29udGFpbjpzdHJpY3R9LnBhcmFsbGF4X19pbWFnZXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjUwJTttaW4td2lkdGg6MTAwJTttaW4taGVpZ2h0OjEwMCU7ZGlzcGxheTpub25lOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7ei1pbmRleDoxfS5wYXJhbGxheF9fY29udGVudHtjb2xvcjojZmZmO2hlaWdodDoxMDAlO3otaW5kZXg6Mjtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDFyZW19LnJhZGlvLWdyb3VwIC5pbnB1dC1ncm91cF9fZGV0YWlsczphZnRlciwucmFkaW8tZ3JvdXAgLmlucHV0LWdyb3VwX19kZXRhaWxzOmJlZm9yZXtkaXNwbGF5Om5vbmV9LnJhZGlvLWdyb3VwIC5pbnB1dC1ncm91cHtwYWRkaW5nOjB9LnJhZGlvLWdyb3VwLS1jb2x1bW4gLmlucHV0LWdyb3VwX19pbnB1dHtkaXNwbGF5OmJsb2NrfS5yYWRpby1ncm91cC0tcm93IC5pbnB1dC1ncm91cF9faW5wdXR7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30ucmFkaW8tZ3JvdXAuaW5wdXQtZ3JvdXAtLWVycm9yIC5yYWRpbyAuaWNvbi0tc2VsZWN0aW9uLWNvbnRyb2wsLnJhZGlvLWdyb3VwLmlucHV0LWdyb3VwLS1lcnJvciAucmFkaW8gbGFiZWx7Y29sb3I6aW5oZXJpdH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyIGxhYmVsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2ssLmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjay1maWxsLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2ssLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjay1maWxse2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMjYpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdGljaywuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrX19jb250YWluZXI6YWZ0ZXIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190aWNrLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2tfX2NvbnRhaW5lcjphZnRlcntib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjg3KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KSAuc2xpZGVyX190aHVtYi0tbGFiZWwsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWItLWxhYmVse2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMjYpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1ie2JvcmRlcjozcHggc29saWQgcmdiYSgwLDAsMCwuMjYpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpOmZvY3VzIC5zbGlkZXJfX3RodW1iLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpOmZvY3VzIC5zbGlkZXJfX3RodW1ie2JvcmRlcjozcHggc29saWQgcmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5zbGlkZXJfX3RodW1iLC50aGVtZS0tbGlnaHQgLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5zbGlkZXJfX3RodW1ie2JhY2tncm91bmQ6bm9uZTtib3JkZXI6M3B4IHNvbGlkIHJnYmEoMCwwLDAsLjI2KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZC5pbnB1dC1ncm91cC0tZGlydHkgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tZGlzYWJsZWQuaW5wdXQtZ3JvdXAtLWRpcnR5IC5zbGlkZXJfX3RodW1ie2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMjYpO2JvcmRlcjowIHNvbGlkIHRyYW5zcGFyZW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LmlucHV0LWdyb3VwLS1zbGlkZXI6Zm9jdXMgLnNsaWRlcl9fdHJhY2ssLnRoZW1lLS1saWdodCAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpmb2N1cyAuc2xpZGVyX190cmFja3tiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyIGxhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC43KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXIgLnNsaWRlcl9fdHJhY2ssLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrLWZpbGwsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyIC5zbGlkZXJfX3RyYWNrLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFjay1maWxse2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjIpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190aWNrLC5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVyLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190aWNrLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNsaWRlciAuc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVye2JvcmRlcjoxcHggc29saWQgI2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLS1sYWJlbCwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLS1sYWJlbHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4yKX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5zbGlkZXJfX3RodW1iLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLnNsaWRlcl9fdGh1bWJ7Ym9yZGVyOjNweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2xpZGVyOm5vdCguaW5wdXQtZ3JvdXAtLWRpcnR5KTpmb2N1cyAuc2xpZGVyX190aHVtYiwudGhlbWUtLWRhcmsgLmlucHV0LWdyb3VwLS1zbGlkZXI6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpOmZvY3VzIC5zbGlkZXJfX3RodW1ie2JvcmRlcjozcHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjMpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuc2xpZGVyX190aHVtYntiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjNweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZC5pbnB1dC1ncm91cC0tZGlydHkgLnNsaWRlcl9fdGh1bWIsLnRoZW1lLS1kYXJrIC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1kaXNhYmxlZC5pbnB1dC1ncm91cC0tZGlydHkgLnNsaWRlcl9fdGh1bWJ7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuMik7Ym9yZGVyOjAgc29saWQgdHJhbnNwYXJlbnR9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5pbnB1dC1ncm91cC0tc2xpZGVyOmZvY3VzIC5zbGlkZXJfX3RyYWNrLC50aGVtZS0tZGFyayAuaW5wdXQtZ3JvdXAtLXNsaWRlcjpmb2N1cyAuc2xpZGVyX190cmFja3tiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4zKX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlcnstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtwYWRkaW5nLXJpZ2h0OjE2cHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIgLmlucHV0LWdyb3VwX19kZXRhaWxzOmFmdGVyLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyIC5pbnB1dC1ncm91cF9fZGV0YWlsczpiZWZvcmV7ZGlzcGxheTpub25lfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyIC5pbnB1dC1ncm91cF9faW5wdXR7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSAxMDAlO2ZsZXg6MSAxIDEwMCV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWx7LXdlYmtpdC1ib3gtZmxleDowOy1tcy1mbGV4OjAgMSBhdXRvO2ZsZXg6MCAxIGF1dG87d2lkdGg6YXV0bzstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtc2l6ZToxOHB4Oy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIgbGFiZWwrLmlucHV0LWdyb3VwX19pbnB1dHttYXJnaW4tbGVmdDoxNnB4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1hY3RpdmUgLnNsaWRlcl9fdGh1bWJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjIpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMil9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuc2xpZGVyX190cmFja3t0cmFuc2l0aW9uOm5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZSAuc2xpZGVyX190aHVtYi1jb250YWluZXItLWxhYmVsIC5zbGlkZXJfX3RodW1iLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1hY3RpdmUgLnNsaWRlcl9fdGh1bWItY29udGFpbmVyLS1sYWJlbCAuc2xpZGVyX190aHVtYjpob3Zlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDApfS5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1hY3RpdmUgLnNsaWRlcl9fdGh1bWItY29udGFpbmVyLC5pbnB1dC1ncm91cC5pbnB1dC1ncm91cC0tc2xpZGVyLmlucHV0LWdyb3VwLS1hY3RpdmUgLnNsaWRlcl9fdHJhY2stZmlsbHt0cmFuc2l0aW9uOm5vbmV9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFjdGl2ZS5pbnB1dC1ncm91cC0tdGlja3MgLnNsaWRlcl9fdGljaywuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tYWN0aXZlLmlucHV0LWdyb3VwLS10aWNrcyAuc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVye29wYWNpdHk6MX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNsaWRlci5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLnNsaWRlcl9fdGh1bWJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjUpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWRpc2FibGVkLmlucHV0LWdyb3VwLS1kaXJ0eXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiAuc2xpZGVye21hcmdpbi1sZWZ0OjQwcHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zbGlkZXIuaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uIC5zbGlkZXJ7bWFyZ2luLXJpZ2h0OjQwcHh9LnNsaWRlcntjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDozMHB4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxO2ZsZXg6MTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnNsaWRlcl9fdHJhY2tfX2NvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7aGVpZ2h0OjJweDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0uc2xpZGVyX190cmFja19fY29udGFpbmVyOmFmdGVye2NvbnRlbnQ6XFxcIlxcXCI7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtoZWlnaHQ6MnB4O3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MnB4O29wYWNpdHk6MH0uc2xpZGVyX190aHVtYiwuc2xpZGVyX190aWNrLC5zbGlkZXJfX3RyYWNre3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5zbGlkZXJfX3RyYWNrey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0O292ZXJmbG93OmhpZGRlbn0uc2xpZGVyX190cmFjaywuc2xpZGVyX190cmFjay1maWxse2hlaWdodDoycHg7bGVmdDowO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6MTAwJX0uc2xpZGVyX190cmFjay1maWxse3Bvc2l0aW9uOmFic29sdXRlOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0O3RyYW5zZm9ybS1vcmlnaW46bGVmdH0uc2xpZGVyX190aWNrcy1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2hlaWdodDoycHg7d2lkdGg6MTAwJTt0b3A6NTAlO292ZXJmbG93OmhpZGRlbn0uc2xpZGVyX190aWNre3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7b3BhY2l0eTowfS5zbGlkZXJfX3RodW1iLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZX0uc2xpZGVyX190aHVtYiwuc2xpZGVyX190aHVtYi1jb250YWluZXJ7dG9wOjUwJTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS5zbGlkZXJfX3RodW1ie3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7bGVmdDotOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguOCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjgpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0uc2xpZGVyX190aHVtYi0tbGFiZWxfX2NvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7dHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXR9LnNsaWRlcl9fdGh1bWItLWxhYmVse2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTJweDtjb2xvcjojZmZmO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo1MCUgNTAlIDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotMTRweDt0b3A6LTQwcHg7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjouM3MgZWFzZS1pbi1vdXR9LnNsaWRlcl9fdGh1bWItLWxhYmVsIHNwYW57LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfS5zbGlkZXJfX3RyYWNrLC5zbGlkZXJfX3RyYWNrLWZpbGx7cG9zaXRpb246YWJzb2x1dGV9LnNuYWNre3Bvc2l0aW9uOmZpeGVkO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6I2ZmZjtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MTAwMDtmb250LXNpemU6MTRweDtsZWZ0OjA7cmlnaHQ6MH0uc25hY2stLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfS5zbmFjay0tdG9we3RvcDowfS5zbmFjay0tYm90dG9te2JvdHRvbTowfS5zbmFja19fd3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiMzMjMyMzI7cG9pbnRlci1ldmVudHM6YXV0bztib3gtc2hhZG93OjAgM3B4IDVweCAtMXB4IHJnYmEoMCwwLDAsLjIpLDAgNnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMThweCAwIHJnYmEoMCwwLDAsLjEyKX0uc25hY2tfX2NvbnRlbnQsLnNuYWNrX193cmFwcGVye2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJX0uc25hY2tfX2NvbnRlbnR7aGVpZ2h0OjQ4cHg7cGFkZGluZzoxNHB4IDI0cHg7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtvdmVyZmxvdzpoaWRkZW59LnNuYWNrX19jb250ZW50IC5idG57Y29sb3I6I2ZmZjstd2Via2l0LWJveC1mbGV4OjA7LW1zLWZsZXg6MCAwIGF1dG87ZmxleDowIDAgYXV0bzttYXJnaW46MCAwIDAgMjRweDtoZWlnaHQ6YXV0bzttaW4td2lkdGg6YXV0bzt3aWR0aDphdXRvfS5zbmFja19fY29udGVudCAuYnRuX19jb250ZW50e3BhZGRpbmc6OHB4O21hcmdpbjotOHB4fS5zbmFja19fY29udGVudCAuYnRuX19jb250ZW50OmJlZm9yZXtkaXNwbGF5Om5vbmV9LnNuYWNrLS1tdWx0aS1saW5lIC5zbmFja19fY29udGVudHtoZWlnaHQ6ODBweDtwYWRkaW5nOjI0cHh9LnNuYWNrLS12ZXJ0aWNhbCAuc25hY2tfX2NvbnRlbnR7aGVpZ2h0OjExMnB4O3BhZGRpbmc6MjRweCAyNHB4IDE0cHg7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtYWxpZ246c3RyZXRjaDstbXMtZmxleC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnNuYWNrLS12ZXJ0aWNhbCAuc25hY2tfX2NvbnRlbnQgLmJ0bi5idG57LXdlYmtpdC1ib3gtcGFjazplbmQ7LW1zLWZsZXgtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO21hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDoyNHB4fS5zbmFjay0tdmVydGljYWwgLnNuYWNrX19jb250ZW50IC5idG5fX2NvbnRlbnR7cGFkZGluZzowOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO21hcmdpbjowfS5zbmFjay0tYXV0by1oZWlnaHQgLnNuYWNrX19jb250ZW50e2hlaWdodDphdXRvfS5zbmFjay10cmFuc2l0aW9uLWVudGVyLWFjdGl2ZSwuc25hY2stdHJhbnNpdGlvbi1sZWF2ZS1hY3RpdmV7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKSwtd2Via2l0LXRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKX0uc25hY2stdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUgLnNuYWNrX19jb250ZW50LC5zbmFjay10cmFuc2l0aW9uLWxlYXZlLWFjdGl2ZSAuc25hY2tfX2NvbnRlbnR7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBsaW5lYXIgLjFzfS5zbmFjay10cmFuc2l0aW9uLWVudGVyIC5zbmFja19fY29udGVudHtvcGFjaXR5OjB9LnNuYWNrLXRyYW5zaXRpb24tZW50ZXItdG8gLnNuYWNrX19jb250ZW50LC5zbmFjay10cmFuc2l0aW9uLWxlYXZlIC5zbmFja19fY29udGVudHtvcGFjaXR5OjF9LnNuYWNrLXRyYW5zaXRpb24tZW50ZXIuc25hY2suc25hY2stLXRvcCwuc25hY2stdHJhbnNpdGlvbi1sZWF2ZS10by5zbmFjay5zbmFjay0tdG9wey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoY2FsYygtMTAwJSAtIDhweCkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKGNhbGMoLTEwMCUgLSA4cHgpKX0uc25hY2stdHJhbnNpdGlvbi1lbnRlci5zbmFjay5zbmFjay0tYm90dG9tLC5zbmFjay10cmFuc2l0aW9uLWxlYXZlLXRvLnNuYWNrLnNuYWNrLS1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMDAlKX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjAwcHgpey5zbmFja19fd3JhcHBlcnt3aWR0aDphdXRvO21heC13aWR0aDo1NjhweDttaW4td2lkdGg6Mjg4cHg7bWFyZ2luOjAgYXV0bztib3JkZXItcmFkaXVzOjJweH0uc25hY2stLWxlZnQgLnNuYWNrX193cmFwcGVye21hcmdpbi1sZWZ0OjB9LnNuYWNrLS1yaWdodCAuc25hY2tfX3dyYXBwZXJ7bWFyZ2luLXJpZ2h0OjB9LnNuYWNrLS1sZWZ0LC5zbmFjay0tcmlnaHR7bWFyZ2luOjAgMjRweH0uc25hY2stLWxlZnQuc25hY2stLXRvcCwuc25hY2stLXJpZ2h0LnNuYWNrLS10b3B7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgyNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgyNHB4KX0uc25hY2stLWxlZnQuc25hY2stLWJvdHRvbSwuc25hY2stLXJpZ2h0LnNuYWNrLS1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjRweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTI0cHgpfS5zbmFja19fY29udGVudCAuYnRuOmZpcnN0LW9mLXR5cGV7bWFyZ2luLWxlZnQ6NDhweH19LnNwZWVkLWRpYWx7cG9zaXRpb246cmVsYXRpdmV9LnNwZWVkLWRpYWwtLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlfS5zcGVlZC1kaWFsLS1maXhlZHtwb3NpdGlvbjpmaXhlZH0uc3BlZWQtZGlhbC0tYWJzb2x1dGUsLnNwZWVkLWRpYWwtLWZpeGVke3otaW5kZXg6NH0uc3BlZWQtZGlhbC0tYWJzb2x1dGU+LmJ0bi0tZmxvYXRpbmcsLnNwZWVkLWRpYWwtLWZpeGVkPi5idG4tLWZsb2F0aW5ne21hcmdpbjowfS5zcGVlZC1kaWFsLS10b3A6bm90KC5zcGVlZC1kaWFsLS1hYnNvbHV0ZSl7dG9wOjE2cHh9LnNwZWVkLWRpYWwtLXRvcC5zcGVlZC1kaWFsLS1hYnNvbHV0ZXt0b3A6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9LnNwZWVkLWRpYWwtLWJvdHRvbTpub3QoLnNwZWVkLWRpYWwtLWFic29sdXRlKXtib3R0b206MTZweH0uc3BlZWQtZGlhbC0tYm90dG9tLnNwZWVkLWRpYWwtLWFic29sdXRle2JvdHRvbTo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSg1MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDUwJSl9LnNwZWVkLWRpYWwtLWxlZnR7bGVmdDoxNnB4fS5zcGVlZC1kaWFsLS1yaWdodHtyaWdodDoxNnB4fS5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tbGVmdCAuc3BlZWQtZGlhbF9fbGlzdCwuc3BlZWQtZGlhbC0tZGlyZWN0aW9uLXJpZ2h0IC5zcGVlZC1kaWFsX19saXN0e2hlaWdodDoxMDAlO3RvcDowfS5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tYm90dG9tIC5zcGVlZC1kaWFsX19saXN0LC5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tdG9wIC5zcGVlZC1kaWFsX19saXN0e2xlZnQ6MDt3aWR0aDoxMDAlfS5zcGVlZC1kaWFsLS1kaXJlY3Rpb24tdG9wIC5zcGVlZC1kaWFsX19saXN0ey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246cmV2ZXJzZTstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2U7Ym90dG9tOjEwMCV9LnNwZWVkLWRpYWwtLWRpcmVjdGlvbi1yaWdodCAuc3BlZWQtZGlhbF9fbGlzdHstd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O2xlZnQ6MTAwJX0uc3BlZWQtZGlhbC0tZGlyZWN0aW9uLWJvdHRvbSAuc3BlZWQtZGlhbF9fbGlzdHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt0b3A6MTAwJX0uc3BlZWQtZGlhbC0tZGlyZWN0aW9uLWxlZnQgLnNwZWVkLWRpYWxfX2xpc3R7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO3JpZ2h0OjEwMCV9LnNwZWVkLWRpYWxfX2xpc3R7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlfS5zcGVlZC1kaWFsX19saXN0IC5idG46Zmlyc3QtY2hpbGR7dHJhbnNpdGlvbi1kZWxheTouMDVzfS5zcGVlZC1kaWFsX19saXN0IC5idG46bnRoLWNoaWxkKDIpe3RyYW5zaXRpb24tZGVsYXk6LjFzfS5zcGVlZC1kaWFsX19saXN0IC5idG46bnRoLWNoaWxkKDMpe3RyYW5zaXRpb24tZGVsYXk6LjE1c30uc3BlZWQtZGlhbF9fbGlzdCAuYnRuOm50aC1jaGlsZCg0KXt0cmFuc2l0aW9uLWRlbGF5Oi4yc30uc3BlZWQtZGlhbF9fbGlzdCAuYnRuOm50aC1jaGlsZCg1KXt0cmFuc2l0aW9uLWRlbGF5Oi4yNXN9LnNwZWVkLWRpYWxfX2xpc3QgLmJ0bjpudGgtY2hpbGQoNil7dHJhbnNpdGlvbi1kZWxheTouM3N9LnNwZWVkLWRpYWxfX2xpc3QgLmJ0bjpudGgtY2hpbGQoNyl7dHJhbnNpdGlvbi1kZWxheTouMzVzfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIsLnRoZW1lLS1saWdodCAuc3RlcHBlcntiYWNrZ3JvdW5kOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcDpub3QoLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAsLnRoZW1lLS1saWdodCAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcDpub3QoLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXB7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4zOCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwX19zdGVwIC5pY29uLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAsLnRoZW1lLS1saWdodCAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCAuaWNvbntjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX2hlYWRlciAuZGl2aWRlciwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19oZWFkZXIgLmRpdmlkZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tYWN0aXZlIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1hY3RpdmUgLnN0ZXBwZXJfX2xhYmVse3RleHQtc2hhZG93OjAgMCAwICMwMDB9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6aG92ZXIsLnRoZW1lLS1saWdodCAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4wNil9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tZWRpdGFibGU6aG92ZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbHt0ZXh0LXNoYWRvdzowIDAgMCAjMDAwfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSAuc3RlcHBlcl9fbGFiZWx7Y29sb3I6cmdiYSgwLDAsMCwuODcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWluYWN0aXZlLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpOmhvdmVyIC5zdGVwcGVyX19zdGVwX19zdGVwLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWluYWN0aXZlLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpOmhvdmVyIC5zdGVwcGVyX19zdGVwX19zdGVwe2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tbGlnaHQgLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVse2NvbG9yOnJnYmEoMCwwLDAsLjM4KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyLS1ub24tbGluZWFyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tY29tcGxldGUpOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpIC5zdGVwcGVyX19sYWJlbCwuYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zdGVwcGVyIC5zdGVwcGVyX19sYWJlbCBzbWFsbCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyLS1ub24tbGluZWFyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tY29tcGxldGUpOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyIC5zdGVwcGVyX19sYWJlbCBzbWFsbHtjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3RlcHBlci0tdmVydGljYWwgLnN0ZXBwZXJfX2NvbnRlbnQ6bm90KDpsYXN0LWNoaWxkKSwudGhlbWUtLWxpZ2h0IC5zdGVwcGVyLS12ZXJ0aWNhbCAuc3RlcHBlcl9fY29udGVudDpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1sZWZ0OjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMil9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyLC50aGVtZS0tZGFyayAuc3RlcHBlcntiYWNrZ3JvdW5kOiMzMDMwMzB9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19zdGVwOm5vdCguc3RlcHBlcl9fc3RlcC0tYWN0aXZlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKSAuc3RlcHBlcl9fc3RlcF9fc3RlcCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXA6bm90KC5zdGVwcGVyX19zdGVwLS1hY3RpdmUpOm5vdCguc3RlcHBlcl9fc3RlcC0tY29tcGxldGUpOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpIC5zdGVwcGVyX19zdGVwX19zdGVwe2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAgLmljb24sLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwX19zdGVwLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCAuaWNvbntjb2xvcjojZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVyLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVye2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjEyKX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWFjdGl2ZSAuc3RlcHBlcl9fbGFiZWwsLnRoZW1lLS1kYXJrIC5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1hY3RpdmUgLnN0ZXBwZXJfX2xhYmVse3RleHQtc2hhZG93OjAgMCAwICNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpob3ZlciwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVye2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjA2KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOmhvdmVyIC5zdGVwcGVyX19sYWJlbHt0ZXh0LXNoYWRvdzowIDAgMCAjZmZmfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tY29tcGxldGUgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fc3RlcC0tY29tcGxldGUgLnN0ZXBwZXJfX2xhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19zdGVwLS1pbmFjdGl2ZS5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKTpob3ZlciAuc3RlcHBlcl9fc3RlcF9fc3RlcCwudGhlbWUtLWRhcmsgLnN0ZXBwZXIgLnN0ZXBwZXJfX3N0ZXAtLWluYWN0aXZlLnN0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlOm5vdCguc3RlcHBlcl9fc3RlcC0tZXJyb3IpOmhvdmVyIC5zdGVwcGVyX19zdGVwX19zdGVwe2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjc1KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN0ZXBwZXIgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fbGFiZWx7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjUpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlci0tbm9uLWxpbmVhciAuc3RlcHBlcl9fc3RlcDpub3QoLnN0ZXBwZXJfX3N0ZXAtLWNvbXBsZXRlKTpub3QoLnN0ZXBwZXJfX3N0ZXAtLWVycm9yKSAuc3RlcHBlcl9fbGFiZWwsLmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zdGVwcGVyIC5zdGVwcGVyX19sYWJlbCBzbWFsbCwudGhlbWUtLWRhcmsgLnN0ZXBwZXItLW5vbi1saW5lYXIgLnN0ZXBwZXJfX3N0ZXA6bm90KC5zdGVwcGVyX19zdGVwLS1jb21wbGV0ZSk6bm90KC5zdGVwcGVyX19zdGVwLS1lcnJvcikgLnN0ZXBwZXJfX2xhYmVsLC50aGVtZS0tZGFyayAuc3RlcHBlciAuc3RlcHBlcl9fbGFiZWwgc21hbGx7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3RlcHBlci0tdmVydGljYWwgLnN0ZXBwZXJfX2NvbnRlbnQ6bm90KDpsYXN0LWNoaWxkKSwudGhlbWUtLWRhcmsgLnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19jb250ZW50Om5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4xMil9LnN0ZXBwZXJ7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGVwcGVyLC5zdGVwcGVyX19oZWFkZXJ7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwuMTIpfS5zdGVwcGVyX19oZWFkZXJ7aGVpZ2h0OjcycHg7LXdlYmtpdC1ib3gtYWxpZ246c3RyZXRjaDstbXMtZmxleC1hbGlnbjpzdHJldGNoO2FsaWduLWl0ZW1zOnN0cmV0Y2g7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7LXdlYmtpdC1ib3gtcGFjazpqdXN0aWZ5Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uc3RlcHBlcl9faGVhZGVyIC5kaXZpZGVyey1tcy1mbGV4LWl0ZW0tYWxpZ246Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO21hcmdpbjowIC0xNnB4fS5zdGVwcGVyX19pdGVtc3twb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LnN0ZXBwZXJfX3N0ZXBfX3N0ZXB7LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDtmb250LXNpemU6MTJweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDoyNHB4O21hcmdpbi1yaWdodDo4cHg7bWluLXdpZHRoOjI0cHg7d2lkdGg6MjRweDt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC4yNSwxKX0uc3RlcHBlcl9fc3RlcF9fc3RlcCAuaWNvbntmb250LXNpemU6MThweH0uc3RlcHBlcl9fc3RlcHstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7cGFkZGluZzoyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGVwcGVyX19zdGVwLS1hY3RpdmUgLnN0ZXBwZXJfX2xhYmVse3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguNCwwLC42LDEpfS5zdGVwcGVyX19zdGVwLS1lZGl0YWJsZXtjdXJzb3I6cG9pbnRlcn0uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fc3RlcF9fc3RlcHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOmluaGVyaXR9LnN0ZXBwZXJfX3N0ZXAuc3RlcHBlcl9fc3RlcC0tZXJyb3IgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXAgLmljb257Zm9udC1zaXplOjI0cHg7Y29sb3I6aW5oZXJpdH0uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fbGFiZWx7Y29sb3I6aW5oZXJpdDt0ZXh0LXNoYWRvdzpub25lO2ZvbnQtd2VpZ2h0OjUwMH0uc3RlcHBlcl9fc3RlcC5zdGVwcGVyX19zdGVwLS1lcnJvciAuc3RlcHBlcl9fbGFiZWwgc21hbGx7Y29sb3I6aW5oZXJpdH0uc3RlcHBlcl9fbGFiZWx7LXdlYmtpdC1ib3gtYWxpZ246c3RhcnQ7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO3RleHQtYWxpZ246bGVmdH0uc3RlcHBlcl9fbGFiZWwgc21hbGx7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6MzAwO3RleHQtc2hhZG93Om5vbmV9LnN0ZXBwZXJfX3dyYXBwZXJ7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246bm9uZX0uc3RlcHBlcl9fY29udGVudHt0b3A6MDtwYWRkaW5nOjI0cHggMjRweCAxNnB4Oy13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDAgYXV0bztmbGV4OjEgMCBhdXRvO3dpZHRoOjEwMCV9LnN0ZXBwZXJfX2NvbnRlbnQ+LmJ0bnttYXJnaW46MjRweCA4cHggOHB4IDB9LnN0ZXBwZXItLWlzLWJvb3RlZCAuc3RlcHBlcl9fY29udGVudCwuc3RlcHBlci0taXMtYm9vdGVkIC5zdGVwcGVyX193cmFwcGVye3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSl9LnN0ZXBwZXItLXZlcnRpY2Fse3BhZGRpbmctYm90dG9tOjM2cHh9LnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19jb250ZW50e21hcmdpbjotOHB4IC0zNnB4IC0xNnB4IDM2cHg7cGFkZGluZzoxNnB4IDYwcHggMTZweCAyM3B4O3dpZHRoOmF1dG99LnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19zdGVwe3BhZGRpbmc6MjRweCAyNHB4IDE2cHh9LnN0ZXBwZXItLXZlcnRpY2FsIC5zdGVwcGVyX19zdGVwX19zdGVwe21hcmdpbi1yaWdodDoxMnB4fS5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19oZWFkZXJ7aGVpZ2h0OmF1dG99LnN0ZXBwZXItLWFsdC1sYWJlbHMgLnN0ZXBwZXJfX2hlYWRlciAuZGl2aWRlcnttYXJnaW46MzVweCAtNjdweCAwOy1tcy1mbGV4LWl0ZW0tYWxpZ246c3RhcnQ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19zdGVwey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy13ZWJraXQtYm94LXBhY2s6c3RhcnQ7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToxNzVweDtmbGV4LWJhc2lzOjE3NXB4fS5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19zdGVwIHNtYWxsey1tcy1mbGV4LWl0ZW0tYWxpZ246Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyfS5zdGVwcGVyLS1hbHQtbGFiZWxzIC5zdGVwcGVyX19zdGVwX19zdGVwe21hcmdpbi1yaWdodDowO21hcmdpbi1ib3R0b206MTFweH1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTU5cHgpey5zdGVwcGVyOm5vdCguc3RlcHBlci0tdmVydGljYWwpIC5zdGVwcGVyX19sYWJlbHtkaXNwbGF5Om5vbmV9LnN0ZXBwZXI6bm90KC5zdGVwcGVyLS12ZXJ0aWNhbCkgLnN0ZXBwZXJfX3N0ZXBfX3N0ZXB7bWFyZ2luLXJpZ2h0OjB9fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lciwudGhlbWUtLWxpZ2h0IC5zd2l0Y2g6bm90KC5pbnB1dC1ncm91cC0tZGlydHkpIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXJ7Y29sb3I6cmdiYSgwLDAsMCwuMzgpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTphZnRlciwudGhlbWUtLWxpZ2h0IC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNmYWZhZmF9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6bm90KC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZSksLnRoZW1lLS1saWdodCAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6bm90KC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZSl7Y29sb3I6cmdiYSgwLDAsMCwuMzgpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmU6YWZ0ZXIsLnRoZW1lLS1saWdodCAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZSwudGhlbWUtLWxpZ2h0IC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZXtjb2xvcjpyZ2JhKDAsMCwwLC4zOCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUtLWFjdGl2ZSwudGhlbWUtLWxpZ2h0IC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZS0tYWN0aXZle2NvbG9yOmluaGVyaXR9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVyLC50aGVtZS0tbGlnaHQgLnN3aXRjaC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmQhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN3aXRjaC5pbnB1dC1ncm91cC0tZGlzYWJsZWQgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZSwudGhlbWUtLWxpZ2h0IC5zd2l0Y2guaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGV7Y29sb3I6cmdiYSgwLDAsMCwuMTIpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lciwudGhlbWUtLWRhcmsgLnN3aXRjaDpub3QoLmlucHV0LWdyb3VwLS1kaXJ0eSkgLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMykhaW1wb3J0YW50fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXIsLnRoZW1lLS1kYXJrIC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmR9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZTpub3QoLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZS0tYWN0aXZlKSwudGhlbWUtLWRhcmsgLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOm5vdCguaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmUpe2NvbG9yOmhzbGEoMCwwJSwxMDAlLC4zKX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN3aXRjaCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmU6YWZ0ZXIsLnRoZW1lLS1kYXJrIC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZS0tYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUsLnRoZW1lLS1kYXJrIC5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZS0tYWN0aXZlLC50aGVtZS0tZGFyayAuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUtLWFjdGl2ZXtjb2xvcjppbmhlcml0fS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVyLC50aGVtZS0tZGFyayAuc3dpdGNoLmlucHV0LWdyb3VwLS1kaXNhYmxlZCAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlOmFmdGVye2JhY2tncm91bmQtY29sb3I6IzQyNDI0MiFpbXBvcnRhbnR9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zd2l0Y2guaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUsLnRoZW1lLS1kYXJrIC5zd2l0Y2guaW5wdXQtZ3JvdXAtLWRpc2FibGVkIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGV7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjEpIWltcG9ydGFudH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc3t6LWluZGV4OjB9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoLmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbiBsYWJlbCwuaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2guaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbiBsYWJlbHtsZWZ0OjYycHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoLmlucHV0LWdyb3VwLS1wcmVwZW5kLWljb24gLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcnttYXJnaW4tbGVmdDo2cHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoLmlucHV0LWdyb3VwLS1hcHBlbmQtaWNvbiAuaW5wdXQtZ3JvdXBfX2FwcGVuZC1pY29ue2xlZnQ6NDBweH0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX2NvbnRhaW5lcntjb2xvcjppbmhlcml0O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjM2cHh9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXJbY2xhc3MqPVxcXCItLXRleHRcXFwiXSAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGV7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3I7Y29sb3I6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTRweDt0b3A6NTAlO2xlZnQ6MDt3aWR0aDozNHB4O2JvcmRlci1yYWRpdXM6OHB4Oy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX190b2dnbGUuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xlLS1hY3RpdmV7b3BhY2l0eTouNX0uaW5wdXQtZ3JvdXAuaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scy5zd2l0Y2ggLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3JpcHBsZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTE1cHgsLTI0cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTE1cHgsLTI0cHgpO3RyYW5zaXRpb246LjNzIGN1YmljLWJlemllciguMjUsLjgsLjI1LDEpO3otaW5kZXg6MTtsZWZ0OjB9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGU6YWZ0ZXJ7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6cG9pbnRlcjt3aWR0aDoyMHB4O2JvcmRlci1yYWRpdXM6NTAlO3RvcDo1MCU7bGVmdDo1MCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2hlaWdodDoyMHB4O2JveC1zaGFkb3c6MCAycHggNHB4IC0xcHggcmdiYSgwLDAsMCwuMiksMCA0cHggNXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMil9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIC5pbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUtLWFjdGl2ZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMnB4LC0yNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCwtMjRweCl9LmlucHV0LWdyb3VwLmlucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHMuc3dpdGNoIGxhYmVse3BhZGRpbmctbGVmdDoxNHB4fS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN5c3RlbS1iYXIsLnRoZW1lLS1saWdodCAuc3lzdGVtLWJhcntiYWNrZ3JvdW5kLWNvbG9yOiNlMGUwZTA7Y29sb3I6cmdiYSgwLDAsMCwuNTQpfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnN5c3RlbS1iYXIgLmljb24sLnRoZW1lLS1saWdodCAuc3lzdGVtLWJhciAuaWNvbntjb2xvcjpyZ2JhKDAsMCwwLC41NCl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQuc3lzdGVtLWJhci0tbGlnaHRzLW91dCwudGhlbWUtLWxpZ2h0IC5zeXN0ZW0tYmFyLS1saWdodHMtb3V0e2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjcpIWltcG9ydGFudH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnN5c3RlbS1iYXIsLnRoZW1lLS1kYXJrIC5zeXN0ZW0tYmFye2JhY2tncm91bmQtY29sb3I6IzAwMDtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zeXN0ZW0tYmFyIC5pY29uLC50aGVtZS0tZGFyayAuc3lzdGVtLWJhciAuaWNvbntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay5zeXN0ZW0tYmFyLS1saWdodHMtb3V0LC50aGVtZS0tZGFyayAuc3lzdGVtLWJhci0tbGlnaHRzLW91dHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjIpIWltcG9ydGFudH0uc3lzdGVtLWJhcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjAgOHB4fS5zeXN0ZW0tYmFyIC5pY29ue2ZvbnQtc2l6ZToxNnB4fS5zeXN0ZW0tYmFyLS1hYnNvbHV0ZSwuc3lzdGVtLWJhci0tZml4ZWR7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7ei1pbmRleDozfS5zeXN0ZW0tYmFyLS1maXhlZHtwb3NpdGlvbjpmaXhlZH0uc3lzdGVtLWJhci0tYWJzb2x1dGV7cG9zaXRpb246YWJzb2x1dGV9LnN5c3RlbS1iYXItLXN0YXR1cyAuaWNvbnttYXJnaW4tcmlnaHQ6NHB4fS5zeXN0ZW0tYmFyLS13aW5kb3cgLmljb257Zm9udC1zaXplOjIwcHg7bWFyZ2luLXJpZ2h0OjhweH0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJzX19iYXIsLnRoZW1lLS1saWdodCAudGFic19fYmFye2JhY2tncm91bmQtY29sb3I6I2ZmZn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50YWJzX19iYXIgLnRhYnNfX2RpdiwudGhlbWUtLWxpZ2h0IC50YWJzX19iYXIgLnRhYnNfX2Rpdntjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGFic19fYmFyIC50YWJzX19pdGVtLS1kaXNhYmxlZCwudGhlbWUtLWxpZ2h0IC50YWJzX19iYXIgLnRhYnNfX2l0ZW0tLWRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjI2KX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRhYnNfX2JhciwudGhlbWUtLWRhcmsgLnRhYnNfX2JhcntiYWNrZ3JvdW5kLWNvbG9yOiM0MjQyNDJ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJzX19iYXIgLnRhYnNfX2RpdiwudGhlbWUtLWRhcmsgLnRhYnNfX2JhciAudGFic19fZGl2e2NvbG9yOiNmZmZ9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50YWJzX19iYXIgLnRhYnNfX2l0ZW0tLWRpc2FibGVkLC50aGVtZS0tZGFyayAudGFic19fYmFyIC50YWJzX19pdGVtLS1kaXNhYmxlZHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMyl9LnRhYnMsLnRhYnNfX2Jhcntwb3NpdGlvbjpyZWxhdGl2ZX0udGFic19faWNvbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aWR0aDozMnB4fS50YWJzX19pY29uLS1wcmV2e2xlZnQ6NHB4fS50YWJzX19pY29uLS1uZXh0e3JpZ2h0OjRweH0udGFic19fd3JhcHBlcntvdmVyZmxvdzpoaWRkZW47Y29udGFpbjpjb250ZW50O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LnRhYnNfX3dyYXBwZXItLXNob3ctYXJyb3dze21hcmdpbi1sZWZ0OjQwcHg7bWFyZ2luLXJpZ2h0OjQwcHh9LnRhYnNfX3dyYXBwZXItLXNob3ctYXJyb3dzIC50YWJzX19jb250YWluZXItLWFsaWduLXdpdGgtdGl0bGV7cGFkZGluZy1sZWZ0OjE2cHh9LnRhYnNfX2NvbnRhaW5lcntkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2hlaWdodDo0OHB4O2xpc3Qtc3R5bGUtdHlwZTpub25lO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSksLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGN1YmljLWJlemllciguODYsMCwuMDcsMSk7d2hpdGUtc3BhY2U6bm93cmFwO3Bvc2l0aW9uOnJlbGF0aXZlfS50YWJzX19jb250YWluZXIsLnRhYnNfX2NvbnRhaW5lci0tZ3JvdyAudGFic19fZGl2LC50YWJzX19jb250YWluZXItLW92ZXJmbG93IC50YWJzX19kaXZ7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG99LnRhYnNfX2NvbnRhaW5lci0tZ3JvdyAudGFic19fZGl2e21heC13aWR0aDpub25lfS50YWJzX19jb250YWluZXItLWljb25zLWFuZC10ZXh0e2hlaWdodDo3MnB4fS50YWJzX19jb250YWluZXItLWFsaWduLXdpdGgtdGl0bGV7cGFkZGluZy1sZWZ0OjU2cHh9LnRhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQgLnRhYnNfX2RpdiwudGFic19fY29udGFpbmVyLS1maXhlZC10YWJzIC50YWJzX19kaXYsLnRhYnNfX2NvbnRhaW5lci0taWNvbnMtYW5kLXRleHQgLnRhYnNfX2RpdnttaW4td2lkdGg6NzJweH0udGFic19fY29udGFpbmVyLS1jZW50ZXJlZCAudGFic19fc2xpZGVyLXdyYXBwZXIrLnRhYnNfX2RpdiwudGFic19fY29udGFpbmVyLS1jZW50ZXJlZD4udGFic19fZGl2OmZpcnN0LWNoaWxkLC50YWJzX19jb250YWluZXItLWZpeGVkLXRhYnMgLnRhYnNfX3NsaWRlci13cmFwcGVyKy50YWJzX19kaXYsLnRhYnNfX2NvbnRhaW5lci0tZml4ZWQtdGFicz4udGFic19fZGl2OmZpcnN0LWNoaWxkLC50YWJzX19jb250YWluZXItLXJpZ2h0IC50YWJzX19zbGlkZXItd3JhcHBlcisudGFic19fZGl2LC50YWJzX19jb250YWluZXItLXJpZ2h0Pi50YWJzX19kaXY6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6YXV0b30udGFic19fY29udGFpbmVyLS1jZW50ZXJlZD4udGFic19fZGl2Omxhc3QtY2hpbGQsLnRhYnNfX2NvbnRhaW5lci0tZml4ZWQtdGFicz4udGFic19fZGl2Omxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OmF1dG99LnRhYnNfX2NvbnRhaW5lci0taWNvbnMtYW5kLXRleHQgLnRhYnNfX2l0ZW17LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpyZXZlcnNlOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0udGFic19fY29udGFpbmVyLS1pY29ucy1hbmQtdGV4dCAudGFic19faXRlbSAuaWNvbnttYXJnaW4tYm90dG9tOjZweH0udGFic19fZGl2ey1tcy1mbGV4LWFsaWduOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDowIDEgYXV0bztmbGV4OjAgMSBhdXRvO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDpub3JtYWw7aGVpZ2h0OmluaGVyaXQ7bWF4LXdpZHRoOjI2NHB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnRhYnNfX2RpdiwudGFic19faXRlbXstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS50YWJzX19pdGVtey1tcy1mbGV4LWFsaWduOmNlbnRlcjtjb2xvcjppbmhlcml0O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMTtmbGV4OjEgMTstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZToyNjRweDtmbGV4LWJhc2lzOjI2NHB4O2hlaWdodDoxMDAlOy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOmluaGVyaXQ7cGFkZGluZzo2cHggMTJweDt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3JtYWx9LnRhYnNfX2l0ZW06bm90KC50YWJzX19pdGVtLS1hY3RpdmUpe29wYWNpdHk6Ljd9LnRhYnNfX2l0ZW0tLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9LnRhYnNfX3NsaWRlcntoZWlnaHQ6MnB4O3dpZHRoOjEwMCV9LnRhYnNfX3NsaWRlci13cmFwcGVye2JvdHRvbTowO21hcmdpbjowIWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOi4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpfS50YWJzX19pdGVtc3tvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnRhYnNfX2NvbnRlbnR7d2lkdGg6MTAwJTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpO3RyYW5zaXRpb246dHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpLC13ZWJraXQtdHJhbnNmb3JtIC40cyBjdWJpYy1iZXppZXIoLjg2LDAsLjA3LDEpfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTlweCl7LnRhYnNfX3dyYXBwZXItLXNob3ctYXJyb3dzIC50YWJzX19jb250YWluZXItLWFsaWduLXdpdGgtdGl0bGV7cGFkZGluZy1sZWZ0OjI0cHh9LnRhYnNfX2NvbnRhaW5lci0tYWxpZ24td2l0aC10aXRsZXtwYWRkaW5nLWxlZnQ6NjRweH0udGFic19fY29udGFpbmVyLS1maXhlZC10YWJzIC50YWJzX19kaXZ7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMCBhdXRvO2ZsZXg6MSAwIGF1dG99fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2MDBweCl7LnRhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQgLnRhYnNfX2RpdiwudGFic19fY29udGFpbmVyLS1maXhlZC10YWJzIC50YWJzX19kaXYsLnRhYnNfX2NvbnRhaW5lci0taWNvbnMtYW5kLXRleHQgLnRhYnNfX2RpdnttaW4td2lkdGg6MTYwcHh9fS50aW1lLXBpY2tlci10aXRsZXtjb2xvcjojZmZmO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7bGluZS1oZWlnaHQ6MTstd2Via2l0LWJveC1wYWNrOmVuZDstbXMtZmxleC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnRpbWUtcGlja2VyLXRpdGxlX190aW1le3doaXRlLXNwYWNlOm5vd3JhcH0udGltZS1waWNrZXItdGl0bGVfX3RpbWUgLnBpY2tlcl9fdGl0bGVfX2J0biwudGltZS1waWNrZXItdGl0bGVfX3RpbWUgc3Bhbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4O2hlaWdodDo3MHB4O2ZvbnQtc2l6ZTo3MHB4Oy13ZWJraXQtYm94LXBhY2s6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnRpbWUtcGlja2VyLXRpdGxlX19hbXBtey1tcy1mbGV4LWl0ZW0tYWxpZ246ZW5kO2FsaWduLXNlbGY6ZmxleC1lbmQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LXNpemU6MTZweDttYXJnaW46OHB4IDAgNnB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnRpbWUtcGlja2VyLXRpdGxlX19hbXBtIGRpdjpvbmx5LWNoaWxkey13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9LnBpY2tlcl9fdGl0bGUtLWxhbmRzY2FwZSAudGltZS1waWNrZXItdGl0bGV7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJX0ucGlja2VyX190aXRsZS0tbGFuZHNjYXBlIC50aW1lLXBpY2tlci10aXRsZV9fdGltZXt0ZXh0LWFsaWduOnJpZ2h0fS5waWNrZXJfX3RpdGxlLS1sYW5kc2NhcGUgLnRpbWUtcGlja2VyLXRpdGxlX190aW1lIC5waWNrZXJfX3RpdGxlX19idG4sLnBpY2tlcl9fdGl0bGUtLWxhbmRzY2FwZSAudGltZS1waWNrZXItdGl0bGVfX3RpbWUgc3BhbntoZWlnaHQ6NTVweDtmb250LXNpemU6NTVweH0ucGlja2VyX190aXRsZS0tbGFuZHNjYXBlIC50aW1lLXBpY2tlci10aXRsZV9fYW1wbXttYXJnaW46MTZweCAwIDA7LW1zLWZsZXgtaXRlbS1hbGlnbjppbml0aWFsO2FsaWduLXNlbGY6YXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jaywudGhlbWUtLWxpZ2h0IC50aW1lLXBpY2tlci1jbG9ja3tiYWNrZ3JvdW5kOiNlMGUwZTB9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZCwudGhlbWUtLWxpZ2h0IC50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjI2KX0uYXBwbGljYXRpb24gLnRoZW1lLS1saWdodC50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVkLmFjdGl2ZSwudGhlbWUtLWxpZ2h0IC50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVkLmFjdGl2ZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuMyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGUgLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kLC50aGVtZS0tbGlnaHQgLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlIC50aW1lLXBpY2tlci1jbG9ja19faGFuZHtiYWNrZ3JvdW5kLWNvbG9yOiNiZGJkYmR9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGUgLnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmFmdGVyLC50aGVtZS0tbGlnaHQgLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlIC50aW1lLXBpY2tlci1jbG9ja19faGFuZDphZnRlcntjb2xvcjojYmRiZGJkfS5hcHBsaWNhdGlvbiAudGhlbWUtLWxpZ2h0LnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlPnNwYW4uYWN0aXZlLC50aGVtZS0tbGlnaHQgLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlPnNwYW4uYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2JkYmRiZH0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRpbWUtcGlja2VyLWNsb2NrLC50aGVtZS0tZGFyayAudGltZS1waWNrZXItY2xvY2t7YmFja2dyb3VuZDojNjE2MTYxfS5hcHBsaWNhdGlvbiAudGhlbWUtLWRhcmsudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZCwuYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRpbWUtcGlja2VyLWNsb2NrPnNwYW4uZGlzYWJsZWQuYWN0aXZlLC50aGVtZS0tZGFyayAudGltZS1waWNrZXItY2xvY2s+c3Bhbi5kaXNhYmxlZCwudGhlbWUtLWRhcmsgLnRpbWUtcGlja2VyLWNsb2NrPnNwYW4uZGlzYWJsZWQuYWN0aXZle2NvbG9yOmhzbGEoMCwwJSwxMDAlLC4zKX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlIC50aW1lLXBpY2tlci1jbG9ja19faGFuZCwudGhlbWUtLWRhcmsgLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlIC50aW1lLXBpY2tlci1jbG9ja19faGFuZHtiYWNrZ3JvdW5kLWNvbG9yOiM3NTc1NzV9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXIsLnRoZW1lLS1kYXJrIC50aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSAudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YWZ0ZXJ7Y29sb3I6Izc1NzU3NX0uYXBwbGljYXRpb24gLnRoZW1lLS1kYXJrLnRpbWUtcGlja2VyLWNsb2NrLS1pbmRldGVybWluYXRlPnNwYW4uYWN0aXZlLC50aGVtZS0tZGFyayAudGltZS1waWNrZXItY2xvY2stLWluZGV0ZXJtaW5hdGU+c3Bhbi5hY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojNzU3NTc1fS50aW1lLXBpY2tlci1jbG9ja3tib3JkZXItcmFkaXVzOjEwMCU7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjouM3MgY3ViaWMtYmV6aWVyKC4yNSwuOCwuNSwxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9LnRpbWUtcGlja2VyLWNsb2NrX19jb250YWluZXJ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MTBweH0udGltZS1waWNrZXItY2xvY2tfX2hhbmR7aGVpZ2h0OmNhbGMoNTAlIC0gMjhweCk7d2lkdGg6MnB4O2JvdHRvbTo1MCU7bGVmdDpjYWxjKDUwJSAtIDFweCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBib3R0b207dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO3Bvc2l0aW9uOmFic29sdXRlO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTt6LWluZGV4OjF9LnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmJlZm9yZXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci13aWR0aDoycHg7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDt0b3A6LTMlfS50aW1lLXBpY2tlci1jbG9ja19faGFuZDphZnRlciwudGltZS1waWNrZXItY2xvY2tfX2hhbmQ6YmVmb3Jle2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6aW5oZXJpdDtib3JkZXItcmFkaXVzOjEwMCU7Y29udGVudDpcXFwiXFxcIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9LnRpbWUtcGlja2VyLWNsb2NrX19oYW5kOmFmdGVye2hlaWdodDo4cHg7d2lkdGg6OHB4O3RvcDoxMDAlO2JhY2tncm91bmQtY29sb3I6aW5oZXJpdH0udGltZS1waWNrZXItY2xvY2s+c3Bhbnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjEwMCU7Y3Vyc29yOmRlZmF1bHQ7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtmb250LXNpemU6MTZweDstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xlZnQ6Y2FsYyg1MCUgLSA0MHB4IC8gMik7aGVpZ2h0OjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOmNhbGMoNTAlIC0gNDBweCAvIDIpO3dpZHRoOjQwcHg7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS50aW1lLXBpY2tlci1jbG9jaz5zcGFuPnNwYW57ei1pbmRleDoxfS50aW1lLXBpY2tlci1jbG9jaz5zcGFuOmFmdGVyLC50aW1lLXBpY2tlci1jbG9jaz5zcGFuOmJlZm9yZXtjb250ZW50OlxcXCJcXFwiO2JvcmRlci1yYWRpdXM6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO2hlaWdodDoxNHB4O3dpZHRoOjE0cHg7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2hlaWdodDo0MHB4O3dpZHRoOjQwcHh9LnRpbWUtcGlja2VyLWNsb2NrPnNwYW4uYWN0aXZle2NvbG9yOiNmZmY7Y3Vyc29yOmRlZmF1bHQ7ei1pbmRleDoyfS50aW1lLXBpY2tlci1jbG9jaz5zcGFuLmRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmV9LmFwcGxpY2F0aW9uIC50aGVtZS0tbGlnaHQudG9vbGJhciwudGhlbWUtLWxpZ2h0IC50b29sYmFye2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtjb2xvcjpyZ2JhKDAsMCwwLC44Nyl9LmFwcGxpY2F0aW9uIC50aGVtZS0tZGFyay50b29sYmFyLC50aGVtZS0tZGFyayAudG9vbGJhcntiYWNrZ3JvdW5kLWNvbG9yOiMyMTIxMjE7Y29sb3I6I2ZmZn0udG9vbGJhcnt0cmFuc2l0aW9uOm5vbmU7Ym94LXNoYWRvdzowIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLC4yKSwwIDRweCA1cHggMCByZ2JhKDAsMCwwLC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7d2lsbC1jaGFuZ2U6cGFkZGluZy1sZWZ0fS50b29sYmFyW2RhdGEtYm9vdGVkPXRydWVde3RyYW5zaXRpb246LjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpfS50b29sYmFyIC5pbnB1dC1ncm91cC0tc29sbyAuaW5wdXQtZ3JvdXBfX2RldGFpbHN7ZGlzcGxheTpub25lfS50b29sYmFyIC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmU6bm90KC5pbnB1dC1ncm91cC0tc29sbyl7cGFkZGluZzowfS50b29sYmFyIC5pbnB1dC1ncm91cC0tc2luZ2xlLWxpbmU6bm90KC5pbnB1dC1ncm91cC0tc29sbykgbGFiZWx7dG9wOmF1dG99LnRvb2xiYXIgLnRhYnN7d2lkdGg6MTAwJX0udG9vbGJhcl9fdGl0bGV7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wMmVtO21hcmdpbi1sZWZ0OjE2cHg7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50b29sYmFyX19jb250ZW50LC50b29sYmFyX19leHRlbnNpb257LXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleH0udG9vbGJhcl9fY29udGVudD4ubGlzdCwudG9vbGJhcl9fZXh0ZW5zaW9uPi5saXN0ey13ZWJraXQtYm94LWZsZXg6MTstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvO21hcmdpbjowIWltcG9ydGFudDttYXgtaGVpZ2h0OjEwMCV9LnRvb2xiYXJfX2NvbnRlbnQ+LmJ0bjpsYXN0LWNoaWxkLC50b29sYmFyX19jb250ZW50Pi5tZW51Omxhc3QtY2hpbGQsLnRvb2xiYXJfX2V4dGVuc2lvbj4uYnRuOmxhc3QtY2hpbGQsLnRvb2xiYXJfX2V4dGVuc2lvbj4ubWVudTpsYXN0LWNoaWxke21hcmdpbi1yaWdodDo4cHh9LnRvb2xiYXJfX2NvbnRlbnQ+LmJ0bjpmaXJzdC1jaGlsZCwudG9vbGJhcl9fY29udGVudD4ubWVudTpmaXJzdC1jaGlsZCwudG9vbGJhcl9fZXh0ZW5zaW9uPi5idG46Zmlyc3QtY2hpbGQsLnRvb2xiYXJfX2V4dGVuc2lvbj4ubWVudTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4cHh9LnRvb2xiYXJfX2NvbnRlbnQ+Om5vdCguYnRuKTpub3QoLm1lbnUpOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCksLnRvb2xiYXJfX2V4dGVuc2lvbj46bm90KC5idG4pOm5vdCgubWVudSk6Zmlyc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tbGVmdDoxNnB4fS50b29sYmFyX19jb250ZW50Pjpub3QoLmJ0bik6bm90KC5tZW51KTpsYXN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCksLnRvb2xiYXJfX2V4dGVuc2lvbj46bm90KC5idG4pOm5vdCgubWVudSk6bGFzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpe21hcmdpbi1yaWdodDoxNnB4fS50b29sYmFyX19pdGVtc3tkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O2hlaWdodDppbmhlcml0O21heC13aWR0aDoxMDAlO3BhZGRpbmc6MH0udG9vbGJhcl9faXRlbXMgLmJ0bnstd2Via2l0LWJveC1hbGlnbjpzdHJldGNoOy1tcy1mbGV4LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaH0udG9vbGJhcl9faXRlbXMgLnRvb2x0aXAsLnRvb2xiYXJfX2l0ZW1zIC50b29sdGlwPnNwYW57aGVpZ2h0OmluaGVyaXR9LnRvb2xiYXJfX2l0ZW1zIC5idG4sLnRvb2xiYXJfX2l0ZW1zIC5tZW51LC50b29sYmFyX19pdGVtcyAubWVudV9fYWN0aXZhdG9ye2hlaWdodDppbmhlcml0O21hcmdpbjowfS50b29sYmFyLS1jYXJke2JvcmRlci1yYWRpdXM6MnB4IDJweCAwIDA7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsLjIpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTQpLDAgMCAwIDAgcmdiYSgwLDAsMCwuMTIpfS50b29sYmFyLS1maXhlZHtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjJ9LnRvb2xiYXItLWFic29sdXRlLC50b29sYmFyLS1maXhlZHt0b3A6MDtsZWZ0OjB9LnRvb2xiYXItLWFic29sdXRle3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6Mn0udG9vbGJhci0tZmxvYXRpbmd7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW46MTZweDt3aWR0aDphdXRvfS50b29sYmFyLS1jbGlwcGVke3otaW5kZXg6M31AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTk5cHgpey50b29sYmFyIC50b29sYmFyX19jb250ZW50Pi5idG46bGFzdC1jaGlsZCwudG9vbGJhciAudG9vbGJhcl9fZXh0ZW5zaW9uPi5idG46bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTdweH0udG9vbGJhciAudG9vbGJhcl9fY29udGVudD4uYnRuOmZpcnN0LWNoaWxkLC50b29sYmFyIC50b29sYmFyX19leHRlbnNpb24+LmJ0bjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDoxN3B4fS50b29sYmFyIC50b29sYmFyX19jb250ZW50Pjpub3QoLmJ0bik6bm90KC5tZW51KTpmaXJzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpLC50b29sYmFyIC50b29sYmFyX19leHRlbnNpb24+Om5vdCguYnRuKTpub3QoLm1lbnUpOmZpcnN0LWNoaWxkOm5vdCg6b25seS1jaGlsZCl7bWFyZ2luLWxlZnQ6MjRweH0udG9vbGJhciAudG9vbGJhcl9fY29udGVudD46bm90KC5idG4pOm5vdCgubWVudSk6bGFzdC1jaGlsZDpub3QoOm9ubHktY2hpbGQpLC50b29sYmFyIC50b29sYmFyX19leHRlbnNpb24+Om5vdCguYnRuKTpub3QoLm1lbnUpOmxhc3QtY2hpbGQ6bm90KDpvbmx5LWNoaWxkKXttYXJnaW4tcmlnaHQ6MjRweH19LnRvb2x0aXB7cG9zaXRpb246cmVsYXRpdmV9LnRvb2x0aXBfX2NvbnRlbnR7YmFja2dyb3VuZDojNjE2MTYxO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZzo1cHggOHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtdHJhbnNmb3JtOm5vbmU7dHJhbnNpdGlvbjouMTVzIGN1YmljLWJlemllciguMjUsLjgsLjUsMSk7d2lkdGg6YXV0bztib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsLjIpLDAgMnB4IDJweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLC4xMil9LnRvb2x0aXBfX2NvbnRlbnRbY2xhc3MqPS1hY3RpdmVde3BvaW50ZXItZXZlbnRzOm5vbmV9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk1OXB4KXsudG9vbHRpcCAudG9vbHRpcF9fY29udGVudHtwYWRkaW5nOjEwcHggMTZweH19XCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG5cbi8vIGV4cG9ydHNcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXI/P3JlZi0tNi0xIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2xpYj8/cmVmLS02LTIhLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkubWluLmNzc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz8/cmVmLS02LTEhLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTYtMiEuL25vZGVfbW9kdWxlcy92dWV0aWZ5L2Rpc3QvdnVldGlmeS5taW4uY3NzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js??ref--6-1!./node_modules/postcss-loader/lib/index.js??ref--6-2!./node_modules/vuetify/dist/vuetify.min.css\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-3340127d] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/registerForm.vue\"],\"names\":[],\"mappings\":\";AAkDA;CACA,aAAA;CACA\",\"file\":\"registerForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL3JlZ2lzdGVyRm9ybS52dWU/YjQwOCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi0zMzQwMTI3ZF0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFrREE7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcInJlZ2lzdGVyRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di1sYXlvdXQgcm93IHdyYXAganVzdGlmeS1zcGFjZS1iZXR3ZWVuPlxcblxcdFxcdFxcdDx2LWZsZXggbGc1PlxcblxcdFxcdFxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHRcXHRcXHQgIG5hbWU9XFxcImZuYW1lXFxcIlxcblxcdFxcdFxcdFxcdCAgbGFiZWw9XFxcIkZpcnN0bmFtZVxcXCJcXG5cXHRcXHRcXHRcXHQgIGlkPVxcXCJmblxcXCJcXG5cXHRcXHRcXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0XFx0PC92LWZsZXg+XFxuXFx0XFx0XFx0PHYtZmxleCBsZzU+XFxuXFx0XFx0XFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdFxcdFxcdCAgbmFtZT1cXFwibG5hbWVcXFwiXFxuXFx0XFx0XFx0XFx0ICBsYWJlbD1cXFwiTGFzdCBOYW1lXFxcIlxcblxcdFxcdFxcdFxcdCAgaWQ9XFxcImxuXFxcIlxcblxcdFxcdFxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHRcXHQ8L3YtZmxleD5cXG5cXHRcXHQ8L3YtbGF5b3V0PlxcblxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcInVzZXJcXFwiXFxuXFx0XFx0ICBsYWJlbD1cXFwiVXNlcm5hbWVcXFwiXFxuXFx0XFx0ICBpZD1cXFwidW5cXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LXRleHQtZmllbGRcXG5cXHRcXHQgIG5hbWU9XFxcImVtYWlsXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIkVtYWlsXFxcIlxcblxcdFxcdCAgaWQ9XFxcImVtXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJwYXNzXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcInBzXFxcIlxcblxcdFxcdD48L3YtdGV4dC1maWVsZD5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJjb25maXJtcGFzc1xcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJDb25maXJtIFBhc3N3b3JkXFxcIlxcblxcdFxcdCAgaWQ9XFxcImNwc1xcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtYnRuPlN1Ym1pdDwvdi1idG4+XFxuXFx0PC92LWZvcm0+XFxuPC90ZW1wbGF0ZT5cXG5cXG48c2NyaXB0PlxcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAncmVnaXN0ZXJGb3JtJyxcXG5cXHR9XFxuPC9zY3JpcHQ+XFxuXFxuPHN0eWxlIHNjb3BlZD5cXG5cXHQubG9naW4ge1xcblxcdFxcdHBhZGRpbmc6IDJlbTtcXG5cXHR9XFxuPC9zdHlsZT5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\nbutton[data-v-51b0eb09] {\\n padding: 0;\\n margin: 0;\\n height: 5em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/LogIn.vue\"],\"names\":[],\"mappings\":\";AA+FA;EACC,WAAU;EACV,UAAS;EACT,YAAW;CACX\",\"file\":\"LogIn.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\theight: 5em;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NTdiMCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYnV0dG9uW2RhdGEtdi01MWIwZWIwOV0ge1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbjogMDtcXG4gIGhlaWdodDogNWVtO1xcbn1cXG5cIiwgXCJcIiwge1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wiL2hvbWUvYm9qby9EZXNrdG9wL2VBdWN0aW9uL3NyYy9jb21wb25lbnRzL0xvZ0luLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiO0FBK0ZBO0VBQ0MsV0FBVTtFQUNWLFVBQVM7RUFDVCxZQUFXO0NBQ1hcIixcImZpbGVcIjpcIkxvZ0luLnZ1ZVwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5idXR0b24ge1xcblxcdHBhZGRpbmc6IDA7XFxuXFx0bWFyZ2luOiAwO1xcblxcdGhlaWdodDogNWVtO1xcbn1cXG5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9saWIvbG9hZGVyLmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/e1wic291cmNlTWFwXCI6dHJ1ZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc3R5bGUtY29tcGlsZXIvaW5kZXguanM/e1widnVlXCI6dHJ1ZSxcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcInNjb3BlZFwiOnRydWUsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvbGliL2xvYWRlci5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-51b0eb09\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/sass-loader/lib/loader.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\nexports.push([module.i, \"@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons);\", \"\"]);\n\n// module\nexports.push([module.i, \"\\nbody {\\n\\tmargin: 0;\\n}\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n.box {\\n\\tborder: 5px solid black;\\n}\\n.columns {\\n\\tmargin: 0;\\n}\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/stylesheet/main.scss\"],\"names\":[],\"mappings\":\";AAEA;CACC,UAAU;CACV;AAGD;CACC,sBAAsB;CACtB;AAED;CACC,wBAAwB;CACxB;AAED;CACC,UAAU;CACV;AAED;CACC,UAAU;CACV,WAAW;CACX\",\"file\":\"App.vue\",\"sourcesContent\":[\"@import \\\"https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons\\\";\\n\\nbody {\\n\\tmargin: 0;\\n}\\n\\n\\n#app {\\n\\tfont-family: \\\"Roboto\\\";\\n}\\n\\n.box {\\n\\tborder: 5px solid black;\\n}\\n\\n.columns {\\n\\tmargin: 0;\\n}\\n\\n.container {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n}\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL0FwcC52dWU/NTY5ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw3MDB8TWF0ZXJpYWwrSWNvbnMpO1wiLCBcIlwiXSk7XG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuYm9keSB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4jYXBwIHtcXG5cXHRmb250LWZhbWlseTogXFxcIlJvYm90b1xcXCI7XFxufVxcbi5ib3gge1xcblxcdGJvcmRlcjogNXB4IHNvbGlkIGJsYWNrO1xcbn1cXG4uY29sdW1ucyB7XFxuXFx0bWFyZ2luOiAwO1xcbn1cXG4uY29udGFpbmVyIHtcXG5cXHRtYXJnaW46IDA7XFxuXFx0cGFkZGluZzogMDtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvc3R5bGVzaGVldC9tYWluLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQUVBO0NBQ0MsVUFBVTtDQUNWO0FBR0Q7Q0FDQyxzQkFBc0I7Q0FDdEI7QUFFRDtDQUNDLHdCQUF3QjtDQUN4QjtBQUVEO0NBQ0MsVUFBVTtDQUNWO0FBRUQ7Q0FDQyxVQUFVO0NBQ1YsV0FBVztDQUNYXCIsXCJmaWxlXCI6XCJBcHAudnVlXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIkBpbXBvcnQgXFxcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86MzAwLDQwMCw1MDAsNzAwfE1hdGVyaWFsK0ljb25zXFxcIjtcXG5cXG5ib2R5IHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcblxcbiNhcHAge1xcblxcdGZvbnQtZmFtaWx5OiBcXFwiUm9ib3RvXFxcIjtcXG59XFxuXFxuLmJveCB7XFxuXFx0Ym9yZGVyOiA1cHggc29saWQgYmxhY2s7XFxufVxcblxcbi5jb2x1bW5zIHtcXG5cXHRtYXJnaW46IDA7XFxufVxcblxcbi5jb250YWluZXIge1xcblxcdG1hcmdpbjogMDtcXG5cXHRwYWRkaW5nOiAwO1xcbn1cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcblxuLy8gZXhwb3J0c1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlcj97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlcj97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwic2NvcGVkXCI6ZmFsc2UsXCJoYXNJbmxpbmVDb25maWdcIjpmYWxzZX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT1zdHlsZXMmaW5kZXg9MCEuL3NyYy9BcHAudnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJzY29wZWRcIjpmYWxzZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-7ba5bd90\",\"scoped\":false,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("exports = module.exports = __webpack_require__(\"./node_modules/css-loader/lib/css-base.js\")(true);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.login[data-v-c576a172] {\\n\\tpadding: 2em;\\n}\\n\", \"\", {\"version\":3,\"sources\":[\"/home/bojo/Desktop/eAuction/src/components/login/src/components/login/loginForm.vue\"],\"names\":[],\"mappings\":\";AA0CA;CACA,aAAA;CACA\",\"file\":\"loginForm.vue\",\"sourcesContent\":[\"\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcz97XCJzb3VyY2VNYXBcIjp0cnVlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zdHlsZS1jb21waWxlci9pbmRleC5qcz97XCJ2dWVcIjp0cnVlLFwiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwic2NvcGVkXCI6dHJ1ZSxcImhhc0lubGluZUNvbmZpZ1wiOmZhbHNlfSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXN0eWxlcyZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9jb21wb25lbnRzL2xvZ2luL2xvZ2luRm9ybS52dWU/MzQ0MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKHRydWUpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLmxvZ2luW2RhdGEtdi1jNTc2YTE3Ml0ge1xcblxcdHBhZGRpbmc6IDJlbTtcXG59XFxuXCIsIFwiXCIsIHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIi9ob21lL2Jvam8vRGVza3RvcC9lQXVjdGlvbi9zcmMvY29tcG9uZW50cy9sb2dpbi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUEwQ0E7Q0FDQSxhQUFBO0NBQ0FcIixcImZpbGVcIjpcImxvZ2luRm9ybS52dWVcIixcInNvdXJjZXNDb250ZW50XCI6W1wiPHRlbXBsYXRlPlxcblxcdDx2LWZvcm0gY2xhc3M9XFxcImxvZ2luXFxcIj5cXG5cXHRcXHQ8di10ZXh0LWZpZWxkXFxuXFx0XFx0ICBuYW1lPVxcXCJuYW1lXFxcIlxcblxcdFxcdCAgbGFiZWw9XFxcIlVzZXJuYW1lXFxcIlxcblxcdFxcdCAgaWQ9XFxcImlkXFxcIlxcblxcdFxcdCAgdi1tb2RlbD1cXFwibmFtZVxcXCJcXG5cXHRcXHQ+PC92LXRleHQtZmllbGQ+XFxuXFx0XFx0PHYtdGV4dC1maWVsZFxcblxcdFxcdCAgbmFtZT1cXFwibmFtZVxcXCJcXG5cXHRcXHQgIGxhYmVsPVxcXCJQYXNzd29yZFxcXCJcXG5cXHRcXHQgIGlkPVxcXCJpZFxcXCJcXG5cXHRcXHQgIHYtbW9kZWw9XFxcInBhc3N3b3JkXFxcIlxcblxcdFxcdCAgOmFwcGVuZC1pY29uPVxcXCJ2aXNpYmxlID8gJ3Zpc2liaWxpdHlfb2ZmJzogJ3Zpc2liaWxpdHknXFxcIlxcbiAgICAgICAgICA6YXBwZW5kLWljb24tY2I9XFxcIigpID0+ICh2aXNpYmxlID0gIXZpc2libGUpXFxcIlxcbiAgICAgICAgICA6dHlwZT1cXFwidmlzaWJsZSA/ICd0ZXh0JzogJ3Bhc3N3b3JkJyBcXFwiXFxuXFx0XFx0Pjwvdi10ZXh0LWZpZWxkPlxcblxcdFxcdDx2LWJ0biBAY2xpY2s9XFxcImxvZ2luXFxcIj5TdWJtaXQ8L3YtYnRuPlxcblxcdDwvdi1mb3JtPlxcbjwvdGVtcGxhdGU+XFxuXFxuPHNjcmlwdD5cXG5cXHRpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXFxuXFx0aW1wb3J0IENvb2tpZXMgZnJvbSAnanMtY29va2llJ1xcblxcdGV4cG9ydCBkZWZhdWx0IHtcXG5cXHRcXHRuYW1lOiAnbG9naW5Gb3JtJyxcXG5cXHRcXHRkYXRhKCkge1xcblxcdFxcdFxcdHJldHVybiB7XFxuXFx0XFx0XFx0XFx0bmFtZTogXFxcIlxcXCIsXFxuXFx0XFx0XFx0XFx0cGFzc3dvcmQ6IFxcXCJcXFwiLFxcblxcdFxcdFxcdFxcdHZpc2libGU6IGZhbHNlLFxcblxcdFxcdFxcdH1cXG5cXHRcXHR9LFxcblxcdFxcdG1ldGhvZHM6IHtcXG5cXHRcXHRcXHRsb2dpbjogZnVuY3Rpb24oKXtcXG5cXHRcXHRcXHRcXHRcXG5cXHRcXHRcXHR9XFxuXFx0XFx0fVxcblxcdH1cXG48L3NjcmlwdD5cXG5cXG48c3R5bGUgc2NvcGVkPlxcblxcdC5sb2dpbiB7XFxuXFx0XFx0cGFkZGluZzogMmVtO1xcblxcdH1cXG48L3N0eWxlPlwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuXG4vLyBleHBvcnRzXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzP3tcInNvdXJjZU1hcFwiOnRydWV9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3N0eWxlLWNvbXBpbGVyL2luZGV4LmpzP3tcInZ1ZVwiOnRydWUsXCJpZFwiOlwiZGF0YS12LWM1NzZhMTcyXCIsXCJzY29wZWRcIjp0cnVlLFwiaGFzSW5saW5lQ29uZmlnXCI6ZmFsc2V9IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3NlbGVjdG9yLmpzP3R5cGU9c3R5bGVzJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-c576a172\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/loginForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/css-loader/lib/css-base.js": -/***/ (function(module, exports) { - -eval("/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanM/MTU5ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuXHRNSVQgTGljZW5zZSBodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocFxuXHRBdXRob3IgVG9iaWFzIEtvcHBlcnMgQHNva3JhXG4qL1xuLy8gY3NzIGJhc2UgY29kZSwgaW5qZWN0ZWQgYnkgdGhlIGNzcy1sb2FkZXJcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24odXNlU291cmNlTWFwKSB7XG5cdHZhciBsaXN0ID0gW107XG5cblx0Ly8gcmV0dXJuIHRoZSBsaXN0IG9mIG1vZHVsZXMgYXMgY3NzIHN0cmluZ1xuXHRsaXN0LnRvU3RyaW5nID0gZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG5cdFx0cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uIChpdGVtKSB7XG5cdFx0XHR2YXIgY29udGVudCA9IGNzc1dpdGhNYXBwaW5nVG9TdHJpbmcoaXRlbSwgdXNlU291cmNlTWFwKTtcblx0XHRcdGlmKGl0ZW1bMl0pIHtcblx0XHRcdFx0cmV0dXJuIFwiQG1lZGlhIFwiICsgaXRlbVsyXSArIFwie1wiICsgY29udGVudCArIFwifVwiO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIGNvbnRlbnQ7XG5cdFx0XHR9XG5cdFx0fSkuam9pbihcIlwiKTtcblx0fTtcblxuXHQvLyBpbXBvcnQgYSBsaXN0IG9mIG1vZHVsZXMgaW50byB0aGUgbGlzdFxuXHRsaXN0LmkgPSBmdW5jdGlvbihtb2R1bGVzLCBtZWRpYVF1ZXJ5KSB7XG5cdFx0aWYodHlwZW9mIG1vZHVsZXMgPT09IFwic3RyaW5nXCIpXG5cdFx0XHRtb2R1bGVzID0gW1tudWxsLCBtb2R1bGVzLCBcIlwiXV07XG5cdFx0dmFyIGFscmVhZHlJbXBvcnRlZE1vZHVsZXMgPSB7fTtcblx0XHRmb3IodmFyIGkgPSAwOyBpIDwgdGhpcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGlkID0gdGhpc1tpXVswXTtcblx0XHRcdGlmKHR5cGVvZiBpZCA9PT0gXCJudW1iZXJcIilcblx0XHRcdFx0YWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpZF0gPSB0cnVlO1xuXHRcdH1cblx0XHRmb3IoaSA9IDA7IGkgPCBtb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHR2YXIgaXRlbSA9IG1vZHVsZXNbaV07XG5cdFx0XHQvLyBza2lwIGFscmVhZHkgaW1wb3J0ZWQgbW9kdWxlXG5cdFx0XHQvLyB0aGlzIGltcGxlbWVudGF0aW9uIGlzIG5vdCAxMDAlIHBlcmZlY3QgZm9yIHdlaXJkIG1lZGlhIHF1ZXJ5IGNvbWJpbmF0aW9uc1xuXHRcdFx0Ly8gIHdoZW4gYSBtb2R1bGUgaXMgaW1wb3J0ZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBkaWZmZXJlbnQgbWVkaWEgcXVlcmllcy5cblx0XHRcdC8vICBJIGhvcGUgdGhpcyB3aWxsIG5ldmVyIG9jY3VyIChIZXkgdGhpcyB3YXkgd2UgaGF2ZSBzbWFsbGVyIGJ1bmRsZXMpXG5cdFx0XHRpZih0eXBlb2YgaXRlbVswXSAhPT0gXCJudW1iZXJcIiB8fCAhYWxyZWFkeUltcG9ydGVkTW9kdWxlc1tpdGVtWzBdXSkge1xuXHRcdFx0XHRpZihtZWRpYVF1ZXJ5ICYmICFpdGVtWzJdKSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IG1lZGlhUXVlcnk7XG5cdFx0XHRcdH0gZWxzZSBpZihtZWRpYVF1ZXJ5KSB7XG5cdFx0XHRcdFx0aXRlbVsyXSA9IFwiKFwiICsgaXRlbVsyXSArIFwiKSBhbmQgKFwiICsgbWVkaWFRdWVyeSArIFwiKVwiO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpc3QucHVzaChpdGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdH07XG5cdHJldHVybiBsaXN0O1xufTtcblxuZnVuY3Rpb24gY3NzV2l0aE1hcHBpbmdUb1N0cmluZyhpdGVtLCB1c2VTb3VyY2VNYXApIHtcblx0dmFyIGNvbnRlbnQgPSBpdGVtWzFdIHx8ICcnO1xuXHR2YXIgY3NzTWFwcGluZyA9IGl0ZW1bM107XG5cdGlmICghY3NzTWFwcGluZykge1xuXHRcdHJldHVybiBjb250ZW50O1xuXHR9XG5cblx0aWYgKHVzZVNvdXJjZU1hcCAmJiB0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdHZhciBzb3VyY2VNYXBwaW5nID0gdG9Db21tZW50KGNzc01hcHBpbmcpO1xuXHRcdHZhciBzb3VyY2VVUkxzID0gY3NzTWFwcGluZy5zb3VyY2VzLm1hcChmdW5jdGlvbiAoc291cmNlKSB7XG5cdFx0XHRyZXR1cm4gJy8qIyBzb3VyY2VVUkw9JyArIGNzc01hcHBpbmcuc291cmNlUm9vdCArIHNvdXJjZSArICcgKi8nXG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gW2NvbnRlbnRdLmNvbmNhdChzb3VyY2VVUkxzKS5jb25jYXQoW3NvdXJjZU1hcHBpbmddKS5qb2luKCdcXG4nKTtcblx0fVxuXG5cdHJldHVybiBbY29udGVudF0uam9pbignXFxuJyk7XG59XG5cbi8vIEFkYXB0ZWQgZnJvbSBjb252ZXJ0LXNvdXJjZS1tYXAgKE1JVClcbmZ1bmN0aW9uIHRvQ29tbWVudChzb3VyY2VNYXApIHtcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG5cdHZhciBiYXNlNjQgPSBidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpO1xuXHR2YXIgZGF0YSA9ICdzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwnICsgYmFzZTY0O1xuXG5cdHJldHVybiAnLyojICcgKyBkYXRhICsgJyAqLyc7XG59XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/lib/css-base.js\n"); - -/***/ }), - -/***/ "./node_modules/is-buffer/index.js": -/***/ (function(module, exports) { - -eval("/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2lzLWJ1ZmZlci9pbmRleC5qcz80NWVkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogRGV0ZXJtaW5lIGlmIGFuIG9iamVjdCBpcyBhIEJ1ZmZlclxuICpcbiAqIEBhdXRob3IgICBGZXJvc3MgQWJvdWtoYWRpamVoIDxodHRwczovL2Zlcm9zcy5vcmc+XG4gKiBAbGljZW5zZSAgTUlUXG4gKi9cblxuLy8gVGhlIF9pc0J1ZmZlciBjaGVjayBpcyBmb3IgU2FmYXJpIDUtNyBzdXBwb3J0LCBiZWNhdXNlIGl0J3MgbWlzc2luZ1xuLy8gT2JqZWN0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvci4gUmVtb3ZlIHRoaXMgZXZlbnR1YWxseVxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob2JqKSB7XG4gIHJldHVybiBvYmogIT0gbnVsbCAmJiAoaXNCdWZmZXIob2JqKSB8fCBpc1Nsb3dCdWZmZXIob2JqKSB8fCAhIW9iai5faXNCdWZmZXIpXG59XG5cbmZ1bmN0aW9uIGlzQnVmZmVyIChvYmopIHtcbiAgcmV0dXJuICEhb2JqLmNvbnN0cnVjdG9yICYmIHR5cGVvZiBvYmouY29uc3RydWN0b3IuaXNCdWZmZXIgPT09ICdmdW5jdGlvbicgJiYgb2JqLmNvbnN0cnVjdG9yLmlzQnVmZmVyKG9iailcbn1cblxuLy8gRm9yIE5vZGUgdjAuMTAgc3VwcG9ydC4gUmVtb3ZlIHRoaXMgZXZlbnR1YWxseS5cbmZ1bmN0aW9uIGlzU2xvd0J1ZmZlciAob2JqKSB7XG4gIHJldHVybiB0eXBlb2Ygb2JqLnJlYWRGbG9hdExFID09PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBvYmouc2xpY2UgPT09ICdmdW5jdGlvbicgJiYgaXNCdWZmZXIob2JqLnNsaWNlKDAsIDApKVxufVxuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvaXMtYnVmZmVyL2luZGV4LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9pcy1idWZmZXIvaW5kZXguanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/is-buffer/index.js\n"); - -/***/ }), - -/***/ "./node_modules/js-cookie/src/js.cookie.js": -/***/ (function(module, exports, __webpack_require__) { - -eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * JavaScript Cookie v2.2.0\n * https://github.com/js-cookie/js-cookie\n *\n * Copyright 2006, 2015 Klaus Hartl & Fagner Brack\n * Released under the MIT license\n */\n;(function (factory) {\n\tvar registeredInModuleLoader = false;\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (true) {\n\t\tmodule.exports = factory();\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (!registeredInModuleLoader) {\n\t\tvar OldCookies = window.Cookies;\n\t\tvar api = window.Cookies = factory();\n\t\tapi.noConflict = function () {\n\t\t\twindow.Cookies = OldCookies;\n\t\t\treturn api;\n\t\t};\n\t}\n}(function () {\n\tfunction extend () {\n\t\tvar i = 0;\n\t\tvar result = {};\n\t\tfor (; i < arguments.length; i++) {\n\t\t\tvar attributes = arguments[ i ];\n\t\t\tfor (var key in attributes) {\n\t\t\t\tresult[key] = attributes[key];\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tfunction init (converter) {\n\t\tfunction api (key, value, attributes) {\n\t\t\tvar result;\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Write\n\n\t\t\tif (arguments.length > 1) {\n\t\t\t\tattributes = extend({\n\t\t\t\t\tpath: '/'\n\t\t\t\t}, api.defaults, attributes);\n\n\t\t\t\tif (typeof attributes.expires === 'number') {\n\t\t\t\t\tvar expires = new Date();\n\t\t\t\t\texpires.setMilliseconds(expires.getMilliseconds() + attributes.expires * 864e+5);\n\t\t\t\t\tattributes.expires = expires;\n\t\t\t\t}\n\n\t\t\t\t// We're using \"expires\" because \"max-age\" is not supported by IE\n\t\t\t\tattributes.expires = attributes.expires ? attributes.expires.toUTCString() : '';\n\n\t\t\t\ttry {\n\t\t\t\t\tresult = JSON.stringify(value);\n\t\t\t\t\tif (/^[\\{\\[]/.test(result)) {\n\t\t\t\t\t\tvalue = result;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\n\t\t\t\tif (!converter.write) {\n\t\t\t\t\tvalue = encodeURIComponent(String(value))\n\t\t\t\t\t\t.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);\n\t\t\t\t} else {\n\t\t\t\t\tvalue = converter.write(value, key);\n\t\t\t\t}\n\n\t\t\t\tkey = encodeURIComponent(String(key));\n\t\t\t\tkey = key.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent);\n\t\t\t\tkey = key.replace(/[\\(\\)]/g, escape);\n\n\t\t\t\tvar stringifiedAttributes = '';\n\n\t\t\t\tfor (var attributeName in attributes) {\n\t\t\t\t\tif (!attributes[attributeName]) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tstringifiedAttributes += '; ' + attributeName;\n\t\t\t\t\tif (attributes[attributeName] === true) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tstringifiedAttributes += '=' + attributes[attributeName];\n\t\t\t\t}\n\t\t\t\treturn (document.cookie = key + '=' + value + stringifiedAttributes);\n\t\t\t}\n\n\t\t\t// Read\n\n\t\t\tif (!key) {\n\t\t\t\tresult = {};\n\t\t\t}\n\n\t\t\t// To prevent the for loop in the first place assign an empty array\n\t\t\t// in case there are no cookies at all. Also prevents odd result when\n\t\t\t// calling \"get()\"\n\t\t\tvar cookies = document.cookie ? document.cookie.split('; ') : [];\n\t\t\tvar rdecode = /(%[0-9A-Z]{2})+/g;\n\t\t\tvar i = 0;\n\n\t\t\tfor (; i < cookies.length; i++) {\n\t\t\t\tvar parts = cookies[i].split('=');\n\t\t\t\tvar cookie = parts.slice(1).join('=');\n\n\t\t\t\tif (!this.json && cookie.charAt(0) === '\"') {\n\t\t\t\t\tcookie = cookie.slice(1, -1);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvar name = parts[0].replace(rdecode, decodeURIComponent);\n\t\t\t\t\tcookie = converter.read ?\n\t\t\t\t\t\tconverter.read(cookie, name) : converter(cookie, name) ||\n\t\t\t\t\t\tcookie.replace(rdecode, decodeURIComponent);\n\n\t\t\t\t\tif (this.json) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tcookie = JSON.parse(cookie);\n\t\t\t\t\t\t} catch (e) {}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (key === name) {\n\t\t\t\t\t\tresult = cookie;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!key) {\n\t\t\t\t\t\tresult[name] = cookie;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\n\t\tapi.set = api;\n\t\tapi.get = function (key) {\n\t\t\treturn api.call(api, key);\n\t\t};\n\t\tapi.getJSON = function () {\n\t\t\treturn api.apply({\n\t\t\t\tjson: true\n\t\t\t}, [].slice.call(arguments));\n\t\t};\n\t\tapi.defaults = {};\n\n\t\tapi.remove = function (key, attributes) {\n\t\t\tapi(key, '', extend(attributes, {\n\t\t\t\texpires: -1\n\t\t\t}));\n\t\t};\n\n\t\tapi.withConverter = init;\n\n\t\treturn api;\n\t}\n\n\treturn init(function () {});\n}));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvanMtY29va2llL3NyYy9qcy5jb29raWUuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvanMtY29va2llL3NyYy9qcy5jb29raWUuanM/OTViMSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEphdmFTY3JpcHQgQ29va2llIHYyLjIuMFxuICogaHR0cHM6Ly9naXRodWIuY29tL2pzLWNvb2tpZS9qcy1jb29raWVcbiAqXG4gKiBDb3B5cmlnaHQgMjAwNiwgMjAxNSBLbGF1cyBIYXJ0bCAmIEZhZ25lciBCcmFja1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXG4gKi9cbjsoZnVuY3Rpb24gKGZhY3RvcnkpIHtcblx0dmFyIHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IGZhbHNlO1xuXHRpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKSB7XG5cdFx0ZGVmaW5lKGZhY3RvcnkpO1xuXHRcdHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IHRydWU7XG5cdH1cblx0aWYgKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jykge1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRcdHJlZ2lzdGVyZWRJbk1vZHVsZUxvYWRlciA9IHRydWU7XG5cdH1cblx0aWYgKCFyZWdpc3RlcmVkSW5Nb2R1bGVMb2FkZXIpIHtcblx0XHR2YXIgT2xkQ29va2llcyA9IHdpbmRvdy5Db29raWVzO1xuXHRcdHZhciBhcGkgPSB3aW5kb3cuQ29va2llcyA9IGZhY3RvcnkoKTtcblx0XHRhcGkubm9Db25mbGljdCA9IGZ1bmN0aW9uICgpIHtcblx0XHRcdHdpbmRvdy5Db29raWVzID0gT2xkQ29va2llcztcblx0XHRcdHJldHVybiBhcGk7XG5cdFx0fTtcblx0fVxufShmdW5jdGlvbiAoKSB7XG5cdGZ1bmN0aW9uIGV4dGVuZCAoKSB7XG5cdFx0dmFyIGkgPSAwO1xuXHRcdHZhciByZXN1bHQgPSB7fTtcblx0XHRmb3IgKDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0dmFyIGF0dHJpYnV0ZXMgPSBhcmd1bWVudHNbIGkgXTtcblx0XHRcdGZvciAodmFyIGtleSBpbiBhdHRyaWJ1dGVzKSB7XG5cdFx0XHRcdHJlc3VsdFtrZXldID0gYXR0cmlidXRlc1trZXldO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0ZnVuY3Rpb24gaW5pdCAoY29udmVydGVyKSB7XG5cdFx0ZnVuY3Rpb24gYXBpIChrZXksIHZhbHVlLCBhdHRyaWJ1dGVzKSB7XG5cdFx0XHR2YXIgcmVzdWx0O1xuXHRcdFx0aWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBXcml0ZVxuXG5cdFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA+IDEpIHtcblx0XHRcdFx0YXR0cmlidXRlcyA9IGV4dGVuZCh7XG5cdFx0XHRcdFx0cGF0aDogJy8nXG5cdFx0XHRcdH0sIGFwaS5kZWZhdWx0cywgYXR0cmlidXRlcyk7XG5cblx0XHRcdFx0aWYgKHR5cGVvZiBhdHRyaWJ1dGVzLmV4cGlyZXMgPT09ICdudW1iZXInKSB7XG5cdFx0XHRcdFx0dmFyIGV4cGlyZXMgPSBuZXcgRGF0ZSgpO1xuXHRcdFx0XHRcdGV4cGlyZXMuc2V0TWlsbGlzZWNvbmRzKGV4cGlyZXMuZ2V0TWlsbGlzZWNvbmRzKCkgKyBhdHRyaWJ1dGVzLmV4cGlyZXMgKiA4NjRlKzUpO1xuXHRcdFx0XHRcdGF0dHJpYnV0ZXMuZXhwaXJlcyA9IGV4cGlyZXM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBXZSdyZSB1c2luZyBcImV4cGlyZXNcIiBiZWNhdXNlIFwibWF4LWFnZVwiIGlzIG5vdCBzdXBwb3J0ZWQgYnkgSUVcblx0XHRcdFx0YXR0cmlidXRlcy5leHBpcmVzID0gYXR0cmlidXRlcy5leHBpcmVzID8gYXR0cmlidXRlcy5leHBpcmVzLnRvVVRDU3RyaW5nKCkgOiAnJztcblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHJlc3VsdCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcblx0XHRcdFx0XHRpZiAoL15bXFx7XFxbXS8udGVzdChyZXN1bHQpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IHJlc3VsdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cblx0XHRcdFx0aWYgKCFjb252ZXJ0ZXIud3JpdGUpIHtcblx0XHRcdFx0XHR2YWx1ZSA9IGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcodmFsdWUpKVxuXHRcdFx0XHRcdFx0LnJlcGxhY2UoLyUoMjN8MjR8MjZ8MkJ8M0F8M0N8M0V8M0R8MkZ8M0Z8NDB8NUJ8NUR8NUV8NjB8N0J8N0R8N0MpL2csIGRlY29kZVVSSUNvbXBvbmVudCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dmFsdWUgPSBjb252ZXJ0ZXIud3JpdGUodmFsdWUsIGtleSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRrZXkgPSBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGtleSkpO1xuXHRcdFx0XHRrZXkgPSBrZXkucmVwbGFjZSgvJSgyM3wyNHwyNnwyQnw1RXw2MHw3QykvZywgZGVjb2RlVVJJQ29tcG9uZW50KTtcblx0XHRcdFx0a2V5ID0ga2V5LnJlcGxhY2UoL1tcXChcXCldL2csIGVzY2FwZSk7XG5cblx0XHRcdFx0dmFyIHN0cmluZ2lmaWVkQXR0cmlidXRlcyA9ICcnO1xuXG5cdFx0XHRcdGZvciAodmFyIGF0dHJpYnV0ZU5hbWUgaW4gYXR0cmlidXRlcykge1xuXHRcdFx0XHRcdGlmICghYXR0cmlidXRlc1thdHRyaWJ1dGVOYW1lXSkge1xuXHRcdFx0XHRcdFx0Y29udGludWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHN0cmluZ2lmaWVkQXR0cmlidXRlcyArPSAnOyAnICsgYXR0cmlidXRlTmFtZTtcblx0XHRcdFx0XHRpZiAoYXR0cmlidXRlc1thdHRyaWJ1dGVOYW1lXSA9PT0gdHJ1ZSkge1xuXHRcdFx0XHRcdFx0Y29udGludWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHN0cmluZ2lmaWVkQXR0cmlidXRlcyArPSAnPScgKyBhdHRyaWJ1dGVzW2F0dHJpYnV0ZU5hbWVdO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiAoZG9jdW1lbnQuY29va2llID0ga2V5ICsgJz0nICsgdmFsdWUgKyBzdHJpbmdpZmllZEF0dHJpYnV0ZXMpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBSZWFkXG5cblx0XHRcdGlmICgha2V5KSB7XG5cdFx0XHRcdHJlc3VsdCA9IHt9O1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUbyBwcmV2ZW50IHRoZSBmb3IgbG9vcCBpbiB0aGUgZmlyc3QgcGxhY2UgYXNzaWduIGFuIGVtcHR5IGFycmF5XG5cdFx0XHQvLyBpbiBjYXNlIHRoZXJlIGFyZSBubyBjb29raWVzIGF0IGFsbC4gQWxzbyBwcmV2ZW50cyBvZGQgcmVzdWx0IHdoZW5cblx0XHRcdC8vIGNhbGxpbmcgXCJnZXQoKVwiXG5cdFx0XHR2YXIgY29va2llcyA9IGRvY3VtZW50LmNvb2tpZSA/IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOyAnKSA6IFtdO1xuXHRcdFx0dmFyIHJkZWNvZGUgPSAvKCVbMC05QS1aXXsyfSkrL2c7XG5cdFx0XHR2YXIgaSA9IDA7XG5cblx0XHRcdGZvciAoOyBpIDwgY29va2llcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0XHR2YXIgcGFydHMgPSBjb29raWVzW2ldLnNwbGl0KCc9Jyk7XG5cdFx0XHRcdHZhciBjb29raWUgPSBwYXJ0cy5zbGljZSgxKS5qb2luKCc9Jyk7XG5cblx0XHRcdFx0aWYgKCF0aGlzLmpzb24gJiYgY29va2llLmNoYXJBdCgwKSA9PT0gJ1wiJykge1xuXHRcdFx0XHRcdGNvb2tpZSA9IGNvb2tpZS5zbGljZSgxLCAtMSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHZhciBuYW1lID0gcGFydHNbMF0ucmVwbGFjZShyZGVjb2RlLCBkZWNvZGVVUklDb21wb25lbnQpO1xuXHRcdFx0XHRcdGNvb2tpZSA9IGNvbnZlcnRlci5yZWFkID9cblx0XHRcdFx0XHRcdGNvbnZlcnRlci5yZWFkKGNvb2tpZSwgbmFtZSkgOiBjb252ZXJ0ZXIoY29va2llLCBuYW1lKSB8fFxuXHRcdFx0XHRcdFx0Y29va2llLnJlcGxhY2UocmRlY29kZSwgZGVjb2RlVVJJQ29tcG9uZW50KTtcblxuXHRcdFx0XHRcdGlmICh0aGlzLmpzb24pIHtcblx0XHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRcdGNvb2tpZSA9IEpTT04ucGFyc2UoY29va2llKTtcblx0XHRcdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKGtleSA9PT0gbmFtZSkge1xuXHRcdFx0XHRcdFx0cmVzdWx0ID0gY29va2llO1xuXHRcdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKCFrZXkpIHtcblx0XHRcdFx0XHRcdHJlc3VsdFtuYW1lXSA9IGNvb2tpZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHt9XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiByZXN1bHQ7XG5cdFx0fVxuXG5cdFx0YXBpLnNldCA9IGFwaTtcblx0XHRhcGkuZ2V0ID0gZnVuY3Rpb24gKGtleSkge1xuXHRcdFx0cmV0dXJuIGFwaS5jYWxsKGFwaSwga2V5KTtcblx0XHR9O1xuXHRcdGFwaS5nZXRKU09OID0gZnVuY3Rpb24gKCkge1xuXHRcdFx0cmV0dXJuIGFwaS5hcHBseSh7XG5cdFx0XHRcdGpzb246IHRydWVcblx0XHRcdH0sIFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzKSk7XG5cdFx0fTtcblx0XHRhcGkuZGVmYXVsdHMgPSB7fTtcblxuXHRcdGFwaS5yZW1vdmUgPSBmdW5jdGlvbiAoa2V5LCBhdHRyaWJ1dGVzKSB7XG5cdFx0XHRhcGkoa2V5LCAnJywgZXh0ZW5kKGF0dHJpYnV0ZXMsIHtcblx0XHRcdFx0ZXhwaXJlczogLTFcblx0XHRcdH0pKTtcblx0XHR9O1xuXG5cdFx0YXBpLndpdGhDb252ZXJ0ZXIgPSBpbml0O1xuXG5cdFx0cmV0dXJuIGFwaTtcblx0fVxuXG5cdHJldHVybiBpbml0KGZ1bmN0aW9uICgpIHt9KTtcbn0pKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL2pzLWNvb2tpZS9zcmMvanMuY29va2llLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy9qcy1jb29raWUvc3JjL2pzLmNvb2tpZS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/js-cookie/src/js.cookie.js\n"); - -/***/ }), - -/***/ "./node_modules/process/browser.js": -/***/ (function(module, exports) { - -eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcHJvY2Vzcy9icm93c2VyLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Byb2Nlc3MvYnJvd3Nlci5qcz81YjY5Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIHNoaW0gZm9yIHVzaW5nIHByb2Nlc3MgaW4gYnJvd3NlclxudmFyIHByb2Nlc3MgPSBtb2R1bGUuZXhwb3J0cyA9IHt9O1xuXG4vLyBjYWNoZWQgZnJvbSB3aGF0ZXZlciBnbG9iYWwgaXMgcHJlc2VudCBzbyB0aGF0IHRlc3QgcnVubmVycyB0aGF0IHN0dWIgaXRcbi8vIGRvbid0IGJyZWFrIHRoaW5ncy4gIEJ1dCB3ZSBuZWVkIHRvIHdyYXAgaXQgaW4gYSB0cnkgY2F0Y2ggaW4gY2FzZSBpdCBpc1xuLy8gd3JhcHBlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIHdoaWNoIGRvZXNuJ3QgZGVmaW5lIGFueSBnbG9iYWxzLiAgSXQncyBpbnNpZGUgYVxuLy8gZnVuY3Rpb24gYmVjYXVzZSB0cnkvY2F0Y2hlcyBkZW9wdGltaXplIGluIGNlcnRhaW4gZW5naW5lcy5cblxudmFyIGNhY2hlZFNldFRpbWVvdXQ7XG52YXIgY2FjaGVkQ2xlYXJUaW1lb3V0O1xuXG5mdW5jdGlvbiBkZWZhdWx0U2V0VGltb3V0KCkge1xuICAgIHRocm93IG5ldyBFcnJvcignc2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCcpO1xufVxuZnVuY3Rpb24gZGVmYXVsdENsZWFyVGltZW91dCAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbihmdW5jdGlvbiAoKSB7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzZXRUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBkZWZhdWx0U2V0VGltb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbGVhclRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGRlZmF1bHRDbGVhclRpbWVvdXQ7XG4gICAgfVxufSAoKSlcbmZ1bmN0aW9uIHJ1blRpbWVvdXQoZnVuKSB7XG4gICAgaWYgKGNhY2hlZFNldFRpbWVvdXQgPT09IHNldFRpbWVvdXQpIHtcbiAgICAgICAgLy9ub3JtYWwgZW52aXJvbWVudHMgaW4gc2FuZSBzaXR1YXRpb25zXG4gICAgICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfVxuICAgIC8vIGlmIHNldFRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRTZXRUaW1lb3V0ID09PSBkZWZhdWx0U2V0VGltb3V0IHx8ICFjYWNoZWRTZXRUaW1lb3V0KSAmJiBzZXRUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZFNldFRpbWVvdXQgPSBzZXRUaW1lb3V0O1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0KGZ1biwgMCk7XG4gICAgfSBjYXRjaChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZFNldFRpbWVvdXQuY2FsbChudWxsLCBmdW4sIDApO1xuICAgICAgICB9IGNhdGNoKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3JcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwodGhpcywgZnVuLCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5mdW5jdGlvbiBydW5DbGVhclRpbWVvdXQobWFya2VyKSB7XG4gICAgaWYgKGNhY2hlZENsZWFyVGltZW91dCA9PT0gY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIC8vIGlmIGNsZWFyVGltZW91dCB3YXNuJ3QgYXZhaWxhYmxlIGJ1dCB3YXMgbGF0dGVyIGRlZmluZWRcbiAgICBpZiAoKGNhY2hlZENsZWFyVGltZW91dCA9PT0gZGVmYXVsdENsZWFyVGltZW91dCB8fCAhY2FjaGVkQ2xlYXJUaW1lb3V0KSAmJiBjbGVhclRpbWVvdXQpIHtcbiAgICAgICAgY2FjaGVkQ2xlYXJUaW1lb3V0ID0gY2xlYXJUaW1lb3V0O1xuICAgICAgICByZXR1cm4gY2xlYXJUaW1lb3V0KG1hcmtlcik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIC8vIHdoZW4gd2hlbiBzb21lYm9keSBoYXMgc2NyZXdlZCB3aXRoIHNldFRpbWVvdXQgYnV0IG5vIEkuRS4gbWFkZG5lc3NcbiAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gV2hlbiB3ZSBhcmUgaW4gSS5FLiBidXQgdGhlIHNjcmlwdCBoYXMgYmVlbiBldmFsZWQgc28gSS5FLiBkb2Vzbid0ICB0cnVzdCB0aGUgZ2xvYmFsIG9iamVjdCB3aGVuIGNhbGxlZCBub3JtYWxseVxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKG51bGwsIG1hcmtlcik7XG4gICAgICAgIH0gY2F0Y2ggKGUpe1xuICAgICAgICAgICAgLy8gc2FtZSBhcyBhYm92ZSBidXQgd2hlbiBpdCdzIGEgdmVyc2lvbiBvZiBJLkUuIHRoYXQgbXVzdCBoYXZlIHRoZSBnbG9iYWwgb2JqZWN0IGZvciAndGhpcycsIGhvcGZ1bGx5IG91ciBjb250ZXh0IGNvcnJlY3Qgb3RoZXJ3aXNlIGl0IHdpbGwgdGhyb3cgYSBnbG9iYWwgZXJyb3IuXG4gICAgICAgICAgICAvLyBTb21lIHZlcnNpb25zIG9mIEkuRS4gaGF2ZSBkaWZmZXJlbnQgcnVsZXMgZm9yIGNsZWFyVGltZW91dCB2cyBzZXRUaW1lb3V0XG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkQ2xlYXJUaW1lb3V0LmNhbGwodGhpcywgbWFya2VyKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbn1cbnZhciBxdWV1ZSA9IFtdO1xudmFyIGRyYWluaW5nID0gZmFsc2U7XG52YXIgY3VycmVudFF1ZXVlO1xudmFyIHF1ZXVlSW5kZXggPSAtMTtcblxuZnVuY3Rpb24gY2xlYW5VcE5leHRUaWNrKCkge1xuICAgIGlmICghZHJhaW5pbmcgfHwgIWN1cnJlbnRRdWV1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGRyYWluaW5nID0gZmFsc2U7XG4gICAgaWYgKGN1cnJlbnRRdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgcXVldWUgPSBjdXJyZW50UXVldWUuY29uY2F0KHF1ZXVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgfVxuICAgIGlmIChxdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgZHJhaW5RdWV1ZSgpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZHJhaW5RdWV1ZSgpIHtcbiAgICBpZiAoZHJhaW5pbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2YXIgdGltZW91dCA9IHJ1blRpbWVvdXQoY2xlYW5VcE5leHRUaWNrKTtcbiAgICBkcmFpbmluZyA9IHRydWU7XG5cbiAgICB2YXIgbGVuID0gcXVldWUubGVuZ3RoO1xuICAgIHdoaWxlKGxlbikge1xuICAgICAgICBjdXJyZW50UXVldWUgPSBxdWV1ZTtcbiAgICAgICAgcXVldWUgPSBbXTtcbiAgICAgICAgd2hpbGUgKCsrcXVldWVJbmRleCA8IGxlbikge1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRRdWV1ZSkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRRdWV1ZVtxdWV1ZUluZGV4XS5ydW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBxdWV1ZUluZGV4ID0gLTE7XG4gICAgICAgIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB9XG4gICAgY3VycmVudFF1ZXVlID0gbnVsbDtcbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIHJ1bkNsZWFyVGltZW91dCh0aW1lb3V0KTtcbn1cblxucHJvY2Vzcy5uZXh0VGljayA9IGZ1bmN0aW9uIChmdW4pIHtcbiAgICB2YXIgYXJncyA9IG5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoIC0gMSk7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBhcmdzW2kgLSAxXSA9IGFyZ3VtZW50c1tpXTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBxdWV1ZS5wdXNoKG5ldyBJdGVtKGZ1biwgYXJncykpO1xuICAgIGlmIChxdWV1ZS5sZW5ndGggPT09IDEgJiYgIWRyYWluaW5nKSB7XG4gICAgICAgIHJ1blRpbWVvdXQoZHJhaW5RdWV1ZSk7XG4gICAgfVxufTtcblxuLy8gdjggbGlrZXMgcHJlZGljdGlibGUgb2JqZWN0c1xuZnVuY3Rpb24gSXRlbShmdW4sIGFycmF5KSB7XG4gICAgdGhpcy5mdW4gPSBmdW47XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xufVxuSXRlbS5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuZnVuLmFwcGx5KG51bGwsIHRoaXMuYXJyYXkpO1xufTtcbnByb2Nlc3MudGl0bGUgPSAnYnJvd3Nlcic7XG5wcm9jZXNzLmJyb3dzZXIgPSB0cnVlO1xucHJvY2Vzcy5lbnYgPSB7fTtcbnByb2Nlc3MuYXJndiA9IFtdO1xucHJvY2Vzcy52ZXJzaW9uID0gJyc7IC8vIGVtcHR5IHN0cmluZyB0byBhdm9pZCByZWdleHAgaXNzdWVzXG5wcm9jZXNzLnZlcnNpb25zID0ge307XG5cbmZ1bmN0aW9uIG5vb3AoKSB7fVxuXG5wcm9jZXNzLm9uID0gbm9vcDtcbnByb2Nlc3MuYWRkTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5vbmNlID0gbm9vcDtcbnByb2Nlc3Mub2ZmID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlTGlzdGVuZXIgPSBub29wO1xucHJvY2Vzcy5yZW1vdmVBbGxMaXN0ZW5lcnMgPSBub29wO1xucHJvY2Vzcy5lbWl0ID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucHJlcGVuZE9uY2VMaXN0ZW5lciA9IG5vb3A7XG5cbnByb2Nlc3MubGlzdGVuZXJzID0gZnVuY3Rpb24gKG5hbWUpIHsgcmV0dXJuIFtdIH1cblxucHJvY2Vzcy5iaW5kaW5nID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkJyk7XG59O1xuXG5wcm9jZXNzLmN3ZCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuICcvJyB9O1xucHJvY2Vzcy5jaGRpciA9IGZ1bmN0aW9uIChkaXIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2Nlc3MuY2hkaXIgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcbnByb2Nlc3MudW1hc2sgPSBmdW5jdGlvbigpIHsgcmV0dXJuIDA7IH07XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Byb2Nlc3MvYnJvd3Nlci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/process/browser.js\n"); - -/***/ }), - -/***/ "./node_modules/vue-axios/dist/vue-axios.min.js": -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&\"function\"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?\"symbol\":typeof o};!function(){function o(e,t){if(!o.installed){if(o.installed=!0,!t)return void console.error(\"You have to install axios\");e.axios=t,Object.defineProperties(e.prototype,{axios:{get:function(){return t}},$http:{get:function(){return t}}})}}\"object\"==( false?\"undefined\":_typeof(exports))?module.exports=o: true?!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function(){return o}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)):window.Vue&&window.axios&&Vue.use(o,window.axios)}();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWUtYXhpb3MvZGlzdC92dWUtYXhpb3MubWluLmpzPzQ1ZmYiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7dmFyIF90eXBlb2Y9XCJmdW5jdGlvblwiPT10eXBlb2YgU3ltYm9sJiZcInN5bWJvbFwiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKG8pe3JldHVybiB0eXBlb2Ygb306ZnVuY3Rpb24obyl7cmV0dXJuIG8mJlwiZnVuY3Rpb25cIj09dHlwZW9mIFN5bWJvbCYmby5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmbyE9PVN5bWJvbC5wcm90b3R5cGU/XCJzeW1ib2xcIjp0eXBlb2Ygb307IWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbyhlLHQpe2lmKCFvLmluc3RhbGxlZCl7aWYoby5pbnN0YWxsZWQ9ITAsIXQpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcihcIllvdSBoYXZlIHRvIGluc3RhbGwgYXhpb3NcIik7ZS5heGlvcz10LE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGUucHJvdG90eXBlLHtheGlvczp7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHR9fSwkaHR0cDp7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHR9fX0pfX1cIm9iamVjdFwiPT0oXCJ1bmRlZmluZWRcIj09dHlwZW9mIGV4cG9ydHM/XCJ1bmRlZmluZWRcIjpfdHlwZW9mKGV4cG9ydHMpKT9tb2R1bGUuZXhwb3J0cz1vOlwiZnVuY3Rpb25cIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sZnVuY3Rpb24oKXtyZXR1cm4gb30pOndpbmRvdy5WdWUmJndpbmRvdy5heGlvcyYmVnVlLnVzZShvLHdpbmRvdy5heGlvcyl9KCk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWF4aW9zL2Rpc3QvdnVlLWF4aW9zLm1pbi5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-axios/dist/vue-axios.min.js\n"); - -/***/ }), - -/***/ "./node_modules/vue-hot-reload-api/dist/index.js": -/***/ (function(module, exports) { - -eval("var Vue // late bind\nvar version\nvar map = (window.__VUE_HOT_MAP__ = Object.create(null))\nvar installed = false\nvar isBrowserify = false\nvar initHookName = 'beforeCreate'\n\nexports.install = function (vue, browserify) {\n if (installed) { return }\n installed = true\n\n Vue = vue.__esModule ? vue.default : vue\n version = Vue.version.split('.').map(Number)\n isBrowserify = browserify\n\n // compat with < 2.0.0-alpha.7\n if (Vue.config._lifecycleHooks.indexOf('init') > -1) {\n initHookName = 'init'\n }\n\n exports.compatible = version[0] >= 2\n if (!exports.compatible) {\n console.warn(\n '[HMR] You are using a version of vue-hot-reload-api that is ' +\n 'only compatible with Vue.js core ^2.0.0.'\n )\n return\n }\n}\n\n/**\n * Create a record for a hot module, which keeps track of its constructor\n * and instances\n *\n * @param {String} id\n * @param {Object} options\n */\n\nexports.createRecord = function (id, options) {\n if(map[id]) { return }\n \n var Ctor = null\n if (typeof options === 'function') {\n Ctor = options\n options = Ctor.options\n }\n makeOptionsHot(id, options)\n map[id] = {\n Ctor: Ctor,\n options: options,\n instances: []\n }\n}\n\n/**\n * Check if module is recorded\n *\n * @param {String} id\n */\n\nexports.isRecorded = function (id) {\n return typeof map[id] !== 'undefined'\n}\n\n/**\n * Make a Component options object hot.\n *\n * @param {String} id\n * @param {Object} options\n */\n\nfunction makeOptionsHot(id, options) {\n if (options.functional) {\n var render = options.render\n options.render = function (h, ctx) {\n var instances = map[id].instances\n if (ctx && instances.indexOf(ctx.parent) < 0) {\n instances.push(ctx.parent)\n }\n return render(h, ctx)\n }\n } else {\n injectHook(options, initHookName, function() {\n var record = map[id]\n if (!record.Ctor) {\n record.Ctor = this.constructor\n }\n record.instances.push(this)\n })\n injectHook(options, 'beforeDestroy', function() {\n var instances = map[id].instances\n instances.splice(instances.indexOf(this), 1)\n })\n }\n}\n\n/**\n * Inject a hook to a hot reloadable component so that\n * we can keep track of it.\n *\n * @param {Object} options\n * @param {String} name\n * @param {Function} hook\n */\n\nfunction injectHook(options, name, hook) {\n var existing = options[name]\n options[name] = existing\n ? Array.isArray(existing) ? existing.concat(hook) : [existing, hook]\n : [hook]\n}\n\nfunction tryWrap(fn) {\n return function (id, arg) {\n try {\n fn(id, arg)\n } catch (e) {\n console.error(e)\n console.warn(\n 'Something went wrong during Vue component hot-reload. Full reload required.'\n )\n }\n }\n}\n\nfunction updateOptions (oldOptions, newOptions) {\n for (var key in oldOptions) {\n if (!(key in newOptions)) {\n delete oldOptions[key]\n }\n }\n for (var key$1 in newOptions) {\n oldOptions[key$1] = newOptions[key$1]\n }\n}\n\nexports.rerender = tryWrap(function (id, options) {\n var record = map[id]\n if (!options) {\n record.instances.slice().forEach(function (instance) {\n instance.$forceUpdate()\n })\n return\n }\n if (typeof options === 'function') {\n options = options.options\n }\n if (record.Ctor) {\n record.Ctor.options.render = options.render\n record.Ctor.options.staticRenderFns = options.staticRenderFns\n record.instances.slice().forEach(function (instance) {\n instance.$options.render = options.render\n instance.$options.staticRenderFns = options.staticRenderFns\n // reset static trees\n // pre 2.5, all static trees are cahced together on the instance\n if (instance._staticTrees) {\n instance._staticTrees = []\n }\n // 2.5.0\n if (Array.isArray(record.Ctor.options.cached)) {\n record.Ctor.options.cached = []\n }\n // 2.5.3\n if (Array.isArray(instance.$options.cached)) {\n instance.$options.cached = []\n }\n // post 2.5.4: v-once trees are cached on instance._staticTrees.\n // Pure static trees are cached on the staticRenderFns array\n // (both already reset above)\n instance.$forceUpdate()\n })\n } else {\n // functional or no instance created yet\n record.options.render = options.render\n record.options.staticRenderFns = options.staticRenderFns\n\n // handle functional component re-render\n if (record.options.functional) {\n // rerender with full options\n if (Object.keys(options).length > 2) {\n updateOptions(record.options, options)\n } else {\n // template-only rerender.\n // need to inject the style injection code for CSS modules\n // to work properly.\n var injectStyles = record.options._injectStyles\n if (injectStyles) {\n var render = options.render\n record.options.render = function (h, ctx) {\n injectStyles.call(ctx)\n return render(h, ctx)\n }\n }\n }\n record.options._Ctor = null\n // 2.5.3\n if (Array.isArray(record.options.cached)) {\n record.options.cached = []\n }\n record.instances.slice().forEach(function (instance) {\n instance.$forceUpdate()\n })\n }\n }\n})\n\nexports.reload = tryWrap(function (id, options) {\n var record = map[id]\n if (options) {\n if (typeof options === 'function') {\n options = options.options\n }\n makeOptionsHot(id, options)\n if (record.Ctor) {\n if (version[1] < 2) {\n // preserve pre 2.2 behavior for global mixin handling\n record.Ctor.extendOptions = options\n }\n var newCtor = record.Ctor.super.extend(options)\n record.Ctor.options = newCtor.options\n record.Ctor.cid = newCtor.cid\n record.Ctor.prototype = newCtor.prototype\n if (newCtor.release) {\n // temporary global mixin strategy used in < 2.0.0-alpha.6\n newCtor.release()\n }\n } else {\n updateOptions(record.options, options)\n }\n }\n record.instances.slice().forEach(function (instance) {\n if (instance.$vnode && instance.$vnode.context) {\n instance.$vnode.context.$forceUpdate()\n } else {\n console.warn(\n 'Root or manually mounted instance modified. Full reload required.'\n )\n }\n })\n})\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanM/NzM3ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgVnVlIC8vIGxhdGUgYmluZFxudmFyIHZlcnNpb25cbnZhciBtYXAgPSAod2luZG93Ll9fVlVFX0hPVF9NQVBfXyA9IE9iamVjdC5jcmVhdGUobnVsbCkpXG52YXIgaW5zdGFsbGVkID0gZmFsc2VcbnZhciBpc0Jyb3dzZXJpZnkgPSBmYWxzZVxudmFyIGluaXRIb29rTmFtZSA9ICdiZWZvcmVDcmVhdGUnXG5cbmV4cG9ydHMuaW5zdGFsbCA9IGZ1bmN0aW9uICh2dWUsIGJyb3dzZXJpZnkpIHtcbiAgaWYgKGluc3RhbGxlZCkgeyByZXR1cm4gfVxuICBpbnN0YWxsZWQgPSB0cnVlXG5cbiAgVnVlID0gdnVlLl9fZXNNb2R1bGUgPyB2dWUuZGVmYXVsdCA6IHZ1ZVxuICB2ZXJzaW9uID0gVnVlLnZlcnNpb24uc3BsaXQoJy4nKS5tYXAoTnVtYmVyKVxuICBpc0Jyb3dzZXJpZnkgPSBicm93c2VyaWZ5XG5cbiAgLy8gY29tcGF0IHdpdGggPCAyLjAuMC1hbHBoYS43XG4gIGlmIChWdWUuY29uZmlnLl9saWZlY3ljbGVIb29rcy5pbmRleE9mKCdpbml0JykgPiAtMSkge1xuICAgIGluaXRIb29rTmFtZSA9ICdpbml0J1xuICB9XG5cbiAgZXhwb3J0cy5jb21wYXRpYmxlID0gdmVyc2lvblswXSA+PSAyXG4gIGlmICghZXhwb3J0cy5jb21wYXRpYmxlKSB7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ1tITVJdIFlvdSBhcmUgdXNpbmcgYSB2ZXJzaW9uIG9mIHZ1ZS1ob3QtcmVsb2FkLWFwaSB0aGF0IGlzICcgK1xuICAgICAgICAnb25seSBjb21wYXRpYmxlIHdpdGggVnVlLmpzIGNvcmUgXjIuMC4wLidcbiAgICApXG4gICAgcmV0dXJuXG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGUgYSByZWNvcmQgZm9yIGEgaG90IG1vZHVsZSwgd2hpY2gga2VlcHMgdHJhY2sgb2YgaXRzIGNvbnN0cnVjdG9yXG4gKiBhbmQgaW5zdGFuY2VzXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGlkXG4gKiBAcGFyYW0ge09iamVjdH0gb3B0aW9uc1xuICovXG5cbmV4cG9ydHMuY3JlYXRlUmVjb3JkID0gZnVuY3Rpb24gKGlkLCBvcHRpb25zKSB7XG4gIGlmKG1hcFtpZF0pIHsgcmV0dXJuIH1cbiAgXG4gIHZhciBDdG9yID0gbnVsbFxuICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBDdG9yID0gb3B0aW9uc1xuICAgIG9wdGlvbnMgPSBDdG9yLm9wdGlvbnNcbiAgfVxuICBtYWtlT3B0aW9uc0hvdChpZCwgb3B0aW9ucylcbiAgbWFwW2lkXSA9IHtcbiAgICBDdG9yOiBDdG9yLFxuICAgIG9wdGlvbnM6IG9wdGlvbnMsXG4gICAgaW5zdGFuY2VzOiBbXVxuICB9XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgbW9kdWxlIGlzIHJlY29yZGVkXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGlkXG4gKi9cblxuZXhwb3J0cy5pc1JlY29yZGVkID0gZnVuY3Rpb24gKGlkKSB7XG4gIHJldHVybiB0eXBlb2YgbWFwW2lkXSAhPT0gJ3VuZGVmaW5lZCdcbn1cblxuLyoqXG4gKiBNYWtlIGEgQ29tcG9uZW50IG9wdGlvbnMgb2JqZWN0IGhvdC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaWRcbiAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gKi9cblxuZnVuY3Rpb24gbWFrZU9wdGlvbnNIb3QoaWQsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgIHZhciByZW5kZXIgPSBvcHRpb25zLnJlbmRlclxuICAgIG9wdGlvbnMucmVuZGVyID0gZnVuY3Rpb24gKGgsIGN0eCkge1xuICAgICAgdmFyIGluc3RhbmNlcyA9IG1hcFtpZF0uaW5zdGFuY2VzXG4gICAgICBpZiAoY3R4ICYmIGluc3RhbmNlcy5pbmRleE9mKGN0eC5wYXJlbnQpIDwgMCkge1xuICAgICAgICBpbnN0YW5jZXMucHVzaChjdHgucGFyZW50KVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJlbmRlcihoLCBjdHgpXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGluamVjdEhvb2sob3B0aW9ucywgaW5pdEhvb2tOYW1lLCBmdW5jdGlvbigpIHtcbiAgICAgIHZhciByZWNvcmQgPSBtYXBbaWRdXG4gICAgICBpZiAoIXJlY29yZC5DdG9yKSB7XG4gICAgICAgIHJlY29yZC5DdG9yID0gdGhpcy5jb25zdHJ1Y3RvclxuICAgICAgfVxuICAgICAgcmVjb3JkLmluc3RhbmNlcy5wdXNoKHRoaXMpXG4gICAgfSlcbiAgICBpbmplY3RIb29rKG9wdGlvbnMsICdiZWZvcmVEZXN0cm95JywgZnVuY3Rpb24oKSB7XG4gICAgICB2YXIgaW5zdGFuY2VzID0gbWFwW2lkXS5pbnN0YW5jZXNcbiAgICAgIGluc3RhbmNlcy5zcGxpY2UoaW5zdGFuY2VzLmluZGV4T2YodGhpcyksIDEpXG4gICAgfSlcbiAgfVxufVxuXG4vKipcbiAqIEluamVjdCBhIGhvb2sgdG8gYSBob3QgcmVsb2FkYWJsZSBjb21wb25lbnQgc28gdGhhdFxuICogd2UgY2FuIGtlZXAgdHJhY2sgb2YgaXQuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnNcbiAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBob29rXG4gKi9cblxuZnVuY3Rpb24gaW5qZWN0SG9vayhvcHRpb25zLCBuYW1lLCBob29rKSB7XG4gIHZhciBleGlzdGluZyA9IG9wdGlvbnNbbmFtZV1cbiAgb3B0aW9uc1tuYW1lXSA9IGV4aXN0aW5nXG4gICAgPyBBcnJheS5pc0FycmF5KGV4aXN0aW5nKSA/IGV4aXN0aW5nLmNvbmNhdChob29rKSA6IFtleGlzdGluZywgaG9va11cbiAgICA6IFtob29rXVxufVxuXG5mdW5jdGlvbiB0cnlXcmFwKGZuKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoaWQsIGFyZykge1xuICAgIHRyeSB7XG4gICAgICBmbihpZCwgYXJnKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSlcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ1NvbWV0aGluZyB3ZW50IHdyb25nIGR1cmluZyBWdWUgY29tcG9uZW50IGhvdC1yZWxvYWQuIEZ1bGwgcmVsb2FkIHJlcXVpcmVkLidcbiAgICAgIClcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdXBkYXRlT3B0aW9ucyAob2xkT3B0aW9ucywgbmV3T3B0aW9ucykge1xuICBmb3IgKHZhciBrZXkgaW4gb2xkT3B0aW9ucykge1xuICAgIGlmICghKGtleSBpbiBuZXdPcHRpb25zKSkge1xuICAgICAgZGVsZXRlIG9sZE9wdGlvbnNba2V5XVxuICAgIH1cbiAgfVxuICBmb3IgKHZhciBrZXkkMSBpbiBuZXdPcHRpb25zKSB7XG4gICAgb2xkT3B0aW9uc1trZXkkMV0gPSBuZXdPcHRpb25zW2tleSQxXVxuICB9XG59XG5cbmV4cG9ydHMucmVyZW5kZXIgPSB0cnlXcmFwKGZ1bmN0aW9uIChpZCwgb3B0aW9ucykge1xuICB2YXIgcmVjb3JkID0gbWFwW2lkXVxuICBpZiAoIW9wdGlvbnMpIHtcbiAgICByZWNvcmQuaW5zdGFuY2VzLnNsaWNlKCkuZm9yRWFjaChmdW5jdGlvbiAoaW5zdGFuY2UpIHtcbiAgICAgIGluc3RhbmNlLiRmb3JjZVVwZGF0ZSgpXG4gICAgfSlcbiAgICByZXR1cm5cbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucy5vcHRpb25zXG4gIH1cbiAgaWYgKHJlY29yZC5DdG9yKSB7XG4gICAgcmVjb3JkLkN0b3Iub3B0aW9ucy5yZW5kZXIgPSBvcHRpb25zLnJlbmRlclxuICAgIHJlY29yZC5DdG9yLm9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNcbiAgICByZWNvcmQuaW5zdGFuY2VzLnNsaWNlKCkuZm9yRWFjaChmdW5jdGlvbiAoaW5zdGFuY2UpIHtcbiAgICAgIGluc3RhbmNlLiRvcHRpb25zLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyXG4gICAgICBpbnN0YW5jZS4kb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnMgPSBvcHRpb25zLnN0YXRpY1JlbmRlckZuc1xuICAgICAgLy8gcmVzZXQgc3RhdGljIHRyZWVzXG4gICAgICAvLyBwcmUgMi41LCBhbGwgc3RhdGljIHRyZWVzIGFyZSBjYWhjZWQgdG9nZXRoZXIgb24gdGhlIGluc3RhbmNlXG4gICAgICBpZiAoaW5zdGFuY2UuX3N0YXRpY1RyZWVzKSB7XG4gICAgICAgIGluc3RhbmNlLl9zdGF0aWNUcmVlcyA9IFtdXG4gICAgICB9XG4gICAgICAvLyAyLjUuMFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVjb3JkLkN0b3Iub3B0aW9ucy5jYWNoZWQpKSB7XG4gICAgICAgIHJlY29yZC5DdG9yLm9wdGlvbnMuY2FjaGVkID0gW11cbiAgICAgIH1cbiAgICAgIC8vIDIuNS4zXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShpbnN0YW5jZS4kb3B0aW9ucy5jYWNoZWQpKSB7XG4gICAgICAgIGluc3RhbmNlLiRvcHRpb25zLmNhY2hlZCA9IFtdXG4gICAgICB9XG4gICAgICAvLyBwb3N0IDIuNS40OiB2LW9uY2UgdHJlZXMgYXJlIGNhY2hlZCBvbiBpbnN0YW5jZS5fc3RhdGljVHJlZXMuXG4gICAgICAvLyBQdXJlIHN0YXRpYyB0cmVlcyBhcmUgY2FjaGVkIG9uIHRoZSBzdGF0aWNSZW5kZXJGbnMgYXJyYXlcbiAgICAgIC8vIChib3RoIGFscmVhZHkgcmVzZXQgYWJvdmUpXG4gICAgICBpbnN0YW5jZS4kZm9yY2VVcGRhdGUoKVxuICAgIH0pXG4gIH0gZWxzZSB7XG4gICAgLy8gZnVuY3Rpb25hbCBvciBubyBpbnN0YW5jZSBjcmVhdGVkIHlldFxuICAgIHJlY29yZC5vcHRpb25zLnJlbmRlciA9IG9wdGlvbnMucmVuZGVyXG4gICAgcmVjb3JkLm9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gb3B0aW9ucy5zdGF0aWNSZW5kZXJGbnNcblxuICAgIC8vIGhhbmRsZSBmdW5jdGlvbmFsIGNvbXBvbmVudCByZS1yZW5kZXJcbiAgICBpZiAocmVjb3JkLm9wdGlvbnMuZnVuY3Rpb25hbCkge1xuICAgICAgLy8gcmVyZW5kZXIgd2l0aCBmdWxsIG9wdGlvbnNcbiAgICAgIGlmIChPYmplY3Qua2V5cyhvcHRpb25zKS5sZW5ndGggPiAyKSB7XG4gICAgICAgIHVwZGF0ZU9wdGlvbnMocmVjb3JkLm9wdGlvbnMsIG9wdGlvbnMpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyB0ZW1wbGF0ZS1vbmx5IHJlcmVuZGVyLlxuICAgICAgICAvLyBuZWVkIHRvIGluamVjdCB0aGUgc3R5bGUgaW5qZWN0aW9uIGNvZGUgZm9yIENTUyBtb2R1bGVzXG4gICAgICAgIC8vIHRvIHdvcmsgcHJvcGVybHkuXG4gICAgICAgIHZhciBpbmplY3RTdHlsZXMgPSByZWNvcmQub3B0aW9ucy5faW5qZWN0U3R5bGVzXG4gICAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgICB2YXIgcmVuZGVyID0gb3B0aW9ucy5yZW5kZXJcbiAgICAgICAgICByZWNvcmQub3B0aW9ucy5yZW5kZXIgPSBmdW5jdGlvbiAoaCwgY3R4KSB7XG4gICAgICAgICAgICBpbmplY3RTdHlsZXMuY2FsbChjdHgpXG4gICAgICAgICAgICByZXR1cm4gcmVuZGVyKGgsIGN0eClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJlY29yZC5vcHRpb25zLl9DdG9yID0gbnVsbFxuICAgICAgLy8gMi41LjNcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlY29yZC5vcHRpb25zLmNhY2hlZCkpIHtcbiAgICAgICAgcmVjb3JkLm9wdGlvbnMuY2FjaGVkID0gW11cbiAgICAgIH1cbiAgICAgIHJlY29yZC5pbnN0YW5jZXMuc2xpY2UoKS5mb3JFYWNoKGZ1bmN0aW9uIChpbnN0YW5jZSkge1xuICAgICAgICBpbnN0YW5jZS4kZm9yY2VVcGRhdGUoKVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn0pXG5cbmV4cG9ydHMucmVsb2FkID0gdHJ5V3JhcChmdW5jdGlvbiAoaWQsIG9wdGlvbnMpIHtcbiAgdmFyIHJlY29yZCA9IG1hcFtpZF1cbiAgaWYgKG9wdGlvbnMpIHtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIG9wdGlvbnMgPSBvcHRpb25zLm9wdGlvbnNcbiAgICB9XG4gICAgbWFrZU9wdGlvbnNIb3QoaWQsIG9wdGlvbnMpXG4gICAgaWYgKHJlY29yZC5DdG9yKSB7XG4gICAgICBpZiAodmVyc2lvblsxXSA8IDIpIHtcbiAgICAgICAgLy8gcHJlc2VydmUgcHJlIDIuMiBiZWhhdmlvciBmb3IgZ2xvYmFsIG1peGluIGhhbmRsaW5nXG4gICAgICAgIHJlY29yZC5DdG9yLmV4dGVuZE9wdGlvbnMgPSBvcHRpb25zXG4gICAgICB9XG4gICAgICB2YXIgbmV3Q3RvciA9IHJlY29yZC5DdG9yLnN1cGVyLmV4dGVuZChvcHRpb25zKVxuICAgICAgcmVjb3JkLkN0b3Iub3B0aW9ucyA9IG5ld0N0b3Iub3B0aW9uc1xuICAgICAgcmVjb3JkLkN0b3IuY2lkID0gbmV3Q3Rvci5jaWRcbiAgICAgIHJlY29yZC5DdG9yLnByb3RvdHlwZSA9IG5ld0N0b3IucHJvdG90eXBlXG4gICAgICBpZiAobmV3Q3Rvci5yZWxlYXNlKSB7XG4gICAgICAgIC8vIHRlbXBvcmFyeSBnbG9iYWwgbWl4aW4gc3RyYXRlZ3kgdXNlZCBpbiA8IDIuMC4wLWFscGhhLjZcbiAgICAgICAgbmV3Q3Rvci5yZWxlYXNlKClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdXBkYXRlT3B0aW9ucyhyZWNvcmQub3B0aW9ucywgb3B0aW9ucylcbiAgICB9XG4gIH1cbiAgcmVjb3JkLmluc3RhbmNlcy5zbGljZSgpLmZvckVhY2goZnVuY3Rpb24gKGluc3RhbmNlKSB7XG4gICAgaWYgKGluc3RhbmNlLiR2bm9kZSAmJiBpbnN0YW5jZS4kdm5vZGUuY29udGV4dCkge1xuICAgICAgaW5zdGFuY2UuJHZub2RlLmNvbnRleHQuJGZvcmNlVXBkYXRlKClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnUm9vdCBvciBtYW51YWxseSBtb3VudGVkIGluc3RhbmNlIG1vZGlmaWVkLiBGdWxsIHJlbG9hZCByZXF1aXJlZC4nXG4gICAgICApXG4gICAgfVxuICB9KVxufSlcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1ob3QtcmVsb2FkLWFwaS9kaXN0L2luZGV4LmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtaG90LXJlbG9hZC1hcGkvZGlzdC9pbmRleC5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vue-hot-reload-api/dist/index.js\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/component-normalizer.js": -/***/ (function(module, exports) { - -eval("/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvY29tcG9uZW50LW5vcm1hbGl6ZXIuanM/NTU0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBnbG9iYWxzIF9fVlVFX1NTUl9DT05URVhUX18gKi9cblxuLy8gSU1QT1JUQU5UOiBEbyBOT1QgdXNlIEVTMjAxNSBmZWF0dXJlcyBpbiB0aGlzIGZpbGUuXG4vLyBUaGlzIG1vZHVsZSBpcyBhIHJ1bnRpbWUgdXRpbGl0eSBmb3IgY2xlYW5lciBjb21wb25lbnQgbW9kdWxlIG91dHB1dCBhbmQgd2lsbFxuLy8gYmUgaW5jbHVkZWQgaW4gdGhlIGZpbmFsIHdlYnBhY2sgdXNlciBidW5kbGUuXG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gbm9ybWFsaXplQ29tcG9uZW50IChcbiAgcmF3U2NyaXB0RXhwb3J0cyxcbiAgY29tcGlsZWRUZW1wbGF0ZSxcbiAgZnVuY3Rpb25hbFRlbXBsYXRlLFxuICBpbmplY3RTdHlsZXMsXG4gIHNjb3BlSWQsXG4gIG1vZHVsZUlkZW50aWZpZXIgLyogc2VydmVyIG9ubHkgKi9cbikge1xuICB2YXIgZXNNb2R1bGVcbiAgdmFyIHNjcmlwdEV4cG9ydHMgPSByYXdTY3JpcHRFeHBvcnRzID0gcmF3U2NyaXB0RXhwb3J0cyB8fCB7fVxuXG4gIC8vIEVTNiBtb2R1bGVzIGludGVyb3BcbiAgdmFyIHR5cGUgPSB0eXBlb2YgcmF3U2NyaXB0RXhwb3J0cy5kZWZhdWx0XG4gIGlmICh0eXBlID09PSAnb2JqZWN0JyB8fCB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZXNNb2R1bGUgPSByYXdTY3JpcHRFeHBvcnRzXG4gICAgc2NyaXB0RXhwb3J0cyA9IHJhd1NjcmlwdEV4cG9ydHMuZGVmYXVsdFxuICB9XG5cbiAgLy8gVnVlLmV4dGVuZCBjb25zdHJ1Y3RvciBleHBvcnQgaW50ZXJvcFxuICB2YXIgb3B0aW9ucyA9IHR5cGVvZiBzY3JpcHRFeHBvcnRzID09PSAnZnVuY3Rpb24nXG4gICAgPyBzY3JpcHRFeHBvcnRzLm9wdGlvbnNcbiAgICA6IHNjcmlwdEV4cG9ydHNcblxuICAvLyByZW5kZXIgZnVuY3Rpb25zXG4gIGlmIChjb21waWxlZFRlbXBsYXRlKSB7XG4gICAgb3B0aW9ucy5yZW5kZXIgPSBjb21waWxlZFRlbXBsYXRlLnJlbmRlclxuICAgIG9wdGlvbnMuc3RhdGljUmVuZGVyRm5zID0gY29tcGlsZWRUZW1wbGF0ZS5zdGF0aWNSZW5kZXJGbnNcbiAgICBvcHRpb25zLl9jb21waWxlZCA9IHRydWVcbiAgfVxuXG4gIC8vIGZ1bmN0aW9uYWwgdGVtcGxhdGVcbiAgaWYgKGZ1bmN0aW9uYWxUZW1wbGF0ZSkge1xuICAgIG9wdGlvbnMuZnVuY3Rpb25hbCA9IHRydWVcbiAgfVxuXG4gIC8vIHNjb3BlZElkXG4gIGlmIChzY29wZUlkKSB7XG4gICAgb3B0aW9ucy5fc2NvcGVJZCA9IHNjb3BlSWRcbiAgfVxuXG4gIHZhciBob29rXG4gIGlmIChtb2R1bGVJZGVudGlmaWVyKSB7IC8vIHNlcnZlciBidWlsZFxuICAgIGhvb2sgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICAgICAgLy8gMi4zIGluamVjdGlvblxuICAgICAgY29udGV4dCA9XG4gICAgICAgIGNvbnRleHQgfHwgLy8gY2FjaGVkIGNhbGxcbiAgICAgICAgKHRoaXMuJHZub2RlICYmIHRoaXMuJHZub2RlLnNzckNvbnRleHQpIHx8IC8vIHN0YXRlZnVsXG4gICAgICAgICh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC4kdm5vZGUgJiYgdGhpcy5wYXJlbnQuJHZub2RlLnNzckNvbnRleHQpIC8vIGZ1bmN0aW9uYWxcbiAgICAgIC8vIDIuMiB3aXRoIHJ1bkluTmV3Q29udGV4dDogdHJ1ZVxuICAgICAgaWYgKCFjb250ZXh0ICYmIHR5cGVvZiBfX1ZVRV9TU1JfQ09OVEVYVF9fICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb250ZXh0ID0gX19WVUVfU1NSX0NPTlRFWFRfX1xuICAgICAgfVxuICAgICAgLy8gaW5qZWN0IGNvbXBvbmVudCBzdHlsZXNcbiAgICAgIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICAgICAgaW5qZWN0U3R5bGVzLmNhbGwodGhpcywgY29udGV4dClcbiAgICAgIH1cbiAgICAgIC8vIHJlZ2lzdGVyIGNvbXBvbmVudCBtb2R1bGUgaWRlbnRpZmllciBmb3IgYXN5bmMgY2h1bmsgaW5mZXJyZW5jZVxuICAgICAgaWYgKGNvbnRleHQgJiYgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMpIHtcbiAgICAgICAgY29udGV4dC5fcmVnaXN0ZXJlZENvbXBvbmVudHMuYWRkKG1vZHVsZUlkZW50aWZpZXIpXG4gICAgICB9XG4gICAgfVxuICAgIC8vIHVzZWQgYnkgc3NyIGluIGNhc2UgY29tcG9uZW50IGlzIGNhY2hlZCBhbmQgYmVmb3JlQ3JlYXRlXG4gICAgLy8gbmV2ZXIgZ2V0cyBjYWxsZWRcbiAgICBvcHRpb25zLl9zc3JSZWdpc3RlciA9IGhvb2tcbiAgfSBlbHNlIGlmIChpbmplY3RTdHlsZXMpIHtcbiAgICBob29rID0gaW5qZWN0U3R5bGVzXG4gIH1cblxuICBpZiAoaG9vaykge1xuICAgIHZhciBmdW5jdGlvbmFsID0gb3B0aW9ucy5mdW5jdGlvbmFsXG4gICAgdmFyIGV4aXN0aW5nID0gZnVuY3Rpb25hbFxuICAgICAgPyBvcHRpb25zLnJlbmRlclxuICAgICAgOiBvcHRpb25zLmJlZm9yZUNyZWF0ZVxuXG4gICAgaWYgKCFmdW5jdGlvbmFsKSB7XG4gICAgICAvLyBpbmplY3QgY29tcG9uZW50IHJlZ2lzdHJhdGlvbiBhcyBiZWZvcmVDcmVhdGUgaG9va1xuICAgICAgb3B0aW9ucy5iZWZvcmVDcmVhdGUgPSBleGlzdGluZ1xuICAgICAgICA/IFtdLmNvbmNhdChleGlzdGluZywgaG9vaylcbiAgICAgICAgOiBbaG9va11cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gZm9yIHRlbXBsYXRlLW9ubHkgaG90LXJlbG9hZCBiZWNhdXNlIGluIHRoYXQgY2FzZSB0aGUgcmVuZGVyIGZuIGRvZXNuJ3RcbiAgICAgIC8vIGdvIHRocm91Z2ggdGhlIG5vcm1hbGl6ZXJcbiAgICAgIG9wdGlvbnMuX2luamVjdFN0eWxlcyA9IGhvb2tcbiAgICAgIC8vIHJlZ2lzdGVyIGZvciBmdW5jdGlvYWwgY29tcG9uZW50IGluIHZ1ZSBmaWxlXG4gICAgICBvcHRpb25zLnJlbmRlciA9IGZ1bmN0aW9uIHJlbmRlcldpdGhTdHlsZUluamVjdGlvbiAoaCwgY29udGV4dCkge1xuICAgICAgICBob29rLmNhbGwoY29udGV4dClcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nKGgsIGNvbnRleHQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBlc01vZHVsZTogZXNNb2R1bGUsXG4gICAgZXhwb3J0czogc2NyaXB0RXhwb3J0cyxcbiAgICBvcHRpb25zOiBvcHRpb25zXG4gIH1cbn1cblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2NvbXBvbmVudC1ub3JtYWxpemVyLmpzXG4vLyBtb2R1bGUgaWQgPSAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9jb21wb25lbnQtbm9ybWFsaXplci5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/component-normalizer.js\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-3340127d\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/registerForm.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", \"justify-space-between\": \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg5: \"\" } },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"fname\", label: \"Firstname\", id: \"fn\" }\n })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg5: \"\" } },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"lname\", label: \"Last Name\", id: \"ln\" }\n })\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"user\", label: \"Username\", id: \"un\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"email\", label: \"Email\", id: \"em\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"pass\", label: \"Password\", id: \"ps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: { name: \"confirmpass\", label: \"Confirm Password\", id: \"cps\" }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-3340127d\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZT9hNWFjIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgXCJqdXN0aWZ5LXNwYWNlLWJldHdlZW5cIjogXCJcIiB9IH0sXG4gICAgICAgIFtcbiAgICAgICAgICBfYyhcbiAgICAgICAgICAgIFwidi1mbGV4XCIsXG4gICAgICAgICAgICB7IGF0dHJzOiB7IGxnNTogXCJcIiB9IH0sXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgICAgICAgICBhdHRyczogeyBuYW1lOiBcImZuYW1lXCIsIGxhYmVsOiBcIkZpcnN0bmFtZVwiLCBpZDogXCJmblwiIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc1OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICAgICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibG5hbWVcIiwgbGFiZWw6IFwiTGFzdCBOYW1lXCIsIGlkOiBcImxuXCIgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgICksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJ2LXRleHQtZmllbGRcIiwge1xuICAgICAgICBhdHRyczogeyBuYW1lOiBcInVzZXJcIiwgbGFiZWw6IFwiVXNlcm5hbWVcIiwgaWQ6IFwidW5cIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwiZW1haWxcIiwgbGFiZWw6IFwiRW1haWxcIiwgaWQ6IFwiZW1cIiB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwicGFzc1wiLCBsYWJlbDogXCJQYXNzd29yZFwiLCBpZDogXCJwc1wiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi10ZXh0LWZpZWxkXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgbmFtZTogXCJjb25maXJtcGFzc1wiLCBsYWJlbDogXCJDb25maXJtIFBhc3N3b3JkXCIsIGlkOiBcImNwc1wiIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi1idG5cIiwgW192bS5fdihcIlN1Ym1pdFwiKV0pXG4gICAgXSxcbiAgICAxXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LTMzNDAxMjdkXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtMzM0MDEyN2RcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vcmVnaXN0ZXJGb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi0zMzQwMTI3ZFwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9yZWdpc3RlckZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-3340127d\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/registerForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-container\",\n { attrs: { fluid: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\", \"fill-height\": \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg7: \"\" } },\n [\n _c(\n \"v-layout\",\n {\n attrs: {\n \"align-center\": \"\",\n \"justify-center\": \"\",\n \"fill-height\": \"\"\n }\n },\n [\n _c(\"div\", [\n _c(\"p\", { staticClass: \"text-lg-left display-4\" }, [\n _vm._v(\"eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\"eAuction eAuction eAuction eAuction eAuction\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"text-lg-left headline\" }, [\n _vm._v(\n \"eAuction eAuction eAuction eAuction eAuction eAuction eAuction eAuction\"\n )\n ])\n ])\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { staticClass: \"right amber darken-3\", attrs: { lg5: \"\" } },\n [\n _c(\n \"v-layout\",\n { attrs: { row: \"\", wrap: \"\" } },\n [\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": !_vm.isRegister,\n \"yellow darken-3\": _vm.isRegister\n },\n attrs: {\n depressed: \"\",\n flat: \"\",\n block: \"\",\n ripple: false\n },\n on: {\n click: function($event) {\n _vm.isRegister = false\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tLog In\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"v-flex\",\n { attrs: { lg6: \"\" } },\n [\n _c(\n \"v-btn\",\n {\n class: {\n \"amber darken-3\": _vm.isRegister,\n \"yellow darken-3\": !_vm.isRegister\n },\n attrs: {\n depressed: \"\",\n flat: \"\",\n block: \"\",\n ripple: false\n },\n on: {\n click: function($event) {\n _vm.isRegister = true\n }\n }\n },\n [_vm._v(\"\\n\\t\\t\\t\\t\\t\\tRegister\\n\\t\\t\\t\\t\\t\")]\n )\n ],\n 1\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(_vm.form, { tag: \"component\" })\n ],\n 1\n )\n ],\n 1\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-51b0eb09\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWU/NmRjMyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIHZhciBfdm0gPSB0aGlzXG4gIHZhciBfaCA9IF92bS4kY3JlYXRlRWxlbWVudFxuICB2YXIgX2MgPSBfdm0uX3NlbGYuX2MgfHwgX2hcbiAgcmV0dXJuIF9jKFxuICAgIFwidi1jb250YWluZXJcIixcbiAgICB7IGF0dHJzOiB7IGZsdWlkOiBcIlwiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcbiAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICB7IGF0dHJzOiB7IHJvdzogXCJcIiwgd3JhcDogXCJcIiwgXCJmaWxsLWhlaWdodFwiOiBcIlwiIH0gfSxcbiAgICAgICAgW1xuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgYXR0cnM6IHsgbGc3OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiYWxpZ24tY2VudGVyXCI6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgIFwianVzdGlmeS1jZW50ZXJcIjogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgXCJmaWxsLWhlaWdodFwiOiBcIlwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBkaXNwbGF5LTRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiZUF1Y3Rpb25cIilcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBoZWFkbGluZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiKVxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJwXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1sZy1sZWZ0IGhlYWRsaW5lXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb24gZUF1Y3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwicFwiLCB7IHN0YXRpY0NsYXNzOiBcInRleHQtbGctbGVmdCBoZWFkbGluZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICBcImVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uIGVBdWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWxnLWxlZnQgaGVhZGxpbmVcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvbiBlQXVjdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAxXG4gICAgICAgICAgKSxcbiAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgIF9jKFxuICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwicmlnaHQgYW1iZXIgZGFya2VuLTNcIiwgYXR0cnM6IHsgbGc1OiBcIlwiIH0gfSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgXCJ2LWxheW91dFwiLFxuICAgICAgICAgICAgICAgIHsgYXR0cnM6IHsgcm93OiBcIlwiLCB3cmFwOiBcIlwiIH0gfSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJ2LWZsZXhcIixcbiAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBsZzY6IFwiXCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInYtYnRuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhbWJlciBkYXJrZW4tM1wiOiAhX3ZtLmlzUmVnaXN0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ5ZWxsb3cgZGFya2VuLTNcIjogX3ZtLmlzUmVnaXN0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXByZXNzZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhdDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9jazogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaXBwbGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmlzUmVnaXN0ZXIgPSBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtfdm0uX3YoXCJcXG5cXHRcXHRcXHRcXHRcXHRcXHRMb2cgSW5cXG5cXHRcXHRcXHRcXHRcXHRcIildXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcInYtZmxleFwiLFxuICAgICAgICAgICAgICAgICAgICB7IGF0dHJzOiB7IGxnNjogXCJcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidi1idG5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImFtYmVyIGRhcmtlbi0zXCI6IF92bS5pc1JlZ2lzdGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwieWVsbG93IGRhcmtlbi0zXCI6ICFfdm0uaXNSZWdpc3RlclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcHJlc3NlZDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGF0OiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpcHBsZTogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGljazogZnVuY3Rpb24oJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uaXNSZWdpc3RlciA9IHRydWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KFwiXFxuXFx0XFx0XFx0XFx0XFx0XFx0UmVnaXN0ZXJcXG5cXHRcXHRcXHRcXHRcXHRcIildXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgIF9jKF92bS5mb3JtLCB7IHRhZzogXCJjb21wb25lbnRcIiB9KVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgICApXG4gICAgICAgIF0sXG4gICAgICAgIDFcbiAgICAgIClcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcbnZhciBlc0V4cG9ydHMgPSB7IHJlbmRlcjogcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnM6IHN0YXRpY1JlbmRlckZucyB9XG5leHBvcnQgZGVmYXVsdCBlc0V4cG9ydHNcbmlmIChtb2R1bGUuaG90KSB7XG4gIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgaWYgKG1vZHVsZS5ob3QuZGF0YSkge1xuICAgIHJlcXVpcmUoXCJ2dWUtaG90LXJlbG9hZC1hcGlcIikgICAgICAucmVyZW5kZXIoXCJkYXRhLXYtNTFiMGViMDlcIiwgZXNFeHBvcnRzKVxuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXI/e1wiaWRcIjpcImRhdGEtdi01MWIwZWIwOVwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9Mb2dJbi52dWVcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyL2luZGV4LmpzP3tcImlkXCI6XCJkYXRhLXYtNTFiMGViMDlcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvTG9nSW4udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-51b0eb09\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/LogIn.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"v-app\", { attrs: { dark: \"\" } }, [_c(\"router-view\")], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-7ba5bd90\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQXBwLnZ1ZT9lZGM1Il0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXCJ2LWFwcFwiLCB7IGF0dHJzOiB7IGRhcms6IFwiXCIgfSB9LCBbX2MoXCJyb3V0ZXItdmlld1wiKV0sIDEpXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxudmFyIGVzRXhwb3J0cyA9IHsgcmVuZGVyOiByZW5kZXIsIHN0YXRpY1JlbmRlckZuczogc3RhdGljUmVuZGVyRm5zIH1cbmV4cG9ydCBkZWZhdWx0IGVzRXhwb3J0c1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICBpZiAobW9kdWxlLmhvdC5kYXRhKSB7XG4gICAgcmVxdWlyZShcInZ1ZS1ob3QtcmVsb2FkLWFwaVwiKSAgICAgIC5yZXJlbmRlcihcImRhdGEtdi03YmE1YmQ5MFwiLCBlc0V4cG9ydHMpXG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi90ZW1wbGF0ZS1jb21waWxlcj97XCJpZFwiOlwiZGF0YS12LTdiYTViZDkwXCIsXCJoYXNTY29wZWRcIjpmYWxzZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvQXBwLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi03YmE1YmQ5MFwiLFwiaGFzU2NvcGVkXCI6ZmFsc2UsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL0FwcC52dWVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-7ba5bd90\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"v-form\",\n { staticClass: \"login\" },\n [\n _c(\"v-text-field\", {\n attrs: { name: \"name\", label: \"Username\", id: \"id\" },\n model: {\n value: _vm.name,\n callback: function($$v) {\n _vm.name = $$v\n },\n expression: \"name\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-text-field\", {\n attrs: {\n name: \"name\",\n label: \"Password\",\n id: \"id\",\n \"append-icon\": _vm.visible ? \"visibility_off\" : \"visibility\",\n \"append-icon-cb\": function() {\n return (_vm.visible = !_vm.visible)\n },\n type: _vm.visible ? \"text\" : \"password\"\n },\n model: {\n value: _vm.password,\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n }),\n _vm._v(\" \"),\n _c(\"v-btn\", { on: { click: _vm.login } }, [_vm._v(\"Submit\")])\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ __webpack_exports__[\"a\"] = (esExports);\nif (true) {\n module.hot.accept()\n if (module.hot.data) {\n __webpack_require__(\"./node_modules/vue-hot-reload-api/dist/index.js\") .rerender(\"data-v-c576a172\", esExports)\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZT9kNzNkIl0sInNvdXJjZXNDb250ZW50IjpbInZhciByZW5kZXIgPSBmdW5jdGlvbigpIHtcbiAgdmFyIF92bSA9IHRoaXNcbiAgdmFyIF9oID0gX3ZtLiRjcmVhdGVFbGVtZW50XG4gIHZhciBfYyA9IF92bS5fc2VsZi5fYyB8fCBfaFxuICByZXR1cm4gX2MoXG4gICAgXCJ2LWZvcm1cIixcbiAgICB7IHN0YXRpY0NsYXNzOiBcImxvZ2luXCIgfSxcbiAgICBbXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7IG5hbWU6IFwibmFtZVwiLCBsYWJlbDogXCJVc2VybmFtZVwiLCBpZDogXCJpZFwiIH0sXG4gICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgdmFsdWU6IF92bS5uYW1lLFxuICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgIF92bS5uYW1lID0gJCR2XG4gICAgICAgICAgfSxcbiAgICAgICAgICBleHByZXNzaW9uOiBcIm5hbWVcIlxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfYyhcInYtdGV4dC1maWVsZFwiLCB7XG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgbmFtZTogXCJuYW1lXCIsXG4gICAgICAgICAgbGFiZWw6IFwiUGFzc3dvcmRcIixcbiAgICAgICAgICBpZDogXCJpZFwiLFxuICAgICAgICAgIFwiYXBwZW5kLWljb25cIjogX3ZtLnZpc2libGUgPyBcInZpc2liaWxpdHlfb2ZmXCIgOiBcInZpc2liaWxpdHlcIixcbiAgICAgICAgICBcImFwcGVuZC1pY29uLWNiXCI6IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgcmV0dXJuIChfdm0udmlzaWJsZSA9ICFfdm0udmlzaWJsZSlcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGU6IF92bS52aXNpYmxlID8gXCJ0ZXh0XCIgOiBcInBhc3N3b3JkXCJcbiAgICAgICAgfSxcbiAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICB2YWx1ZTogX3ZtLnBhc3N3b3JkLFxuICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbigkJHYpIHtcbiAgICAgICAgICAgIF92bS5wYXNzd29yZCA9ICQkdlxuICAgICAgICAgIH0sXG4gICAgICAgICAgZXhwcmVzc2lvbjogXCJwYXNzd29yZFwiXG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF9jKFwidi1idG5cIiwgeyBvbjogeyBjbGljazogX3ZtLmxvZ2luIH0gfSwgW192bS5fdihcIlN1Ym1pdFwiKV0pXG4gICAgXSxcbiAgICAxXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG52YXIgZXNFeHBvcnRzID0geyByZW5kZXI6IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnMgfVxuZXhwb3J0IGRlZmF1bHQgZXNFeHBvcnRzXG5pZiAobW9kdWxlLmhvdCkge1xuICBtb2R1bGUuaG90LmFjY2VwdCgpXG4gIGlmIChtb2R1bGUuaG90LmRhdGEpIHtcbiAgICByZXF1aXJlKFwidnVlLWhvdC1yZWxvYWQtYXBpXCIpICAgICAgLnJlcmVuZGVyKFwiZGF0YS12LWM1NzZhMTcyXCIsIGVzRXhwb3J0cylcbiAgfVxufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3RlbXBsYXRlLWNvbXBpbGVyP3tcImlkXCI6XCJkYXRhLXYtYzU3NmExNzJcIixcImhhc1Njb3BlZFwiOnRydWUsXCJ0cmFuc2Zvcm1Ub1JlcXVpcmVcIjp7XCJ2aWRlb1wiOltcInNyY1wiLFwicG9zdGVyXCJdLFwic291cmNlXCI6XCJzcmNcIixcImltZ1wiOlwic3JjXCIsXCJpbWFnZVwiOlwieGxpbms6aHJlZlwifSxcImJ1YmxlXCI6e1widHJhbnNmb3Jtc1wiOnt9fX0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvc2VsZWN0b3IuanM/dHlwZT10ZW1wbGF0ZSZpbmRleD0wIS4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW5Gb3JtLnZ1ZVxuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvdGVtcGxhdGUtY29tcGlsZXIvaW5kZXguanM/e1wiaWRcIjpcImRhdGEtdi1jNTc2YTE3MlwiLFwiaGFzU2NvcGVkXCI6dHJ1ZSxcInRyYW5zZm9ybVRvUmVxdWlyZVwiOntcInZpZGVvXCI6W1wic3JjXCIsXCJwb3N0ZXJcIl0sXCJzb3VyY2VcIjpcInNyY1wiLFwiaW1nXCI6XCJzcmNcIixcImltYWdlXCI6XCJ4bGluazpocmVmXCJ9LFwiYnVibGVcIjp7XCJ0cmFuc2Zvcm1zXCI6e319fSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9zZWxlY3Rvci5qcz90eXBlPXRlbXBsYXRlJmluZGV4PTAhLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbkZvcm0udnVlXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-c576a172\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/login/loginForm.vue\n"); - -/***/ }), - -/***/ "./node_modules/vue-router/dist/vue-router.esm.js": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("/**\n * vue-router v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (\"development\" !== 'production' && !condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nvar View = {\n name: 'router-view',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n if (parent.$vnode && parent.$vnode.data.routerView) {\n depth++;\n }\n if (parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n return h(cache[name], data, children)\n }\n\n var matched = route.matched[depth];\n // render empty node if no matched route\n if (!matched) {\n cache[name] = null;\n return h()\n }\n\n var component = cache[name] = matched.components[name];\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // resolve props\n var propsToPass = data.props = resolveProps(route, matched.props && matched.props[name]);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n\n return h(component, data, children)\n }\n};\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (true) {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\nfunction extend (to, from) {\n for (var key in from) {\n to[key] = from[key];\n }\n return to\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nvar decode = decodeURIComponent;\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n \"development\" !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n parsedQuery[key] = extraQuery[key];\n }\n return parsedQuery\n}\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0\n ? decode(parts.join('='))\n : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj ? Object.keys(obj).map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n }).filter(function (x) { return x.length > 0; }).join('&') : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery$$1 = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery$$1),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery$$1);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return (\n a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query)\n )\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params)\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a);\n var bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key) {\n var aVal = a[key];\n var bVal = b[key];\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar Link = {\n name: 'router-link',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n exact: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(this.to, current, this.append);\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback = globalActiveClass == null\n ? 'router-link-active'\n : globalActiveClass;\n var exactActiveClassFallback = globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass = this.activeClass == null\n ? activeClassFallback\n : this.activeClass;\n var exactActiveClass = this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n var compareTarget = location.path\n ? createRoute(null, location, null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget);\n classes[activeClass] = this.exact\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1.replace) {\n router.replace(location);\n } else {\n router.push(location);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) { on[e] = handler; });\n } else {\n on[this.event] = handler;\n }\n\n var data = {\n class: classes\n };\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var extend = _Vue.util.extend;\n var aData = a.data = extend({}, a.data);\n aData.on = on;\n var aAttrs = a.data.attrs = extend({}, a.data.attrs);\n aAttrs.href = href;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('router-view', View);\n Vue.component('router-link', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/\\//g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options))\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$');\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\n\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n return filler(params || {}, { pretty: true })\n } catch (e) {\n if (true) {\n warn(false, (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n }\n}\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (true) {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(path || name)) + \" cannot be a \" +\n \"string id. Use an actual component instead.\"\n );\n }\n\n var pathToRegexpOptions = route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(\n path,\n parent,\n pathToRegexpOptions.strict\n );\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n instances: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props: route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (true) {\n if (route.name && !route.redirect && route.children.some(function (child) { return /^\\/?$/.test(child.path); })) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias)\n ? route.alias\n : [route.alias];\n\n aliases.forEach(function (alias) {\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (\"development\" !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (path, pathToRegexpOptions) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (true) {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(!keys[key.name], (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\"));\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (path, parent, strict) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next.name || next._normalized) {\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = assign({}, next);\n next._normalized = true;\n var params = assign(assign({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params, (\"path \" + (current.path)));\n } else if (true) {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction assign (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\n/* */\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (true) {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n if (record) {\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n }\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (true) {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (true) {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (true) {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n var val = typeof m[i] === 'string' ? decodeURIComponent(m[i]) : m[i];\n if (key) {\n params[key.name] = val;\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Fix for #1585 for Firefox\n window.history.replaceState({ key: getStateKey() }, '');\n window.addEventListener('popstate', function (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n });\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (true) {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior(to, from, isPop ? position : null);\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll.then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n }).catch(function (err) {\n if (true) {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n var el = document.querySelector(shouldScroll.selector);\n if (el) {\n var offset = shouldScroll.offset && typeof shouldScroll.offset === 'object' ? shouldScroll.offset : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n window.scrollTo(position.x, position.y);\n }\n}\n\n/* */\n\nvar supportsPushState = inBrowser && (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && 'pushState' in window.history\n})();\n\n// use User Timing api (if present) for more accurate key precision\nvar Time = inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nvar _key = genKey();\n\nfunction genKey () {\n return Time.now().toFixed(3)\n}\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n _key = key;\n}\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n history.replaceState({ key: _key }, '', url);\n } else {\n _key = genKey();\n history.pushState({ key: _key }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n \"development\" !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (location, onComplete, onAbort) {\n var this$1 = this;\n\n var route = this.router.match(location, this.current);\n this.confirmTransition(route, function () {\n this$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1.ensureURL();\n\n // fire ready cbs once\n if (!this$1.ready) {\n this$1.ready = true;\n this$1.readyCbs.forEach(function (cb) { cb(route); });\n }\n }, function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1.ready) {\n this$1.ready = true;\n this$1.readyErrorCbs.forEach(function (cb) { cb(err); });\n }\n });\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1 = this;\n\n var current = this.current;\n var abort = function (err) {\n if (isError(err)) {\n if (this$1.errorCbs.length) {\n this$1.errorCbs.forEach(function (cb) { cb(err); });\n } else {\n warn(false, 'uncaught error during route navigation:');\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n route.matched.length === current.matched.length\n ) {\n this.ensureURL();\n return abort()\n }\n\n var ref = resolveQueue(this.current.matched, route.matched);\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n this.pending = route;\n var iterator = function (hook, next) {\n if (this$1.pending !== route) {\n return abort()\n }\n try {\n hook(route, current, function (to) {\n if (to === false || isError(to)) {\n // next(false) -> abort navigation, ensure current URL\n this$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' && (\n typeof to.path === 'string' ||\n typeof to.name === 'string'\n ))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort();\n if (typeof to === 'object' && to.replace) {\n this$1.replace(to);\n } else {\n this$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n var postEnterCbs = [];\n var isValid = function () { return this$1.current === route; };\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated, postEnterCbs, isValid);\n var queue = enterGuards.concat(this$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1.pending !== route) {\n return abort()\n }\n this$1.pending = null;\n onComplete(route);\n if (this$1.router.app) {\n this$1.router.app.$nextTick(function () {\n postEnterCbs.forEach(function (cb) { cb(); });\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n var prev = this.current;\n this.current = route;\n this.cb && this.cb(route);\n this.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated,\n cbs,\n isValid\n) {\n return extractGuards(activated, 'beforeRouteEnter', function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key, cbs, isValid)\n })\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key,\n cbs,\n isValid\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n next(cb);\n if (typeof cb === 'function') {\n cbs.push(function () {\n // #750\n // if a router-view is wrapped with an out-in transition,\n // the instance may not have been registered at this time.\n // we will need to poll for registration until current route\n // is no longer valid.\n poll(cb, match.instances, key, isValid);\n });\n }\n })\n }\n}\n\nfunction poll (\n cb, // somehow flow cannot infer this is a function\n instances,\n key,\n isValid\n) {\n if (instances[key]) {\n cb(instances[key]);\n } else if (isValid()) {\n setTimeout(function () {\n poll(cb, instances, key, isValid);\n }, 16);\n }\n}\n\n/* */\n\n\nvar HTML5History = (function (History$$1) {\n function HTML5History (router, base) {\n var this$1 = this;\n\n History$$1.call(this, router, base);\n\n var expectScroll = router.options.scrollBehavior;\n\n if (expectScroll) {\n setupScroll();\n }\n\n var initLocation = getLocation(this.base);\n window.addEventListener('popstate', function (e) {\n var current = this$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1.base);\n if (this$1.current === START && location === initLocation) {\n return\n }\n\n this$1.transitionTo(location, function (route) {\n if (expectScroll) {\n handleScroll(router, route, current, true);\n }\n });\n });\n }\n\n if ( History$$1 ) HTML5History.__proto__ = History$$1;\n HTML5History.prototype = Object.create( History$$1 && History$$1.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = window.location.pathname;\n if (base && path.indexOf(base) === 0) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\n\nvar HashHistory = (function (History$$1) {\n function HashHistory (router, base, fallback) {\n History$$1.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History$$1 ) HashHistory.__proto__ = History$$1;\n HashHistory.prototype = Object.create( History$$1 && History$$1.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n setupScroll();\n }\n\n window.addEventListener(supportsPushState ? 'popstate' : 'hashchange', function () {\n var current = this$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(\n cleanPath(base + '/#' + location)\n );\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n return index === -1 ? '' : href.slice(index + 1)\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\n\nvar AbstractHistory = (function (History$$1) {\n function AbstractHistory (router, base) {\n History$$1.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History$$1 ) AbstractHistory.__proto__ = History$$1;\n AbstractHistory.prototype = Object.create( History$$1 && History$$1.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index + 1).concat(route);\n this$1.index++;\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index).concat(route);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(route, function () {\n this$1.index = targetIndex;\n this$1.updateRoute(route);\n });\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback = mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (true) {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (\n raw,\n current,\n redirectedFrom\n) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1 = this;\n\n \"development\" !== 'production' && assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // main app already initialized.\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History) {\n history.transitionTo(history.getCurrentLocation());\n } else if (history instanceof HashHistory) {\n var setupHashListener = function () {\n history.setupListeners();\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupHashListener,\n setupHashListener\n );\n }\n\n history.listen(function (route) {\n this$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n this.history.push(location, onComplete, onAbort);\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n this.history.replace(location, onComplete, onAbort);\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply([], route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n }))\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n var location = normalizeLocation(\n to,\n current || this.history.current,\n append,\n this\n );\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\nVueRouter.install = install;\nVueRouter.version = '3.0.1';\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (VueRouter);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVlLXJvdXRlci9kaXN0L3Z1ZS1yb3V0ZXIuZXNtLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1yb3V0ZXIvZGlzdC92dWUtcm91dGVyLmVzbS5qcz9mZTg3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICAqIHZ1ZS1yb3V0ZXIgdjMuMC4xXG4gICogKGMpIDIwMTcgRXZhbiBZb3VcbiAgKiBAbGljZW5zZSBNSVRcbiAgKi9cbi8qICAqL1xuXG5mdW5jdGlvbiBhc3NlcnQgKGNvbmRpdGlvbiwgbWVzc2FnZSkge1xuICBpZiAoIWNvbmRpdGlvbikge1xuICAgIHRocm93IG5ldyBFcnJvcigoXCJbdnVlLXJvdXRlcl0gXCIgKyBtZXNzYWdlKSlcbiAgfVxufVxuXG5mdW5jdGlvbiB3YXJuIChjb25kaXRpb24sIG1lc3NhZ2UpIHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIWNvbmRpdGlvbikge1xuICAgIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJiBjb25zb2xlLndhcm4oKFwiW3Z1ZS1yb3V0ZXJdIFwiICsgbWVzc2FnZSkpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzRXJyb3IgKGVycikge1xuICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGVycikuaW5kZXhPZignRXJyb3InKSA+IC0xXG59XG5cbnZhciBWaWV3ID0ge1xuICBuYW1lOiAncm91dGVyLXZpZXcnLFxuICBmdW5jdGlvbmFsOiB0cnVlLFxuICBwcm9wczoge1xuICAgIG5hbWU6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdkZWZhdWx0J1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIgKF8sIHJlZikge1xuICAgIHZhciBwcm9wcyA9IHJlZi5wcm9wcztcbiAgICB2YXIgY2hpbGRyZW4gPSByZWYuY2hpbGRyZW47XG4gICAgdmFyIHBhcmVudCA9IHJlZi5wYXJlbnQ7XG4gICAgdmFyIGRhdGEgPSByZWYuZGF0YTtcblxuICAgIGRhdGEucm91dGVyVmlldyA9IHRydWU7XG5cbiAgICAvLyBkaXJlY3RseSB1c2UgcGFyZW50IGNvbnRleHQncyBjcmVhdGVFbGVtZW50KCkgZnVuY3Rpb25cbiAgICAvLyBzbyB0aGF0IGNvbXBvbmVudHMgcmVuZGVyZWQgYnkgcm91dGVyLXZpZXcgY2FuIHJlc29sdmUgbmFtZWQgc2xvdHNcbiAgICB2YXIgaCA9IHBhcmVudC4kY3JlYXRlRWxlbWVudDtcbiAgICB2YXIgbmFtZSA9IHByb3BzLm5hbWU7XG4gICAgdmFyIHJvdXRlID0gcGFyZW50LiRyb3V0ZTtcbiAgICB2YXIgY2FjaGUgPSBwYXJlbnQuX3JvdXRlclZpZXdDYWNoZSB8fCAocGFyZW50Ll9yb3V0ZXJWaWV3Q2FjaGUgPSB7fSk7XG5cbiAgICAvLyBkZXRlcm1pbmUgY3VycmVudCB2aWV3IGRlcHRoLCBhbHNvIGNoZWNrIHRvIHNlZSBpZiB0aGUgdHJlZVxuICAgIC8vIGhhcyBiZWVuIHRvZ2dsZWQgaW5hY3RpdmUgYnV0IGtlcHQtYWxpdmUuXG4gICAgdmFyIGRlcHRoID0gMDtcbiAgICB2YXIgaW5hY3RpdmUgPSBmYWxzZTtcbiAgICB3aGlsZSAocGFyZW50ICYmIHBhcmVudC5fcm91dGVyUm9vdCAhPT0gcGFyZW50KSB7XG4gICAgICBpZiAocGFyZW50LiR2bm9kZSAmJiBwYXJlbnQuJHZub2RlLmRhdGEucm91dGVyVmlldykge1xuICAgICAgICBkZXB0aCsrO1xuICAgICAgfVxuICAgICAgaWYgKHBhcmVudC5faW5hY3RpdmUpIHtcbiAgICAgICAgaW5hY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgcGFyZW50ID0gcGFyZW50LiRwYXJlbnQ7XG4gICAgfVxuICAgIGRhdGEucm91dGVyVmlld0RlcHRoID0gZGVwdGg7XG5cbiAgICAvLyByZW5kZXIgcHJldmlvdXMgdmlldyBpZiB0aGUgdHJlZSBpcyBpbmFjdGl2ZSBhbmQga2VwdC1hbGl2ZVxuICAgIGlmIChpbmFjdGl2ZSkge1xuICAgICAgcmV0dXJuIGgoY2FjaGVbbmFtZV0sIGRhdGEsIGNoaWxkcmVuKVxuICAgIH1cblxuICAgIHZhciBtYXRjaGVkID0gcm91dGUubWF0Y2hlZFtkZXB0aF07XG4gICAgLy8gcmVuZGVyIGVtcHR5IG5vZGUgaWYgbm8gbWF0Y2hlZCByb3V0ZVxuICAgIGlmICghbWF0Y2hlZCkge1xuICAgICAgY2FjaGVbbmFtZV0gPSBudWxsO1xuICAgICAgcmV0dXJuIGgoKVxuICAgIH1cblxuICAgIHZhciBjb21wb25lbnQgPSBjYWNoZVtuYW1lXSA9IG1hdGNoZWQuY29tcG9uZW50c1tuYW1lXTtcblxuICAgIC8vIGF0dGFjaCBpbnN0YW5jZSByZWdpc3RyYXRpb24gaG9va1xuICAgIC8vIHRoaXMgd2lsbCBiZSBjYWxsZWQgaW4gdGhlIGluc3RhbmNlJ3MgaW5qZWN0ZWQgbGlmZWN5Y2xlIGhvb2tzXG4gICAgZGF0YS5yZWdpc3RlclJvdXRlSW5zdGFuY2UgPSBmdW5jdGlvbiAodm0sIHZhbCkge1xuICAgICAgLy8gdmFsIGNvdWxkIGJlIHVuZGVmaW5lZCBmb3IgdW5yZWdpc3RyYXRpb25cbiAgICAgIHZhciBjdXJyZW50ID0gbWF0Y2hlZC5pbnN0YW5jZXNbbmFtZV07XG4gICAgICBpZiAoXG4gICAgICAgICh2YWwgJiYgY3VycmVudCAhPT0gdm0pIHx8XG4gICAgICAgICghdmFsICYmIGN1cnJlbnQgPT09IHZtKVxuICAgICAgKSB7XG4gICAgICAgIG1hdGNoZWQuaW5zdGFuY2VzW25hbWVdID0gdmFsO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGFsc28gcmVnaXN0ZXIgaW5zdGFuY2UgaW4gcHJlcGF0Y2ggaG9va1xuICAgIC8vIGluIGNhc2UgdGhlIHNhbWUgY29tcG9uZW50IGluc3RhbmNlIGlzIHJldXNlZCBhY3Jvc3MgZGlmZmVyZW50IHJvdXRlc1xuICAgIDsoZGF0YS5ob29rIHx8IChkYXRhLmhvb2sgPSB7fSkpLnByZXBhdGNoID0gZnVuY3Rpb24gKF8sIHZub2RlKSB7XG4gICAgICBtYXRjaGVkLmluc3RhbmNlc1tuYW1lXSA9IHZub2RlLmNvbXBvbmVudEluc3RhbmNlO1xuICAgIH07XG5cbiAgICAvLyByZXNvbHZlIHByb3BzXG4gICAgdmFyIHByb3BzVG9QYXNzID0gZGF0YS5wcm9wcyA9IHJlc29sdmVQcm9wcyhyb3V0ZSwgbWF0Y2hlZC5wcm9wcyAmJiBtYXRjaGVkLnByb3BzW25hbWVdKTtcbiAgICBpZiAocHJvcHNUb1Bhc3MpIHtcbiAgICAgIC8vIGNsb25lIHRvIHByZXZlbnQgbXV0YXRpb25cbiAgICAgIHByb3BzVG9QYXNzID0gZGF0YS5wcm9wcyA9IGV4dGVuZCh7fSwgcHJvcHNUb1Bhc3MpO1xuICAgICAgLy8gcGFzcyBub24tZGVjbGFyZWQgcHJvcHMgYXMgYXR0cnNcbiAgICAgIHZhciBhdHRycyA9IGRhdGEuYXR0cnMgPSBkYXRhLmF0dHJzIHx8IHt9O1xuICAgICAgZm9yICh2YXIga2V5IGluIHByb3BzVG9QYXNzKSB7XG4gICAgICAgIGlmICghY29tcG9uZW50LnByb3BzIHx8ICEoa2V5IGluIGNvbXBvbmVudC5wcm9wcykpIHtcbiAgICAgICAgICBhdHRyc1trZXldID0gcHJvcHNUb1Bhc3Nba2V5XTtcbiAgICAgICAgICBkZWxldGUgcHJvcHNUb1Bhc3Nba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBoKGNvbXBvbmVudCwgZGF0YSwgY2hpbGRyZW4pXG4gIH1cbn07XG5cbmZ1bmN0aW9uIHJlc29sdmVQcm9wcyAocm91dGUsIGNvbmZpZykge1xuICBzd2l0Y2ggKHR5cGVvZiBjb25maWcpIHtcbiAgICBjYXNlICd1bmRlZmluZWQnOlxuICAgICAgcmV0dXJuXG4gICAgY2FzZSAnb2JqZWN0JzpcbiAgICAgIHJldHVybiBjb25maWdcbiAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICByZXR1cm4gY29uZmlnKHJvdXRlKVxuICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgcmV0dXJuIGNvbmZpZyA/IHJvdXRlLnBhcmFtcyA6IHVuZGVmaW5lZFxuICAgIGRlZmF1bHQ6XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuKFxuICAgICAgICAgIGZhbHNlLFxuICAgICAgICAgIFwicHJvcHMgaW4gXFxcIlwiICsgKHJvdXRlLnBhdGgpICsgXCJcXFwiIGlzIGEgXCIgKyAodHlwZW9mIGNvbmZpZykgKyBcIiwgXCIgK1xuICAgICAgICAgIFwiZXhwZWN0aW5nIGFuIG9iamVjdCwgZnVuY3Rpb24gb3IgYm9vbGVhbi5cIlxuICAgICAgICApO1xuICAgICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGV4dGVuZCAodG8sIGZyb20pIHtcbiAgZm9yICh2YXIga2V5IGluIGZyb20pIHtcbiAgICB0b1trZXldID0gZnJvbVtrZXldO1xuICB9XG4gIHJldHVybiB0b1xufVxuXG4vKiAgKi9cblxudmFyIGVuY29kZVJlc2VydmVSRSA9IC9bIScoKSpdL2c7XG52YXIgZW5jb2RlUmVzZXJ2ZVJlcGxhY2VyID0gZnVuY3Rpb24gKGMpIHsgcmV0dXJuICclJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNik7IH07XG52YXIgY29tbWFSRSA9IC8lMkMvZztcblxuLy8gZml4ZWQgZW5jb2RlVVJJQ29tcG9uZW50IHdoaWNoIGlzIG1vcmUgY29uZm9ybWFudCB0byBSRkMzOTg2OlxuLy8gLSBlc2NhcGVzIFshJygpKl1cbi8vIC0gcHJlc2VydmUgY29tbWFzXG52YXIgZW5jb2RlID0gZnVuY3Rpb24gKHN0cikgeyByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHN0cilcbiAgLnJlcGxhY2UoZW5jb2RlUmVzZXJ2ZVJFLCBlbmNvZGVSZXNlcnZlUmVwbGFjZXIpXG4gIC5yZXBsYWNlKGNvbW1hUkUsICcsJyk7IH07XG5cbnZhciBkZWNvZGUgPSBkZWNvZGVVUklDb21wb25lbnQ7XG5cbmZ1bmN0aW9uIHJlc29sdmVRdWVyeSAoXG4gIHF1ZXJ5LFxuICBleHRyYVF1ZXJ5LFxuICBfcGFyc2VRdWVyeVxuKSB7XG4gIGlmICggZXh0cmFRdWVyeSA9PT0gdm9pZCAwICkgZXh0cmFRdWVyeSA9IHt9O1xuXG4gIHZhciBwYXJzZSA9IF9wYXJzZVF1ZXJ5IHx8IHBhcnNlUXVlcnk7XG4gIHZhciBwYXJzZWRRdWVyeTtcbiAgdHJ5IHtcbiAgICBwYXJzZWRRdWVyeSA9IHBhcnNlKHF1ZXJ5IHx8ICcnKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2FybihmYWxzZSwgZS5tZXNzYWdlKTtcbiAgICBwYXJzZWRRdWVyeSA9IHt9O1xuICB9XG4gIGZvciAodmFyIGtleSBpbiBleHRyYVF1ZXJ5KSB7XG4gICAgcGFyc2VkUXVlcnlba2V5XSA9IGV4dHJhUXVlcnlba2V5XTtcbiAgfVxuICByZXR1cm4gcGFyc2VkUXVlcnlcbn1cblxuZnVuY3Rpb24gcGFyc2VRdWVyeSAocXVlcnkpIHtcbiAgdmFyIHJlcyA9IHt9O1xuXG4gIHF1ZXJ5ID0gcXVlcnkudHJpbSgpLnJlcGxhY2UoL14oXFw/fCN8JikvLCAnJyk7XG5cbiAgaWYgKCFxdWVyeSkge1xuICAgIHJldHVybiByZXNcbiAgfVxuXG4gIHF1ZXJ5LnNwbGl0KCcmJykuZm9yRWFjaChmdW5jdGlvbiAocGFyYW0pIHtcbiAgICB2YXIgcGFydHMgPSBwYXJhbS5yZXBsYWNlKC9cXCsvZywgJyAnKS5zcGxpdCgnPScpO1xuICAgIHZhciBrZXkgPSBkZWNvZGUocGFydHMuc2hpZnQoKSk7XG4gICAgdmFyIHZhbCA9IHBhcnRzLmxlbmd0aCA+IDBcbiAgICAgID8gZGVjb2RlKHBhcnRzLmpvaW4oJz0nKSlcbiAgICAgIDogbnVsbDtcblxuICAgIGlmIChyZXNba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXNba2V5XSA9IHZhbDtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocmVzW2tleV0pKSB7XG4gICAgICByZXNba2V5XS5wdXNoKHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc1trZXldID0gW3Jlc1trZXldLCB2YWxdO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHJlc1xufVxuXG5mdW5jdGlvbiBzdHJpbmdpZnlRdWVyeSAob2JqKSB7XG4gIHZhciByZXMgPSBvYmogPyBPYmplY3Qua2V5cyhvYmopLm1hcChmdW5jdGlvbiAoa2V5KSB7XG4gICAgdmFyIHZhbCA9IG9ialtrZXldO1xuXG4gICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gJydcbiAgICB9XG5cbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gZW5jb2RlKGtleSlcbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICB2YXIgcmVzdWx0ID0gW107XG4gICAgICB2YWwuZm9yRWFjaChmdW5jdGlvbiAodmFsMikge1xuICAgICAgICBpZiAodmFsMiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbDIgPT09IG51bGwpIHtcbiAgICAgICAgICByZXN1bHQucHVzaChlbmNvZGUoa2V5KSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goZW5jb2RlKGtleSkgKyAnPScgKyBlbmNvZGUodmFsMikpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXN1bHQuam9pbignJicpXG4gICAgfVxuXG4gICAgcmV0dXJuIGVuY29kZShrZXkpICsgJz0nICsgZW5jb2RlKHZhbClcbiAgfSkuZmlsdGVyKGZ1bmN0aW9uICh4KSB7IHJldHVybiB4Lmxlbmd0aCA+IDA7IH0pLmpvaW4oJyYnKSA6IG51bGw7XG4gIHJldHVybiByZXMgPyAoXCI/XCIgKyByZXMpIDogJydcbn1cblxuLyogICovXG5cblxudmFyIHRyYWlsaW5nU2xhc2hSRSA9IC9cXC8/JC87XG5cbmZ1bmN0aW9uIGNyZWF0ZVJvdXRlIChcbiAgcmVjb3JkLFxuICBsb2NhdGlvbixcbiAgcmVkaXJlY3RlZEZyb20sXG4gIHJvdXRlclxuKSB7XG4gIHZhciBzdHJpbmdpZnlRdWVyeSQkMSA9IHJvdXRlciAmJiByb3V0ZXIub3B0aW9ucy5zdHJpbmdpZnlRdWVyeTtcblxuICB2YXIgcXVlcnkgPSBsb2NhdGlvbi5xdWVyeSB8fCB7fTtcbiAgdHJ5IHtcbiAgICBxdWVyeSA9IGNsb25lKHF1ZXJ5KTtcbiAgfSBjYXRjaCAoZSkge31cblxuICB2YXIgcm91dGUgPSB7XG4gICAgbmFtZTogbG9jYXRpb24ubmFtZSB8fCAocmVjb3JkICYmIHJlY29yZC5uYW1lKSxcbiAgICBtZXRhOiAocmVjb3JkICYmIHJlY29yZC5tZXRhKSB8fCB7fSxcbiAgICBwYXRoOiBsb2NhdGlvbi5wYXRoIHx8ICcvJyxcbiAgICBoYXNoOiBsb2NhdGlvbi5oYXNoIHx8ICcnLFxuICAgIHF1ZXJ5OiBxdWVyeSxcbiAgICBwYXJhbXM6IGxvY2F0aW9uLnBhcmFtcyB8fCB7fSxcbiAgICBmdWxsUGF0aDogZ2V0RnVsbFBhdGgobG9jYXRpb24sIHN0cmluZ2lmeVF1ZXJ5JCQxKSxcbiAgICBtYXRjaGVkOiByZWNvcmQgPyBmb3JtYXRNYXRjaChyZWNvcmQpIDogW11cbiAgfTtcbiAgaWYgKHJlZGlyZWN0ZWRGcm9tKSB7XG4gICAgcm91dGUucmVkaXJlY3RlZEZyb20gPSBnZXRGdWxsUGF0aChyZWRpcmVjdGVkRnJvbSwgc3RyaW5naWZ5UXVlcnkkJDEpO1xuICB9XG4gIHJldHVybiBPYmplY3QuZnJlZXplKHJvdXRlKVxufVxuXG5mdW5jdGlvbiBjbG9uZSAodmFsdWUpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLm1hcChjbG9uZSlcbiAgfSBlbHNlIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgdmFyIHJlcyA9IHt9O1xuICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgcmVzW2tleV0gPSBjbG9uZSh2YWx1ZVtrZXldKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB2YWx1ZVxuICB9XG59XG5cbi8vIHRoZSBzdGFydGluZyByb3V0ZSB0aGF0IHJlcHJlc2VudHMgdGhlIGluaXRpYWwgc3RhdGVcbnZhciBTVEFSVCA9IGNyZWF0ZVJvdXRlKG51bGwsIHtcbiAgcGF0aDogJy8nXG59KTtcblxuZnVuY3Rpb24gZm9ybWF0TWF0Y2ggKHJlY29yZCkge1xuICB2YXIgcmVzID0gW107XG4gIHdoaWxlIChyZWNvcmQpIHtcbiAgICByZXMudW5zaGlmdChyZWNvcmQpO1xuICAgIHJlY29yZCA9IHJlY29yZC5wYXJlbnQ7XG4gIH1cbiAgcmV0dXJuIHJlc1xufVxuXG5mdW5jdGlvbiBnZXRGdWxsUGF0aCAoXG4gIHJlZixcbiAgX3N0cmluZ2lmeVF1ZXJ5XG4pIHtcbiAgdmFyIHBhdGggPSByZWYucGF0aDtcbiAgdmFyIHF1ZXJ5ID0gcmVmLnF1ZXJ5OyBpZiAoIHF1ZXJ5ID09PSB2b2lkIDAgKSBxdWVyeSA9IHt9O1xuICB2YXIgaGFzaCA9IHJlZi5oYXNoOyBpZiAoIGhhc2ggPT09IHZvaWQgMCApIGhhc2ggPSAnJztcblxuICB2YXIgc3RyaW5naWZ5ID0gX3N0cmluZ2lmeVF1ZXJ5IHx8IHN0cmluZ2lmeVF1ZXJ5O1xuICByZXR1cm4gKHBhdGggfHwgJy8nKSArIHN0cmluZ2lmeShxdWVyeSkgKyBoYXNoXG59XG5cbmZ1bmN0aW9uIGlzU2FtZVJvdXRlIChhLCBiKSB7XG4gIGlmIChiID09PSBTVEFSVCkge1xuICAgIHJldHVybiBhID09PSBiXG4gIH0gZWxzZSBpZiAoIWIpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfSBlbHNlIGlmIChhLnBhdGggJiYgYi5wYXRoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGEucGF0aC5yZXBsYWNlKHRyYWlsaW5nU2xhc2hSRSwgJycpID09PSBiLnBhdGgucmVwbGFjZSh0cmFpbGluZ1NsYXNoUkUsICcnKSAmJlxuICAgICAgYS5oYXNoID09PSBiLmhhc2ggJiZcbiAgICAgIGlzT2JqZWN0RXF1YWwoYS5xdWVyeSwgYi5xdWVyeSlcbiAgICApXG4gIH0gZWxzZSBpZiAoYS5uYW1lICYmIGIubmFtZSkge1xuICAgIHJldHVybiAoXG4gICAgICBhLm5hbWUgPT09IGIubmFtZSAmJlxuICAgICAgYS5oYXNoID09PSBiLmhhc2ggJiZcbiAgICAgIGlzT2JqZWN0RXF1YWwoYS5xdWVyeSwgYi5xdWVyeSkgJiZcbiAgICAgIGlzT2JqZWN0RXF1YWwoYS5wYXJhbXMsIGIucGFyYW1zKVxuICAgIClcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxufVxuXG5mdW5jdGlvbiBpc09iamVjdEVxdWFsIChhLCBiKSB7XG4gIGlmICggYSA9PT0gdm9pZCAwICkgYSA9IHt9O1xuICBpZiAoIGIgPT09IHZvaWQgMCApIGIgPSB7fTtcblxuICAvLyBoYW5kbGUgbnVsbCB2YWx1ZSAjMTU2NlxuICBpZiAoIWEgfHwgIWIpIHsgcmV0dXJuIGEgPT09IGIgfVxuICB2YXIgYUtleXMgPSBPYmplY3Qua2V5cyhhKTtcbiAgdmFyIGJLZXlzID0gT2JqZWN0LmtleXMoYik7XG4gIGlmIChhS2V5cy5sZW5ndGggIT09IGJLZXlzLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIHJldHVybiBhS2V5cy5ldmVyeShmdW5jdGlvbiAoa2V5KSB7XG4gICAgdmFyIGFWYWwgPSBhW2tleV07XG4gICAgdmFyIGJWYWwgPSBiW2tleV07XG4gICAgLy8gY2hlY2sgbmVzdGVkIGVxdWFsaXR5XG4gICAgaWYgKHR5cGVvZiBhVmFsID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgYlZhbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBpc09iamVjdEVxdWFsKGFWYWwsIGJWYWwpXG4gICAgfVxuICAgIHJldHVybiBTdHJpbmcoYVZhbCkgPT09IFN0cmluZyhiVmFsKVxuICB9KVxufVxuXG5mdW5jdGlvbiBpc0luY2x1ZGVkUm91dGUgKGN1cnJlbnQsIHRhcmdldCkge1xuICByZXR1cm4gKFxuICAgIGN1cnJlbnQucGF0aC5yZXBsYWNlKHRyYWlsaW5nU2xhc2hSRSwgJy8nKS5pbmRleE9mKFxuICAgICAgdGFyZ2V0LnBhdGgucmVwbGFjZSh0cmFpbGluZ1NsYXNoUkUsICcvJylcbiAgICApID09PSAwICYmXG4gICAgKCF0YXJnZXQuaGFzaCB8fCBjdXJyZW50Lmhhc2ggPT09IHRhcmdldC5oYXNoKSAmJlxuICAgIHF1ZXJ5SW5jbHVkZXMoY3VycmVudC5xdWVyeSwgdGFyZ2V0LnF1ZXJ5KVxuICApXG59XG5cbmZ1bmN0aW9uIHF1ZXJ5SW5jbHVkZXMgKGN1cnJlbnQsIHRhcmdldCkge1xuICBmb3IgKHZhciBrZXkgaW4gdGFyZ2V0KSB7XG4gICAgaWYgKCEoa2V5IGluIGN1cnJlbnQpKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRydWVcbn1cblxuLyogICovXG5cbi8vIHdvcmsgYXJvdW5kIHdlaXJkIGZsb3cgYnVnXG52YXIgdG9UeXBlcyA9IFtTdHJpbmcsIE9iamVjdF07XG52YXIgZXZlbnRUeXBlcyA9IFtTdHJpbmcsIEFycmF5XTtcblxudmFyIExpbmsgPSB7XG4gIG5hbWU6ICdyb3V0ZXItbGluaycsXG4gIHByb3BzOiB7XG4gICAgdG86IHtcbiAgICAgIHR5cGU6IHRvVHlwZXMsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYSdcbiAgICB9LFxuICAgIGV4YWN0OiBCb29sZWFuLFxuICAgIGFwcGVuZDogQm9vbGVhbixcbiAgICByZXBsYWNlOiBCb29sZWFuLFxuICAgIGFjdGl2ZUNsYXNzOiBTdHJpbmcsXG4gICAgZXhhY3RBY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGV2ZW50OiB7XG4gICAgICB0eXBlOiBldmVudFR5cGVzLFxuICAgICAgZGVmYXVsdDogJ2NsaWNrJ1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIgKGgpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcblxuICAgIHZhciByb3V0ZXIgPSB0aGlzLiRyb3V0ZXI7XG4gICAgdmFyIGN1cnJlbnQgPSB0aGlzLiRyb3V0ZTtcbiAgICB2YXIgcmVmID0gcm91dGVyLnJlc29sdmUodGhpcy50bywgY3VycmVudCwgdGhpcy5hcHBlbmQpO1xuICAgIHZhciBsb2NhdGlvbiA9IHJlZi5sb2NhdGlvbjtcbiAgICB2YXIgcm91dGUgPSByZWYucm91dGU7XG4gICAgdmFyIGhyZWYgPSByZWYuaHJlZjtcblxuICAgIHZhciBjbGFzc2VzID0ge307XG4gICAgdmFyIGdsb2JhbEFjdGl2ZUNsYXNzID0gcm91dGVyLm9wdGlvbnMubGlua0FjdGl2ZUNsYXNzO1xuICAgIHZhciBnbG9iYWxFeGFjdEFjdGl2ZUNsYXNzID0gcm91dGVyLm9wdGlvbnMubGlua0V4YWN0QWN0aXZlQ2xhc3M7XG4gICAgLy8gU3VwcG9ydCBnbG9iYWwgZW1wdHkgYWN0aXZlIGNsYXNzXG4gICAgdmFyIGFjdGl2ZUNsYXNzRmFsbGJhY2sgPSBnbG9iYWxBY3RpdmVDbGFzcyA9PSBudWxsXG4gICAgICAgICAgICA/ICdyb3V0ZXItbGluay1hY3RpdmUnXG4gICAgICAgICAgICA6IGdsb2JhbEFjdGl2ZUNsYXNzO1xuICAgIHZhciBleGFjdEFjdGl2ZUNsYXNzRmFsbGJhY2sgPSBnbG9iYWxFeGFjdEFjdGl2ZUNsYXNzID09IG51bGxcbiAgICAgICAgICAgID8gJ3JvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSdcbiAgICAgICAgICAgIDogZ2xvYmFsRXhhY3RBY3RpdmVDbGFzcztcbiAgICB2YXIgYWN0aXZlQ2xhc3MgPSB0aGlzLmFjdGl2ZUNsYXNzID09IG51bGxcbiAgICAgICAgICAgID8gYWN0aXZlQ2xhc3NGYWxsYmFja1xuICAgICAgICAgICAgOiB0aGlzLmFjdGl2ZUNsYXNzO1xuICAgIHZhciBleGFjdEFjdGl2ZUNsYXNzID0gdGhpcy5leGFjdEFjdGl2ZUNsYXNzID09IG51bGxcbiAgICAgICAgICAgID8gZXhhY3RBY3RpdmVDbGFzc0ZhbGxiYWNrXG4gICAgICAgICAgICA6IHRoaXMuZXhhY3RBY3RpdmVDbGFzcztcbiAgICB2YXIgY29tcGFyZVRhcmdldCA9IGxvY2F0aW9uLnBhdGhcbiAgICAgID8gY3JlYXRlUm91dGUobnVsbCwgbG9jYXRpb24sIG51bGwsIHJvdXRlcilcbiAgICAgIDogcm91dGU7XG5cbiAgICBjbGFzc2VzW2V4YWN0QWN0aXZlQ2xhc3NdID0gaXNTYW1lUm91dGUoY3VycmVudCwgY29tcGFyZVRhcmdldCk7XG4gICAgY2xhc3Nlc1thY3RpdmVDbGFzc10gPSB0aGlzLmV4YWN0XG4gICAgICA/IGNsYXNzZXNbZXhhY3RBY3RpdmVDbGFzc11cbiAgICAgIDogaXNJbmNsdWRlZFJvdXRlKGN1cnJlbnQsIGNvbXBhcmVUYXJnZXQpO1xuXG4gICAgdmFyIGhhbmRsZXIgPSBmdW5jdGlvbiAoZSkge1xuICAgICAgaWYgKGd1YXJkRXZlbnQoZSkpIHtcbiAgICAgICAgaWYgKHRoaXMkMS5yZXBsYWNlKSB7XG4gICAgICAgICAgcm91dGVyLnJlcGxhY2UobG9jYXRpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJvdXRlci5wdXNoKGxvY2F0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICB2YXIgb24gPSB7IGNsaWNrOiBndWFyZEV2ZW50IH07XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5ldmVudCkpIHtcbiAgICAgIHRoaXMuZXZlbnQuZm9yRWFjaChmdW5jdGlvbiAoZSkgeyBvbltlXSA9IGhhbmRsZXI7IH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBvblt0aGlzLmV2ZW50XSA9IGhhbmRsZXI7XG4gICAgfVxuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBjbGFzczogY2xhc3Nlc1xuICAgIH07XG5cbiAgICBpZiAodGhpcy50YWcgPT09ICdhJykge1xuICAgICAgZGF0YS5vbiA9IG9uO1xuICAgICAgZGF0YS5hdHRycyA9IHsgaHJlZjogaHJlZiB9O1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBmaW5kIHRoZSBmaXJzdCA8YT4gY2hpbGQgYW5kIGFwcGx5IGxpc3RlbmVyIGFuZCBocmVmXG4gICAgICB2YXIgYSA9IGZpbmRBbmNob3IodGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gICAgICBpZiAoYSkge1xuICAgICAgICAvLyBpbiBjYXNlIHRoZSA8YT4gaXMgYSBzdGF0aWMgbm9kZVxuICAgICAgICBhLmlzU3RhdGljID0gZmFsc2U7XG4gICAgICAgIHZhciBleHRlbmQgPSBfVnVlLnV0aWwuZXh0ZW5kO1xuICAgICAgICB2YXIgYURhdGEgPSBhLmRhdGEgPSBleHRlbmQoe30sIGEuZGF0YSk7XG4gICAgICAgIGFEYXRhLm9uID0gb247XG4gICAgICAgIHZhciBhQXR0cnMgPSBhLmRhdGEuYXR0cnMgPSBleHRlbmQoe30sIGEuZGF0YS5hdHRycyk7XG4gICAgICAgIGFBdHRycy5ocmVmID0gaHJlZjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIGRvZXNuJ3QgaGF2ZSA8YT4gY2hpbGQsIGFwcGx5IGxpc3RlbmVyIHRvIHNlbGZcbiAgICAgICAgZGF0YS5vbiA9IG9uO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBoKHRoaXMudGFnLCBkYXRhLCB0aGlzLiRzbG90cy5kZWZhdWx0KVxuICB9XG59O1xuXG5mdW5jdGlvbiBndWFyZEV2ZW50IChlKSB7XG4gIC8vIGRvbid0IHJlZGlyZWN0IHdpdGggY29udHJvbCBrZXlzXG4gIGlmIChlLm1ldGFLZXkgfHwgZS5hbHRLZXkgfHwgZS5jdHJsS2V5IHx8IGUuc2hpZnRLZXkpIHsgcmV0dXJuIH1cbiAgLy8gZG9uJ3QgcmVkaXJlY3Qgd2hlbiBwcmV2ZW50RGVmYXVsdCBjYWxsZWRcbiAgaWYgKGUuZGVmYXVsdFByZXZlbnRlZCkgeyByZXR1cm4gfVxuICAvLyBkb24ndCByZWRpcmVjdCBvbiByaWdodCBjbGlja1xuICBpZiAoZS5idXR0b24gIT09IHVuZGVmaW5lZCAmJiBlLmJ1dHRvbiAhPT0gMCkgeyByZXR1cm4gfVxuICAvLyBkb24ndCByZWRpcmVjdCBpZiBgdGFyZ2V0PVwiX2JsYW5rXCJgXG4gIGlmIChlLmN1cnJlbnRUYXJnZXQgJiYgZS5jdXJyZW50VGFyZ2V0LmdldEF0dHJpYnV0ZSkge1xuICAgIHZhciB0YXJnZXQgPSBlLmN1cnJlbnRUYXJnZXQuZ2V0QXR0cmlidXRlKCd0YXJnZXQnKTtcbiAgICBpZiAoL1xcYl9ibGFua1xcYi9pLnRlc3QodGFyZ2V0KSkgeyByZXR1cm4gfVxuICB9XG4gIC8vIHRoaXMgbWF5IGJlIGEgV2VleCBldmVudCB3aGljaCBkb2Vzbid0IGhhdmUgdGhpcyBtZXRob2RcbiAgaWYgKGUucHJldmVudERlZmF1bHQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gIH1cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gZmluZEFuY2hvciAoY2hpbGRyZW4pIHtcbiAgaWYgKGNoaWxkcmVuKSB7XG4gICAgdmFyIGNoaWxkO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNoaWxkID0gY2hpbGRyZW5baV07XG4gICAgICBpZiAoY2hpbGQudGFnID09PSAnYScpIHtcbiAgICAgICAgcmV0dXJuIGNoaWxkXG4gICAgICB9XG4gICAgICBpZiAoY2hpbGQuY2hpbGRyZW4gJiYgKGNoaWxkID0gZmluZEFuY2hvcihjaGlsZC5jaGlsZHJlbikpKSB7XG4gICAgICAgIHJldHVybiBjaGlsZFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG52YXIgX1Z1ZTtcblxuZnVuY3Rpb24gaW5zdGFsbCAoVnVlKSB7XG4gIGlmIChpbnN0YWxsLmluc3RhbGxlZCAmJiBfVnVlID09PSBWdWUpIHsgcmV0dXJuIH1cbiAgaW5zdGFsbC5pbnN0YWxsZWQgPSB0cnVlO1xuXG4gIF9WdWUgPSBWdWU7XG5cbiAgdmFyIGlzRGVmID0gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHYgIT09IHVuZGVmaW5lZDsgfTtcblxuICB2YXIgcmVnaXN0ZXJJbnN0YW5jZSA9IGZ1bmN0aW9uICh2bSwgY2FsbFZhbCkge1xuICAgIHZhciBpID0gdm0uJG9wdGlvbnMuX3BhcmVudFZub2RlO1xuICAgIGlmIChpc0RlZihpKSAmJiBpc0RlZihpID0gaS5kYXRhKSAmJiBpc0RlZihpID0gaS5yZWdpc3RlclJvdXRlSW5zdGFuY2UpKSB7XG4gICAgICBpKHZtLCBjYWxsVmFsKTtcbiAgICB9XG4gIH07XG5cbiAgVnVlLm1peGluKHtcbiAgICBiZWZvcmVDcmVhdGU6IGZ1bmN0aW9uIGJlZm9yZUNyZWF0ZSAoKSB7XG4gICAgICBpZiAoaXNEZWYodGhpcy4kb3B0aW9ucy5yb3V0ZXIpKSB7XG4gICAgICAgIHRoaXMuX3JvdXRlclJvb3QgPSB0aGlzO1xuICAgICAgICB0aGlzLl9yb3V0ZXIgPSB0aGlzLiRvcHRpb25zLnJvdXRlcjtcbiAgICAgICAgdGhpcy5fcm91dGVyLmluaXQodGhpcyk7XG4gICAgICAgIFZ1ZS51dGlsLmRlZmluZVJlYWN0aXZlKHRoaXMsICdfcm91dGUnLCB0aGlzLl9yb3V0ZXIuaGlzdG9yeS5jdXJyZW50KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuX3JvdXRlclJvb3QgPSAodGhpcy4kcGFyZW50ICYmIHRoaXMuJHBhcmVudC5fcm91dGVyUm9vdCkgfHwgdGhpcztcbiAgICAgIH1cbiAgICAgIHJlZ2lzdGVySW5zdGFuY2UodGhpcywgdGhpcyk7XG4gICAgfSxcbiAgICBkZXN0cm95ZWQ6IGZ1bmN0aW9uIGRlc3Ryb3llZCAoKSB7XG4gICAgICByZWdpc3Rlckluc3RhbmNlKHRoaXMpO1xuICAgIH1cbiAgfSk7XG5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckcm91dGVyJywge1xuICAgIGdldDogZnVuY3Rpb24gZ2V0ICgpIHsgcmV0dXJuIHRoaXMuX3JvdXRlclJvb3QuX3JvdXRlciB9XG4gIH0pO1xuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShWdWUucHJvdG90eXBlLCAnJHJvdXRlJywge1xuICAgIGdldDogZnVuY3Rpb24gZ2V0ICgpIHsgcmV0dXJuIHRoaXMuX3JvdXRlclJvb3QuX3JvdXRlIH1cbiAgfSk7XG5cbiAgVnVlLmNvbXBvbmVudCgncm91dGVyLXZpZXcnLCBWaWV3KTtcbiAgVnVlLmNvbXBvbmVudCgncm91dGVyLWxpbmsnLCBMaW5rKTtcblxuICB2YXIgc3RyYXRzID0gVnVlLmNvbmZpZy5vcHRpb25NZXJnZVN0cmF0ZWdpZXM7XG4gIC8vIHVzZSB0aGUgc2FtZSBob29rIG1lcmdpbmcgc3RyYXRlZ3kgZm9yIHJvdXRlIGhvb2tzXG4gIHN0cmF0cy5iZWZvcmVSb3V0ZUVudGVyID0gc3RyYXRzLmJlZm9yZVJvdXRlTGVhdmUgPSBzdHJhdHMuYmVmb3JlUm91dGVVcGRhdGUgPSBzdHJhdHMuY3JlYXRlZDtcbn1cblxuLyogICovXG5cbnZhciBpbkJyb3dzZXIgPSB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJztcblxuLyogICovXG5cbmZ1bmN0aW9uIHJlc29sdmVQYXRoIChcbiAgcmVsYXRpdmUsXG4gIGJhc2UsXG4gIGFwcGVuZFxuKSB7XG4gIHZhciBmaXJzdENoYXIgPSByZWxhdGl2ZS5jaGFyQXQoMCk7XG4gIGlmIChmaXJzdENoYXIgPT09ICcvJykge1xuICAgIHJldHVybiByZWxhdGl2ZVxuICB9XG5cbiAgaWYgKGZpcnN0Q2hhciA9PT0gJz8nIHx8IGZpcnN0Q2hhciA9PT0gJyMnKSB7XG4gICAgcmV0dXJuIGJhc2UgKyByZWxhdGl2ZVxuICB9XG5cbiAgdmFyIHN0YWNrID0gYmFzZS5zcGxpdCgnLycpO1xuXG4gIC8vIHJlbW92ZSB0cmFpbGluZyBzZWdtZW50IGlmOlxuICAvLyAtIG5vdCBhcHBlbmRpbmdcbiAgLy8gLSBhcHBlbmRpbmcgdG8gdHJhaWxpbmcgc2xhc2ggKGxhc3Qgc2VnbWVudCBpcyBlbXB0eSlcbiAgaWYgKCFhcHBlbmQgfHwgIXN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdKSB7XG4gICAgc3RhY2sucG9wKCk7XG4gIH1cblxuICAvLyByZXNvbHZlIHJlbGF0aXZlIHBhdGhcbiAgdmFyIHNlZ21lbnRzID0gcmVsYXRpdmUucmVwbGFjZSgvXlxcLy8sICcnKS5zcGxpdCgnLycpO1xuICBmb3IgKHZhciBpID0gMDsgaSA8IHNlZ21lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHNlZ21lbnQgPSBzZWdtZW50c1tpXTtcbiAgICBpZiAoc2VnbWVudCA9PT0gJy4uJykge1xuICAgICAgc3RhY2sucG9wKCk7XG4gICAgfSBlbHNlIGlmIChzZWdtZW50ICE9PSAnLicpIHtcbiAgICAgIHN0YWNrLnB1c2goc2VnbWVudCk7XG4gICAgfVxuICB9XG5cbiAgLy8gZW5zdXJlIGxlYWRpbmcgc2xhc2hcbiAgaWYgKHN0YWNrWzBdICE9PSAnJykge1xuICAgIHN0YWNrLnVuc2hpZnQoJycpO1xuICB9XG5cbiAgcmV0dXJuIHN0YWNrLmpvaW4oJy8nKVxufVxuXG5mdW5jdGlvbiBwYXJzZVBhdGggKHBhdGgpIHtcbiAgdmFyIGhhc2ggPSAnJztcbiAgdmFyIHF1ZXJ5ID0gJyc7XG5cbiAgdmFyIGhhc2hJbmRleCA9IHBhdGguaW5kZXhPZignIycpO1xuICBpZiAoaGFzaEluZGV4ID49IDApIHtcbiAgICBoYXNoID0gcGF0aC5zbGljZShoYXNoSW5kZXgpO1xuICAgIHBhdGggPSBwYXRoLnNsaWNlKDAsIGhhc2hJbmRleCk7XG4gIH1cblxuICB2YXIgcXVlcnlJbmRleCA9IHBhdGguaW5kZXhPZignPycpO1xuICBpZiAocXVlcnlJbmRleCA+PSAwKSB7XG4gICAgcXVlcnkgPSBwYXRoLnNsaWNlKHF1ZXJ5SW5kZXggKyAxKTtcbiAgICBwYXRoID0gcGF0aC5zbGljZSgwLCBxdWVyeUluZGV4KTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgcGF0aDogcGF0aCxcbiAgICBxdWVyeTogcXVlcnksXG4gICAgaGFzaDogaGFzaFxuICB9XG59XG5cbmZ1bmN0aW9uIGNsZWFuUGF0aCAocGF0aCkge1xuICByZXR1cm4gcGF0aC5yZXBsYWNlKC9cXC9cXC8vZywgJy8nKVxufVxuXG52YXIgaXNhcnJheSA9IEFycmF5LmlzQXJyYXkgfHwgZnVuY3Rpb24gKGFycikge1xuICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGFycikgPT0gJ1tvYmplY3QgQXJyYXldJztcbn07XG5cbi8qKlxuICogRXhwb3NlIGBwYXRoVG9SZWdleHBgLlxuICovXG52YXIgcGF0aFRvUmVnZXhwXzEgPSBwYXRoVG9SZWdleHA7XG52YXIgcGFyc2VfMSA9IHBhcnNlO1xudmFyIGNvbXBpbGVfMSA9IGNvbXBpbGU7XG52YXIgdG9rZW5zVG9GdW5jdGlvbl8xID0gdG9rZW5zVG9GdW5jdGlvbjtcbnZhciB0b2tlbnNUb1JlZ0V4cF8xID0gdG9rZW5zVG9SZWdFeHA7XG5cbi8qKlxuICogVGhlIG1haW4gcGF0aCBtYXRjaGluZyByZWdleHAgdXRpbGl0eS5cbiAqXG4gKiBAdHlwZSB7UmVnRXhwfVxuICovXG52YXIgUEFUSF9SRUdFWFAgPSBuZXcgUmVnRXhwKFtcbiAgLy8gTWF0Y2ggZXNjYXBlZCBjaGFyYWN0ZXJzIHRoYXQgd291bGQgb3RoZXJ3aXNlIGFwcGVhciBpbiBmdXR1cmUgbWF0Y2hlcy5cbiAgLy8gVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG8gZXNjYXBlIHNwZWNpYWwgY2hhcmFjdGVycyB0aGF0IHdvbid0IHRyYW5zZm9ybS5cbiAgJyhcXFxcXFxcXC4pJyxcbiAgLy8gTWF0Y2ggRXhwcmVzcy1zdHlsZSBwYXJhbWV0ZXJzIGFuZCB1bi1uYW1lZCBwYXJhbWV0ZXJzIHdpdGggYSBwcmVmaXhcbiAgLy8gYW5kIG9wdGlvbmFsIHN1ZmZpeGVzLiBNYXRjaGVzIGFwcGVhciBhczpcbiAgLy9cbiAgLy8gXCIvOnRlc3QoXFxcXGQrKT9cIiA9PiBbXCIvXCIsIFwidGVzdFwiLCBcIlxcZCtcIiwgdW5kZWZpbmVkLCBcIj9cIiwgdW5kZWZpbmVkXVxuICAvLyBcIi9yb3V0ZShcXFxcZCspXCIgID0+IFt1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBcIlxcZCtcIiwgdW5kZWZpbmVkLCB1bmRlZmluZWRdXG4gIC8vIFwiLypcIiAgICAgICAgICAgID0+IFtcIi9cIiwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBcIipcIl1cbiAgJyhbXFxcXC8uXSk/KD86KD86XFxcXDooXFxcXHcrKSg/OlxcXFwoKCg/OlxcXFxcXFxcLnxbXlxcXFxcXFxcKCldKSspXFxcXCkpP3xcXFxcKCgoPzpcXFxcXFxcXC58W15cXFxcXFxcXCgpXSkrKVxcXFwpKShbKyo/XSk/fChcXFxcKikpJ1xuXS5qb2luKCd8JyksICdnJyk7XG5cbi8qKlxuICogUGFyc2UgYSBzdHJpbmcgZm9yIHRoZSByYXcgdG9rZW5zLlxuICpcbiAqIEBwYXJhbSAge3N0cmluZ30gIHN0clxuICogQHBhcmFtICB7T2JqZWN0PX0gb3B0aW9uc1xuICogQHJldHVybiB7IUFycmF5fVxuICovXG5mdW5jdGlvbiBwYXJzZSAoc3RyLCBvcHRpb25zKSB7XG4gIHZhciB0b2tlbnMgPSBbXTtcbiAgdmFyIGtleSA9IDA7XG4gIHZhciBpbmRleCA9IDA7XG4gIHZhciBwYXRoID0gJyc7XG4gIHZhciBkZWZhdWx0RGVsaW1pdGVyID0gb3B0aW9ucyAmJiBvcHRpb25zLmRlbGltaXRlciB8fCAnLyc7XG4gIHZhciByZXM7XG5cbiAgd2hpbGUgKChyZXMgPSBQQVRIX1JFR0VYUC5leGVjKHN0cikpICE9IG51bGwpIHtcbiAgICB2YXIgbSA9IHJlc1swXTtcbiAgICB2YXIgZXNjYXBlZCA9IHJlc1sxXTtcbiAgICB2YXIgb2Zmc2V0ID0gcmVzLmluZGV4O1xuICAgIHBhdGggKz0gc3RyLnNsaWNlKGluZGV4LCBvZmZzZXQpO1xuICAgIGluZGV4ID0gb2Zmc2V0ICsgbS5sZW5ndGg7XG5cbiAgICAvLyBJZ25vcmUgYWxyZWFkeSBlc2NhcGVkIHNlcXVlbmNlcy5cbiAgICBpZiAoZXNjYXBlZCkge1xuICAgICAgcGF0aCArPSBlc2NhcGVkWzFdO1xuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICB2YXIgbmV4dCA9IHN0cltpbmRleF07XG4gICAgdmFyIHByZWZpeCA9IHJlc1syXTtcbiAgICB2YXIgbmFtZSA9IHJlc1szXTtcbiAgICB2YXIgY2FwdHVyZSA9IHJlc1s0XTtcbiAgICB2YXIgZ3JvdXAgPSByZXNbNV07XG4gICAgdmFyIG1vZGlmaWVyID0gcmVzWzZdO1xuICAgIHZhciBhc3RlcmlzayA9IHJlc1s3XTtcblxuICAgIC8vIFB1c2ggdGhlIGN1cnJlbnQgcGF0aCBvbnRvIHRoZSB0b2tlbnMuXG4gICAgaWYgKHBhdGgpIHtcbiAgICAgIHRva2Vucy5wdXNoKHBhdGgpO1xuICAgICAgcGF0aCA9ICcnO1xuICAgIH1cblxuICAgIHZhciBwYXJ0aWFsID0gcHJlZml4ICE9IG51bGwgJiYgbmV4dCAhPSBudWxsICYmIG5leHQgIT09IHByZWZpeDtcbiAgICB2YXIgcmVwZWF0ID0gbW9kaWZpZXIgPT09ICcrJyB8fCBtb2RpZmllciA9PT0gJyonO1xuICAgIHZhciBvcHRpb25hbCA9IG1vZGlmaWVyID09PSAnPycgfHwgbW9kaWZpZXIgPT09ICcqJztcbiAgICB2YXIgZGVsaW1pdGVyID0gcmVzWzJdIHx8IGRlZmF1bHREZWxpbWl0ZXI7XG4gICAgdmFyIHBhdHRlcm4gPSBjYXB0dXJlIHx8IGdyb3VwO1xuXG4gICAgdG9rZW5zLnB1c2goe1xuICAgICAgbmFtZTogbmFtZSB8fCBrZXkrKyxcbiAgICAgIHByZWZpeDogcHJlZml4IHx8ICcnLFxuICAgICAgZGVsaW1pdGVyOiBkZWxpbWl0ZXIsXG4gICAgICBvcHRpb25hbDogb3B0aW9uYWwsXG4gICAgICByZXBlYXQ6IHJlcGVhdCxcbiAgICAgIHBhcnRpYWw6IHBhcnRpYWwsXG4gICAgICBhc3RlcmlzazogISFhc3RlcmlzayxcbiAgICAgIHBhdHRlcm46IHBhdHRlcm4gPyBlc2NhcGVHcm91cChwYXR0ZXJuKSA6IChhc3RlcmlzayA/ICcuKicgOiAnW14nICsgZXNjYXBlU3RyaW5nKGRlbGltaXRlcikgKyAnXSs/JylcbiAgICB9KTtcbiAgfVxuXG4gIC8vIE1hdGNoIGFueSBjaGFyYWN0ZXJzIHN0aWxsIHJlbWFpbmluZy5cbiAgaWYgKGluZGV4IDwgc3RyLmxlbmd0aCkge1xuICAgIHBhdGggKz0gc3RyLnN1YnN0cihpbmRleCk7XG4gIH1cblxuICAvLyBJZiB0aGUgcGF0aCBleGlzdHMsIHB1c2ggaXQgb250byB0aGUgZW5kLlxuICBpZiAocGF0aCkge1xuICAgIHRva2Vucy5wdXNoKHBhdGgpO1xuICB9XG5cbiAgcmV0dXJuIHRva2Vuc1xufVxuXG4vKipcbiAqIENvbXBpbGUgYSBzdHJpbmcgdG8gYSB0ZW1wbGF0ZSBmdW5jdGlvbiBmb3IgdGhlIHBhdGguXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSAgICAgICAgICAgICBzdHJcbiAqIEBwYXJhbSAge09iamVjdD19ICAgICAgICAgICAgb3B0aW9uc1xuICogQHJldHVybiB7IWZ1bmN0aW9uKE9iamVjdD0sIE9iamVjdD0pfVxuICovXG5mdW5jdGlvbiBjb21waWxlIChzdHIsIG9wdGlvbnMpIHtcbiAgcmV0dXJuIHRva2Vuc1RvRnVuY3Rpb24ocGFyc2Uoc3RyLCBvcHRpb25zKSlcbn1cblxuLyoqXG4gKiBQcmV0dGllciBlbmNvZGluZyBvZiBVUkkgcGF0aCBzZWdtZW50cy5cbiAqXG4gKiBAcGFyYW0gIHtzdHJpbmd9XG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIGVuY29kZVVSSUNvbXBvbmVudFByZXR0eSAoc3RyKSB7XG4gIHJldHVybiBlbmNvZGVVUkkoc3RyKS5yZXBsYWNlKC9bXFwvPyNdL2csIGZ1bmN0aW9uIChjKSB7XG4gICAgcmV0dXJuICclJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKVxuICB9KVxufVxuXG4vKipcbiAqIEVuY29kZSB0aGUgYXN0ZXJpc2sgcGFyYW1ldGVyLiBTaW1pbGFyIHRvIGBwcmV0dHlgLCBidXQgYWxsb3dzIHNsYXNoZXMuXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfVxuICogQHJldHVybiB7c3RyaW5nfVxuICovXG5mdW5jdGlvbiBlbmNvZGVBc3RlcmlzayAoc3RyKSB7XG4gIHJldHVybiBlbmNvZGVVUkkoc3RyKS5yZXBsYWNlKC9bPyNdL2csIGZ1bmN0aW9uIChjKSB7XG4gICAgcmV0dXJuICclJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKVxuICB9KVxufVxuXG4vKipcbiAqIEV4cG9zZSBhIG1ldGhvZCBmb3IgdHJhbnNmb3JtaW5nIHRva2VucyBpbnRvIHRoZSBwYXRoIGZ1bmN0aW9uLlxuICovXG5mdW5jdGlvbiB0b2tlbnNUb0Z1bmN0aW9uICh0b2tlbnMpIHtcbiAgLy8gQ29tcGlsZSBhbGwgdGhlIHRva2VucyBpbnRvIHJlZ2V4cHMuXG4gIHZhciBtYXRjaGVzID0gbmV3IEFycmF5KHRva2Vucy5sZW5ndGgpO1xuXG4gIC8vIENvbXBpbGUgYWxsIHRoZSBwYXR0ZXJucyBiZWZvcmUgY29tcGlsYXRpb24uXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgdG9rZW5zLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKHR5cGVvZiB0b2tlbnNbaV0gPT09ICdvYmplY3QnKSB7XG4gICAgICBtYXRjaGVzW2ldID0gbmV3IFJlZ0V4cCgnXig/OicgKyB0b2tlbnNbaV0ucGF0dGVybiArICcpJCcpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmdW5jdGlvbiAob2JqLCBvcHRzKSB7XG4gICAgdmFyIHBhdGggPSAnJztcbiAgICB2YXIgZGF0YSA9IG9iaiB8fCB7fTtcbiAgICB2YXIgb3B0aW9ucyA9IG9wdHMgfHwge307XG4gICAgdmFyIGVuY29kZSA9IG9wdGlvbnMucHJldHR5ID8gZW5jb2RlVVJJQ29tcG9uZW50UHJldHR5IDogZW5jb2RlVVJJQ29tcG9uZW50O1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0b2tlbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciB0b2tlbiA9IHRva2Vuc1tpXTtcblxuICAgICAgaWYgKHR5cGVvZiB0b2tlbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcGF0aCArPSB0b2tlbjtcblxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICB2YXIgdmFsdWUgPSBkYXRhW3Rva2VuLm5hbWVdO1xuICAgICAgdmFyIHNlZ21lbnQ7XG5cbiAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGlmICh0b2tlbi5vcHRpb25hbCkge1xuICAgICAgICAgIC8vIFByZXBlbmQgcGFydGlhbCBzZWdtZW50IHByZWZpeGVzLlxuICAgICAgICAgIGlmICh0b2tlbi5wYXJ0aWFsKSB7XG4gICAgICAgICAgICBwYXRoICs9IHRva2VuLnByZWZpeDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb250aW51ZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIFwiJyArIHRva2VuLm5hbWUgKyAnXCIgdG8gYmUgZGVmaW5lZCcpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGlzYXJyYXkodmFsdWUpKSB7XG4gICAgICAgIGlmICghdG9rZW4ucmVwZWF0KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignRXhwZWN0ZWQgXCInICsgdG9rZW4ubmFtZSArICdcIiB0byBub3QgcmVwZWF0LCBidXQgcmVjZWl2ZWQgYCcgKyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgKyAnYCcpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgaWYgKHRva2VuLm9wdGlvbmFsKSB7XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdFeHBlY3RlZCBcIicgKyB0b2tlbi5uYW1lICsgJ1wiIHRvIG5vdCBiZSBlbXB0eScpXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCB2YWx1ZS5sZW5ndGg7IGorKykge1xuICAgICAgICAgIHNlZ21lbnQgPSBlbmNvZGUodmFsdWVbal0pO1xuXG4gICAgICAgICAgaWYgKCFtYXRjaGVzW2ldLnRlc3Qoc2VnbWVudCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIGFsbCBcIicgKyB0b2tlbi5uYW1lICsgJ1wiIHRvIG1hdGNoIFwiJyArIHRva2VuLnBhdHRlcm4gKyAnXCIsIGJ1dCByZWNlaXZlZCBgJyArIEpTT04uc3RyaW5naWZ5KHNlZ21lbnQpICsgJ2AnKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHBhdGggKz0gKGogPT09IDAgPyB0b2tlbi5wcmVmaXggOiB0b2tlbi5kZWxpbWl0ZXIpICsgc2VnbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIHNlZ21lbnQgPSB0b2tlbi5hc3RlcmlzayA/IGVuY29kZUFzdGVyaXNrKHZhbHVlKSA6IGVuY29kZSh2YWx1ZSk7XG5cbiAgICAgIGlmICghbWF0Y2hlc1tpXS50ZXN0KHNlZ21lbnQpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIFwiJyArIHRva2VuLm5hbWUgKyAnXCIgdG8gbWF0Y2ggXCInICsgdG9rZW4ucGF0dGVybiArICdcIiwgYnV0IHJlY2VpdmVkIFwiJyArIHNlZ21lbnQgKyAnXCInKVxuICAgICAgfVxuXG4gICAgICBwYXRoICs9IHRva2VuLnByZWZpeCArIHNlZ21lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGhcbiAgfVxufVxuXG4vKipcbiAqIEVzY2FwZSBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBzdHJpbmcuXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSBzdHJcbiAqIEByZXR1cm4ge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gZXNjYXBlU3RyaW5nIChzdHIpIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC8oWy4rKj89XiE6JHt9KClbXFxdfFxcL1xcXFxdKS9nLCAnXFxcXCQxJylcbn1cblxuLyoqXG4gKiBFc2NhcGUgdGhlIGNhcHR1cmluZyBncm91cCBieSBlc2NhcGluZyBzcGVjaWFsIGNoYXJhY3RlcnMgYW5kIG1lYW5pbmcuXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSBncm91cFxuICogQHJldHVybiB7c3RyaW5nfVxuICovXG5mdW5jdGlvbiBlc2NhcGVHcm91cCAoZ3JvdXApIHtcbiAgcmV0dXJuIGdyb3VwLnJlcGxhY2UoLyhbPSE6JFxcLygpXSkvZywgJ1xcXFwkMScpXG59XG5cbi8qKlxuICogQXR0YWNoIHRoZSBrZXlzIGFzIGEgcHJvcGVydHkgb2YgdGhlIHJlZ2V4cC5cbiAqXG4gKiBAcGFyYW0gIHshUmVnRXhwfSByZVxuICogQHBhcmFtICB7QXJyYXl9ICAga2V5c1xuICogQHJldHVybiB7IVJlZ0V4cH1cbiAqL1xuZnVuY3Rpb24gYXR0YWNoS2V5cyAocmUsIGtleXMpIHtcbiAgcmUua2V5cyA9IGtleXM7XG4gIHJldHVybiByZVxufVxuXG4vKipcbiAqIEdldCB0aGUgZmxhZ3MgZm9yIGEgcmVnZXhwIGZyb20gdGhlIG9wdGlvbnMuXG4gKlxuICogQHBhcmFtICB7T2JqZWN0fSBvcHRpb25zXG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIGZsYWdzIChvcHRpb25zKSB7XG4gIHJldHVybiBvcHRpb25zLnNlbnNpdGl2ZSA/ICcnIDogJ2knXG59XG5cbi8qKlxuICogUHVsbCBvdXQga2V5cyBmcm9tIGEgcmVnZXhwLlxuICpcbiAqIEBwYXJhbSAgeyFSZWdFeHB9IHBhdGhcbiAqIEBwYXJhbSAgeyFBcnJheX0gIGtleXNcbiAqIEByZXR1cm4geyFSZWdFeHB9XG4gKi9cbmZ1bmN0aW9uIHJlZ2V4cFRvUmVnZXhwIChwYXRoLCBrZXlzKSB7XG4gIC8vIFVzZSBhIG5lZ2F0aXZlIGxvb2thaGVhZCB0byBtYXRjaCBvbmx5IGNhcHR1cmluZyBncm91cHMuXG4gIHZhciBncm91cHMgPSBwYXRoLnNvdXJjZS5tYXRjaCgvXFwoKD8hXFw/KS9nKTtcblxuICBpZiAoZ3JvdXBzKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBncm91cHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGtleXMucHVzaCh7XG4gICAgICAgIG5hbWU6IGksXG4gICAgICAgIHByZWZpeDogbnVsbCxcbiAgICAgICAgZGVsaW1pdGVyOiBudWxsLFxuICAgICAgICBvcHRpb25hbDogZmFsc2UsXG4gICAgICAgIHJlcGVhdDogZmFsc2UsXG4gICAgICAgIHBhcnRpYWw6IGZhbHNlLFxuICAgICAgICBhc3RlcmlzazogZmFsc2UsXG4gICAgICAgIHBhdHRlcm46IG51bGxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhdHRhY2hLZXlzKHBhdGgsIGtleXMpXG59XG5cbi8qKlxuICogVHJhbnNmb3JtIGFuIGFycmF5IGludG8gYSByZWdleHAuXG4gKlxuICogQHBhcmFtICB7IUFycmF5fSAgcGF0aFxuICogQHBhcmFtICB7QXJyYXl9ICAga2V5c1xuICogQHBhcmFtICB7IU9iamVjdH0gb3B0aW9uc1xuICogQHJldHVybiB7IVJlZ0V4cH1cbiAqL1xuZnVuY3Rpb24gYXJyYXlUb1JlZ2V4cCAocGF0aCwga2V5cywgb3B0aW9ucykge1xuICB2YXIgcGFydHMgPSBbXTtcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IHBhdGgubGVuZ3RoOyBpKyspIHtcbiAgICBwYXJ0cy5wdXNoKHBhdGhUb1JlZ2V4cChwYXRoW2ldLCBrZXlzLCBvcHRpb25zKS5zb3VyY2UpO1xuICB9XG5cbiAgdmFyIHJlZ2V4cCA9IG5ldyBSZWdFeHAoJyg/OicgKyBwYXJ0cy5qb2luKCd8JykgKyAnKScsIGZsYWdzKG9wdGlvbnMpKTtcblxuICByZXR1cm4gYXR0YWNoS2V5cyhyZWdleHAsIGtleXMpXG59XG5cbi8qKlxuICogQ3JlYXRlIGEgcGF0aCByZWdleHAgZnJvbSBzdHJpbmcgaW5wdXQuXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSAgcGF0aFxuICogQHBhcmFtICB7IUFycmF5fSAga2V5c1xuICogQHBhcmFtICB7IU9iamVjdH0gb3B0aW9uc1xuICogQHJldHVybiB7IVJlZ0V4cH1cbiAqL1xuZnVuY3Rpb24gc3RyaW5nVG9SZWdleHAgKHBhdGgsIGtleXMsIG9wdGlvbnMpIHtcbiAgcmV0dXJuIHRva2Vuc1RvUmVnRXhwKHBhcnNlKHBhdGgsIG9wdGlvbnMpLCBrZXlzLCBvcHRpb25zKVxufVxuXG4vKipcbiAqIEV4cG9zZSBhIGZ1bmN0aW9uIGZvciB0YWtpbmcgdG9rZW5zIGFuZCByZXR1cm5pbmcgYSBSZWdFeHAuXG4gKlxuICogQHBhcmFtICB7IUFycmF5fSAgICAgICAgICB0b2tlbnNcbiAqIEBwYXJhbSAgeyhBcnJheXxPYmplY3QpPX0ga2V5c1xuICogQHBhcmFtICB7T2JqZWN0PX0gICAgICAgICBvcHRpb25zXG4gKiBAcmV0dXJuIHshUmVnRXhwfVxuICovXG5mdW5jdGlvbiB0b2tlbnNUb1JlZ0V4cCAodG9rZW5zLCBrZXlzLCBvcHRpb25zKSB7XG4gIGlmICghaXNhcnJheShrZXlzKSkge1xuICAgIG9wdGlvbnMgPSAvKiogQHR5cGUgeyFPYmplY3R9ICovIChrZXlzIHx8IG9wdGlvbnMpO1xuICAgIGtleXMgPSBbXTtcbiAgfVxuXG4gIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xuXG4gIHZhciBzdHJpY3QgPSBvcHRpb25zLnN0cmljdDtcbiAgdmFyIGVuZCA9IG9wdGlvbnMuZW5kICE9PSBmYWxzZTtcbiAgdmFyIHJvdXRlID0gJyc7XG5cbiAgLy8gSXRlcmF0ZSBvdmVyIHRoZSB0b2tlbnMgYW5kIGNyZWF0ZSBvdXIgcmVnZXhwIHN0cmluZy5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCB0b2tlbnMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgdG9rZW4gPSB0b2tlbnNbaV07XG5cbiAgICBpZiAodHlwZW9mIHRva2VuID09PSAnc3RyaW5nJykge1xuICAgICAgcm91dGUgKz0gZXNjYXBlU3RyaW5nKHRva2VuKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIHByZWZpeCA9IGVzY2FwZVN0cmluZyh0b2tlbi5wcmVmaXgpO1xuICAgICAgdmFyIGNhcHR1cmUgPSAnKD86JyArIHRva2VuLnBhdHRlcm4gKyAnKSc7XG5cbiAgICAgIGtleXMucHVzaCh0b2tlbik7XG5cbiAgICAgIGlmICh0b2tlbi5yZXBlYXQpIHtcbiAgICAgICAgY2FwdHVyZSArPSAnKD86JyArIHByZWZpeCArIGNhcHR1cmUgKyAnKSonO1xuICAgICAgfVxuXG4gICAgICBpZiAodG9rZW4ub3B0aW9uYWwpIHtcbiAgICAgICAgaWYgKCF0b2tlbi5wYXJ0aWFsKSB7XG4gICAgICAgICAgY2FwdHVyZSA9ICcoPzonICsgcHJlZml4ICsgJygnICsgY2FwdHVyZSArICcpKT8nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNhcHR1cmUgPSBwcmVmaXggKyAnKCcgKyBjYXB0dXJlICsgJyk/JztcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FwdHVyZSA9IHByZWZpeCArICcoJyArIGNhcHR1cmUgKyAnKSc7XG4gICAgICB9XG5cbiAgICAgIHJvdXRlICs9IGNhcHR1cmU7XG4gICAgfVxuICB9XG5cbiAgdmFyIGRlbGltaXRlciA9IGVzY2FwZVN0cmluZyhvcHRpb25zLmRlbGltaXRlciB8fCAnLycpO1xuICB2YXIgZW5kc1dpdGhEZWxpbWl0ZXIgPSByb3V0ZS5zbGljZSgtZGVsaW1pdGVyLmxlbmd0aCkgPT09IGRlbGltaXRlcjtcblxuICAvLyBJbiBub24tc3RyaWN0IG1vZGUgd2UgYWxsb3cgYSBzbGFzaCBhdCB0aGUgZW5kIG9mIG1hdGNoLiBJZiB0aGUgcGF0aCB0b1xuICAvLyBtYXRjaCBhbHJlYWR5IGVuZHMgd2l0aCBhIHNsYXNoLCB3ZSByZW1vdmUgaXQgZm9yIGNvbnNpc3RlbmN5LiBUaGUgc2xhc2hcbiAgLy8gaXMgdmFsaWQgYXQgdGhlIGVuZCBvZiBhIHBhdGggbWF0Y2gsIG5vdCBpbiB0aGUgbWlkZGxlLiBUaGlzIGlzIGltcG9ydGFudFxuICAvLyBpbiBub24tZW5kaW5nIG1vZGUsIHdoZXJlIFwiL3Rlc3QvXCIgc2hvdWxkbid0IG1hdGNoIFwiL3Rlc3QvL3JvdXRlXCIuXG4gIGlmICghc3RyaWN0KSB7XG4gICAgcm91dGUgPSAoZW5kc1dpdGhEZWxpbWl0ZXIgPyByb3V0ZS5zbGljZSgwLCAtZGVsaW1pdGVyLmxlbmd0aCkgOiByb3V0ZSkgKyAnKD86JyArIGRlbGltaXRlciArICcoPz0kKSk/JztcbiAgfVxuXG4gIGlmIChlbmQpIHtcbiAgICByb3V0ZSArPSAnJCc7XG4gIH0gZWxzZSB7XG4gICAgLy8gSW4gbm9uLWVuZGluZyBtb2RlLCB3ZSBuZWVkIHRoZSBjYXB0dXJpbmcgZ3JvdXBzIHRvIG1hdGNoIGFzIG11Y2ggYXNcbiAgICAvLyBwb3NzaWJsZSBieSB1c2luZyBhIHBvc2l0aXZlIGxvb2thaGVhZCB0byB0aGUgZW5kIG9yIG5leHQgcGF0aCBzZWdtZW50LlxuICAgIHJvdXRlICs9IHN0cmljdCAmJiBlbmRzV2l0aERlbGltaXRlciA/ICcnIDogJyg/PScgKyBkZWxpbWl0ZXIgKyAnfCQpJztcbiAgfVxuXG4gIHJldHVybiBhdHRhY2hLZXlzKG5ldyBSZWdFeHAoJ14nICsgcm91dGUsIGZsYWdzKG9wdGlvbnMpKSwga2V5cylcbn1cblxuLyoqXG4gKiBOb3JtYWxpemUgdGhlIGdpdmVuIHBhdGggc3RyaW5nLCByZXR1cm5pbmcgYSByZWd1bGFyIGV4cHJlc3Npb24uXG4gKlxuICogQW4gZW1wdHkgYXJyYXkgY2FuIGJlIHBhc3NlZCBpbiBmb3IgdGhlIGtleXMsIHdoaWNoIHdpbGwgaG9sZCB0aGVcbiAqIHBsYWNlaG9sZGVyIGtleSBkZXNjcmlwdGlvbnMuIEZvciBleGFtcGxlLCB1c2luZyBgL3VzZXIvOmlkYCwgYGtleXNgIHdpbGxcbiAqIGNvbnRhaW4gYFt7IG5hbWU6ICdpZCcsIGRlbGltaXRlcjogJy8nLCBvcHRpb25hbDogZmFsc2UsIHJlcGVhdDogZmFsc2UgfV1gLlxuICpcbiAqIEBwYXJhbSAgeyhzdHJpbmd8UmVnRXhwfEFycmF5KX0gcGF0aFxuICogQHBhcmFtICB7KEFycmF5fE9iamVjdCk9fSAgICAgICBrZXlzXG4gKiBAcGFyYW0gIHtPYmplY3Q9fSAgICAgICAgICAgICAgIG9wdGlvbnNcbiAqIEByZXR1cm4geyFSZWdFeHB9XG4gKi9cbmZ1bmN0aW9uIHBhdGhUb1JlZ2V4cCAocGF0aCwga2V5cywgb3B0aW9ucykge1xuICBpZiAoIWlzYXJyYXkoa2V5cykpIHtcbiAgICBvcHRpb25zID0gLyoqIEB0eXBlIHshT2JqZWN0fSAqLyAoa2V5cyB8fCBvcHRpb25zKTtcbiAgICBrZXlzID0gW107XG4gIH1cblxuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcblxuICBpZiAocGF0aCBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgIHJldHVybiByZWdleHBUb1JlZ2V4cChwYXRoLCAvKiogQHR5cGUgeyFBcnJheX0gKi8gKGtleXMpKVxuICB9XG5cbiAgaWYgKGlzYXJyYXkocGF0aCkpIHtcbiAgICByZXR1cm4gYXJyYXlUb1JlZ2V4cCgvKiogQHR5cGUgeyFBcnJheX0gKi8gKHBhdGgpLCAvKiogQHR5cGUgeyFBcnJheX0gKi8gKGtleXMpLCBvcHRpb25zKVxuICB9XG5cbiAgcmV0dXJuIHN0cmluZ1RvUmVnZXhwKC8qKiBAdHlwZSB7c3RyaW5nfSAqLyAocGF0aCksIC8qKiBAdHlwZSB7IUFycmF5fSAqLyAoa2V5cyksIG9wdGlvbnMpXG59XG5cbnBhdGhUb1JlZ2V4cF8xLnBhcnNlID0gcGFyc2VfMTtcbnBhdGhUb1JlZ2V4cF8xLmNvbXBpbGUgPSBjb21waWxlXzE7XG5wYXRoVG9SZWdleHBfMS50b2tlbnNUb0Z1bmN0aW9uID0gdG9rZW5zVG9GdW5jdGlvbl8xO1xucGF0aFRvUmVnZXhwXzEudG9rZW5zVG9SZWdFeHAgPSB0b2tlbnNUb1JlZ0V4cF8xO1xuXG4vKiAgKi9cblxuLy8gJGZsb3ctZGlzYWJsZS1saW5lXG52YXIgcmVnZXhwQ29tcGlsZUNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcblxuZnVuY3Rpb24gZmlsbFBhcmFtcyAoXG4gIHBhdGgsXG4gIHBhcmFtcyxcbiAgcm91dGVNc2dcbikge1xuICB0cnkge1xuICAgIHZhciBmaWxsZXIgPVxuICAgICAgcmVnZXhwQ29tcGlsZUNhY2hlW3BhdGhdIHx8XG4gICAgICAocmVnZXhwQ29tcGlsZUNhY2hlW3BhdGhdID0gcGF0aFRvUmVnZXhwXzEuY29tcGlsZShwYXRoKSk7XG4gICAgcmV0dXJuIGZpbGxlcihwYXJhbXMgfHwge30sIHsgcHJldHR5OiB0cnVlIH0pXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgd2FybihmYWxzZSwgKFwibWlzc2luZyBwYXJhbSBmb3IgXCIgKyByb3V0ZU1zZyArIFwiOiBcIiArIChlLm1lc3NhZ2UpKSk7XG4gICAgfVxuICAgIHJldHVybiAnJ1xuICB9XG59XG5cbi8qICAqL1xuXG5mdW5jdGlvbiBjcmVhdGVSb3V0ZU1hcCAoXG4gIHJvdXRlcyxcbiAgb2xkUGF0aExpc3QsXG4gIG9sZFBhdGhNYXAsXG4gIG9sZE5hbWVNYXBcbikge1xuICAvLyB0aGUgcGF0aCBsaXN0IGlzIHVzZWQgdG8gY29udHJvbCBwYXRoIG1hdGNoaW5nIHByaW9yaXR5XG4gIHZhciBwYXRoTGlzdCA9IG9sZFBhdGhMaXN0IHx8IFtdO1xuICAvLyAkZmxvdy1kaXNhYmxlLWxpbmVcbiAgdmFyIHBhdGhNYXAgPSBvbGRQYXRoTWFwIHx8IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIC8vICRmbG93LWRpc2FibGUtbGluZVxuICB2YXIgbmFtZU1hcCA9IG9sZE5hbWVNYXAgfHwgT2JqZWN0LmNyZWF0ZShudWxsKTtcblxuICByb3V0ZXMuZm9yRWFjaChmdW5jdGlvbiAocm91dGUpIHtcbiAgICBhZGRSb3V0ZVJlY29yZChwYXRoTGlzdCwgcGF0aE1hcCwgbmFtZU1hcCwgcm91dGUpO1xuICB9KTtcblxuICAvLyBlbnN1cmUgd2lsZGNhcmQgcm91dGVzIGFyZSBhbHdheXMgYXQgdGhlIGVuZFxuICBmb3IgKHZhciBpID0gMCwgbCA9IHBhdGhMaXN0Lmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGlmIChwYXRoTGlzdFtpXSA9PT0gJyonKSB7XG4gICAgICBwYXRoTGlzdC5wdXNoKHBhdGhMaXN0LnNwbGljZShpLCAxKVswXSk7XG4gICAgICBsLS07XG4gICAgICBpLS07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBwYXRoTGlzdDogcGF0aExpc3QsXG4gICAgcGF0aE1hcDogcGF0aE1hcCxcbiAgICBuYW1lTWFwOiBuYW1lTWFwXG4gIH1cbn1cblxuZnVuY3Rpb24gYWRkUm91dGVSZWNvcmQgKFxuICBwYXRoTGlzdCxcbiAgcGF0aE1hcCxcbiAgbmFtZU1hcCxcbiAgcm91dGUsXG4gIHBhcmVudCxcbiAgbWF0Y2hBc1xuKSB7XG4gIHZhciBwYXRoID0gcm91dGUucGF0aDtcbiAgdmFyIG5hbWUgPSByb3V0ZS5uYW1lO1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGFzc2VydChwYXRoICE9IG51bGwsIFwiXFxcInBhdGhcXFwiIGlzIHJlcXVpcmVkIGluIGEgcm91dGUgY29uZmlndXJhdGlvbi5cIik7XG4gICAgYXNzZXJ0KFxuICAgICAgdHlwZW9mIHJvdXRlLmNvbXBvbmVudCAhPT0gJ3N0cmluZycsXG4gICAgICBcInJvdXRlIGNvbmZpZyBcXFwiY29tcG9uZW50XFxcIiBmb3IgcGF0aDogXCIgKyAoU3RyaW5nKHBhdGggfHwgbmFtZSkpICsgXCIgY2Fubm90IGJlIGEgXCIgK1xuICAgICAgXCJzdHJpbmcgaWQuIFVzZSBhbiBhY3R1YWwgY29tcG9uZW50IGluc3RlYWQuXCJcbiAgICApO1xuICB9XG5cbiAgdmFyIHBhdGhUb1JlZ2V4cE9wdGlvbnMgPSByb3V0ZS5wYXRoVG9SZWdleHBPcHRpb25zIHx8IHt9O1xuICB2YXIgbm9ybWFsaXplZFBhdGggPSBub3JtYWxpemVQYXRoKFxuICAgIHBhdGgsXG4gICAgcGFyZW50LFxuICAgIHBhdGhUb1JlZ2V4cE9wdGlvbnMuc3RyaWN0XG4gICk7XG5cbiAgaWYgKHR5cGVvZiByb3V0ZS5jYXNlU2Vuc2l0aXZlID09PSAnYm9vbGVhbicpIHtcbiAgICBwYXRoVG9SZWdleHBPcHRpb25zLnNlbnNpdGl2ZSA9IHJvdXRlLmNhc2VTZW5zaXRpdmU7XG4gIH1cblxuICB2YXIgcmVjb3JkID0ge1xuICAgIHBhdGg6IG5vcm1hbGl6ZWRQYXRoLFxuICAgIHJlZ2V4OiBjb21waWxlUm91dGVSZWdleChub3JtYWxpemVkUGF0aCwgcGF0aFRvUmVnZXhwT3B0aW9ucyksXG4gICAgY29tcG9uZW50czogcm91dGUuY29tcG9uZW50cyB8fCB7IGRlZmF1bHQ6IHJvdXRlLmNvbXBvbmVudCB9LFxuICAgIGluc3RhbmNlczoge30sXG4gICAgbmFtZTogbmFtZSxcbiAgICBwYXJlbnQ6IHBhcmVudCxcbiAgICBtYXRjaEFzOiBtYXRjaEFzLFxuICAgIHJlZGlyZWN0OiByb3V0ZS5yZWRpcmVjdCxcbiAgICBiZWZvcmVFbnRlcjogcm91dGUuYmVmb3JlRW50ZXIsXG4gICAgbWV0YTogcm91dGUubWV0YSB8fCB7fSxcbiAgICBwcm9wczogcm91dGUucHJvcHMgPT0gbnVsbFxuICAgICAgPyB7fVxuICAgICAgOiByb3V0ZS5jb21wb25lbnRzXG4gICAgICAgID8gcm91dGUucHJvcHNcbiAgICAgICAgOiB7IGRlZmF1bHQ6IHJvdXRlLnByb3BzIH1cbiAgfTtcblxuICBpZiAocm91dGUuY2hpbGRyZW4pIHtcbiAgICAvLyBXYXJuIGlmIHJvdXRlIGlzIG5hbWVkLCBkb2VzIG5vdCByZWRpcmVjdCBhbmQgaGFzIGEgZGVmYXVsdCBjaGlsZCByb3V0ZS5cbiAgICAvLyBJZiB1c2VycyBuYXZpZ2F0ZSB0byB0aGlzIHJvdXRlIGJ5IG5hbWUsIHRoZSBkZWZhdWx0IGNoaWxkIHdpbGxcbiAgICAvLyBub3QgYmUgcmVuZGVyZWQgKEdIIElzc3VlICM2MjkpXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGlmIChyb3V0ZS5uYW1lICYmICFyb3V0ZS5yZWRpcmVjdCAmJiByb3V0ZS5jaGlsZHJlbi5zb21lKGZ1bmN0aW9uIChjaGlsZCkgeyByZXR1cm4gL15cXC8/JC8udGVzdChjaGlsZC5wYXRoKTsgfSkpIHtcbiAgICAgICAgd2FybihcbiAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICBcIk5hbWVkIFJvdXRlICdcIiArIChyb3V0ZS5uYW1lKSArIFwiJyBoYXMgYSBkZWZhdWx0IGNoaWxkIHJvdXRlLiBcIiArXG4gICAgICAgICAgXCJXaGVuIG5hdmlnYXRpbmcgdG8gdGhpcyBuYW1lZCByb3V0ZSAoOnRvPVxcXCJ7bmFtZTogJ1wiICsgKHJvdXRlLm5hbWUpICsgXCInXFxcIiksIFwiICtcbiAgICAgICAgICBcInRoZSBkZWZhdWx0IGNoaWxkIHJvdXRlIHdpbGwgbm90IGJlIHJlbmRlcmVkLiBSZW1vdmUgdGhlIG5hbWUgZnJvbSBcIiArXG4gICAgICAgICAgXCJ0aGlzIHJvdXRlIGFuZCB1c2UgdGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgY2hpbGQgcm91dGUgZm9yIG5hbWVkIFwiICtcbiAgICAgICAgICBcImxpbmtzIGluc3RlYWQuXCJcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcm91dGUuY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoY2hpbGQpIHtcbiAgICAgIHZhciBjaGlsZE1hdGNoQXMgPSBtYXRjaEFzXG4gICAgICAgID8gY2xlYW5QYXRoKChtYXRjaEFzICsgXCIvXCIgKyAoY2hpbGQucGF0aCkpKVxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgIGFkZFJvdXRlUmVjb3JkKHBhdGhMaXN0LCBwYXRoTWFwLCBuYW1lTWFwLCBjaGlsZCwgcmVjb3JkLCBjaGlsZE1hdGNoQXMpO1xuICAgIH0pO1xuICB9XG5cbiAgaWYgKHJvdXRlLmFsaWFzICE9PSB1bmRlZmluZWQpIHtcbiAgICB2YXIgYWxpYXNlcyA9IEFycmF5LmlzQXJyYXkocm91dGUuYWxpYXMpXG4gICAgICA/IHJvdXRlLmFsaWFzXG4gICAgICA6IFtyb3V0ZS5hbGlhc107XG5cbiAgICBhbGlhc2VzLmZvckVhY2goZnVuY3Rpb24gKGFsaWFzKSB7XG4gICAgICB2YXIgYWxpYXNSb3V0ZSA9IHtcbiAgICAgICAgcGF0aDogYWxpYXMsXG4gICAgICAgIGNoaWxkcmVuOiByb3V0ZS5jaGlsZHJlblxuICAgICAgfTtcbiAgICAgIGFkZFJvdXRlUmVjb3JkKFxuICAgICAgICBwYXRoTGlzdCxcbiAgICAgICAgcGF0aE1hcCxcbiAgICAgICAgbmFtZU1hcCxcbiAgICAgICAgYWxpYXNSb3V0ZSxcbiAgICAgICAgcGFyZW50LFxuICAgICAgICByZWNvcmQucGF0aCB8fCAnLycgLy8gbWF0Y2hBc1xuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIGlmICghcGF0aE1hcFtyZWNvcmQucGF0aF0pIHtcbiAgICBwYXRoTGlzdC5wdXNoKHJlY29yZC5wYXRoKTtcbiAgICBwYXRoTWFwW3JlY29yZC5wYXRoXSA9IHJlY29yZDtcbiAgfVxuXG4gIGlmIChuYW1lKSB7XG4gICAgaWYgKCFuYW1lTWFwW25hbWVdKSB7XG4gICAgICBuYW1lTWFwW25hbWVdID0gcmVjb3JkO1xuICAgIH0gZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhbWF0Y2hBcykge1xuICAgICAgd2FybihcbiAgICAgICAgZmFsc2UsXG4gICAgICAgIFwiRHVwbGljYXRlIG5hbWVkIHJvdXRlcyBkZWZpbml0aW9uOiBcIiArXG4gICAgICAgIFwieyBuYW1lOiBcXFwiXCIgKyBuYW1lICsgXCJcXFwiLCBwYXRoOiBcXFwiXCIgKyAocmVjb3JkLnBhdGgpICsgXCJcXFwiIH1cIlxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY29tcGlsZVJvdXRlUmVnZXggKHBhdGgsIHBhdGhUb1JlZ2V4cE9wdGlvbnMpIHtcbiAgdmFyIHJlZ2V4ID0gcGF0aFRvUmVnZXhwXzEocGF0aCwgW10sIHBhdGhUb1JlZ2V4cE9wdGlvbnMpO1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHZhciBrZXlzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICByZWdleC5rZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgd2Fybigha2V5c1trZXkubmFtZV0sIChcIkR1cGxpY2F0ZSBwYXJhbSBrZXlzIGluIHJvdXRlIHdpdGggcGF0aDogXFxcIlwiICsgcGF0aCArIFwiXFxcIlwiKSk7XG4gICAgICBrZXlzW2tleS5uYW1lXSA9IHRydWU7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIHJlZ2V4XG59XG5cbmZ1bmN0aW9uIG5vcm1hbGl6ZVBhdGggKHBhdGgsIHBhcmVudCwgc3RyaWN0KSB7XG4gIGlmICghc3RyaWN0KSB7IHBhdGggPSBwYXRoLnJlcGxhY2UoL1xcLyQvLCAnJyk7IH1cbiAgaWYgKHBhdGhbMF0gPT09ICcvJykgeyByZXR1cm4gcGF0aCB9XG4gIGlmIChwYXJlbnQgPT0gbnVsbCkgeyByZXR1cm4gcGF0aCB9XG4gIHJldHVybiBjbGVhblBhdGgoKChwYXJlbnQucGF0aCkgKyBcIi9cIiArIHBhdGgpKVxufVxuXG4vKiAgKi9cblxuXG5mdW5jdGlvbiBub3JtYWxpemVMb2NhdGlvbiAoXG4gIHJhdyxcbiAgY3VycmVudCxcbiAgYXBwZW5kLFxuICByb3V0ZXJcbikge1xuICB2YXIgbmV4dCA9IHR5cGVvZiByYXcgPT09ICdzdHJpbmcnID8geyBwYXRoOiByYXcgfSA6IHJhdztcbiAgLy8gbmFtZWQgdGFyZ2V0XG4gIGlmIChuZXh0Lm5hbWUgfHwgbmV4dC5fbm9ybWFsaXplZCkge1xuICAgIHJldHVybiBuZXh0XG4gIH1cblxuICAvLyByZWxhdGl2ZSBwYXJhbXNcbiAgaWYgKCFuZXh0LnBhdGggJiYgbmV4dC5wYXJhbXMgJiYgY3VycmVudCkge1xuICAgIG5leHQgPSBhc3NpZ24oe30sIG5leHQpO1xuICAgIG5leHQuX25vcm1hbGl6ZWQgPSB0cnVlO1xuICAgIHZhciBwYXJhbXMgPSBhc3NpZ24oYXNzaWduKHt9LCBjdXJyZW50LnBhcmFtcyksIG5leHQucGFyYW1zKTtcbiAgICBpZiAoY3VycmVudC5uYW1lKSB7XG4gICAgICBuZXh0Lm5hbWUgPSBjdXJyZW50Lm5hbWU7XG4gICAgICBuZXh0LnBhcmFtcyA9IHBhcmFtcztcbiAgICB9IGVsc2UgaWYgKGN1cnJlbnQubWF0Y2hlZC5sZW5ndGgpIHtcbiAgICAgIHZhciByYXdQYXRoID0gY3VycmVudC5tYXRjaGVkW2N1cnJlbnQubWF0Y2hlZC5sZW5ndGggLSAxXS5wYXRoO1xuICAgICAgbmV4dC5wYXRoID0gZmlsbFBhcmFtcyhyYXdQYXRoLCBwYXJhbXMsIChcInBhdGggXCIgKyAoY3VycmVudC5wYXRoKSkpO1xuICAgIH0gZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgd2FybihmYWxzZSwgXCJyZWxhdGl2ZSBwYXJhbXMgbmF2aWdhdGlvbiByZXF1aXJlcyBhIGN1cnJlbnQgcm91dGUuXCIpO1xuICAgIH1cbiAgICByZXR1cm4gbmV4dFxuICB9XG5cbiAgdmFyIHBhcnNlZFBhdGggPSBwYXJzZVBhdGgobmV4dC5wYXRoIHx8ICcnKTtcbiAgdmFyIGJhc2VQYXRoID0gKGN1cnJlbnQgJiYgY3VycmVudC5wYXRoKSB8fCAnLyc7XG4gIHZhciBwYXRoID0gcGFyc2VkUGF0aC5wYXRoXG4gICAgPyByZXNvbHZlUGF0aChwYXJzZWRQYXRoLnBhdGgsIGJhc2VQYXRoLCBhcHBlbmQgfHwgbmV4dC5hcHBlbmQpXG4gICAgOiBiYXNlUGF0aDtcblxuICB2YXIgcXVlcnkgPSByZXNvbHZlUXVlcnkoXG4gICAgcGFyc2VkUGF0aC5xdWVyeSxcbiAgICBuZXh0LnF1ZXJ5LFxuICAgIHJvdXRlciAmJiByb3V0ZXIub3B0aW9ucy5wYXJzZVF1ZXJ5XG4gICk7XG5cbiAgdmFyIGhhc2ggPSBuZXh0Lmhhc2ggfHwgcGFyc2VkUGF0aC5oYXNoO1xuICBpZiAoaGFzaCAmJiBoYXNoLmNoYXJBdCgwKSAhPT0gJyMnKSB7XG4gICAgaGFzaCA9IFwiI1wiICsgaGFzaDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgX25vcm1hbGl6ZWQ6IHRydWUsXG4gICAgcGF0aDogcGF0aCxcbiAgICBxdWVyeTogcXVlcnksXG4gICAgaGFzaDogaGFzaFxuICB9XG59XG5cbmZ1bmN0aW9uIGFzc2lnbiAoYSwgYikge1xuICBmb3IgKHZhciBrZXkgaW4gYikge1xuICAgIGFba2V5XSA9IGJba2V5XTtcbiAgfVxuICByZXR1cm4gYVxufVxuXG4vKiAgKi9cblxuXG5mdW5jdGlvbiBjcmVhdGVNYXRjaGVyIChcbiAgcm91dGVzLFxuICByb3V0ZXJcbikge1xuICB2YXIgcmVmID0gY3JlYXRlUm91dGVNYXAocm91dGVzKTtcbiAgdmFyIHBhdGhMaXN0ID0gcmVmLnBhdGhMaXN0O1xuICB2YXIgcGF0aE1hcCA9IHJlZi5wYXRoTWFwO1xuICB2YXIgbmFtZU1hcCA9IHJlZi5uYW1lTWFwO1xuXG4gIGZ1bmN0aW9uIGFkZFJvdXRlcyAocm91dGVzKSB7XG4gICAgY3JlYXRlUm91dGVNYXAocm91dGVzLCBwYXRoTGlzdCwgcGF0aE1hcCwgbmFtZU1hcCk7XG4gIH1cblxuICBmdW5jdGlvbiBtYXRjaCAoXG4gICAgcmF3LFxuICAgIGN1cnJlbnRSb3V0ZSxcbiAgICByZWRpcmVjdGVkRnJvbVxuICApIHtcbiAgICB2YXIgbG9jYXRpb24gPSBub3JtYWxpemVMb2NhdGlvbihyYXcsIGN1cnJlbnRSb3V0ZSwgZmFsc2UsIHJvdXRlcik7XG4gICAgdmFyIG5hbWUgPSBsb2NhdGlvbi5uYW1lO1xuXG4gICAgaWYgKG5hbWUpIHtcbiAgICAgIHZhciByZWNvcmQgPSBuYW1lTWFwW25hbWVdO1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgd2FybihyZWNvcmQsIChcIlJvdXRlIHdpdGggbmFtZSAnXCIgKyBuYW1lICsgXCInIGRvZXMgbm90IGV4aXN0XCIpKTtcbiAgICAgIH1cbiAgICAgIGlmICghcmVjb3JkKSB7IHJldHVybiBfY3JlYXRlUm91dGUobnVsbCwgbG9jYXRpb24pIH1cbiAgICAgIHZhciBwYXJhbU5hbWVzID0gcmVjb3JkLnJlZ2V4LmtleXNcbiAgICAgICAgLmZpbHRlcihmdW5jdGlvbiAoa2V5KSB7IHJldHVybiAha2V5Lm9wdGlvbmFsOyB9KVxuICAgICAgICAubWFwKGZ1bmN0aW9uIChrZXkpIHsgcmV0dXJuIGtleS5uYW1lOyB9KTtcblxuICAgICAgaWYgKHR5cGVvZiBsb2NhdGlvbi5wYXJhbXMgIT09ICdvYmplY3QnKSB7XG4gICAgICAgIGxvY2F0aW9uLnBhcmFtcyA9IHt9O1xuICAgICAgfVxuXG4gICAgICBpZiAoY3VycmVudFJvdXRlICYmIHR5cGVvZiBjdXJyZW50Um91dGUucGFyYW1zID09PSAnb2JqZWN0Jykge1xuICAgICAgICBmb3IgKHZhciBrZXkgaW4gY3VycmVudFJvdXRlLnBhcmFtcykge1xuICAgICAgICAgIGlmICghKGtleSBpbiBsb2NhdGlvbi5wYXJhbXMpICYmIHBhcmFtTmFtZXMuaW5kZXhPZihrZXkpID4gLTEpIHtcbiAgICAgICAgICAgIGxvY2F0aW9uLnBhcmFtc1trZXldID0gY3VycmVudFJvdXRlLnBhcmFtc1trZXldO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAocmVjb3JkKSB7XG4gICAgICAgIGxvY2F0aW9uLnBhdGggPSBmaWxsUGFyYW1zKHJlY29yZC5wYXRoLCBsb2NhdGlvbi5wYXJhbXMsIChcIm5hbWVkIHJvdXRlIFxcXCJcIiArIG5hbWUgKyBcIlxcXCJcIikpO1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVJvdXRlKHJlY29yZCwgbG9jYXRpb24sIHJlZGlyZWN0ZWRGcm9tKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAobG9jYXRpb24ucGF0aCkge1xuICAgICAgbG9jYXRpb24ucGFyYW1zID0ge307XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBhdGhMaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBwYXRoID0gcGF0aExpc3RbaV07XG4gICAgICAgIHZhciByZWNvcmQkMSA9IHBhdGhNYXBbcGF0aF07XG4gICAgICAgIGlmIChtYXRjaFJvdXRlKHJlY29yZCQxLnJlZ2V4LCBsb2NhdGlvbi5wYXRoLCBsb2NhdGlvbi5wYXJhbXMpKSB7XG4gICAgICAgICAgcmV0dXJuIF9jcmVhdGVSb3V0ZShyZWNvcmQkMSwgbG9jYXRpb24sIHJlZGlyZWN0ZWRGcm9tKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIG5vIG1hdGNoXG4gICAgcmV0dXJuIF9jcmVhdGVSb3V0ZShudWxsLCBsb2NhdGlvbilcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlZGlyZWN0IChcbiAgICByZWNvcmQsXG4gICAgbG9jYXRpb25cbiAgKSB7XG4gICAgdmFyIG9yaWdpbmFsUmVkaXJlY3QgPSByZWNvcmQucmVkaXJlY3Q7XG4gICAgdmFyIHJlZGlyZWN0ID0gdHlwZW9mIG9yaWdpbmFsUmVkaXJlY3QgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBvcmlnaW5hbFJlZGlyZWN0KGNyZWF0ZVJvdXRlKHJlY29yZCwgbG9jYXRpb24sIG51bGwsIHJvdXRlcikpXG4gICAgICAgIDogb3JpZ2luYWxSZWRpcmVjdDtcblxuICAgIGlmICh0eXBlb2YgcmVkaXJlY3QgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZWRpcmVjdCA9IHsgcGF0aDogcmVkaXJlY3QgfTtcbiAgICB9XG5cbiAgICBpZiAoIXJlZGlyZWN0IHx8IHR5cGVvZiByZWRpcmVjdCAhPT0gJ29iamVjdCcpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oXG4gICAgICAgICAgZmFsc2UsIChcImludmFsaWQgcmVkaXJlY3Qgb3B0aW9uOiBcIiArIChKU09OLnN0cmluZ2lmeShyZWRpcmVjdCkpKVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIF9jcmVhdGVSb3V0ZShudWxsLCBsb2NhdGlvbilcbiAgICB9XG5cbiAgICB2YXIgcmUgPSByZWRpcmVjdDtcbiAgICB2YXIgbmFtZSA9IHJlLm5hbWU7XG4gICAgdmFyIHBhdGggPSByZS5wYXRoO1xuICAgIHZhciBxdWVyeSA9IGxvY2F0aW9uLnF1ZXJ5O1xuICAgIHZhciBoYXNoID0gbG9jYXRpb24uaGFzaDtcbiAgICB2YXIgcGFyYW1zID0gbG9jYXRpb24ucGFyYW1zO1xuICAgIHF1ZXJ5ID0gcmUuaGFzT3duUHJvcGVydHkoJ3F1ZXJ5JykgPyByZS5xdWVyeSA6IHF1ZXJ5O1xuICAgIGhhc2ggPSByZS5oYXNPd25Qcm9wZXJ0eSgnaGFzaCcpID8gcmUuaGFzaCA6IGhhc2g7XG4gICAgcGFyYW1zID0gcmUuaGFzT3duUHJvcGVydHkoJ3BhcmFtcycpID8gcmUucGFyYW1zIDogcGFyYW1zO1xuXG4gICAgaWYgKG5hbWUpIHtcbiAgICAgIC8vIHJlc29sdmVkIG5hbWVkIGRpcmVjdFxuICAgICAgdmFyIHRhcmdldFJlY29yZCA9IG5hbWVNYXBbbmFtZV07XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBhc3NlcnQodGFyZ2V0UmVjb3JkLCAoXCJyZWRpcmVjdCBmYWlsZWQ6IG5hbWVkIHJvdXRlIFxcXCJcIiArIG5hbWUgKyBcIlxcXCIgbm90IGZvdW5kLlwiKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbWF0Y2goe1xuICAgICAgICBfbm9ybWFsaXplZDogdHJ1ZSxcbiAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgcXVlcnk6IHF1ZXJ5LFxuICAgICAgICBoYXNoOiBoYXNoLFxuICAgICAgICBwYXJhbXM6IHBhcmFtc1xuICAgICAgfSwgdW5kZWZpbmVkLCBsb2NhdGlvbilcbiAgICB9IGVsc2UgaWYgKHBhdGgpIHtcbiAgICAgIC8vIDEuIHJlc29sdmUgcmVsYXRpdmUgcmVkaXJlY3RcbiAgICAgIHZhciByYXdQYXRoID0gcmVzb2x2ZVJlY29yZFBhdGgocGF0aCwgcmVjb3JkKTtcbiAgICAgIC8vIDIuIHJlc29sdmUgcGFyYW1zXG4gICAgICB2YXIgcmVzb2x2ZWRQYXRoID0gZmlsbFBhcmFtcyhyYXdQYXRoLCBwYXJhbXMsIChcInJlZGlyZWN0IHJvdXRlIHdpdGggcGF0aCBcXFwiXCIgKyByYXdQYXRoICsgXCJcXFwiXCIpKTtcbiAgICAgIC8vIDMuIHJlbWF0Y2ggd2l0aCBleGlzdGluZyBxdWVyeSBhbmQgaGFzaFxuICAgICAgcmV0dXJuIG1hdGNoKHtcbiAgICAgICAgX25vcm1hbGl6ZWQ6IHRydWUsXG4gICAgICAgIHBhdGg6IHJlc29sdmVkUGF0aCxcbiAgICAgICAgcXVlcnk6IHF1ZXJ5LFxuICAgICAgICBoYXNoOiBoYXNoXG4gICAgICB9LCB1bmRlZmluZWQsIGxvY2F0aW9uKVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuKGZhbHNlLCAoXCJpbnZhbGlkIHJlZGlyZWN0IG9wdGlvbjogXCIgKyAoSlNPTi5zdHJpbmdpZnkocmVkaXJlY3QpKSkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIF9jcmVhdGVSb3V0ZShudWxsLCBsb2NhdGlvbilcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBhbGlhcyAoXG4gICAgcmVjb3JkLFxuICAgIGxvY2F0aW9uLFxuICAgIG1hdGNoQXNcbiAgKSB7XG4gICAgdmFyIGFsaWFzZWRQYXRoID0gZmlsbFBhcmFtcyhtYXRjaEFzLCBsb2NhdGlvbi5wYXJhbXMsIChcImFsaWFzZWQgcm91dGUgd2l0aCBwYXRoIFxcXCJcIiArIG1hdGNoQXMgKyBcIlxcXCJcIikpO1xuICAgIHZhciBhbGlhc2VkTWF0Y2ggPSBtYXRjaCh7XG4gICAgICBfbm9ybWFsaXplZDogdHJ1ZSxcbiAgICAgIHBhdGg6IGFsaWFzZWRQYXRoXG4gICAgfSk7XG4gICAgaWYgKGFsaWFzZWRNYXRjaCkge1xuICAgICAgdmFyIG1hdGNoZWQgPSBhbGlhc2VkTWF0Y2gubWF0Y2hlZDtcbiAgICAgIHZhciBhbGlhc2VkUmVjb3JkID0gbWF0Y2hlZFttYXRjaGVkLmxlbmd0aCAtIDFdO1xuICAgICAgbG9jYXRpb24ucGFyYW1zID0gYWxpYXNlZE1hdGNoLnBhcmFtcztcbiAgICAgIHJldHVybiBfY3JlYXRlUm91dGUoYWxpYXNlZFJlY29yZCwgbG9jYXRpb24pXG4gICAgfVxuICAgIHJldHVybiBfY3JlYXRlUm91dGUobnVsbCwgbG9jYXRpb24pXG4gIH1cblxuICBmdW5jdGlvbiBfY3JlYXRlUm91dGUgKFxuICAgIHJlY29yZCxcbiAgICBsb2NhdGlvbixcbiAgICByZWRpcmVjdGVkRnJvbVxuICApIHtcbiAgICBpZiAocmVjb3JkICYmIHJlY29yZC5yZWRpcmVjdCkge1xuICAgICAgcmV0dXJuIHJlZGlyZWN0KHJlY29yZCwgcmVkaXJlY3RlZEZyb20gfHwgbG9jYXRpb24pXG4gICAgfVxuICAgIGlmIChyZWNvcmQgJiYgcmVjb3JkLm1hdGNoQXMpIHtcbiAgICAgIHJldHVybiBhbGlhcyhyZWNvcmQsIGxvY2F0aW9uLCByZWNvcmQubWF0Y2hBcylcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZVJvdXRlKHJlY29yZCwgbG9jYXRpb24sIHJlZGlyZWN0ZWRGcm9tLCByb3V0ZXIpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIG1hdGNoOiBtYXRjaCxcbiAgICBhZGRSb3V0ZXM6IGFkZFJvdXRlc1xuICB9XG59XG5cbmZ1bmN0aW9uIG1hdGNoUm91dGUgKFxuICByZWdleCxcbiAgcGF0aCxcbiAgcGFyYW1zXG4pIHtcbiAgdmFyIG0gPSBwYXRoLm1hdGNoKHJlZ2V4KTtcblxuICBpZiAoIW0pIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfSBlbHNlIGlmICghcGFyYW1zKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIGZvciAodmFyIGkgPSAxLCBsZW4gPSBtLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgdmFyIGtleSA9IHJlZ2V4LmtleXNbaSAtIDFdO1xuICAgIHZhciB2YWwgPSB0eXBlb2YgbVtpXSA9PT0gJ3N0cmluZycgPyBkZWNvZGVVUklDb21wb25lbnQobVtpXSkgOiBtW2ldO1xuICAgIGlmIChrZXkpIHtcbiAgICAgIHBhcmFtc1trZXkubmFtZV0gPSB2YWw7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVJlY29yZFBhdGggKHBhdGgsIHJlY29yZCkge1xuICByZXR1cm4gcmVzb2x2ZVBhdGgocGF0aCwgcmVjb3JkLnBhcmVudCA/IHJlY29yZC5wYXJlbnQucGF0aCA6ICcvJywgdHJ1ZSlcbn1cblxuLyogICovXG5cblxudmFyIHBvc2l0aW9uU3RvcmUgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuXG5mdW5jdGlvbiBzZXR1cFNjcm9sbCAoKSB7XG4gIC8vIEZpeCBmb3IgIzE1ODUgZm9yIEZpcmVmb3hcbiAgd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKHsga2V5OiBnZXRTdGF0ZUtleSgpIH0sICcnKTtcbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgZnVuY3Rpb24gKGUpIHtcbiAgICBzYXZlU2Nyb2xsUG9zaXRpb24oKTtcbiAgICBpZiAoZS5zdGF0ZSAmJiBlLnN0YXRlLmtleSkge1xuICAgICAgc2V0U3RhdGVLZXkoZS5zdGF0ZS5rZXkpO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZVNjcm9sbCAoXG4gIHJvdXRlcixcbiAgdG8sXG4gIGZyb20sXG4gIGlzUG9wXG4pIHtcbiAgaWYgKCFyb3V0ZXIuYXBwKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICB2YXIgYmVoYXZpb3IgPSByb3V0ZXIub3B0aW9ucy5zY3JvbGxCZWhhdmlvcjtcbiAgaWYgKCFiZWhhdmlvcikge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICBhc3NlcnQodHlwZW9mIGJlaGF2aW9yID09PSAnZnVuY3Rpb24nLCBcInNjcm9sbEJlaGF2aW9yIG11c3QgYmUgYSBmdW5jdGlvblwiKTtcbiAgfVxuXG4gIC8vIHdhaXQgdW50aWwgcmUtcmVuZGVyIGZpbmlzaGVzIGJlZm9yZSBzY3JvbGxpbmdcbiAgcm91dGVyLmFwcC4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgIHZhciBwb3NpdGlvbiA9IGdldFNjcm9sbFBvc2l0aW9uKCk7XG4gICAgdmFyIHNob3VsZFNjcm9sbCA9IGJlaGF2aW9yKHRvLCBmcm9tLCBpc1BvcCA/IHBvc2l0aW9uIDogbnVsbCk7XG5cbiAgICBpZiAoIXNob3VsZFNjcm9sbCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBzaG91bGRTY3JvbGwudGhlbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgc2hvdWxkU2Nyb2xsLnRoZW4oZnVuY3Rpb24gKHNob3VsZFNjcm9sbCkge1xuICAgICAgICBzY3JvbGxUb1Bvc2l0aW9uKChzaG91bGRTY3JvbGwpLCBwb3NpdGlvbik7XG4gICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgYXNzZXJ0KGZhbHNlLCBlcnIudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBzY3JvbGxUb1Bvc2l0aW9uKHNob3VsZFNjcm9sbCwgcG9zaXRpb24pO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNhdmVTY3JvbGxQb3NpdGlvbiAoKSB7XG4gIHZhciBrZXkgPSBnZXRTdGF0ZUtleSgpO1xuICBpZiAoa2V5KSB7XG4gICAgcG9zaXRpb25TdG9yZVtrZXldID0ge1xuICAgICAgeDogd2luZG93LnBhZ2VYT2Zmc2V0LFxuICAgICAgeTogd2luZG93LnBhZ2VZT2Zmc2V0XG4gICAgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRTY3JvbGxQb3NpdGlvbiAoKSB7XG4gIHZhciBrZXkgPSBnZXRTdGF0ZUtleSgpO1xuICBpZiAoa2V5KSB7XG4gICAgcmV0dXJuIHBvc2l0aW9uU3RvcmVba2V5XVxuICB9XG59XG5cbmZ1bmN0aW9uIGdldEVsZW1lbnRQb3NpdGlvbiAoZWwsIG9mZnNldCkge1xuICB2YXIgZG9jRWwgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gIHZhciBkb2NSZWN0ID0gZG9jRWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIHZhciBlbFJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgcmV0dXJuIHtcbiAgICB4OiBlbFJlY3QubGVmdCAtIGRvY1JlY3QubGVmdCAtIG9mZnNldC54LFxuICAgIHk6IGVsUmVjdC50b3AgLSBkb2NSZWN0LnRvcCAtIG9mZnNldC55XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNWYWxpZFBvc2l0aW9uIChvYmopIHtcbiAgcmV0dXJuIGlzTnVtYmVyKG9iai54KSB8fCBpc051bWJlcihvYmoueSlcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplUG9zaXRpb24gKG9iaikge1xuICByZXR1cm4ge1xuICAgIHg6IGlzTnVtYmVyKG9iai54KSA/IG9iai54IDogd2luZG93LnBhZ2VYT2Zmc2V0LFxuICAgIHk6IGlzTnVtYmVyKG9iai55KSA/IG9iai55IDogd2luZG93LnBhZ2VZT2Zmc2V0XG4gIH1cbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplT2Zmc2V0IChvYmopIHtcbiAgcmV0dXJuIHtcbiAgICB4OiBpc051bWJlcihvYmoueCkgPyBvYmoueCA6IDAsXG4gICAgeTogaXNOdW1iZXIob2JqLnkpID8gb2JqLnkgOiAwXG4gIH1cbn1cblxuZnVuY3Rpb24gaXNOdW1iZXIgKHYpIHtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnbnVtYmVyJ1xufVxuXG5mdW5jdGlvbiBzY3JvbGxUb1Bvc2l0aW9uIChzaG91bGRTY3JvbGwsIHBvc2l0aW9uKSB7XG4gIHZhciBpc09iamVjdCA9IHR5cGVvZiBzaG91bGRTY3JvbGwgPT09ICdvYmplY3QnO1xuICBpZiAoaXNPYmplY3QgJiYgdHlwZW9mIHNob3VsZFNjcm9sbC5zZWxlY3RvciA9PT0gJ3N0cmluZycpIHtcbiAgICB2YXIgZWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNob3VsZFNjcm9sbC5zZWxlY3Rvcik7XG4gICAgaWYgKGVsKSB7XG4gICAgICB2YXIgb2Zmc2V0ID0gc2hvdWxkU2Nyb2xsLm9mZnNldCAmJiB0eXBlb2Ygc2hvdWxkU2Nyb2xsLm9mZnNldCA9PT0gJ29iamVjdCcgPyBzaG91bGRTY3JvbGwub2Zmc2V0IDoge307XG4gICAgICBvZmZzZXQgPSBub3JtYWxpemVPZmZzZXQob2Zmc2V0KTtcbiAgICAgIHBvc2l0aW9uID0gZ2V0RWxlbWVudFBvc2l0aW9uKGVsLCBvZmZzZXQpO1xuICAgIH0gZWxzZSBpZiAoaXNWYWxpZFBvc2l0aW9uKHNob3VsZFNjcm9sbCkpIHtcbiAgICAgIHBvc2l0aW9uID0gbm9ybWFsaXplUG9zaXRpb24oc2hvdWxkU2Nyb2xsKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoaXNPYmplY3QgJiYgaXNWYWxpZFBvc2l0aW9uKHNob3VsZFNjcm9sbCkpIHtcbiAgICBwb3NpdGlvbiA9IG5vcm1hbGl6ZVBvc2l0aW9uKHNob3VsZFNjcm9sbCk7XG4gIH1cblxuICBpZiAocG9zaXRpb24pIHtcbiAgICB3aW5kb3cuc2Nyb2xsVG8ocG9zaXRpb24ueCwgcG9zaXRpb24ueSk7XG4gIH1cbn1cblxuLyogICovXG5cbnZhciBzdXBwb3J0c1B1c2hTdGF0ZSA9IGluQnJvd3NlciAmJiAoZnVuY3Rpb24gKCkge1xuICB2YXIgdWEgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudDtcblxuICBpZiAoXG4gICAgKHVhLmluZGV4T2YoJ0FuZHJvaWQgMi4nKSAhPT0gLTEgfHwgdWEuaW5kZXhPZignQW5kcm9pZCA0LjAnKSAhPT0gLTEpICYmXG4gICAgdWEuaW5kZXhPZignTW9iaWxlIFNhZmFyaScpICE9PSAtMSAmJlxuICAgIHVhLmluZGV4T2YoJ0Nocm9tZScpID09PSAtMSAmJlxuICAgIHVhLmluZGV4T2YoJ1dpbmRvd3MgUGhvbmUnKSA9PT0gLTFcbiAgKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICByZXR1cm4gd2luZG93Lmhpc3RvcnkgJiYgJ3B1c2hTdGF0ZScgaW4gd2luZG93Lmhpc3Rvcnlcbn0pKCk7XG5cbi8vIHVzZSBVc2VyIFRpbWluZyBhcGkgKGlmIHByZXNlbnQpIGZvciBtb3JlIGFjY3VyYXRlIGtleSBwcmVjaXNpb25cbnZhciBUaW1lID0gaW5Ccm93c2VyICYmIHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5kb3cucGVyZm9ybWFuY2Uubm93XG4gID8gd2luZG93LnBlcmZvcm1hbmNlXG4gIDogRGF0ZTtcblxudmFyIF9rZXkgPSBnZW5LZXkoKTtcblxuZnVuY3Rpb24gZ2VuS2V5ICgpIHtcbiAgcmV0dXJuIFRpbWUubm93KCkudG9GaXhlZCgzKVxufVxuXG5mdW5jdGlvbiBnZXRTdGF0ZUtleSAoKSB7XG4gIHJldHVybiBfa2V5XG59XG5cbmZ1bmN0aW9uIHNldFN0YXRlS2V5IChrZXkpIHtcbiAgX2tleSA9IGtleTtcbn1cblxuZnVuY3Rpb24gcHVzaFN0YXRlICh1cmwsIHJlcGxhY2UpIHtcbiAgc2F2ZVNjcm9sbFBvc2l0aW9uKCk7XG4gIC8vIHRyeS4uLmNhdGNoIHRoZSBwdXNoU3RhdGUgY2FsbCB0byBnZXQgYXJvdW5kIFNhZmFyaVxuICAvLyBET00gRXhjZXB0aW9uIDE4IHdoZXJlIGl0IGxpbWl0cyB0byAxMDAgcHVzaFN0YXRlIGNhbGxzXG4gIHZhciBoaXN0b3J5ID0gd2luZG93Lmhpc3Rvcnk7XG4gIHRyeSB7XG4gICAgaWYgKHJlcGxhY2UpIHtcbiAgICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKHsga2V5OiBfa2V5IH0sICcnLCB1cmwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBfa2V5ID0gZ2VuS2V5KCk7XG4gICAgICBoaXN0b3J5LnB1c2hTdGF0ZSh7IGtleTogX2tleSB9LCAnJywgdXJsKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICB3aW5kb3cubG9jYXRpb25bcmVwbGFjZSA/ICdyZXBsYWNlJyA6ICdhc3NpZ24nXSh1cmwpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlcGxhY2VTdGF0ZSAodXJsKSB7XG4gIHB1c2hTdGF0ZSh1cmwsIHRydWUpO1xufVxuXG4vKiAgKi9cblxuZnVuY3Rpb24gcnVuUXVldWUgKHF1ZXVlLCBmbiwgY2IpIHtcbiAgdmFyIHN0ZXAgPSBmdW5jdGlvbiAoaW5kZXgpIHtcbiAgICBpZiAoaW5kZXggPj0gcXVldWUubGVuZ3RoKSB7XG4gICAgICBjYigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAocXVldWVbaW5kZXhdKSB7XG4gICAgICAgIGZuKHF1ZXVlW2luZGV4XSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHN0ZXAoaW5kZXggKyAxKTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGVwKGluZGV4ICsgMSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuICBzdGVwKDApO1xufVxuXG4vKiAgKi9cblxuZnVuY3Rpb24gcmVzb2x2ZUFzeW5jQ29tcG9uZW50cyAobWF0Y2hlZCkge1xuICByZXR1cm4gZnVuY3Rpb24gKHRvLCBmcm9tLCBuZXh0KSB7XG4gICAgdmFyIGhhc0FzeW5jID0gZmFsc2U7XG4gICAgdmFyIHBlbmRpbmcgPSAwO1xuICAgIHZhciBlcnJvciA9IG51bGw7XG5cbiAgICBmbGF0TWFwQ29tcG9uZW50cyhtYXRjaGVkLCBmdW5jdGlvbiAoZGVmLCBfLCBtYXRjaCwga2V5KSB7XG4gICAgICAvLyBpZiBpdCdzIGEgZnVuY3Rpb24gYW5kIGRvZXNuJ3QgaGF2ZSBjaWQgYXR0YWNoZWQsXG4gICAgICAvLyBhc3N1bWUgaXQncyBhbiBhc3luYyBjb21wb25lbnQgcmVzb2x2ZSBmdW5jdGlvbi5cbiAgICAgIC8vIHdlIGFyZSBub3QgdXNpbmcgVnVlJ3MgZGVmYXVsdCBhc3luYyByZXNvbHZpbmcgbWVjaGFuaXNtIGJlY2F1c2VcbiAgICAgIC8vIHdlIHdhbnQgdG8gaGFsdCB0aGUgbmF2aWdhdGlvbiB1bnRpbCB0aGUgaW5jb21pbmcgY29tcG9uZW50IGhhcyBiZWVuXG4gICAgICAvLyByZXNvbHZlZC5cbiAgICAgIGlmICh0eXBlb2YgZGVmID09PSAnZnVuY3Rpb24nICYmIGRlZi5jaWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBoYXNBc3luYyA9IHRydWU7XG4gICAgICAgIHBlbmRpbmcrKztcblxuICAgICAgICB2YXIgcmVzb2x2ZSA9IG9uY2UoZnVuY3Rpb24gKHJlc29sdmVkRGVmKSB7XG4gICAgICAgICAgaWYgKGlzRVNNb2R1bGUocmVzb2x2ZWREZWYpKSB7XG4gICAgICAgICAgICByZXNvbHZlZERlZiA9IHJlc29sdmVkRGVmLmRlZmF1bHQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIHNhdmUgcmVzb2x2ZWQgb24gYXN5bmMgZmFjdG9yeSBpbiBjYXNlIGl0J3MgdXNlZCBlbHNld2hlcmVcbiAgICAgICAgICBkZWYucmVzb2x2ZWQgPSB0eXBlb2YgcmVzb2x2ZWREZWYgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gcmVzb2x2ZWREZWZcbiAgICAgICAgICAgIDogX1Z1ZS5leHRlbmQocmVzb2x2ZWREZWYpO1xuICAgICAgICAgIG1hdGNoLmNvbXBvbmVudHNba2V5XSA9IHJlc29sdmVkRGVmO1xuICAgICAgICAgIHBlbmRpbmctLTtcbiAgICAgICAgICBpZiAocGVuZGluZyA8PSAwKSB7XG4gICAgICAgICAgICBuZXh0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB2YXIgcmVqZWN0ID0gb25jZShmdW5jdGlvbiAocmVhc29uKSB7XG4gICAgICAgICAgdmFyIG1zZyA9IFwiRmFpbGVkIHRvIHJlc29sdmUgYXN5bmMgY29tcG9uZW50IFwiICsga2V5ICsgXCI6IFwiICsgcmVhc29uO1xuICAgICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgd2FybihmYWxzZSwgbXNnKTtcbiAgICAgICAgICBpZiAoIWVycm9yKSB7XG4gICAgICAgICAgICBlcnJvciA9IGlzRXJyb3IocmVhc29uKVxuICAgICAgICAgICAgICA/IHJlYXNvblxuICAgICAgICAgICAgICA6IG5ldyBFcnJvcihtc2cpO1xuICAgICAgICAgICAgbmV4dChlcnJvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB2YXIgcmVzO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJlcyA9IGRlZihyZXNvbHZlLCByZWplY3QpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICBpZiAodHlwZW9mIHJlcy50aGVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXMudGhlbihyZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBuZXcgc3ludGF4IGluIFZ1ZSAyLjNcbiAgICAgICAgICAgIHZhciBjb21wID0gcmVzLmNvbXBvbmVudDtcbiAgICAgICAgICAgIGlmIChjb21wICYmIHR5cGVvZiBjb21wLnRoZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgY29tcC50aGVuKHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoIWhhc0FzeW5jKSB7IG5leHQoKTsgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGZsYXRNYXBDb21wb25lbnRzIChcbiAgbWF0Y2hlZCxcbiAgZm5cbikge1xuICByZXR1cm4gZmxhdHRlbihtYXRjaGVkLm1hcChmdW5jdGlvbiAobSkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhtLmNvbXBvbmVudHMpLm1hcChmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBmbihcbiAgICAgIG0uY29tcG9uZW50c1trZXldLFxuICAgICAgbS5pbnN0YW5jZXNba2V5XSxcbiAgICAgIG0sIGtleVxuICAgICk7IH0pXG4gIH0pKVxufVxuXG5mdW5jdGlvbiBmbGF0dGVuIChhcnIpIHtcbiAgcmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sIGFycilcbn1cblxudmFyIGhhc1N5bWJvbCA9XG4gIHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiZcbiAgdHlwZW9mIFN5bWJvbC50b1N0cmluZ1RhZyA9PT0gJ3N5bWJvbCc7XG5cbmZ1bmN0aW9uIGlzRVNNb2R1bGUgKG9iaikge1xuICByZXR1cm4gb2JqLl9fZXNNb2R1bGUgfHwgKGhhc1N5bWJvbCAmJiBvYmpbU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ01vZHVsZScpXG59XG5cbi8vIGluIFdlYnBhY2sgMiwgcmVxdWlyZS5lbnN1cmUgbm93IGFsc28gcmV0dXJucyBhIFByb21pc2Vcbi8vIHNvIHRoZSByZXNvbHZlL3JlamVjdCBmdW5jdGlvbnMgbWF5IGdldCBjYWxsZWQgYW4gZXh0cmEgdGltZVxuLy8gaWYgdGhlIHVzZXIgdXNlcyBhbiBhcnJvdyBmdW5jdGlvbiBzaG9ydGhhbmQgdGhhdCBoYXBwZW5zIHRvXG4vLyByZXR1cm4gdGhhdCBQcm9taXNlLlxuZnVuY3Rpb24gb25jZSAoZm4pIHtcbiAgdmFyIGNhbGxlZCA9IGZhbHNlO1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHZhciBhcmdzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7XG4gICAgd2hpbGUgKCBsZW4tLSApIGFyZ3NbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gXTtcblxuICAgIGlmIChjYWxsZWQpIHsgcmV0dXJuIH1cbiAgICBjYWxsZWQgPSB0cnVlO1xuICAgIHJldHVybiBmbi5hcHBseSh0aGlzLCBhcmdzKVxuICB9XG59XG5cbi8qICAqL1xuXG52YXIgSGlzdG9yeSA9IGZ1bmN0aW9uIEhpc3RvcnkgKHJvdXRlciwgYmFzZSkge1xuICB0aGlzLnJvdXRlciA9IHJvdXRlcjtcbiAgdGhpcy5iYXNlID0gbm9ybWFsaXplQmFzZShiYXNlKTtcbiAgLy8gc3RhcnQgd2l0aCBhIHJvdXRlIG9iamVjdCB0aGF0IHN0YW5kcyBmb3IgXCJub3doZXJlXCJcbiAgdGhpcy5jdXJyZW50ID0gU1RBUlQ7XG4gIHRoaXMucGVuZGluZyA9IG51bGw7XG4gIHRoaXMucmVhZHkgPSBmYWxzZTtcbiAgdGhpcy5yZWFkeUNicyA9IFtdO1xuICB0aGlzLnJlYWR5RXJyb3JDYnMgPSBbXTtcbiAgdGhpcy5lcnJvckNicyA9IFtdO1xufTtcblxuSGlzdG9yeS5wcm90b3R5cGUubGlzdGVuID0gZnVuY3Rpb24gbGlzdGVuIChjYikge1xuICB0aGlzLmNiID0gY2I7XG59O1xuXG5IaXN0b3J5LnByb3RvdHlwZS5vblJlYWR5ID0gZnVuY3Rpb24gb25SZWFkeSAoY2IsIGVycm9yQ2IpIHtcbiAgaWYgKHRoaXMucmVhZHkpIHtcbiAgICBjYigpO1xuICB9IGVsc2Uge1xuICAgIHRoaXMucmVhZHlDYnMucHVzaChjYik7XG4gICAgaWYgKGVycm9yQ2IpIHtcbiAgICAgIHRoaXMucmVhZHlFcnJvckNicy5wdXNoKGVycm9yQ2IpO1xuICAgIH1cbiAgfVxufTtcblxuSGlzdG9yeS5wcm90b3R5cGUub25FcnJvciA9IGZ1bmN0aW9uIG9uRXJyb3IgKGVycm9yQ2IpIHtcbiAgdGhpcy5lcnJvckNicy5wdXNoKGVycm9yQ2IpO1xufTtcblxuSGlzdG9yeS5wcm90b3R5cGUudHJhbnNpdGlvblRvID0gZnVuY3Rpb24gdHJhbnNpdGlvblRvIChsb2NhdGlvbiwgb25Db21wbGV0ZSwgb25BYm9ydCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHZhciByb3V0ZSA9IHRoaXMucm91dGVyLm1hdGNoKGxvY2F0aW9uLCB0aGlzLmN1cnJlbnQpO1xuICB0aGlzLmNvbmZpcm1UcmFuc2l0aW9uKHJvdXRlLCBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcyQxLnVwZGF0ZVJvdXRlKHJvdXRlKTtcbiAgICBvbkNvbXBsZXRlICYmIG9uQ29tcGxldGUocm91dGUpO1xuICAgIHRoaXMkMS5lbnN1cmVVUkwoKTtcblxuICAgIC8vIGZpcmUgcmVhZHkgY2JzIG9uY2VcbiAgICBpZiAoIXRoaXMkMS5yZWFkeSkge1xuICAgICAgdGhpcyQxLnJlYWR5ID0gdHJ1ZTtcbiAgICAgIHRoaXMkMS5yZWFkeUNicy5mb3JFYWNoKGZ1bmN0aW9uIChjYikgeyBjYihyb3V0ZSk7IH0pO1xuICAgIH1cbiAgfSwgZnVuY3Rpb24gKGVycikge1xuICAgIGlmIChvbkFib3J0KSB7XG4gICAgICBvbkFib3J0KGVycik7XG4gICAgfVxuICAgIGlmIChlcnIgJiYgIXRoaXMkMS5yZWFkeSkge1xuICAgICAgdGhpcyQxLnJlYWR5ID0gdHJ1ZTtcbiAgICAgIHRoaXMkMS5yZWFkeUVycm9yQ2JzLmZvckVhY2goZnVuY3Rpb24gKGNiKSB7IGNiKGVycik7IH0pO1xuICAgIH1cbiAgfSk7XG59O1xuXG5IaXN0b3J5LnByb3RvdHlwZS5jb25maXJtVHJhbnNpdGlvbiA9IGZ1bmN0aW9uIGNvbmZpcm1UcmFuc2l0aW9uIChyb3V0ZSwgb25Db21wbGV0ZSwgb25BYm9ydCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHZhciBjdXJyZW50ID0gdGhpcy5jdXJyZW50O1xuICB2YXIgYWJvcnQgPSBmdW5jdGlvbiAoZXJyKSB7XG4gICAgaWYgKGlzRXJyb3IoZXJyKSkge1xuICAgICAgaWYgKHRoaXMkMS5lcnJvckNicy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcyQxLmVycm9yQ2JzLmZvckVhY2goZnVuY3Rpb24gKGNiKSB7IGNiKGVycik7IH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgd2FybihmYWxzZSwgJ3VuY2F1Z2h0IGVycm9yIGR1cmluZyByb3V0ZSBuYXZpZ2F0aW9uOicpO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICB9XG4gICAgfVxuICAgIG9uQWJvcnQgJiYgb25BYm9ydChlcnIpO1xuICB9O1xuICBpZiAoXG4gICAgaXNTYW1lUm91dGUocm91dGUsIGN1cnJlbnQpICYmXG4gICAgLy8gaW4gdGhlIGNhc2UgdGhlIHJvdXRlIG1hcCBoYXMgYmVlbiBkeW5hbWljYWxseSBhcHBlbmRlZCB0b1xuICAgIHJvdXRlLm1hdGNoZWQubGVuZ3RoID09PSBjdXJyZW50Lm1hdGNoZWQubGVuZ3RoXG4gICkge1xuICAgIHRoaXMuZW5zdXJlVVJMKCk7XG4gICAgcmV0dXJuIGFib3J0KClcbiAgfVxuXG4gIHZhciByZWYgPSByZXNvbHZlUXVldWUodGhpcy5jdXJyZW50Lm1hdGNoZWQsIHJvdXRlLm1hdGNoZWQpO1xuICAgIHZhciB1cGRhdGVkID0gcmVmLnVwZGF0ZWQ7XG4gICAgdmFyIGRlYWN0aXZhdGVkID0gcmVmLmRlYWN0aXZhdGVkO1xuICAgIHZhciBhY3RpdmF0ZWQgPSByZWYuYWN0aXZhdGVkO1xuXG4gIHZhciBxdWV1ZSA9IFtdLmNvbmNhdChcbiAgICAvLyBpbi1jb21wb25lbnQgbGVhdmUgZ3VhcmRzXG4gICAgZXh0cmFjdExlYXZlR3VhcmRzKGRlYWN0aXZhdGVkKSxcbiAgICAvLyBnbG9iYWwgYmVmb3JlIGhvb2tzXG4gICAgdGhpcy5yb3V0ZXIuYmVmb3JlSG9va3MsXG4gICAgLy8gaW4tY29tcG9uZW50IHVwZGF0ZSBob29rc1xuICAgIGV4dHJhY3RVcGRhdGVIb29rcyh1cGRhdGVkKSxcbiAgICAvLyBpbi1jb25maWcgZW50ZXIgZ3VhcmRzXG4gICAgYWN0aXZhdGVkLm1hcChmdW5jdGlvbiAobSkgeyByZXR1cm4gbS5iZWZvcmVFbnRlcjsgfSksXG4gICAgLy8gYXN5bmMgY29tcG9uZW50c1xuICAgIHJlc29sdmVBc3luY0NvbXBvbmVudHMoYWN0aXZhdGVkKVxuICApO1xuXG4gIHRoaXMucGVuZGluZyA9IHJvdXRlO1xuICB2YXIgaXRlcmF0b3IgPSBmdW5jdGlvbiAoaG9vaywgbmV4dCkge1xuICAgIGlmICh0aGlzJDEucGVuZGluZyAhPT0gcm91dGUpIHtcbiAgICAgIHJldHVybiBhYm9ydCgpXG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBob29rKHJvdXRlLCBjdXJyZW50LCBmdW5jdGlvbiAodG8pIHtcbiAgICAgICAgaWYgKHRvID09PSBmYWxzZSB8fCBpc0Vycm9yKHRvKSkge1xuICAgICAgICAgIC8vIG5leHQoZmFsc2UpIC0+IGFib3J0IG5hdmlnYXRpb24sIGVuc3VyZSBjdXJyZW50IFVSTFxuICAgICAgICAgIHRoaXMkMS5lbnN1cmVVUkwodHJ1ZSk7XG4gICAgICAgICAgYWJvcnQodG8pO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgIHR5cGVvZiB0byA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAodHlwZW9mIHRvID09PSAnb2JqZWN0JyAmJiAoXG4gICAgICAgICAgICB0eXBlb2YgdG8ucGF0aCA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgIHR5cGVvZiB0by5uYW1lID09PSAnc3RyaW5nJ1xuICAgICAgICAgICkpXG4gICAgICAgICkge1xuICAgICAgICAgIC8vIG5leHQoJy8nKSBvciBuZXh0KHsgcGF0aDogJy8nIH0pIC0+IHJlZGlyZWN0XG4gICAgICAgICAgYWJvcnQoKTtcbiAgICAgICAgICBpZiAodHlwZW9mIHRvID09PSAnb2JqZWN0JyAmJiB0by5yZXBsYWNlKSB7XG4gICAgICAgICAgICB0aGlzJDEucmVwbGFjZSh0byk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMkMS5wdXNoKHRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gY29uZmlybSB0cmFuc2l0aW9uIGFuZCBwYXNzIG9uIHRoZSB2YWx1ZVxuICAgICAgICAgIG5leHQodG8pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBhYm9ydChlKTtcbiAgICB9XG4gIH07XG5cbiAgcnVuUXVldWUocXVldWUsIGl0ZXJhdG9yLCBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHBvc3RFbnRlckNicyA9IFtdO1xuICAgIHZhciBpc1ZhbGlkID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcyQxLmN1cnJlbnQgPT09IHJvdXRlOyB9O1xuICAgIC8vIHdhaXQgdW50aWwgYXN5bmMgY29tcG9uZW50cyBhcmUgcmVzb2x2ZWQgYmVmb3JlXG4gICAgLy8gZXh0cmFjdGluZyBpbi1jb21wb25lbnQgZW50ZXIgZ3VhcmRzXG4gICAgdmFyIGVudGVyR3VhcmRzID0gZXh0cmFjdEVudGVyR3VhcmRzKGFjdGl2YXRlZCwgcG9zdEVudGVyQ2JzLCBpc1ZhbGlkKTtcbiAgICB2YXIgcXVldWUgPSBlbnRlckd1YXJkcy5jb25jYXQodGhpcyQxLnJvdXRlci5yZXNvbHZlSG9va3MpO1xuICAgIHJ1blF1ZXVlKHF1ZXVlLCBpdGVyYXRvciwgZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKHRoaXMkMS5wZW5kaW5nICE9PSByb3V0ZSkge1xuICAgICAgICByZXR1cm4gYWJvcnQoKVxuICAgICAgfVxuICAgICAgdGhpcyQxLnBlbmRpbmcgPSBudWxsO1xuICAgICAgb25Db21wbGV0ZShyb3V0ZSk7XG4gICAgICBpZiAodGhpcyQxLnJvdXRlci5hcHApIHtcbiAgICAgICAgdGhpcyQxLnJvdXRlci5hcHAuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBwb3N0RW50ZXJDYnMuZm9yRWFjaChmdW5jdGlvbiAoY2IpIHsgY2IoKTsgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn07XG5cbkhpc3RvcnkucHJvdG90eXBlLnVwZGF0ZVJvdXRlID0gZnVuY3Rpb24gdXBkYXRlUm91dGUgKHJvdXRlKSB7XG4gIHZhciBwcmV2ID0gdGhpcy5jdXJyZW50O1xuICB0aGlzLmN1cnJlbnQgPSByb3V0ZTtcbiAgdGhpcy5jYiAmJiB0aGlzLmNiKHJvdXRlKTtcbiAgdGhpcy5yb3V0ZXIuYWZ0ZXJIb29rcy5mb3JFYWNoKGZ1bmN0aW9uIChob29rKSB7XG4gICAgaG9vayAmJiBob29rKHJvdXRlLCBwcmV2KTtcbiAgfSk7XG59O1xuXG5mdW5jdGlvbiBub3JtYWxpemVCYXNlIChiYXNlKSB7XG4gIGlmICghYmFzZSkge1xuICAgIGlmIChpbkJyb3dzZXIpIHtcbiAgICAgIC8vIHJlc3BlY3QgPGJhc2U+IHRhZ1xuICAgICAgdmFyIGJhc2VFbCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Jhc2UnKTtcbiAgICAgIGJhc2UgPSAoYmFzZUVsICYmIGJhc2VFbC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSkgfHwgJy8nO1xuICAgICAgLy8gc3RyaXAgZnVsbCBVUkwgb3JpZ2luXG4gICAgICBiYXNlID0gYmFzZS5yZXBsYWNlKC9eaHR0cHM/OlxcL1xcL1teXFwvXSsvLCAnJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJhc2UgPSAnLyc7XG4gICAgfVxuICB9XG4gIC8vIG1ha2Ugc3VyZSB0aGVyZSdzIHRoZSBzdGFydGluZyBzbGFzaFxuICBpZiAoYmFzZS5jaGFyQXQoMCkgIT09ICcvJykge1xuICAgIGJhc2UgPSAnLycgKyBiYXNlO1xuICB9XG4gIC8vIHJlbW92ZSB0cmFpbGluZyBzbGFzaFxuICByZXR1cm4gYmFzZS5yZXBsYWNlKC9cXC8kLywgJycpXG59XG5cbmZ1bmN0aW9uIHJlc29sdmVRdWV1ZSAoXG4gIGN1cnJlbnQsXG4gIG5leHRcbikge1xuICB2YXIgaTtcbiAgdmFyIG1heCA9IE1hdGgubWF4KGN1cnJlbnQubGVuZ3RoLCBuZXh0Lmxlbmd0aCk7XG4gIGZvciAoaSA9IDA7IGkgPCBtYXg7IGkrKykge1xuICAgIGlmIChjdXJyZW50W2ldICE9PSBuZXh0W2ldKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuICByZXR1cm4ge1xuICAgIHVwZGF0ZWQ6IG5leHQuc2xpY2UoMCwgaSksXG4gICAgYWN0aXZhdGVkOiBuZXh0LnNsaWNlKGkpLFxuICAgIGRlYWN0aXZhdGVkOiBjdXJyZW50LnNsaWNlKGkpXG4gIH1cbn1cblxuZnVuY3Rpb24gZXh0cmFjdEd1YXJkcyAoXG4gIHJlY29yZHMsXG4gIG5hbWUsXG4gIGJpbmQsXG4gIHJldmVyc2Vcbikge1xuICB2YXIgZ3VhcmRzID0gZmxhdE1hcENvbXBvbmVudHMocmVjb3JkcywgZnVuY3Rpb24gKGRlZiwgaW5zdGFuY2UsIG1hdGNoLCBrZXkpIHtcbiAgICB2YXIgZ3VhcmQgPSBleHRyYWN0R3VhcmQoZGVmLCBuYW1lKTtcbiAgICBpZiAoZ3VhcmQpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGd1YXJkKVxuICAgICAgICA/IGd1YXJkLm1hcChmdW5jdGlvbiAoZ3VhcmQpIHsgcmV0dXJuIGJpbmQoZ3VhcmQsIGluc3RhbmNlLCBtYXRjaCwga2V5KTsgfSlcbiAgICAgICAgOiBiaW5kKGd1YXJkLCBpbnN0YW5jZSwgbWF0Y2gsIGtleSlcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gZmxhdHRlbihyZXZlcnNlID8gZ3VhcmRzLnJldmVyc2UoKSA6IGd1YXJkcylcbn1cblxuZnVuY3Rpb24gZXh0cmFjdEd1YXJkIChcbiAgZGVmLFxuICBrZXlcbikge1xuICBpZiAodHlwZW9mIGRlZiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIC8vIGV4dGVuZCBub3cgc28gdGhhdCBnbG9iYWwgbWl4aW5zIGFyZSBhcHBsaWVkLlxuICAgIGRlZiA9IF9WdWUuZXh0ZW5kKGRlZik7XG4gIH1cbiAgcmV0dXJuIGRlZi5vcHRpb25zW2tleV1cbn1cblxuZnVuY3Rpb24gZXh0cmFjdExlYXZlR3VhcmRzIChkZWFjdGl2YXRlZCkge1xuICByZXR1cm4gZXh0cmFjdEd1YXJkcyhkZWFjdGl2YXRlZCwgJ2JlZm9yZVJvdXRlTGVhdmUnLCBiaW5kR3VhcmQsIHRydWUpXG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RVcGRhdGVIb29rcyAodXBkYXRlZCkge1xuICByZXR1cm4gZXh0cmFjdEd1YXJkcyh1cGRhdGVkLCAnYmVmb3JlUm91dGVVcGRhdGUnLCBiaW5kR3VhcmQpXG59XG5cbmZ1bmN0aW9uIGJpbmRHdWFyZCAoZ3VhcmQsIGluc3RhbmNlKSB7XG4gIGlmIChpbnN0YW5jZSkge1xuICAgIHJldHVybiBmdW5jdGlvbiBib3VuZFJvdXRlR3VhcmQgKCkge1xuICAgICAgcmV0dXJuIGd1YXJkLmFwcGx5KGluc3RhbmNlLCBhcmd1bWVudHMpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RFbnRlckd1YXJkcyAoXG4gIGFjdGl2YXRlZCxcbiAgY2JzLFxuICBpc1ZhbGlkXG4pIHtcbiAgcmV0dXJuIGV4dHJhY3RHdWFyZHMoYWN0aXZhdGVkLCAnYmVmb3JlUm91dGVFbnRlcicsIGZ1bmN0aW9uIChndWFyZCwgXywgbWF0Y2gsIGtleSkge1xuICAgIHJldHVybiBiaW5kRW50ZXJHdWFyZChndWFyZCwgbWF0Y2gsIGtleSwgY2JzLCBpc1ZhbGlkKVxuICB9KVxufVxuXG5mdW5jdGlvbiBiaW5kRW50ZXJHdWFyZCAoXG4gIGd1YXJkLFxuICBtYXRjaCxcbiAga2V5LFxuICBjYnMsXG4gIGlzVmFsaWRcbikge1xuICByZXR1cm4gZnVuY3Rpb24gcm91dGVFbnRlckd1YXJkICh0bywgZnJvbSwgbmV4dCkge1xuICAgIHJldHVybiBndWFyZCh0bywgZnJvbSwgZnVuY3Rpb24gKGNiKSB7XG4gICAgICBuZXh0KGNiKTtcbiAgICAgIGlmICh0eXBlb2YgY2IgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgY2JzLnB1c2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgIC8vICM3NTBcbiAgICAgICAgICAvLyBpZiBhIHJvdXRlci12aWV3IGlzIHdyYXBwZWQgd2l0aCBhbiBvdXQtaW4gdHJhbnNpdGlvbixcbiAgICAgICAgICAvLyB0aGUgaW5zdGFuY2UgbWF5IG5vdCBoYXZlIGJlZW4gcmVnaXN0ZXJlZCBhdCB0aGlzIHRpbWUuXG4gICAgICAgICAgLy8gd2Ugd2lsbCBuZWVkIHRvIHBvbGwgZm9yIHJlZ2lzdHJhdGlvbiB1bnRpbCBjdXJyZW50IHJvdXRlXG4gICAgICAgICAgLy8gaXMgbm8gbG9uZ2VyIHZhbGlkLlxuICAgICAgICAgIHBvbGwoY2IsIG1hdGNoLmluc3RhbmNlcywga2V5LCBpc1ZhbGlkKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBwb2xsIChcbiAgY2IsIC8vIHNvbWVob3cgZmxvdyBjYW5ub3QgaW5mZXIgdGhpcyBpcyBhIGZ1bmN0aW9uXG4gIGluc3RhbmNlcyxcbiAga2V5LFxuICBpc1ZhbGlkXG4pIHtcbiAgaWYgKGluc3RhbmNlc1trZXldKSB7XG4gICAgY2IoaW5zdGFuY2VzW2tleV0pO1xuICB9IGVsc2UgaWYgKGlzVmFsaWQoKSkge1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgcG9sbChjYiwgaW5zdGFuY2VzLCBrZXksIGlzVmFsaWQpO1xuICAgIH0sIDE2KTtcbiAgfVxufVxuXG4vKiAgKi9cblxuXG52YXIgSFRNTDVIaXN0b3J5ID0gKGZ1bmN0aW9uIChIaXN0b3J5JCQxKSB7XG4gIGZ1bmN0aW9uIEhUTUw1SGlzdG9yeSAocm91dGVyLCBiYXNlKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgICBIaXN0b3J5JCQxLmNhbGwodGhpcywgcm91dGVyLCBiYXNlKTtcblxuICAgIHZhciBleHBlY3RTY3JvbGwgPSByb3V0ZXIub3B0aW9ucy5zY3JvbGxCZWhhdmlvcjtcblxuICAgIGlmIChleHBlY3RTY3JvbGwpIHtcbiAgICAgIHNldHVwU2Nyb2xsKCk7XG4gICAgfVxuXG4gICAgdmFyIGluaXRMb2NhdGlvbiA9IGdldExvY2F0aW9uKHRoaXMuYmFzZSk7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgIHZhciBjdXJyZW50ID0gdGhpcyQxLmN1cnJlbnQ7XG5cbiAgICAgIC8vIEF2b2lkaW5nIGZpcnN0IGBwb3BzdGF0ZWAgZXZlbnQgZGlzcGF0Y2hlZCBpbiBzb21lIGJyb3dzZXJzIGJ1dCBmaXJzdFxuICAgICAgLy8gaGlzdG9yeSByb3V0ZSBub3QgdXBkYXRlZCBzaW5jZSBhc3luYyBndWFyZCBhdCB0aGUgc2FtZSB0aW1lLlxuICAgICAgdmFyIGxvY2F0aW9uID0gZ2V0TG9jYXRpb24odGhpcyQxLmJhc2UpO1xuICAgICAgaWYgKHRoaXMkMS5jdXJyZW50ID09PSBTVEFSVCAmJiBsb2NhdGlvbiA9PT0gaW5pdExvY2F0aW9uKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzJDEudHJhbnNpdGlvblRvKGxvY2F0aW9uLCBmdW5jdGlvbiAocm91dGUpIHtcbiAgICAgICAgaWYgKGV4cGVjdFNjcm9sbCkge1xuICAgICAgICAgIGhhbmRsZVNjcm9sbChyb3V0ZXIsIHJvdXRlLCBjdXJyZW50LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBpZiAoIEhpc3RvcnkkJDEgKSBIVE1MNUhpc3RvcnkuX19wcm90b19fID0gSGlzdG9yeSQkMTtcbiAgSFRNTDVIaXN0b3J5LnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoIEhpc3RvcnkkJDEgJiYgSGlzdG9yeSQkMS5wcm90b3R5cGUgKTtcbiAgSFRNTDVIaXN0b3J5LnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IEhUTUw1SGlzdG9yeTtcblxuICBIVE1MNUhpc3RvcnkucHJvdG90eXBlLmdvID0gZnVuY3Rpb24gZ28gKG4pIHtcbiAgICB3aW5kb3cuaGlzdG9yeS5nbyhuKTtcbiAgfTtcblxuICBIVE1MNUhpc3RvcnkucHJvdG90eXBlLnB1c2ggPSBmdW5jdGlvbiBwdXNoIChsb2NhdGlvbiwgb25Db21wbGV0ZSwgb25BYm9ydCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gICAgdmFyIHJlZiA9IHRoaXM7XG4gICAgdmFyIGZyb21Sb3V0ZSA9IHJlZi5jdXJyZW50O1xuICAgIHRoaXMudHJhbnNpdGlvblRvKGxvY2F0aW9uLCBmdW5jdGlvbiAocm91dGUpIHtcbiAgICAgIHB1c2hTdGF0ZShjbGVhblBhdGgodGhpcyQxLmJhc2UgKyByb3V0ZS5mdWxsUGF0aCkpO1xuICAgICAgaGFuZGxlU2Nyb2xsKHRoaXMkMS5yb3V0ZXIsIHJvdXRlLCBmcm9tUm91dGUsIGZhbHNlKTtcbiAgICAgIG9uQ29tcGxldGUgJiYgb25Db21wbGV0ZShyb3V0ZSk7XG4gICAgfSwgb25BYm9ydCk7XG4gIH07XG5cbiAgSFRNTDVIaXN0b3J5LnByb3RvdHlwZS5yZXBsYWNlID0gZnVuY3Rpb24gcmVwbGFjZSAobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcblxuICAgIHZhciByZWYgPSB0aGlzO1xuICAgIHZhciBmcm9tUm91dGUgPSByZWYuY3VycmVudDtcbiAgICB0aGlzLnRyYW5zaXRpb25Ubyhsb2NhdGlvbiwgZnVuY3Rpb24gKHJvdXRlKSB7XG4gICAgICByZXBsYWNlU3RhdGUoY2xlYW5QYXRoKHRoaXMkMS5iYXNlICsgcm91dGUuZnVsbFBhdGgpKTtcbiAgICAgIGhhbmRsZVNjcm9sbCh0aGlzJDEucm91dGVyLCByb3V0ZSwgZnJvbVJvdXRlLCBmYWxzZSk7XG4gICAgICBvbkNvbXBsZXRlICYmIG9uQ29tcGxldGUocm91dGUpO1xuICAgIH0sIG9uQWJvcnQpO1xuICB9O1xuXG4gIEhUTUw1SGlzdG9yeS5wcm90b3R5cGUuZW5zdXJlVVJMID0gZnVuY3Rpb24gZW5zdXJlVVJMIChwdXNoKSB7XG4gICAgaWYgKGdldExvY2F0aW9uKHRoaXMuYmFzZSkgIT09IHRoaXMuY3VycmVudC5mdWxsUGF0aCkge1xuICAgICAgdmFyIGN1cnJlbnQgPSBjbGVhblBhdGgodGhpcy5iYXNlICsgdGhpcy5jdXJyZW50LmZ1bGxQYXRoKTtcbiAgICAgIHB1c2ggPyBwdXNoU3RhdGUoY3VycmVudCkgOiByZXBsYWNlU3RhdGUoY3VycmVudCk7XG4gICAgfVxuICB9O1xuXG4gIEhUTUw1SGlzdG9yeS5wcm90b3R5cGUuZ2V0Q3VycmVudExvY2F0aW9uID0gZnVuY3Rpb24gZ2V0Q3VycmVudExvY2F0aW9uICgpIHtcbiAgICByZXR1cm4gZ2V0TG9jYXRpb24odGhpcy5iYXNlKVxuICB9O1xuXG4gIHJldHVybiBIVE1MNUhpc3Rvcnk7XG59KEhpc3RvcnkpKTtcblxuZnVuY3Rpb24gZ2V0TG9jYXRpb24gKGJhc2UpIHtcbiAgdmFyIHBhdGggPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWU7XG4gIGlmIChiYXNlICYmIHBhdGguaW5kZXhPZihiYXNlKSA9PT0gMCkge1xuICAgIHBhdGggPSBwYXRoLnNsaWNlKGJhc2UubGVuZ3RoKTtcbiAgfVxuICByZXR1cm4gKHBhdGggfHwgJy8nKSArIHdpbmRvdy5sb2NhdGlvbi5zZWFyY2ggKyB3aW5kb3cubG9jYXRpb24uaGFzaFxufVxuXG4vKiAgKi9cblxuXG52YXIgSGFzaEhpc3RvcnkgPSAoZnVuY3Rpb24gKEhpc3RvcnkkJDEpIHtcbiAgZnVuY3Rpb24gSGFzaEhpc3RvcnkgKHJvdXRlciwgYmFzZSwgZmFsbGJhY2spIHtcbiAgICBIaXN0b3J5JCQxLmNhbGwodGhpcywgcm91dGVyLCBiYXNlKTtcbiAgICAvLyBjaGVjayBoaXN0b3J5IGZhbGxiYWNrIGRlZXBsaW5raW5nXG4gICAgaWYgKGZhbGxiYWNrICYmIGNoZWNrRmFsbGJhY2sodGhpcy5iYXNlKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGVuc3VyZVNsYXNoKCk7XG4gIH1cblxuICBpZiAoIEhpc3RvcnkkJDEgKSBIYXNoSGlzdG9yeS5fX3Byb3RvX18gPSBIaXN0b3J5JCQxO1xuICBIYXNoSGlzdG9yeS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKCBIaXN0b3J5JCQxICYmIEhpc3RvcnkkJDEucHJvdG90eXBlICk7XG4gIEhhc2hIaXN0b3J5LnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IEhhc2hIaXN0b3J5O1xuXG4gIC8vIHRoaXMgaXMgZGVsYXllZCB1bnRpbCB0aGUgYXBwIG1vdW50c1xuICAvLyB0byBhdm9pZCB0aGUgaGFzaGNoYW5nZSBsaXN0ZW5lciBiZWluZyBmaXJlZCB0b28gZWFybHlcbiAgSGFzaEhpc3RvcnkucHJvdG90eXBlLnNldHVwTGlzdGVuZXJzID0gZnVuY3Rpb24gc2V0dXBMaXN0ZW5lcnMgKCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gICAgdmFyIHJvdXRlciA9IHRoaXMucm91dGVyO1xuICAgIHZhciBleHBlY3RTY3JvbGwgPSByb3V0ZXIub3B0aW9ucy5zY3JvbGxCZWhhdmlvcjtcbiAgICB2YXIgc3VwcG9ydHNTY3JvbGwgPSBzdXBwb3J0c1B1c2hTdGF0ZSAmJiBleHBlY3RTY3JvbGw7XG5cbiAgICBpZiAoc3VwcG9ydHNTY3JvbGwpIHtcbiAgICAgIHNldHVwU2Nyb2xsKCk7XG4gICAgfVxuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoc3VwcG9ydHNQdXNoU3RhdGUgPyAncG9wc3RhdGUnIDogJ2hhc2hjaGFuZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgY3VycmVudCA9IHRoaXMkMS5jdXJyZW50O1xuICAgICAgaWYgKCFlbnN1cmVTbGFzaCgpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgdGhpcyQxLnRyYW5zaXRpb25UbyhnZXRIYXNoKCksIGZ1bmN0aW9uIChyb3V0ZSkge1xuICAgICAgICBpZiAoc3VwcG9ydHNTY3JvbGwpIHtcbiAgICAgICAgICBoYW5kbGVTY3JvbGwodGhpcyQxLnJvdXRlciwgcm91dGUsIGN1cnJlbnQsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc3VwcG9ydHNQdXNoU3RhdGUpIHtcbiAgICAgICAgICByZXBsYWNlSGFzaChyb3V0ZS5mdWxsUGF0aCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9O1xuXG4gIEhhc2hIaXN0b3J5LnByb3RvdHlwZS5wdXNoID0gZnVuY3Rpb24gcHVzaCAobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcblxuICAgIHZhciByZWYgPSB0aGlzO1xuICAgIHZhciBmcm9tUm91dGUgPSByZWYuY3VycmVudDtcbiAgICB0aGlzLnRyYW5zaXRpb25Ubyhsb2NhdGlvbiwgZnVuY3Rpb24gKHJvdXRlKSB7XG4gICAgICBwdXNoSGFzaChyb3V0ZS5mdWxsUGF0aCk7XG4gICAgICBoYW5kbGVTY3JvbGwodGhpcyQxLnJvdXRlciwgcm91dGUsIGZyb21Sb3V0ZSwgZmFsc2UpO1xuICAgICAgb25Db21wbGV0ZSAmJiBvbkNvbXBsZXRlKHJvdXRlKTtcbiAgICB9LCBvbkFib3J0KTtcbiAgfTtcblxuICBIYXNoSGlzdG9yeS5wcm90b3R5cGUucmVwbGFjZSA9IGZ1bmN0aW9uIHJlcGxhY2UgKGxvY2F0aW9uLCBvbkNvbXBsZXRlLCBvbkFib3J0KSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgICB2YXIgcmVmID0gdGhpcztcbiAgICB2YXIgZnJvbVJvdXRlID0gcmVmLmN1cnJlbnQ7XG4gICAgdGhpcy50cmFuc2l0aW9uVG8obG9jYXRpb24sIGZ1bmN0aW9uIChyb3V0ZSkge1xuICAgICAgcmVwbGFjZUhhc2gocm91dGUuZnVsbFBhdGgpO1xuICAgICAgaGFuZGxlU2Nyb2xsKHRoaXMkMS5yb3V0ZXIsIHJvdXRlLCBmcm9tUm91dGUsIGZhbHNlKTtcbiAgICAgIG9uQ29tcGxldGUgJiYgb25Db21wbGV0ZShyb3V0ZSk7XG4gICAgfSwgb25BYm9ydCk7XG4gIH07XG5cbiAgSGFzaEhpc3RvcnkucHJvdG90eXBlLmdvID0gZnVuY3Rpb24gZ28gKG4pIHtcbiAgICB3aW5kb3cuaGlzdG9yeS5nbyhuKTtcbiAgfTtcblxuICBIYXNoSGlzdG9yeS5wcm90b3R5cGUuZW5zdXJlVVJMID0gZnVuY3Rpb24gZW5zdXJlVVJMIChwdXNoKSB7XG4gICAgdmFyIGN1cnJlbnQgPSB0aGlzLmN1cnJlbnQuZnVsbFBhdGg7XG4gICAgaWYgKGdldEhhc2goKSAhPT0gY3VycmVudCkge1xuICAgICAgcHVzaCA/IHB1c2hIYXNoKGN1cnJlbnQpIDogcmVwbGFjZUhhc2goY3VycmVudCk7XG4gICAgfVxuICB9O1xuXG4gIEhhc2hIaXN0b3J5LnByb3RvdHlwZS5nZXRDdXJyZW50TG9jYXRpb24gPSBmdW5jdGlvbiBnZXRDdXJyZW50TG9jYXRpb24gKCkge1xuICAgIHJldHVybiBnZXRIYXNoKClcbiAgfTtcblxuICByZXR1cm4gSGFzaEhpc3Rvcnk7XG59KEhpc3RvcnkpKTtcblxuZnVuY3Rpb24gY2hlY2tGYWxsYmFjayAoYmFzZSkge1xuICB2YXIgbG9jYXRpb24gPSBnZXRMb2NhdGlvbihiYXNlKTtcbiAgaWYgKCEvXlxcLyMvLnRlc3QobG9jYXRpb24pKSB7XG4gICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoXG4gICAgICBjbGVhblBhdGgoYmFzZSArICcvIycgKyBsb2NhdGlvbilcbiAgICApO1xuICAgIHJldHVybiB0cnVlXG4gIH1cbn1cblxuZnVuY3Rpb24gZW5zdXJlU2xhc2ggKCkge1xuICB2YXIgcGF0aCA9IGdldEhhc2goKTtcbiAgaWYgKHBhdGguY2hhckF0KDApID09PSAnLycpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG4gIHJlcGxhY2VIYXNoKCcvJyArIHBhdGgpO1xuICByZXR1cm4gZmFsc2Vcbn1cblxuZnVuY3Rpb24gZ2V0SGFzaCAoKSB7XG4gIC8vIFdlIGNhbid0IHVzZSB3aW5kb3cubG9jYXRpb24uaGFzaCBoZXJlIGJlY2F1c2UgaXQncyBub3RcbiAgLy8gY29uc2lzdGVudCBhY3Jvc3MgYnJvd3NlcnMgLSBGaXJlZm94IHdpbGwgcHJlLWRlY29kZSBpdCFcbiAgdmFyIGhyZWYgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgdmFyIGluZGV4ID0gaHJlZi5pbmRleE9mKCcjJyk7XG4gIHJldHVybiBpbmRleCA9PT0gLTEgPyAnJyA6IGhyZWYuc2xpY2UoaW5kZXggKyAxKVxufVxuXG5mdW5jdGlvbiBnZXRVcmwgKHBhdGgpIHtcbiAgdmFyIGhyZWYgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgdmFyIGkgPSBocmVmLmluZGV4T2YoJyMnKTtcbiAgdmFyIGJhc2UgPSBpID49IDAgPyBocmVmLnNsaWNlKDAsIGkpIDogaHJlZjtcbiAgcmV0dXJuIChiYXNlICsgXCIjXCIgKyBwYXRoKVxufVxuXG5mdW5jdGlvbiBwdXNoSGFzaCAocGF0aCkge1xuICBpZiAoc3VwcG9ydHNQdXNoU3RhdGUpIHtcbiAgICBwdXNoU3RhdGUoZ2V0VXJsKHBhdGgpKTtcbiAgfSBlbHNlIHtcbiAgICB3aW5kb3cubG9jYXRpb24uaGFzaCA9IHBhdGg7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVwbGFjZUhhc2ggKHBhdGgpIHtcbiAgaWYgKHN1cHBvcnRzUHVzaFN0YXRlKSB7XG4gICAgcmVwbGFjZVN0YXRlKGdldFVybChwYXRoKSk7XG4gIH0gZWxzZSB7XG4gICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoZ2V0VXJsKHBhdGgpKTtcbiAgfVxufVxuXG4vKiAgKi9cblxuXG52YXIgQWJzdHJhY3RIaXN0b3J5ID0gKGZ1bmN0aW9uIChIaXN0b3J5JCQxKSB7XG4gIGZ1bmN0aW9uIEFic3RyYWN0SGlzdG9yeSAocm91dGVyLCBiYXNlKSB7XG4gICAgSGlzdG9yeSQkMS5jYWxsKHRoaXMsIHJvdXRlciwgYmFzZSk7XG4gICAgdGhpcy5zdGFjayA9IFtdO1xuICAgIHRoaXMuaW5kZXggPSAtMTtcbiAgfVxuXG4gIGlmICggSGlzdG9yeSQkMSApIEFic3RyYWN0SGlzdG9yeS5fX3Byb3RvX18gPSBIaXN0b3J5JCQxO1xuICBBYnN0cmFjdEhpc3RvcnkucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZSggSGlzdG9yeSQkMSAmJiBIaXN0b3J5JCQxLnByb3RvdHlwZSApO1xuICBBYnN0cmFjdEhpc3RvcnkucHJvdG90eXBlLmNvbnN0cnVjdG9yID0gQWJzdHJhY3RIaXN0b3J5O1xuXG4gIEFic3RyYWN0SGlzdG9yeS5wcm90b3R5cGUucHVzaCA9IGZ1bmN0aW9uIHB1c2ggKGxvY2F0aW9uLCBvbkNvbXBsZXRlLCBvbkFib3J0KSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgICB0aGlzLnRyYW5zaXRpb25Ubyhsb2NhdGlvbiwgZnVuY3Rpb24gKHJvdXRlKSB7XG4gICAgICB0aGlzJDEuc3RhY2sgPSB0aGlzJDEuc3RhY2suc2xpY2UoMCwgdGhpcyQxLmluZGV4ICsgMSkuY29uY2F0KHJvdXRlKTtcbiAgICAgIHRoaXMkMS5pbmRleCsrO1xuICAgICAgb25Db21wbGV0ZSAmJiBvbkNvbXBsZXRlKHJvdXRlKTtcbiAgICB9LCBvbkFib3J0KTtcbiAgfTtcblxuICBBYnN0cmFjdEhpc3RvcnkucHJvdG90eXBlLnJlcGxhY2UgPSBmdW5jdGlvbiByZXBsYWNlIChsb2NhdGlvbiwgb25Db21wbGV0ZSwgb25BYm9ydCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gICAgdGhpcy50cmFuc2l0aW9uVG8obG9jYXRpb24sIGZ1bmN0aW9uIChyb3V0ZSkge1xuICAgICAgdGhpcyQxLnN0YWNrID0gdGhpcyQxLnN0YWNrLnNsaWNlKDAsIHRoaXMkMS5pbmRleCkuY29uY2F0KHJvdXRlKTtcbiAgICAgIG9uQ29tcGxldGUgJiYgb25Db21wbGV0ZShyb3V0ZSk7XG4gICAgfSwgb25BYm9ydCk7XG4gIH07XG5cbiAgQWJzdHJhY3RIaXN0b3J5LnByb3RvdHlwZS5nbyA9IGZ1bmN0aW9uIGdvIChuKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgICB2YXIgdGFyZ2V0SW5kZXggPSB0aGlzLmluZGV4ICsgbjtcbiAgICBpZiAodGFyZ2V0SW5kZXggPCAwIHx8IHRhcmdldEluZGV4ID49IHRoaXMuc3RhY2subGVuZ3RoKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdmFyIHJvdXRlID0gdGhpcy5zdGFja1t0YXJnZXRJbmRleF07XG4gICAgdGhpcy5jb25maXJtVHJhbnNpdGlvbihyb3V0ZSwgZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcyQxLmluZGV4ID0gdGFyZ2V0SW5kZXg7XG4gICAgICB0aGlzJDEudXBkYXRlUm91dGUocm91dGUpO1xuICAgIH0pO1xuICB9O1xuXG4gIEFic3RyYWN0SGlzdG9yeS5wcm90b3R5cGUuZ2V0Q3VycmVudExvY2F0aW9uID0gZnVuY3Rpb24gZ2V0Q3VycmVudExvY2F0aW9uICgpIHtcbiAgICB2YXIgY3VycmVudCA9IHRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGggLSAxXTtcbiAgICByZXR1cm4gY3VycmVudCA/IGN1cnJlbnQuZnVsbFBhdGggOiAnLydcbiAgfTtcblxuICBBYnN0cmFjdEhpc3RvcnkucHJvdG90eXBlLmVuc3VyZVVSTCA9IGZ1bmN0aW9uIGVuc3VyZVVSTCAoKSB7XG4gICAgLy8gbm9vcFxuICB9O1xuXG4gIHJldHVybiBBYnN0cmFjdEhpc3Rvcnk7XG59KEhpc3RvcnkpKTtcblxuLyogICovXG5cbnZhciBWdWVSb3V0ZXIgPSBmdW5jdGlvbiBWdWVSb3V0ZXIgKG9wdGlvbnMpIHtcbiAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgdGhpcy5hcHAgPSBudWxsO1xuICB0aGlzLmFwcHMgPSBbXTtcbiAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgdGhpcy5iZWZvcmVIb29rcyA9IFtdO1xuICB0aGlzLnJlc29sdmVIb29rcyA9IFtdO1xuICB0aGlzLmFmdGVySG9va3MgPSBbXTtcbiAgdGhpcy5tYXRjaGVyID0gY3JlYXRlTWF0Y2hlcihvcHRpb25zLnJvdXRlcyB8fCBbXSwgdGhpcyk7XG5cbiAgdmFyIG1vZGUgPSBvcHRpb25zLm1vZGUgfHwgJ2hhc2gnO1xuICB0aGlzLmZhbGxiYWNrID0gbW9kZSA9PT0gJ2hpc3RvcnknICYmICFzdXBwb3J0c1B1c2hTdGF0ZSAmJiBvcHRpb25zLmZhbGxiYWNrICE9PSBmYWxzZTtcbiAgaWYgKHRoaXMuZmFsbGJhY2spIHtcbiAgICBtb2RlID0gJ2hhc2gnO1xuICB9XG4gIGlmICghaW5Ccm93c2VyKSB7XG4gICAgbW9kZSA9ICdhYnN0cmFjdCc7XG4gIH1cbiAgdGhpcy5tb2RlID0gbW9kZTtcblxuICBzd2l0Y2ggKG1vZGUpIHtcbiAgICBjYXNlICdoaXN0b3J5JzpcbiAgICAgIHRoaXMuaGlzdG9yeSA9IG5ldyBIVE1MNUhpc3RvcnkodGhpcywgb3B0aW9ucy5iYXNlKTtcbiAgICAgIGJyZWFrXG4gICAgY2FzZSAnaGFzaCc6XG4gICAgICB0aGlzLmhpc3RvcnkgPSBuZXcgSGFzaEhpc3RvcnkodGhpcywgb3B0aW9ucy5iYXNlLCB0aGlzLmZhbGxiYWNrKTtcbiAgICAgIGJyZWFrXG4gICAgY2FzZSAnYWJzdHJhY3QnOlxuICAgICAgdGhpcy5oaXN0b3J5ID0gbmV3IEFic3RyYWN0SGlzdG9yeSh0aGlzLCBvcHRpb25zLmJhc2UpO1xuICAgICAgYnJlYWtcbiAgICBkZWZhdWx0OlxuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgYXNzZXJ0KGZhbHNlLCAoXCJpbnZhbGlkIG1vZGU6IFwiICsgbW9kZSkpO1xuICAgICAgfVxuICB9XG59O1xuXG52YXIgcHJvdG90eXBlQWNjZXNzb3JzID0geyBjdXJyZW50Um91dGU6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0gfTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5tYXRjaCA9IGZ1bmN0aW9uIG1hdGNoIChcbiAgcmF3LFxuICBjdXJyZW50LFxuICByZWRpcmVjdGVkRnJvbVxuKSB7XG4gIHJldHVybiB0aGlzLm1hdGNoZXIubWF0Y2gocmF3LCBjdXJyZW50LCByZWRpcmVjdGVkRnJvbSlcbn07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5jdXJyZW50Um91dGUuZ2V0ID0gZnVuY3Rpb24gKCkge1xuICByZXR1cm4gdGhpcy5oaXN0b3J5ICYmIHRoaXMuaGlzdG9yeS5jdXJyZW50XG59O1xuXG5WdWVSb3V0ZXIucHJvdG90eXBlLmluaXQgPSBmdW5jdGlvbiBpbml0IChhcHAgLyogVnVlIGNvbXBvbmVudCBpbnN0YW5jZSAqLykge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgYXNzZXJ0KFxuICAgIGluc3RhbGwuaW5zdGFsbGVkLFxuICAgIFwibm90IGluc3RhbGxlZC4gTWFrZSBzdXJlIHRvIGNhbGwgYFZ1ZS51c2UoVnVlUm91dGVyKWAgXCIgK1xuICAgIFwiYmVmb3JlIGNyZWF0aW5nIHJvb3QgaW5zdGFuY2UuXCJcbiAgKTtcblxuICB0aGlzLmFwcHMucHVzaChhcHApO1xuXG4gIC8vIG1haW4gYXBwIGFscmVhZHkgaW5pdGlhbGl6ZWQuXG4gIGlmICh0aGlzLmFwcCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgdGhpcy5hcHAgPSBhcHA7XG5cbiAgdmFyIGhpc3RvcnkgPSB0aGlzLmhpc3Rvcnk7XG5cbiAgaWYgKGhpc3RvcnkgaW5zdGFuY2VvZiBIVE1MNUhpc3RvcnkpIHtcbiAgICBoaXN0b3J5LnRyYW5zaXRpb25UbyhoaXN0b3J5LmdldEN1cnJlbnRMb2NhdGlvbigpKTtcbiAgfSBlbHNlIGlmIChoaXN0b3J5IGluc3RhbmNlb2YgSGFzaEhpc3RvcnkpIHtcbiAgICB2YXIgc2V0dXBIYXNoTGlzdGVuZXIgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBoaXN0b3J5LnNldHVwTGlzdGVuZXJzKCk7XG4gICAgfTtcbiAgICBoaXN0b3J5LnRyYW5zaXRpb25UbyhcbiAgICAgIGhpc3RvcnkuZ2V0Q3VycmVudExvY2F0aW9uKCksXG4gICAgICBzZXR1cEhhc2hMaXN0ZW5lcixcbiAgICAgIHNldHVwSGFzaExpc3RlbmVyXG4gICAgKTtcbiAgfVxuXG4gIGhpc3RvcnkubGlzdGVuKGZ1bmN0aW9uIChyb3V0ZSkge1xuICAgIHRoaXMkMS5hcHBzLmZvckVhY2goZnVuY3Rpb24gKGFwcCkge1xuICAgICAgYXBwLl9yb3V0ZSA9IHJvdXRlO1xuICAgIH0pO1xuICB9KTtcbn07XG5cblZ1ZVJvdXRlci5wcm90b3R5cGUuYmVmb3JlRWFjaCA9IGZ1bmN0aW9uIGJlZm9yZUVhY2ggKGZuKSB7XG4gIHJldHVybiByZWdpc3Rlckhvb2sodGhpcy5iZWZvcmVIb29rcywgZm4pXG59O1xuXG5WdWVSb3V0ZXIucHJvdG90eXBlLmJlZm9yZVJlc29sdmUgPSBmdW5jdGlvbiBiZWZvcmVSZXNvbHZlIChmbikge1xuICByZXR1cm4gcmVnaXN0ZXJIb29rKHRoaXMucmVzb2x2ZUhvb2tzLCBmbilcbn07XG5cblZ1ZVJvdXRlci5wcm90b3R5cGUuYWZ0ZXJFYWNoID0gZnVuY3Rpb24gYWZ0ZXJFYWNoIChmbikge1xuICByZXR1cm4gcmVnaXN0ZXJIb29rKHRoaXMuYWZ0ZXJIb29rcywgZm4pXG59O1xuXG5WdWVSb3V0ZXIucHJvdG90eXBlLm9uUmVhZHkgPSBmdW5jdGlvbiBvblJlYWR5IChjYiwgZXJyb3JDYikge1xuICB0aGlzLmhpc3Rvcnkub25SZWFkeShjYiwgZXJyb3JDYik7XG59O1xuXG5WdWVSb3V0ZXIucHJvdG90eXBlLm9uRXJyb3IgPSBmdW5jdGlvbiBvbkVycm9yIChlcnJvckNiKSB7XG4gIHRoaXMuaGlzdG9yeS5vbkVycm9yKGVycm9yQ2IpO1xufTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5wdXNoID0gZnVuY3Rpb24gcHVzaCAobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpIHtcbiAgdGhpcy5oaXN0b3J5LnB1c2gobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpO1xufTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5yZXBsYWNlID0gZnVuY3Rpb24gcmVwbGFjZSAobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpIHtcbiAgdGhpcy5oaXN0b3J5LnJlcGxhY2UobG9jYXRpb24sIG9uQ29tcGxldGUsIG9uQWJvcnQpO1xufTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5nbyA9IGZ1bmN0aW9uIGdvIChuKSB7XG4gIHRoaXMuaGlzdG9yeS5nbyhuKTtcbn07XG5cblZ1ZVJvdXRlci5wcm90b3R5cGUuYmFjayA9IGZ1bmN0aW9uIGJhY2sgKCkge1xuICB0aGlzLmdvKC0xKTtcbn07XG5cblZ1ZVJvdXRlci5wcm90b3R5cGUuZm9yd2FyZCA9IGZ1bmN0aW9uIGZvcndhcmQgKCkge1xuICB0aGlzLmdvKDEpO1xufTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5nZXRNYXRjaGVkQ29tcG9uZW50cyA9IGZ1bmN0aW9uIGdldE1hdGNoZWRDb21wb25lbnRzICh0bykge1xuICB2YXIgcm91dGUgPSB0b1xuICAgID8gdG8ubWF0Y2hlZFxuICAgICAgPyB0b1xuICAgICAgOiB0aGlzLnJlc29sdmUodG8pLnJvdXRlXG4gICAgOiB0aGlzLmN1cnJlbnRSb3V0ZTtcbiAgaWYgKCFyb3V0ZSkge1xuICAgIHJldHVybiBbXVxuICB9XG4gIHJldHVybiBbXS5jb25jYXQuYXBwbHkoW10sIHJvdXRlLm1hdGNoZWQubWFwKGZ1bmN0aW9uIChtKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKG0uY29tcG9uZW50cykubWFwKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIHJldHVybiBtLmNvbXBvbmVudHNba2V5XVxuICAgIH0pXG4gIH0pKVxufTtcblxuVnVlUm91dGVyLnByb3RvdHlwZS5yZXNvbHZlID0gZnVuY3Rpb24gcmVzb2x2ZSAoXG4gIHRvLFxuICBjdXJyZW50LFxuICBhcHBlbmRcbikge1xuICB2YXIgbG9jYXRpb24gPSBub3JtYWxpemVMb2NhdGlvbihcbiAgICB0byxcbiAgICBjdXJyZW50IHx8IHRoaXMuaGlzdG9yeS5jdXJyZW50LFxuICAgIGFwcGVuZCxcbiAgICB0aGlzXG4gICk7XG4gIHZhciByb3V0ZSA9IHRoaXMubWF0Y2gobG9jYXRpb24sIGN1cnJlbnQpO1xuICB2YXIgZnVsbFBhdGggPSByb3V0ZS5yZWRpcmVjdGVkRnJvbSB8fCByb3V0ZS5mdWxsUGF0aDtcbiAgdmFyIGJhc2UgPSB0aGlzLmhpc3RvcnkuYmFzZTtcbiAgdmFyIGhyZWYgPSBjcmVhdGVIcmVmKGJhc2UsIGZ1bGxQYXRoLCB0aGlzLm1vZGUpO1xuICByZXR1cm4ge1xuICAgIGxvY2F0aW9uOiBsb2NhdGlvbixcbiAgICByb3V0ZTogcm91dGUsXG4gICAgaHJlZjogaHJlZixcbiAgICAvLyBmb3IgYmFja3dhcmRzIGNvbXBhdFxuICAgIG5vcm1hbGl6ZWRUbzogbG9jYXRpb24sXG4gICAgcmVzb2x2ZWQ6IHJvdXRlXG4gIH1cbn07XG5cblZ1ZVJvdXRlci5wcm90b3R5cGUuYWRkUm91dGVzID0gZnVuY3Rpb24gYWRkUm91dGVzIChyb3V0ZXMpIHtcbiAgdGhpcy5tYXRjaGVyLmFkZFJvdXRlcyhyb3V0ZXMpO1xuICBpZiAodGhpcy5oaXN0b3J5LmN1cnJlbnQgIT09IFNUQVJUKSB7XG4gICAgdGhpcy5oaXN0b3J5LnRyYW5zaXRpb25Ubyh0aGlzLmhpc3RvcnkuZ2V0Q3VycmVudExvY2F0aW9uKCkpO1xuICB9XG59O1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyggVnVlUm91dGVyLnByb3RvdHlwZSwgcHJvdG90eXBlQWNjZXNzb3JzICk7XG5cbmZ1bmN0aW9uIHJlZ2lzdGVySG9vayAobGlzdCwgZm4pIHtcbiAgbGlzdC5wdXNoKGZuKTtcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgaSA9IGxpc3QuaW5kZXhPZihmbik7XG4gICAgaWYgKGkgPiAtMSkgeyBsaXN0LnNwbGljZShpLCAxKTsgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUhyZWYgKGJhc2UsIGZ1bGxQYXRoLCBtb2RlKSB7XG4gIHZhciBwYXRoID0gbW9kZSA9PT0gJ2hhc2gnID8gJyMnICsgZnVsbFBhdGggOiBmdWxsUGF0aDtcbiAgcmV0dXJuIGJhc2UgPyBjbGVhblBhdGgoYmFzZSArICcvJyArIHBhdGgpIDogcGF0aFxufVxuXG5WdWVSb3V0ZXIuaW5zdGFsbCA9IGluc3RhbGw7XG5WdWVSb3V0ZXIudmVyc2lvbiA9ICczLjAuMSc7XG5cbmlmIChpbkJyb3dzZXIgJiYgd2luZG93LlZ1ZSkge1xuICB3aW5kb3cuVnVlLnVzZShWdWVSb3V0ZXIpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBWdWVSb3V0ZXI7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWUtcm91dGVyL2Rpc3QvdnVlLXJvdXRlci5lc20uanNcbi8vIG1vZHVsZSBpZCA9IC4vbm9kZV9tb2R1bGVzL3Z1ZS1yb3V0ZXIvZGlzdC92dWUtcm91dGVyLmVzbS5qc1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/vue-router/dist/vue-router.esm.js\n"); - -/***/ }), - -/***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?{\"sourceMap\":true}!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-3340127d\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/components/login/registerForm.vue": -/***/ (function(module, exports, __webpack_require__) { - -eval("// style-loader: Adds some css to the DOM by adding a ';\n } else if (typeof document !== 'undefined') {\n // Client-side\n this.genStyle();\n this.applyTheme();\n }\n },\n\n\n methods: {\n applyTheme: function applyTheme() {\n if (this.style) this.style.innerHTML = this.generatedStyles;\n },\n genStyle: function genStyle() {\n var style = document.getElementById('vuetify-theme-stylesheet');\n\n if (!style) {\n style = document.createElement('style');\n style.type = 'text/css';\n style.id = 'vuetify-theme-stylesheet';\n document.head.appendChild(style);\n }\n\n this.style = style;\n }\n }\n});\n\n/***/ }),\n/* 85 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = parse;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = genVariations;\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return genBaseColor; });\n/* unused harmony export genVariantColor */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__colorUtils__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__ = __webpack_require__(86);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__ = __webpack_require__(87);\n\n\n\n\n/**\n * @param {object} theme\n * @returns {object}\n */\nfunction parse(theme) {\n var colors = Object.keys(theme);\n var parsedTheme = {};\n\n for (var i = 0; i < colors.length; ++i) {\n var name = colors[i];\n var value = theme[name];\n\n parsedTheme[name] = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"a\" /* colorToInt */])(value);\n }\n\n return parsedTheme;\n}\n\nfunction genVariations(name, value) {\n var values = Array(10);\n values[0] = genBaseColor(name, value);\n\n for (var i = 1, n = 5; i <= 5; ++i, --n) {\n values[i] = genVariantColor(name, lighten(value, n), 'lighten', n);\n }\n\n for (var _i = 1; _i <= 4; ++_i) {\n values[_i + 5] = genVariantColor(name, darken(value, _i), 'darken', _i);\n }\n\n return values;\n}\n\nfunction lighten(value, amount) {\n var lab = __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"b\" /* toXYZ */](value));\n lab[0] = lab[0] + amount * 10;\n return __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"b\" /* toXYZ */](lab));\n}\n\nfunction darken(value, amount) {\n var lab = __WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"b\" /* toXYZ */](value));\n lab[0] = lab[0] - amount * 10;\n return __WEBPACK_IMPORTED_MODULE_1__color_transformSRGB__[\"a\" /* fromXYZ */](__WEBPACK_IMPORTED_MODULE_2__color_transformCIELAB__[\"b\" /* toXYZ */](lab));\n}\n\n/**\n * Generate the CSS for a base color (.primary)\n *\n * @param {string} name - The color name\n * @param {string|number} value - The color value\n * @returns {string}\n */\nvar genBaseColor = function genBaseColor(name, value) {\n value = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"b\" /* intToHex */])(value);\n return '\\n.' + name + ' {\\n background-color: ' + value + ' !important;\\n border-color: ' + value + ' !important;\\n}\\n.' + name + '--text {\\n color: ' + value + ' !important;\\n}\\n.' + name + '--text input,\\n.' + name + '--text textarea {\\n caret-color: ' + value + ' !important;\\n}\\n.' + name + '--after::after {\\n background: ' + value + ' !important;\\n}';\n};\n\n/**\n * Generate the CSS for a variant color (.primary.darken-2)\n *\n * @param {string} name - The color name\n * @param {string|number} value - The color value\n * @param {string} type - The variant type (darken/lighten)\n * @param {number} n - The darken/lighten step number\n * @returns {string}\n */\nvar genVariantColor = function genVariantColor(name, value, type, n) {\n value = Object(__WEBPACK_IMPORTED_MODULE_0__colorUtils__[\"b\" /* intToHex */])(value);\n return '\\n.' + name + '.' + type + '-' + n + ' {\\n background-color: ' + value + ' !important;\\n border-color: ' + value + ' !important;\\n}\\n.' + name + '--text.text--' + type + '-' + n + ' {\\n color: ' + value + ' !important;\\n}\\n.' + name + '--text.text--' + type + '-' + n + ' input,\\n.' + name + '--text.text--' + type + '-' + n + ' textarea {\\n caret-color: ' + value + ' !important;\\n}\\n.' + name + '.' + type + '-' + n + '--after::after {\\n background: ' + value + ' !important;\\n}';\n};\n\n/***/ }),\n/* 86 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = fromXYZ;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = toXYZ;\n// For converting XYZ to sRGB\nvar srgbForwardMatrix = [[3.2406, -1.5372, -0.4986], [-0.9689, 1.8758, 0.0415], [0.0557, -0.2040, 1.0570]];\n\n// Forward gamma adjust\nvar srgbForwardTransform = function srgbForwardTransform(C) {\n return C <= 0.0031308 ? C * 12.92 : 1.055 * Math.pow(C, 1 / 2.4) - 0.055;\n};\n\n// For converting sRGB to XYZ\nvar srgbReverseMatrix = [[0.4124, 0.3576, 0.1805], [0.2126, 0.7152, 0.0722], [0.0193, 0.1192, 0.9505]];\n\n// Reverse gamma adjust\nvar srgbReverseTransform = function srgbReverseTransform(C) {\n return C <= 0.04045 ? C / 12.92 : Math.pow((C + 0.055) / 1.055, 2.4);\n};\n\nfunction clamp(value) {\n return Math.max(0, Math.min(1, value));\n}\n\nfunction fromXYZ(xyz) {\n var rgb = Array(3);\n var transform = srgbForwardTransform;\n var matrix = srgbForwardMatrix;\n\n // Matrix transform, then gamma adjustment\n for (var i = 0; i < 3; ++i) {\n rgb[i] = Math.round(clamp(transform(matrix[i][0] * xyz[0] + matrix[i][1] * xyz[1] + matrix[i][2] * xyz[2])) * 255);\n }\n\n // Rescale back to [0, 255]\n return (rgb[0] << 16) + (rgb[1] << 8) + (rgb[2] << 0);\n}\n\nfunction toXYZ(rgb) {\n var xyz = Array(3);\n var transform = srgbReverseTransform;\n var matrix = srgbReverseMatrix;\n\n // Rescale from [0, 255] to [0, 1] then adjust sRGB gamma to linear RGB\n var r = transform((rgb >> 16 & 0xff) / 255);\n var g = transform((rgb >> 8 & 0xff) / 255);\n var b = transform((rgb >> 0 & 0xff) / 255);\n\n // Matrix color space transform\n for (var i = 0; i < 3; ++i) {\n xyz[i] = matrix[i][0] * r + matrix[i][1] * g + matrix[i][2] * b;\n }\n\n return xyz;\n}\n\n/***/ }),\n/* 87 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = fromXYZ;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = toXYZ;\nvar delta = 0.20689655172413793; // 6÷29\n\nvar cielabForwardTransform = function cielabForwardTransform(t) {\n return t > Math.pow(delta, 3) ? Math.cbrt(t) : t / (3 * Math.pow(delta, 2)) + 4 / 29;\n};\n\nvar cielabReverseTransform = function cielabReverseTransform(t) {\n return t > delta ? Math.pow(t, 3) : 3 * Math.pow(delta, 2) * (t - 4 / 29);\n};\n\nfunction fromXYZ(xyz) {\n var transform = cielabForwardTransform;\n var transformedY = transform(xyz[1]);\n\n return [116 * transformedY - 16, 500 * (transform(xyz[0] / 0.95047) - transformedY), 200 * (transformedY - transform(xyz[2] / 1.08883))];\n}\n\nfunction toXYZ(lab) {\n var transform = cielabReverseTransform;\n var Ln = (lab[0] + 16) / 116;\n return [transform(Ln + lab[1] / 500) * 0.95047, transform(Ln), transform(Ln - lab[2] / 200) * 1.08883];\n}\n\n/***/ }),\n/* 88 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * A modified version of https://gist.github.com/cb109/b074a65f7595cffc21cea59ce8d15f9b\n */\n\n/**\n * A Vue mixin to get the current width/height and the associated breakpoint.\n *\n * Useful to e.g. adapt the user interface from inside a Vue component\n * as opposed to using CSS classes. The breakpoint pixel values and\n * range names are taken from Vuetify (https://github.com/vuetifyjs).\n *\n * Use within a component:\n *\n * import breakpoint from './breakpoint.js'\n *\n * export default {\n * name: 'my-component',\n * mixins: [breakpoint],\n * ...\n *\n * Then inside a template:\n *\n *
...
\n */\nvar breakpoint = {\n data: function data() {\n return {\n clientWidth: clientDimensions.getWidth(),\n clientHeight: clientDimensions.getHeight(),\n resizeTimeout: null\n };\n },\n\n\n computed: {\n breakpoint: function breakpoint() {\n var xs = this.clientWidth < 600;\n var sm = this.clientWidth < 960 && !xs;\n var md = this.clientWidth < 1280 - 16 && !(sm || xs);\n var lg = this.clientWidth < 1920 - 16 && !(md || sm || xs);\n var xl = this.clientWidth >= 1920 - 16 && !(lg || md || sm || xs);\n\n var xsOnly = xs;\n var smOnly = sm;\n var smAndDown = (xs || sm) && !(md || lg || xl);\n var smAndUp = !xs && (sm || md || lg || xl);\n var mdOnly = md;\n var mdAndDown = (xs || sm || md) && !(lg || xl);\n var mdAndUp = !(xs || sm) && (md || lg || xl);\n var lgOnly = lg;\n var lgAndDown = (xs || sm || md || lg) && !xl;\n var lgAndUp = !(xs || sm || md) && (lg || xl);\n var xlOnly = xl;\n\n var name = void 0;\n switch (true) {\n case xs:\n name = 'xs';\n break;\n case sm:\n name = 'sm';\n break;\n case md:\n name = 'md';\n break;\n case lg:\n name = 'lg';\n break;\n default:\n name = 'xl';\n break;\n }\n\n var result = {\n // Definite breakpoint.\n xs: xs,\n sm: sm,\n md: md,\n lg: lg,\n xl: xl,\n\n // Useful e.g. to construct CSS class names dynamically.\n name: name,\n\n // Breakpoint ranges.\n xsOnly: xsOnly,\n smOnly: smOnly,\n smAndDown: smAndDown,\n smAndUp: smAndUp,\n mdOnly: mdOnly,\n mdAndDown: mdAndDown,\n mdAndUp: mdAndUp,\n lgOnly: lgOnly,\n lgAndDown: lgAndDown,\n lgAndUp: lgAndUp,\n xlOnly: xlOnly,\n\n // For custom breakpoint logic.\n width: this.clientWidth,\n height: this.clientHeight\n };\n\n return result;\n }\n },\n\n watch: {\n breakpoint: function breakpoint(val) {\n this.$vuetify.breakpoint = val;\n }\n },\n\n created: function created() {\n this.$vuetify.breakpoint = this.breakpoint;\n },\n\n\n methods: {\n onResize: function onResize() {\n var _this = this;\n\n clearTimeout(this.resizeTimeout);\n\n // Added debounce to match what\n // v-resize used to do but was\n // removed due to a memory leak\n // https://github.com/vuetifyjs/vuetify/pull/2997\n this.resizeTimeout = setTimeout(function () {\n _this.clientWidth = clientDimensions.getWidth();\n _this.clientHeight = clientDimensions.getHeight();\n }, 200);\n }\n }\n\n // Cross-browser support as described in:\n // https://stackoverflow.com/questions/1248081\n};var clientDimensions = {\n getWidth: function getWidth() {\n if (typeof document === 'undefined') return 0; // SSR\n return Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n },\n getHeight: function getHeight() {\n if (typeof document === 'undefined') return 0; // SSR\n return Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (breakpoint);\n\n/***/ }),\n/* 89 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VAlert__ = __webpack_require__(90);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VAlert__[\"a\" /* default */]);\n\n/***/ }),\n/* 90 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl__ = __webpack_require__(91);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_alerts_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__ = __webpack_require__(24);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-alert',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__[\"a\" /* default */]],\n\n props: {\n dismissible: Boolean,\n icon: String,\n outline: Boolean,\n type: {\n type: String,\n validator: function validator(val) {\n return ['info', 'error', 'success', 'warning'].includes(val);\n }\n }\n },\n\n data: function data() {\n return {\n defaultColor: 'error'\n };\n },\n\n computed: {\n classes: function classes() {\n var color = this.type && !this.color ? this.type : this.computedColor;\n var classes = {\n 'alert--dismissible': this.dismissible,\n 'alert--outline': this.outline\n };\n\n return this.outline ? this.addTextColorClassChecks(classes, color) : this.addBackgroundColorClassChecks(classes, color);\n },\n computedIcon: function computedIcon() {\n if (this.icon || !this.type) return this.icon;\n\n switch (this.type) {\n case 'info':\n return 'info';\n case 'error':\n return 'warning';\n case 'success':\n return 'check_circle';\n case 'warning':\n return 'priority_high';\n }\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var children = [h('div', this.$slots.default)];\n\n if (this.computedIcon) {\n children.unshift(h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n 'class': 'alert__icon'\n }, this.computedIcon));\n }\n\n if (this.dismissible) {\n var close = h('a', {\n 'class': 'alert__dismissible',\n on: { click: function click() {\n return _this.$emit('input', false);\n } }\n }, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n props: {\n right: true\n }\n }, 'cancel')]);\n\n children.push(close);\n }\n\n var alert = h('div', {\n staticClass: 'alert',\n 'class': this.classes,\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n on: this.$listeners\n }, children);\n\n if (!this.transition) return alert;\n\n return h('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode\n }\n }, [alert]);\n }\n});\n\n/***/ }),\n/* 91 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 92 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl__ = __webpack_require__(93);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_icons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_helpers__ = __webpack_require__(2);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n\n\nvar SIZE_MAP = {\n small: '16px',\n default: '24px',\n medium: '28px',\n large: '36px',\n xLarge: '40px'\n};\n\nfunction isFontAwesome5(iconType) {\n return ['fas', 'far', 'fal', 'fab'].some(function (val) {\n return iconType.includes(val);\n });\n}\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-icon',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n disabled: Boolean,\n large: Boolean,\n left: Boolean,\n medium: Boolean,\n right: Boolean,\n size: {\n type: [Number, String]\n },\n small: Boolean,\n xLarge: Boolean\n },\n\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n _ref$children = _ref.children,\n children = _ref$children === undefined ? [] : _ref$children;\n var small = props.small,\n medium = props.medium,\n large = props.large,\n xLarge = props.xLarge;\n\n var sizes = { small: small, medium: medium, large: large, xLarge: xLarge };\n var explicitSize = Object.keys(sizes).find(function (key) {\n return sizes[key] && key;\n });\n var fontSize = explicitSize && SIZE_MAP[explicitSize] || Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"b\" /* convertToUnit */])(props.size);\n\n if (fontSize) data.style = _extends({ fontSize: fontSize }, data.style);\n\n var iconName = '';\n if (children.length) iconName = children.pop().text;\n // Support usage of v-text and v-html\n else if (data.domProps) {\n iconName = data.domProps.textContent || data.domProps.innerHTML || iconName;\n\n // Remove nodes so it doesn't\n // overwrite our changes\n delete data.domProps.textContent;\n delete data.domProps.innerHTML;\n }\n\n var iconType = 'material-icons';\n // Material Icon delimiter is _\n // https://material.io/icons/\n var delimiterIndex = iconName.indexOf('-');\n var isCustomIcon = delimiterIndex > -1;\n\n if (isCustomIcon) {\n iconType = iconName.slice(0, delimiterIndex);\n\n if (isFontAwesome5(iconType)) iconType = '';\n // Assume if not a custom icon\n // is Material Icon font\n } else children.push(iconName);\n\n data.attrs = data.attrs || {};\n if (!('aria-hidden' in data.attrs)) {\n data.attrs['aria-hidden'] = true;\n }\n\n var classes = Object.assign({\n 'icon--disabled': props.disabled,\n 'icon--left': props.left,\n 'icon--right': props.right,\n 'theme--dark': props.dark,\n 'theme--light': props.light\n }, props.color ? __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */].methods.addTextColorClassChecks.call(props, {}, props.color) : {});\n\n // Order classes\n // * Component class\n // * Vuetify classes\n // * Icon Classes\n data.staticClass = ['icon', data.staticClass, Object.keys(classes).filter(function (k) {\n return classes[k];\n }).join(' '), iconType, isCustomIcon ? iconName : null].reduce(function (prev, curr) {\n return curr ? prev + ' ' + curr : prev;\n }).trim();\n\n return h('i', data, children);\n }\n});\n\n/***/ }),\n/* 93 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 94 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl__ = __webpack_require__(95);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_avatars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_helpers__ = __webpack_require__(2);\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-avatar',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n size: {\n type: [Number, String],\n default: 48\n },\n tile: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n\n data.staticClass = ('avatar ' + (data.staticClass || '')).trim();\n data.style = data.style || {};\n\n if (props.tile) data.staticClass += ' avatar--tile';\n\n var size = Object(__WEBPACK_IMPORTED_MODULE_2__util_helpers__[\"b\" /* convertToUnit */])(props.size);\n data.style.height = size;\n data.style.width = size;\n data.class = [data.class, __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */].methods.addBackgroundColorClassChecks.call(props, {}, props.color)];\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 95 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 96 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBadge__ = __webpack_require__(97);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBadge__[\"a\" /* default */]);\n\n/***/ }),\n/* 97 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl__ = __webpack_require__(98);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_badges_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__ = __webpack_require__(24);\n\n\n// Mixins\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-badge',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"b\" /* factory */])(['left', 'bottom']), __WEBPACK_IMPORTED_MODULE_4__mixins_transitionable__[\"a\" /* default */]],\n\n props: {\n color: {\n type: String,\n default: 'primary'\n },\n overlap: Boolean,\n transition: {\n type: String,\n default: 'fab-transition'\n },\n value: {\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'badge--bottom': this.bottom,\n 'badge--left': this.left,\n 'badge--overlap': this.overlap\n };\n }\n },\n\n render: function render(h) {\n var badge = this.$slots.badge ? [h('span', {\n staticClass: 'badge__badge',\n 'class': this.addBackgroundColorClassChecks(),\n attrs: this.attrs,\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, this.$slots.badge)] : null;\n\n return h('span', {\n staticClass: 'badge',\n 'class': this.classes\n }, [this.$slots.default, h('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode\n }\n }, badge)]);\n }\n});\n\n/***/ }),\n/* 98 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 99 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBottomNav__ = __webpack_require__(100);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBottomNav__[\"a\" /* default */]);\n\n/***/ }),\n/* 100 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl__ = __webpack_require__(101);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_navs_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_button_group__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\n// Styles\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-bottom-nav',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('bottom', ['height', 'value']), __WEBPACK_IMPORTED_MODULE_2__mixins_button_group__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n active: [Number, String],\n height: {\n default: 56,\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n shift: Boolean,\n value: { required: false }\n },\n\n watch: {\n active: function active() {\n this.update();\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'bottom-nav--absolute': this.absolute,\n 'bottom-nav--fixed': !this.absolute && (this.app || this.fixed),\n 'bottom-nav--shift': this.shift,\n 'bottom-nav--active': this.value\n };\n },\n computedHeight: function computedHeight() {\n return parseInt(this.height);\n }\n },\n\n methods: {\n isSelected: function isSelected(i) {\n var item = this.getValue(i);\n return this.active === item;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return !this.value ? 0 : this.computedHeight;\n },\n updateValue: function updateValue(i) {\n var item = this.getValue(i);\n\n this.$emit('update:active', item);\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'bottom-nav',\n class: this.addBackgroundColorClassChecks(this.classes),\n style: {\n height: parseInt(this.computedHeight) + 'px'\n },\n ref: 'content'\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 101 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 102 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBottomSheet__ = __webpack_require__(103);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBottomSheet__[\"a\" /* default */]);\n\n/***/ }),\n/* 103 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl__ = __webpack_require__(104);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_bottom_sheets_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDialog_VDialog__ = __webpack_require__(36);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-bottom-sheet',\n\n props: {\n disabled: Boolean,\n fullWidth: Boolean,\n hideOverlay: Boolean,\n inset: Boolean,\n lazy: Boolean,\n maxWidth: {\n type: [String, Number],\n default: 'auto'\n },\n persistent: Boolean,\n value: null\n },\n\n render: function render(h) {\n var activator = h('template', {\n slot: 'activator'\n }, this.$slots.activator);\n\n var contentClass = ['bottom-sheet', this.inset ? 'bottom-sheet--inset' : ''].join(' ');\n\n return h(__WEBPACK_IMPORTED_MODULE_1__VDialog_VDialog__[\"a\" /* default */], {\n attrs: _extends({}, this.$props),\n on: _extends({}, this.$listeners),\n props: {\n contentClass: contentClass,\n transition: 'bottom-sheet-transition',\n value: this.value\n }\n }, [activator, this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 104 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 105 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 106 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 107 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__ = __webpack_require__(108);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__ = __webpack_require__(110);\n/* unused harmony reexport VBreadcrumbs */\n/* unused harmony reexport VBreadcrumbsItem */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VBreadcrumbsItem__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBreadcrumbs__[\"a\" /* default */]);\n\n/***/ }),\n/* 108 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl__ = __webpack_require__(109);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_breadcrumbs_styl__);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-breadcrumbs',\n\n props: {\n divider: {\n type: String,\n default: '/'\n },\n large: Boolean,\n justifyCenter: Boolean,\n justifyEnd: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'breadcrumbs--large': this.large\n };\n },\n computedDivider: function computedDivider() {\n return this.$slots.divider ? this.$slots.divider : this.divider;\n },\n styles: function styles() {\n var justify = this.justifyCenter ? 'center' : this.justifyEnd ? 'flex-end' : 'flex-start';\n\n return {\n 'justify-content': justify\n };\n }\n },\n\n methods: {\n /**\n * Add dividers between\n * v-breadcrumbs-item\n *\n * @return {array}\n */\n genChildren: function genChildren() {\n if (!this.$slots.default) return null;\n\n var h = this.$createElement;\n var children = [];\n var dividerData = { staticClass: 'breadcrumbs__divider' };\n\n var createDividers = false;\n for (var i = 0; i < this.$slots.default.length; i++) {\n var elm = this.$slots.default[i];\n\n if (!elm.componentOptions || elm.componentOptions.Ctor.options.name !== 'v-breadcrumbs-item') {\n children.push(elm);\n } else {\n if (createDividers) {\n children.push(h('li', dividerData, this.computedDivider));\n }\n children.push(elm);\n createDividers = true;\n }\n }\n\n return children;\n }\n },\n\n render: function render(h) {\n return h('ul', {\n staticClass: 'breadcrumbs',\n 'class': this.classes,\n style: this.styles\n }, this.genChildren());\n }\n});\n\n/***/ }),\n/* 109 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 110 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_routable__ = __webpack_require__(13);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-breadcrumbs-item',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_routable__[\"a\" /* default */]],\n\n props: {\n // In a breadcrumb, the currently\n // active item should be dimmed\n activeClass: {\n type: String,\n default: 'breadcrumbs__item--disabled'\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'breadcrumbs__item': true\n }, this.activeClass, this.disabled);\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n return h('li', [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 111 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl__ = __webpack_require__(112);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_buttons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VProgressCircular__ = __webpack_require__(39);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_registrable__ = __webpack_require__(4);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Styles\n\n\n// Components\n\n\n// Mixins\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-btn',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"b\" /* factory */])('inputValue'), Object(__WEBPACK_IMPORTED_MODULE_7__mixins_registrable__[\"a\" /* inject */])('buttonGroup')],\n\n props: {\n activeClass: {\n type: String,\n default: 'btn--active'\n },\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n flat: Boolean,\n icon: Boolean,\n large: Boolean,\n loading: Boolean,\n outline: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: true\n },\n round: Boolean,\n small: Boolean,\n tag: {\n type: String,\n default: 'button'\n },\n type: {\n type: String,\n default: 'button'\n },\n value: null\n },\n\n computed: {\n classes: function classes() {\n var _extends2;\n\n var classes = _extends((_extends2 = {\n 'btn': true\n }, _defineProperty(_extends2, this.activeClass, this.isActive), _defineProperty(_extends2, 'btn--absolute', this.absolute), _defineProperty(_extends2, 'btn--block', this.block), _defineProperty(_extends2, 'btn--bottom', this.bottom), _defineProperty(_extends2, 'btn--disabled', this.disabled), _defineProperty(_extends2, 'btn--flat', this.flat), _defineProperty(_extends2, 'btn--floating', this.fab), _defineProperty(_extends2, 'btn--fixed', this.fixed), _defineProperty(_extends2, 'btn--hover', this.hover), _defineProperty(_extends2, 'btn--icon', this.icon), _defineProperty(_extends2, 'btn--large', this.large), _defineProperty(_extends2, 'btn--left', this.left), _defineProperty(_extends2, 'btn--loader', this.loading), _defineProperty(_extends2, 'btn--outline', this.outline), _defineProperty(_extends2, 'btn--depressed', this.depressed && !this.flat || this.outline), _defineProperty(_extends2, 'btn--right', this.right), _defineProperty(_extends2, 'btn--round', this.round), _defineProperty(_extends2, 'btn--router', this.to), _defineProperty(_extends2, 'btn--small', this.small), _defineProperty(_extends2, 'btn--top', this.top), _extends2), this.themeClasses);\n\n return !this.outline && !this.flat ? this.addBackgroundColorClassChecks(classes) : this.addTextColorClassChecks(classes);\n }\n },\n\n methods: {\n // Prevent focus to match md spec\n click: function click(e) {\n !this.fab && e.detail && this.$el.blur();\n\n this.$emit('click', e);\n },\n genContent: function genContent() {\n return this.$createElement('div', { 'class': 'btn__content' }, [this.$slots.default]);\n },\n genLoader: function genLoader() {\n var children = [];\n\n if (!this.$slots.loader) {\n children.push(this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VProgressCircular__[\"a\" /* default */], {\n props: {\n indeterminate: true,\n size: 23,\n width: 2\n }\n }));\n } else {\n children.push(this.$slots.loader);\n }\n\n return this.$createElement('span', { 'class': 'btn__loading' }, children);\n }\n },\n\n mounted: function mounted() {\n if (this.buttonGroup) {\n this.buttonGroup.register(this);\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.buttonGroup) {\n this.buttonGroup.unregister(this);\n }\n },\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n var children = [this.genContent()];\n\n tag === 'button' && (data.attrs.type = this.type);\n this.loading && children.push(this.genLoader());\n\n data.attrs.value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);\n\n return h(tag, data, children);\n }\n});\n\n/***/ }),\n/* 112 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 113 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl__ = __webpack_require__(114);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_circular_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-progress-circular',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n button: Boolean,\n\n indeterminate: Boolean,\n\n rotate: {\n type: Number,\n default: 0\n },\n\n size: {\n type: [Number, String],\n default: 32\n },\n\n width: {\n type: Number,\n default: 4\n },\n\n value: {\n type: Number,\n default: 0\n }\n },\n\n computed: {\n calculatedSize: function calculatedSize() {\n return Number(this.size) + (this.button ? 8 : 0);\n },\n circumference: function circumference() {\n return 2 * Math.PI * this.radius;\n },\n classes: function classes() {\n return this.addTextColorClassChecks({\n 'progress-circular': true,\n 'progress-circular--indeterminate': this.indeterminate,\n 'progress-circular--button': this.button\n });\n },\n normalizedValue: function normalizedValue() {\n if (this.value < 0) {\n return 0;\n }\n\n if (this.value > 100) {\n return 100;\n }\n\n return this.value;\n },\n radius: function radius() {\n return 20;\n },\n strokeDashArray: function strokeDashArray() {\n return Math.round(this.circumference * 1000) / 1000;\n },\n strokeDashOffset: function strokeDashOffset() {\n return (100 - this.normalizedValue) / 100 * this.circumference + 'px';\n },\n strokeWidth: function strokeWidth() {\n return this.width / this.size * this.viewBoxSize * 2;\n },\n styles: function styles() {\n return {\n height: this.calculatedSize + 'px',\n width: this.calculatedSize + 'px'\n };\n },\n svgStyles: function svgStyles() {\n return {\n transform: 'rotate(' + this.rotate + 'deg)'\n };\n },\n viewBoxSize: function viewBoxSize() {\n return this.radius / (1 - this.width / this.size);\n }\n },\n\n methods: {\n genCircle: function genCircle(h, name, offset) {\n return h('circle', {\n class: 'progress-circular__' + name,\n attrs: {\n fill: 'transparent',\n cx: 2 * this.viewBoxSize,\n cy: 2 * this.viewBoxSize,\n r: this.radius,\n 'stroke-width': this.strokeWidth,\n 'stroke-dasharray': this.strokeDashArray,\n 'stroke-dashoffset': offset\n }\n });\n },\n genSvg: function genSvg(h) {\n var children = [this.indeterminate || this.genCircle(h, 'underlay', 0), this.genCircle(h, 'overlay', this.strokeDashOffset)];\n\n return h('svg', {\n style: this.svgStyles,\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: this.viewBoxSize + ' ' + this.viewBoxSize + ' ' + 2 * this.viewBoxSize + ' ' + 2 * this.viewBoxSize\n }\n }, children);\n }\n },\n\n render: function render(h) {\n var info = h('div', { class: 'progress-circular__info' }, [this.$slots.default]);\n var svg = this.genSvg(h);\n\n return h('div', {\n class: this.classes,\n style: this.styles,\n on: this.$listeners\n }, [svg, info]);\n }\n});\n\n/***/ }),\n/* 114 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 115 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VBtnToggle__ = __webpack_require__(116);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VBtnToggle__[\"a\" /* default */]);\n\n/***/ }),\n/* 116 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl__ = __webpack_require__(117);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_button_toggle_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_button_group__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_console__ = __webpack_require__(5);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-btn-toggle',\n\n model: {\n prop: 'inputValue',\n event: 'change'\n },\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_button_group__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inputValue: {\n required: false\n },\n mandatory: Boolean,\n multiple: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'btn-toggle': true,\n 'btn-toggle--selected': this.hasValue,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n };\n },\n hasValue: function hasValue() {\n return this.multiple && this.inputValue.length || !this.multiple && this.inputValue !== null && typeof this.inputValue !== 'undefined';\n }\n },\n\n watch: {\n inputValue: {\n handler: function handler() {\n this.update();\n },\n\n deep: true\n }\n },\n\n methods: {\n isSelected: function isSelected(i) {\n var item = this.getValue(i);\n if (!this.multiple) {\n return this.inputValue === item;\n }\n\n return this.inputValue.includes(item);\n },\n updateValue: function updateValue(i) {\n var item = this.getValue(i);\n if (!this.multiple) {\n if (this.mandatory && this.inputValue === item) return;\n return this.$emit('change', this.inputValue === item ? null : item);\n }\n\n var items = this.inputValue.slice();\n\n var index = items.indexOf(item);\n if (index > -1) {\n if (this.mandatory && items.length === 1) return;\n items.length >= 1 && items.splice(index, 1);\n } else {\n items.push(item);\n }\n\n this.$emit('change', items);\n },\n updateAllValues: function updateAllValues() {\n if (!this.multiple) return;\n\n var items = [];\n\n for (var i = 0; i < this.buttons.length; ++i) {\n var item = this.getValue(i);\n var index = this.inputValue.indexOf(item);\n if (index !== -1) {\n items.push(item);\n }\n }\n\n this.$emit('change', items);\n }\n },\n\n created: function created() {\n if (this.multiple && !Array.isArray(this.inputValue)) {\n Object(__WEBPACK_IMPORTED_MODULE_3__util_console__[\"b\" /* consoleWarn */])('Model must be bound to an array if the multiple property is true.', this);\n }\n },\n render: function render(h) {\n return h('div', { class: this.classes }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 117 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 118 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl__ = __webpack_require__(119);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_cards_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n flat: Boolean,\n height: {\n type: String,\n default: 'auto'\n },\n hover: Boolean,\n img: String,\n raised: Boolean,\n tag: {\n type: String,\n default: 'div'\n },\n tile: Boolean,\n width: [String, Number]\n },\n\n computed: {\n classes: function classes() {\n return this.addBackgroundColorClassChecks({\n 'card': true,\n 'card--flat': this.flat,\n 'card--horizontal': this.horizontal,\n 'card--hover': this.hover,\n 'card--raised': this.raised,\n 'card--tile': this.tile,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n });\n },\n styles: function styles() {\n var style = {\n height: isNaN(this.height) ? this.height : this.height + 'px'\n };\n\n if (this.img) {\n style.background = 'url(\"' + this.img + '\") center center / cover no-repeat';\n }\n\n if (this.width) {\n style.width = isNaN(this.width) ? this.width : this.width + 'px';\n }\n\n return style;\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n data.style = this.styles;\n\n return h(tag, data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 119 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 120 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card-media',\n\n props: {\n contain: Boolean,\n height: {\n type: [Number, String],\n default: 'auto'\n },\n src: {\n type: String\n }\n },\n\n render: function render(h) {\n var data = {\n 'class': 'card__media',\n style: {\n height: !isNaN(this.height) ? this.height + 'px' : this.height\n },\n on: this.$listeners\n };\n\n var children = [];\n\n if (this.src) {\n children.push(h('div', {\n 'class': 'card__media__background',\n style: {\n background: 'url(\"' + this.src + '\") center center / ' + (this.contain ? 'contain' : 'cover') + ' no-repeat'\n }\n }));\n }\n\n children.push(h('div', {\n 'class': 'card__media__content'\n }, this.$slots.default));\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 121 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-card-title',\n\n functional: true,\n\n props: {\n primaryTitle: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n\n data.staticClass = ('card__title ' + (data.staticClass || '')).trim();\n\n if (props.primaryTitle) data.staticClass += ' card__title--primary';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 122 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VCarousel__ = __webpack_require__(123);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCarouselItem__ = __webpack_require__(125);\n/* unused harmony reexport VCarousel */\n/* unused harmony reexport VCarouselItem */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VCarouselItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VCarouselItem__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VCarousel__[\"a\" /* default */]);\n\n/***/ }),\n/* 123 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl__ = __webpack_require__(124);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_carousel_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_touch__ = __webpack_require__(9);\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-carousel',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_5__mixins_registrable__[\"b\" /* provide */])('carousel')],\n\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_6__directives_touch__[\"a\" /* default */] },\n\n data: function data() {\n return {\n inputValue: null,\n items: [],\n slideTimeout: null,\n reverse: false\n };\n },\n\n\n props: {\n cycle: {\n type: Boolean,\n default: true\n },\n delimiterIcon: {\n type: String,\n default: 'fiber_manual_record'\n },\n hideControls: Boolean,\n hideDelimiters: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: function validator(value) {\n return value > 0;\n }\n },\n nextIcon: {\n type: [Boolean, String],\n default: 'chevron_right'\n },\n prevIcon: {\n type: [Boolean, String],\n default: 'chevron_left'\n },\n value: Number\n },\n\n watch: {\n items: function items() {\n if (this.inputValue >= this.items.length) {\n this.inputValue = this.items.length - 1;\n }\n },\n inputValue: function inputValue() {\n // Evaluates items when inputValue changes to\n // account for dynamic changing of children\n\n var uid = (this.items[this.inputValue] || {}).uid;\n for (var index = this.items.length; --index >= 0;) {\n this.items[index].open(uid, this.reverse);\n }\n\n this.$emit('input', this.inputValue);\n this.restartTimeout();\n },\n value: function value(val) {\n this.inputValue = val;\n },\n interval: function interval() {\n this.restartTimeout();\n },\n cycle: function cycle(val) {\n if (val) {\n this.restartTimeout();\n } else {\n clearTimeout(this.slideTimeout);\n this.slideTimeout = null;\n }\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n genDelimiters: function genDelimiters() {\n return this.$createElement('div', {\n staticClass: 'carousel__controls'\n }, this.genItems());\n },\n genIcon: function genIcon(direction, icon, fn) {\n if (!icon) return null;\n\n return this.$createElement('div', {\n staticClass: 'carousel__' + direction\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VBtn__[\"a\" /* default */], {\n props: {\n icon: true,\n dark: this.dark || !this.light,\n light: this.light\n },\n on: { click: fn }\n }, [this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: { 'size': '46px' }\n }, icon)])]);\n },\n genItems: function genItems() {\n var _this = this;\n\n return this.items.map(function (item, index) {\n return _this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VBtn__[\"a\" /* default */], {\n class: {\n 'carousel__controls__item': true,\n 'carousel__controls__item--active': index === _this.inputValue\n },\n props: {\n icon: true,\n small: true,\n dark: _this.dark || !_this.light,\n light: _this.light\n },\n key: index,\n on: { click: _this.select.bind(_this, index) }\n }, [_this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: { size: '18px' }\n }, _this.delimiterIcon)]);\n });\n },\n restartTimeout: function restartTimeout() {\n this.slideTimeout && clearTimeout(this.slideTimeout);\n this.slideTimeout = null;\n\n var raf = requestAnimationFrame || setTimeout;\n raf(this.startTimeout);\n },\n init: function init() {\n this.inputValue = this.value || 0;\n },\n next: function next() {\n this.reverse = false;\n this.inputValue = (this.inputValue + 1) % this.items.length;\n },\n prev: function prev() {\n this.reverse = true;\n this.inputValue = (this.inputValue + this.items.length - 1) % this.items.length;\n },\n select: function select(index) {\n this.reverse = index < this.inputValue;\n this.inputValue = index;\n },\n startTimeout: function startTimeout() {\n var _this2 = this;\n\n if (!this.cycle) return;\n\n this.slideTimeout = setTimeout(function () {\n return _this2.next();\n }, this.interval > 0 ? this.interval : 6000);\n },\n register: function register(uid, open) {\n this.items.push({ uid: uid, open: open });\n },\n unregister: function unregister(uid) {\n this.items = this.items.filter(function (i) {\n return i.uid !== uid;\n });\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'carousel',\n directives: [{\n name: 'touch',\n value: {\n left: this.next,\n right: this.prev\n }\n }]\n }, [this.hideControls ? null : this.genIcon('left', this.prevIcon, this.prev), this.hideControls ? null : this.genIcon('right', this.nextIcon, this.next), this.hideDelimiters ? null : this.genDelimiters(), this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 124 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 125 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VJumbotron__ = __webpack_require__(40);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_registrable__ = __webpack_require__(4);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Components\n\n\n// Mixins\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-carousel-item',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_registrable__[\"a\" /* inject */])('carousel', 'v-carousel-item', 'v-carousel')],\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n active: false,\n reverse: false\n };\n },\n\n\n props: {\n transition: {\n type: String,\n default: 'tab-transition'\n },\n reverseTransition: {\n type: String,\n default: 'tab-reverse-transition'\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.reverse ? this.reverseTransition : this.transition;\n }\n },\n\n methods: {\n open: function open(id, reverse) {\n this.active = this._uid === id;\n this.reverse = reverse;\n }\n },\n\n mounted: function mounted() {\n this.carousel.register(this._uid, this.open);\n },\n beforeDestroy: function beforeDestroy() {\n this.carousel.unregister(this._uid, this.open);\n },\n render: function render(h) {\n var item = h(__WEBPACK_IMPORTED_MODULE_0__VJumbotron__[\"a\" /* default */], {\n props: _extends({}, this.$attrs, {\n height: '100%'\n }),\n on: this.$listeners,\n directives: [{\n name: 'show',\n value: this.active\n }]\n }, this.$slots.default);\n\n return h('transition', { props: { name: this.computedTransition } }, [item]);\n }\n});\n\n/***/ }),\n/* 126 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl__ = __webpack_require__(127);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_jumbotrons_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-jumbotron',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n gradient: String,\n height: {\n type: [Number, String],\n default: '400px'\n },\n src: String,\n tag: {\n type: String,\n default: 'div'\n }\n },\n\n computed: {\n backgroundStyles: function backgroundStyles() {\n var styles = {};\n\n if (this.gradient) {\n styles.background = 'linear-gradient(' + this.gradient + ')';\n }\n\n return styles;\n },\n classes: function classes() {\n return {\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n styles: function styles() {\n return {\n height: this.height\n };\n }\n },\n\n methods: {\n genBackground: function genBackground() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__background',\n 'class': this.addBackgroundColorClassChecks(),\n style: this.backgroundStyles\n });\n },\n genContent: function genContent() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__content'\n }, this.$slots.default);\n },\n genImage: function genImage() {\n if (!this.src) return null;\n if (this.$slots.img) return this.$slots.img({ src: this.src });\n\n return this.$createElement('img', {\n staticClass: 'jumbotron__image',\n attrs: { src: this.src }\n });\n },\n genWrapper: function genWrapper() {\n return this.$createElement('div', {\n staticClass: 'jumbotron__wrapper'\n }, [this.genImage(), this.genBackground(), this.genContent()]);\n }\n },\n\n render: function render(h) {\n var _generateRouteLink = this.generateRouteLink(),\n tag = _generateRouteLink.tag,\n data = _generateRouteLink.data;\n\n data.staticClass = 'jumbotron';\n data.style = this.styles;\n\n return h(tag, data, [this.genWrapper()]);\n }\n});\n\n/***/ }),\n/* 127 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 128 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_selectable__ = __webpack_require__(42);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-checkbox',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_4__mixins_rippleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_selectable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n inputIndeterminate: this.indeterminate\n };\n },\n\n\n props: {\n indeterminate: Boolean\n },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'checkbox': true,\n 'input-group--selection-controls': true,\n 'input-group--active': this.isActive\n };\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n icon: function icon() {\n if (this.inputIndeterminate) {\n return 'indeterminate_check_box';\n } else if (this.isActive) {\n return 'check_box';\n } else {\n return 'check_box_outline_blank';\n }\n }\n },\n\n methods: {\n groupFocus: function groupFocus(e) {\n this.isFocused = true;\n this.$emit('focus', e);\n },\n groupBlur: function groupBlur(e) {\n this.isFocused = false;\n this.tabFocused = false;\n this.$emit('blur', this.inputValue);\n }\n },\n\n render: function render(h) {\n var transition = h(__WEBPACK_IMPORTED_MODULE_3__transitions__[\"b\" /* VFadeTransition */], [h(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n staticClass: 'icon--selection-control',\n 'class': {\n 'icon--checkbox': this.icon === 'check_box'\n },\n key: this.icon,\n on: Object.assign({\n click: this.toggle\n }, this.$listeners)\n }, this.icon)]);\n\n var data = {\n attrs: {\n tabindex: this.disabled ? -1 : this.internalTabIndex || this.tabindex,\n role: 'checkbox',\n 'aria-checked': this.inputIndeterminate ? 'mixed' : this.isActive ? 'true' : 'false',\n 'aria-label': this.label\n }\n };\n\n var ripple = this.ripple ? this.genRipple() : null;\n\n return this.genInputGroup([transition, ripple], data);\n }\n});\n\n/***/ }),\n/* 129 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl__ = __webpack_require__(130);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_progress_linear_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__transitions__ = __webpack_require__(7);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-progress-linear',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */]],\n\n props: {\n active: {\n type: Boolean,\n default: true\n },\n backgroundColor: {\n type: String,\n default: null\n },\n backgroundOpacity: {\n type: [Number, String],\n default: null\n },\n bufferValue: {\n type: [Number, String],\n default: 100\n },\n color: {\n type: String,\n default: 'primary'\n },\n height: {\n type: [Number, String],\n default: 7\n },\n indeterminate: Boolean,\n query: Boolean,\n value: {\n type: [Number, String],\n default: 0\n }\n },\n\n computed: {\n styles: function styles() {\n var styles = {};\n\n if (!this.active) {\n styles.height = 0;\n }\n\n if (!this.indeterminate && parseInt(this.bufferValue, 10) !== 100) {\n styles.width = this.bufferValue + '%';\n }\n\n return styles;\n },\n effectiveWidth: function effectiveWidth() {\n if (!this.bufferValue) {\n return 0;\n }\n\n return this.value * 100 / this.bufferValue;\n },\n backgroundStyle: function backgroundStyle() {\n var backgroundOpacity = this.backgroundOpacity == null ? this.backgroundColor ? 1 : 0.3 : parseFloat(this.backgroundOpacity);\n\n return {\n height: this.active ? this.height + 'px' : 0,\n opacity: backgroundOpacity,\n width: this.bufferValue + '%'\n };\n }\n },\n\n methods: {\n genDeterminate: function genDeterminate(h) {\n return h('div', {\n ref: 'front',\n staticClass: 'progress-linear__bar__determinate',\n class: this.addBackgroundColorClassChecks(),\n style: {\n width: this.effectiveWidth + '%'\n }\n });\n },\n genBar: function genBar(h, name) {\n return h('div', {\n staticClass: 'progress-linear__bar__indeterminate',\n class: this.addBackgroundColorClassChecks(_defineProperty({}, name, true))\n });\n },\n genIndeterminate: function genIndeterminate(h) {\n return h('div', {\n ref: 'front',\n staticClass: 'progress-linear__bar__indeterminate',\n class: {\n 'progress-linear__bar__indeterminate--active': this.active\n }\n }, [this.genBar(h, 'long'), this.genBar(h, 'short')]);\n }\n },\n\n render: function render(h) {\n var fade = h(__WEBPACK_IMPORTED_MODULE_2__transitions__[\"b\" /* VFadeTransition */], [this.indeterminate && this.genIndeterminate(h)]);\n var slide = h(__WEBPACK_IMPORTED_MODULE_2__transitions__[\"d\" /* VSlideXTransition */], [!this.indeterminate && this.genDeterminate(h)]);\n\n var bar = h('div', {\n staticClass: 'progress-linear__bar',\n style: this.styles\n }, [fade, slide]);\n var background = h('div', {\n staticClass: 'progress-linear__background',\n class: [this.backgroundColor || this.color],\n style: this.backgroundStyle\n });\n\n return h('div', {\n staticClass: 'progress-linear',\n class: {\n 'progress-linear--query': this.query\n },\n style: {\n height: this.height + 'px'\n },\n on: this.$listeners\n }, [background, bar]);\n }\n});\n\n/***/ }),\n/* 130 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 131 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'validatable',\n\n data: function data() {\n return {\n errorBucket: [],\n hasFocused: false,\n hasInput: false,\n shouldValidate: false,\n valid: false\n };\n },\n\n\n props: {\n error: {\n type: Boolean\n },\n errorMessages: {\n type: [String, Array],\n default: function _default() {\n return [];\n }\n },\n rules: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n validateOnBlur: Boolean\n },\n\n computed: {\n validations: function validations() {\n if (!Array.isArray(this.errorMessages)) {\n return [this.errorMessages];\n } else if (this.errorMessages.length > 0) {\n return this.errorMessages;\n } else if (this.shouldValidate) {\n return this.errorBucket;\n } else {\n return [];\n }\n },\n hasError: function hasError() {\n return this.validations.length > 0 || this.errorMessages.length > 0 || this.error;\n }\n },\n\n watch: {\n rules: {\n handler: function handler(newVal, oldVal) {\n // TODO: This handler seems to trigger when input changes, even though\n // rules array stays the same? Solved it like this for now\n if (newVal.length === oldVal.length) return;\n\n this.validate();\n },\n\n deep: true\n },\n inputValue: function inputValue(val) {\n // If it's the first time we're setting input,\n // mark it with hasInput\n if (!!val && !this.hasInput) this.hasInput = true;\n\n if (this.hasInput && !this.validateOnBlur) this.shouldValidate = true;\n },\n isFocused: function isFocused(val) {\n // If we're not focused, and it's the first time\n // we're defocusing, set shouldValidate to true\n if (!val && !this.hasFocused) {\n this.hasFocused = true;\n this.shouldValidate = true;\n\n this.$emit('update:error', this.errorBucket.length > 0);\n }\n },\n hasError: function hasError(val) {\n if (this.shouldValidate) {\n this.$emit('update:error', val);\n }\n },\n error: function error(val) {\n this.shouldValidate = !!val;\n }\n },\n\n mounted: function mounted() {\n this.shouldValidate = !!this.error;\n this.validate();\n },\n\n\n methods: {\n reset: function reset() {\n var _this = this;\n\n // TODO: Do this another way!\n // This is so that we can reset all types of inputs\n this.$emit('input', this.isMultiple ? [] : null);\n this.$emit('change', null);\n\n this.$nextTick(function () {\n _this.shouldValidate = false;\n _this.hasFocused = false;\n _this.validate();\n });\n },\n validate: function validate() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.inputValue;\n\n if (force) this.shouldValidate = true;\n\n this.errorBucket = [];\n\n for (var index = 0; index < this.rules.length; index++) {\n var rule = this.rules[index];\n var valid = typeof rule === 'function' ? rule(value) : rule;\n\n if (valid === false || typeof valid === 'string') {\n this.errorBucket.push(valid);\n } else if (valid !== true) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"a\" /* consoleError */])('Rules should return a string or boolean, received \\'' + (typeof valid === 'undefined' ? 'undefined' : _typeof(valid)) + '\\' instead', this);\n }\n }\n\n this.valid = this.errorBucket.length === 0;\n\n return this.valid;\n }\n }\n});\n\n/***/ }),\n/* 132 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl__ = __webpack_require__(133);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_chips_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_toggleable__ = __webpack_require__(6);\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-chip',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_toggleable__[\"a\" /* default */]],\n\n props: {\n close: Boolean,\n disabled: Boolean,\n label: Boolean,\n outline: Boolean,\n // Used for selects/tagging\n selected: Boolean,\n small: Boolean,\n textColor: String,\n value: {\n type: Boolean,\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n var classes = this.addBackgroundColorClassChecks({\n 'chip--disabled': this.disabled,\n 'chip--selected': this.selected,\n 'chip--label': this.label,\n 'chip--outline': this.outline,\n 'chip--small': this.small,\n 'chip--removable': this.close,\n 'theme--light': this.light,\n 'theme--dark': this.dark\n });\n\n return this.textColor || this.outline ? this.addTextColorClassChecks(classes, this.textColor || this.color) : classes;\n }\n },\n\n methods: {\n genClose: function genClose(h) {\n var _this = this;\n\n var data = {\n staticClass: 'chip__close',\n on: {\n click: function click(e) {\n e.stopPropagation();\n\n _this.$emit('input', false);\n }\n }\n };\n\n return h('div', data, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], 'cancel')]);\n },\n genContent: function genContent(h) {\n var children = [this.$slots.default];\n\n this.close && children.push(this.genClose(h));\n\n return h('span', {\n staticClass: 'chip__content'\n }, children);\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'chip',\n 'class': this.classes,\n attrs: { tabindex: this.disabled ? -1 : 0 },\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n on: this.$listeners\n };\n\n return h('span', data, [this.genContent(h)]);\n }\n});\n\n/***/ }),\n/* 133 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 134 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDataIterator__ = __webpack_require__(135);\n\n\n__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDataIterator__[\"a\" /* default */]);\n\n/***/ }),\n/* 135 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl__ = __webpack_require__(136);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_data_iterator_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_data_iterable__ = __webpack_require__(46);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-data-iterator',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_data_iterable__[\"a\" /* default */]],\n\n inheritAttrs: false,\n\n props: {\n contentTag: {\n type: String,\n default: 'div'\n },\n contentProps: {\n type: Object,\n required: false\n },\n contentClass: {\n type: String,\n required: false\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'data-iterator': true,\n 'data-iterator--select-all': this.selectAll !== false,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n methods: {\n genContent: function genContent() {\n var children = this.genItems();\n\n var data = {\n 'class': this.contentClass,\n attrs: this.$attrs,\n on: this.$listeners,\n props: this.contentProps\n };\n\n return this.$createElement(this.contentTag, data, children);\n },\n genEmptyItems: function genEmptyItems(content) {\n return [this.$createElement('div', {\n 'class': 'text-xs-center',\n style: 'width: 100%'\n }, content)];\n },\n genFilteredItems: function genFilteredItems() {\n if (!this.$scopedSlots.item) {\n return null;\n }\n\n var items = [];\n for (var index = 0, len = this.filteredItems.length; index < len; ++index) {\n var item = this.filteredItems[index];\n var props = this.createProps(item, index);\n items.push(this.$scopedSlots.item(props));\n }\n\n return items;\n },\n genFooter: function genFooter() {\n var children = [];\n\n if (this.$slots.footer) {\n children.push(this.$slots.footer);\n }\n\n if (!this.hideActions) {\n children.push(this.genActions());\n }\n\n if (!children.length) return null;\n return this.$createElement('div', children);\n }\n },\n\n created: function created() {\n this.initPagination();\n },\n render: function render(h) {\n return h('div', {\n 'class': this.classes\n }, [this.genContent(), this.genFooter()]);\n }\n});\n\n/***/ }),\n/* 136 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 137 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_text_fields_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl__ = __webpack_require__(138);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_select_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_filterable__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_maskable__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_soloable__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_select_autocomplete__ = __webpack_require__(140);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__mixins_select_computed__ = __webpack_require__(141);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__mixins_select_events__ = __webpack_require__(142);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__mixins_select_generators__ = __webpack_require__(143);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__mixins_select_helpers__ = __webpack_require__(160);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__mixins_select_menu__ = __webpack_require__(161);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__mixins_select_props__ = __webpack_require__(162);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__mixins_select_watchers__ = __webpack_require__(163);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__directives_click_outside__ = __webpack_require__(8);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Styles\n\n\n\n\n// Mixins\n\n\n\n\n\n\n\n// Component level mixins\n\n\n\n\n\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-select',\n\n inheritAttrs: false,\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_17__directives_click_outside__[\"a\" /* default */]\n },\n\n mixins: [__WEBPACK_IMPORTED_MODULE_9__mixins_select_autocomplete__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_11__mixins_select_events__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_filterable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_12__mixins_select_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_13__mixins_select_helpers__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_input__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_7__mixins_maskable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_14__mixins_select_menu__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_15__mixins_select_props__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_soloable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_16__mixins_select_watchers__[\"a\" /* default */],\n // Input and Computed both\n // contain isDirty props\n // last gets merged in\n __WEBPACK_IMPORTED_MODULE_10__mixins_select_computed__[\"a\" /* default */]],\n\n data: function data() {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n content: {},\n defaultColor: 'primary',\n inputValue: (this.multiple || this.tags) && !this.value ? [] : this.value,\n isBooted: false,\n lastItem: 20,\n lazySearch: null,\n isActive: false,\n menuIsActive: false,\n selectedIndex: -1,\n selectedItems: [],\n shouldBreak: false\n };\n },\n mounted: function mounted() {\n // If instance is being destroyed\n // do not run mounted functions\n if (this._isDestroyed) return;\n\n // Evaluate the selected items immediately\n // to avoid a unnecessary label transition\n this.genSelectedItems();\n\n this.content = this.$refs.menu.$refs.content;\n },\n beforeDestroy: function beforeDestroy() {\n if (this.isBooted) {\n if (this.content) {\n this.content.removeEventListener('scroll', this.onScroll, false);\n }\n }\n },\n\n\n methods: {\n needsTile: function needsTile(tile) {\n // TODO: use the component name instead of tag\n return tile.componentOptions == null || tile.componentOptions.tag !== 'v-list-tile';\n },\n changeSelectedIndex: function changeSelectedIndex(keyCode) {\n // backspace, left, right, delete\n if (![8, 37, 39, 46].includes(keyCode)) return;\n\n var indexes = this.selectedItems.length - 1;\n\n if (keyCode === 37) {\n // Left arrow\n this.selectedIndex = this.selectedIndex === -1 ? indexes : this.selectedIndex - 1;\n } else if (keyCode === 39) {\n // Right arrow\n this.selectedIndex = this.selectedIndex >= indexes ? -1 : this.selectedIndex + 1;\n } else if (this.selectedIndex === -1) {\n this.selectedIndex = indexes;\n return;\n }\n\n // backspace/delete\n if ([8, 46].includes(keyCode)) {\n var newIndex = this.selectedIndex === indexes ? this.selectedIndex - 1 : this.selectedItems[this.selectedIndex + 1] ? this.selectedIndex : -1;\n\n this.combobox ? this.inputValue = null : this.selectItem(this.selectedItems[this.selectedIndex]);\n this.selectedIndex = newIndex;\n }\n },\n closeConditional: function closeConditional(e) {\n return this.isActive && !!this.content && !this.content.contains(e.target) && !!this.$el && !this.$el.contains(e.target);\n },\n filterDuplicates: function filterDuplicates(arr) {\n var uniqueValues = new Map();\n for (var index = 0; index < arr.length; ++index) {\n var item = arr[index];\n var val = this.getValue(item);\n\n !uniqueValues.has(val) && uniqueValues.set(val, item);\n }\n return Array.from(uniqueValues.values());\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n return [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional\n }\n }];\n },\n genSelectedItems: function genSelectedItems() {\n var _this2 = this;\n\n var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.inputValue;\n\n // If we are using tags, don't filter results\n if (this.tags) return this.selectedItems = val;\n\n // Combobox is the single version\n // of a taggable select element\n if (this.combobox) return this.selectedItems = val != null ? [val] : [];\n\n var selectedItems = this.computedItems.filter(function (i) {\n if (!_this2.isMultiple) {\n return _this2.getValue(i) === _this2.getValue(val);\n } else {\n // Always return Boolean\n return _this2.findExistingIndex(i) > -1;\n }\n });\n\n if (!selectedItems.length && val != null && this.tags) {\n selectedItems = Array.isArray(val) ? val : [val];\n }\n\n this.selectedItems = selectedItems;\n },\n clearableCallback: function clearableCallback() {\n var _this3 = this;\n\n var inputValue = this.isMultiple ? [] : null;\n\n this.inputValue = inputValue;\n this.$emit('change', inputValue);\n this.genSelectedItems();\n\n // When input is cleared\n // reset search value and\n // re-focus the input\n setTimeout(function () {\n _this3.searchValue = null;\n _this3.focusInput();\n }, 0);\n\n if (this.openOnClear) {\n setTimeout(this.showMenu, 50);\n }\n },\n onScroll: function onScroll() {\n var _this4 = this;\n\n if (!this.isActive) {\n requestAnimationFrame(function () {\n return _this4.content.scrollTop = 0;\n });\n } else {\n if (this.lastItem >= this.computedItems.length) return;\n\n var showMoreItems = this.content.scrollHeight - (this.content.scrollTop + this.content.clientHeight) < 200;\n\n if (showMoreItems) {\n this.lastItem += 20;\n }\n }\n },\n findExistingItem: function findExistingItem(val) {\n var _this5 = this;\n\n var itemValue = this.getValue(val);\n return this.items.find(function (i) {\n return _this5.valueComparator(_this5.getValue(i), itemValue);\n });\n },\n findExistingIndex: function findExistingIndex(item) {\n var _this6 = this;\n\n var itemValue = this.getValue(item);\n return this.inputValue.findIndex(function (i) {\n return _this6.valueComparator(_this6.getValue(i), itemValue);\n });\n },\n selectItem: function selectItem(item) {\n var _this7 = this;\n\n if (!this.isMultiple) {\n this.inputValue = this.returnObject ? item : this.getValue(item);\n this.selectedItems = [item];\n } else {\n var selectedItems = [];\n var inputValue = this.inputValue.slice();\n var i = this.findExistingIndex(item);\n\n i !== -1 ? inputValue.splice(i, 1) : inputValue.push(item);\n this.inputValue = inputValue.map(function (i) {\n selectedItems.push(i);\n return _this7.returnObject ? i : _this7.getValue(i);\n });\n\n this.selectedItems = selectedItems;\n this.selectedIndex = -1;\n }\n\n this.searchValue = !this.isMultiple && !this.chips && !this.$scopedSlots.selection ? this.getText(this.selectedItem) : null;\n\n this.$emit('change', this.inputValue);\n\n // List tile will re-render, reset index to\n // maintain highlighting\n var savedIndex = this.getMenuIndex();\n this.resetMenuIndex();\n\n // After selecting an item\n // refocus the input and\n // reset the caret pos\n this.$nextTick(function () {\n _this7.focusInput();\n _this7.setCaretPosition(_this7.currentRange);\n\n requestAnimationFrame(function () {\n if (savedIndex > -1) {\n _this7.setMenuIndex(savedIndex);\n }\n });\n });\n }\n },\n\n render: function render(h) {\n var _this8 = this;\n\n var data = {\n attrs: _extends({\n tabindex: this.isAutocomplete || this.disabled ? -1 : this.tabindex,\n 'data-uid': this._uid\n }, this.isAutocomplete ? null : this.$attrs, {\n role: this.isAutocomplete ? null : 'combobox'\n })\n };\n\n if (!this.isAutocomplete) {\n data.on = this.genListeners();\n data.directives = this.genDirectives();\n } else {\n data.on = {\n click: function click() {\n if (_this8.disabled || _this8.readonly || _this8.isFocused) return;\n\n // If the input is dirty,\n // the input is not targetable\n // so we must manually focus\n if (_this8.isDirty) {\n _this8.focus();\n _this8.$nextTick(_this8.focusInput);\n }\n }\n };\n }\n\n return this.genInputGroup([this.genSelectionsAndSearch(), this.genMenu()], data, this.toggleMenu);\n }\n});\n\n/***/ }),\n/* 138 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 139 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export defaultDelimiters */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return isMaskDelimiter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return maskText; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return unmaskText; });\n/**\n * Default delimiter RegExp\n *\n * @type {RegExp}\n */\nvar defaultDelimiters = /[-!$%^&*()_+|~=`{}[\\]:\";'<>?,./\\\\ ]/;\n\n/**\n *\n * @param {String} char\n *\n * @return {Boolean}\n */\nvar isMaskDelimiter = function isMaskDelimiter(char) {\n return char && defaultDelimiters.test(char);\n};\n\n/**\n * Mask keys\n *\n * @type {Object}\n */\nvar allowedMasks = {\n '#': {\n test: function test(char) {\n return char.match(/[0-9]/);\n }\n },\n 'A': {\n test: function test(char) {\n return char.match(/[A-Z]/i);\n },\n convert: function convert(char) {\n return char.toUpperCase();\n }\n },\n 'a': {\n test: function test(char) {\n return char.match(/[a-z]/i);\n },\n convert: function convert(char) {\n return char.toLowerCase();\n }\n },\n 'N': {\n test: function test(char) {\n return char.match(/[0-9A-Z]/i);\n },\n convert: function convert(char) {\n return char.toUpperCase();\n }\n },\n 'n': {\n test: function test(char) {\n return char.match(/[0-9a-z]/i);\n },\n convert: function convert(char) {\n return char.toLowerCase();\n }\n },\n 'X': {\n test: isMaskDelimiter\n }\n\n /**\n * Is Character mask\n *\n * @param {String} char\n *\n * @return {Boolean}\n */\n};var isMask = function isMask(char) {\n return allowedMasks.hasOwnProperty(char);\n};\n\n/**\n * Automatically convert char case\n *\n * @param {String} mask\n * @param {String} char\n *\n * @return {String}\n */\nvar convert = function convert(mask, char) {\n return allowedMasks[mask].convert ? allowedMasks[mask].convert(char) : char;\n};\n\n/**\n * Mask Validation\n *\n * @param {String} mask\n * @param {String} char\n *\n * @return {Boolean}\n */\nvar maskValidates = function maskValidates(mask, char) {\n if (char == null || !isMask(mask)) return false;\n return allowedMasks[mask].test(char);\n};\n\n/**\n * Mask Text\n *\n * Takes a string or an array of characters\n * and returns a masked string\n *\n * @param {*} text\n * @param {Array|String} masked\n * @param {Boolean} [dontFillMaskBlanks]\n *\n * @return {String}\n */\nvar maskText = function maskText(text, masked, dontFillMaskBlanks) {\n if (text == null) return '';\n text = String(text);\n if (!masked.length || !text.length) return text;\n if (!Array.isArray(masked)) masked = masked.split('');\n\n var textIndex = 0;\n var maskIndex = 0;\n var newText = '';\n\n while (maskIndex < masked.length) {\n var mask = masked[maskIndex];\n\n // Assign the next character\n var char = text[textIndex];\n\n // Check if mask is delimiter\n // and current char matches\n if (!isMask(mask) && char === mask) {\n newText += mask;\n textIndex++;\n // Check if not mask\n } else if (!isMask(mask) && !dontFillMaskBlanks) {\n newText += mask;\n // Check if is mask and validates\n } else if (maskValidates(mask, char)) {\n newText += convert(mask, char);\n textIndex++;\n } else {\n return newText;\n }\n\n maskIndex++;\n }\n\n return newText;\n};\n\n/**\n * Unmask Text\n *\n * @param {String} text\n *\n * @return {String}\n */\nvar unmaskText = function unmaskText(text) {\n return text ? String(text).replace(new RegExp(defaultDelimiters, 'g'), '') : text;\n};\n\n/***/ }),\n/* 140 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n\n\n/**\n * Select autocomplete\n *\n * @mixin\n *\n * Handles logic when using the \"autocomplete\" prop\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n filter: {\n type: Function,\n default: function _default(item, queryText, itemText) {\n var hasValue = function hasValue(val) {\n return val != null ? val : '';\n };\n\n var text = hasValue(itemText);\n var query = hasValue(queryText);\n\n return text.toString().toLowerCase().indexOf(query.toString().toLowerCase()) > -1;\n }\n }\n },\n\n methods: {\n filterSearch: function filterSearch() {\n var _this = this;\n\n if (!this.isAutocomplete) return this.computedItems;\n\n return this.computedItems.filter(function (i) {\n return _this.filter(i, _this.searchValue, _this.getText(i));\n });\n },\n genFiltered: function genFiltered(text) {\n text = (text || '').toString();\n\n if (!this.isAutocomplete || !this.searchValue || this.filteredItems.length < 1) return Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text);\n\n var _getMaskedCharacters = this.getMaskedCharacters(text),\n start = _getMaskedCharacters.start,\n middle = _getMaskedCharacters.middle,\n end = _getMaskedCharacters.end;\n\n return '' + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(start) + this.genHighlight(middle) + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(end);\n },\n genHighlight: function genHighlight(text) {\n if (this.isNotFiltering) return Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text);\n\n return '' + Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"g\" /* escapeHTML */])(text) + '';\n },\n getMaskedCharacters: function getMaskedCharacters(text) {\n var searchValue = (this.searchValue || '').toString().toLowerCase();\n var index = text.toLowerCase().indexOf(searchValue);\n\n if (index < 0) return { start: '', middle: text, end: '' };\n\n var start = text.slice(0, index);\n var middle = text.slice(index, index + searchValue.length);\n var end = text.slice(index + searchValue.length);\n return { start: start, middle: middle, end: end };\n },\n getCurrentTag: function getCurrentTag() {\n return this.isMenuItemSelected() ? this.filteredItems[this.getMenuIndex()] : this.isAnyValueAllowed ? this.searchValue : null;\n },\n tabOut: function tabOut() {\n this.blur();\n },\n onTabDown: function onTabDown(e) {\n var _this2 = this;\n\n // If tabbing through inputs and\n // and there is no need for an\n // update, blur the v-select\n if (!this.isAutocomplete || !this.getCurrentTag() || this.combobox) return this.tabOut();\n\n var menuIndex = this.getMenuIndex();\n\n // When adding tags, if searching and\n // there is not a filtered options,\n // add the value to the tags list\n if (this.tags && this.searchValue && menuIndex === -1) {\n e.preventDefault();\n\n return this.updateTags(this.searchValue);\n }\n\n // An item that is selected by\n // menu-index should toggled\n if (this.menuIsActive) {\n // Reset the list index if searching\n this.searchValue && this.$nextTick(function () {\n return setTimeout(_this2.resetMenuIndex, 0);\n });\n\n e.preventDefault();\n this.selectListTile(menuIndex);\n }\n },\n onEnterDown: function onEnterDown() {\n this.updateTags(this.getCurrentTag());\n },\n onEscDown: function onEscDown(e) {\n e.preventDefault();\n this.menuIsActive = false;\n },\n onKeyDown: function onKeyDown(e) {\n var _this3 = this;\n\n // If enter, space, up, or down is pressed, open menu\n if (!this.menuIsActive && [13, 32, 38, 40].includes(e.keyCode)) {\n e.preventDefault();\n return this.showMenu();\n }\n\n // If escape deactivate the menu\n if (e.keyCode === 27) return this.onEscDown(e);\n\n // If tab - select item or close menu\n if (e.keyCode === 9) return this.onTabDown(e);\n\n if (!this.isAutocomplete || ![32].includes(e.keyCode) // space\n ) this.$refs.menu.changeListIndex(e);\n\n // Up or down\n if ([38, 40].includes(e.keyCode)) this.selectedIndex = -1;\n\n if (this.isAutocomplete && !this.hideSelections && !this.searchValue) this.changeSelectedIndex(e.keyCode);\n\n if (!this.isAnyValueAllowed || !this.searchValue) return;\n\n // Enter\n if (e.keyCode === 13) return this.onEnterDown();\n\n // Left arrow\n if (e.keyCode === 37 && this.$refs.input.selectionStart === 0 && this.selectedItems.length) {\n this.updateTags(this.searchValue);\n this.$nextTick(function () {\n _this3.selectedIndex = Math.max(_this3.selectedItems.length - 2, 0);\n });\n }\n\n // Right arrow\n if (e.keyCode === 39 && this.$refs.input.selectionEnd === this.searchValue.length) {\n this.resetMenuIndex();\n }\n },\n selectListTile: function selectListTile(index) {\n if (!this.$refs.menu.tiles[index]) return;\n\n this.$refs.menu.tiles[index].click();\n },\n updateTags: function updateTags(content) {\n var _this4 = this;\n\n // Avoid direct mutation\n // for vuex strict mode\n var selectedItems = this.selectedItems.slice();\n\n // If a duplicate item\n // exists, remove it\n if (selectedItems.includes(content)) {\n this.$delete(selectedItems, selectedItems.indexOf(content));\n }\n\n // When updating tags ensure\n // that that the search text\n // is populated if needed\n var searchValue = null;\n if (this.combobox) {\n selectedItems = [content];\n searchValue = this.chips ? null : content;\n } else {\n selectedItems.push(content);\n }\n\n this.selectedItems = selectedItems;\n\n this.$nextTick(function () {\n _this4.searchValue = searchValue;\n _this4.$emit('input', _this4.combobox ? content : _this4.selectedItems);\n });\n }\n }\n});\n\n/***/ }),\n/* 141 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/**\n * Select computed properties\n *\n * @mixin\n *\n * Computed properties for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n computed: {\n classes: function classes() {\n var classes = _extends({}, this.genSoloClasses(), {\n 'input-group--text-field input-group--select': true,\n 'input-group--auto': this.auto,\n 'input-group--overflow': this.overflow,\n 'input-group--segmented': this.segmented,\n 'input-group--editable': this.editable,\n 'input-group--autocomplete': this.isAutocomplete,\n 'input-group--single-line': this.singleLine || this.isDropdown,\n 'input-group--multi-line': this.multiLine,\n 'input-group--chips': this.chips,\n 'input-group--multiple': this.multiple,\n 'input-group--open': this.menuIsVisible,\n 'input-group--select--selecting-index': this.selectedIndex > -1\n });\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n computedContentClass: function computedContentClass() {\n var children = ['menu__content--select', this.auto ? 'menu__content--auto' : '', this.isDropdown ? 'menu__content--dropdown' : '', this.isAutocomplete ? 'menu__content--autocomplete' : '', this.contentClass || ''];\n\n return children.join(' ');\n },\n computedItems: function computedItems() {\n return this.filterDuplicates(this.cachedItems.concat(this.items));\n },\n\n /**\n * The range of the current input text\n *\n * @return {Number}\n */\n currentRange: function currentRange() {\n if (this.selectedItem == null) return 0;\n\n return this.getText(this.selectedItem).toString().length;\n },\n filteredItems: function filteredItems() {\n // If we are not actively filtering\n // Show all available items\n var items = this.isNotFiltering ? this.computedItems : this.filterSearch();\n\n return !this.auto ? items.slice(0, this.lastItem) : items;\n },\n hideSelections: function hideSelections() {\n return this.isAutocomplete && !this.isMultiple && this.isFocused && !this.chips && !this.$scopedSlots.selection;\n },\n isNotFiltering: function isNotFiltering() {\n return this.isAutocomplete && this.isDirty && this.searchValue === this.getText(this.selectedItem);\n },\n isHidingSelected: function isHidingSelected() {\n return this.hideSelected && this.isAutocomplete && this.isMultiple;\n },\n isAutocomplete: function isAutocomplete() {\n return this.autocomplete || this.editable || this.tags || this.combobox;\n },\n isDirty: function isDirty() {\n return this.selectedItems.length > 0 || this.isAutocomplete && this.searchValue;\n },\n isDropdown: function isDropdown() {\n return this.segmented || this.overflow || this.editable || this.isSolo;\n },\n isMultiple: function isMultiple() {\n return this.multiple || this.tags;\n },\n isAnyValueAllowed: function isAnyValueAllowed() {\n return this.tags || this.combobox;\n },\n menuIsVisible: function menuIsVisible() {\n return this.menuIsActive && this.computedItems.length > 0 && (!this.isAnyValueAllowed || this.filteredItems.length > 0);\n },\n menuItems: function menuItems() {\n var _this = this;\n\n return this.isHidingSelected ? this.filteredItems.filter(function (o) {\n return (_this.selectedItems || []).indexOf(o) === -1;\n }) : this.filteredItems;\n },\n nudgeTop: function nudgeTop() {\n var nudgeTop = -18;\n\n if (this.isSolo) nudgeTop = 0;else if (this.shouldOffset) {\n nudgeTop += 44;\n\n nudgeTop += this.hideDetails ? -24 : 0;\n nudgeTop += this.isAutocomplete && !this.isDropdown ? -2 : 0;\n }\n\n return nudgeTop;\n },\n\n searchValue: {\n get: function get() {\n return this.lazySearch;\n },\n set: function set(val) {\n if (!this.isAutocomplete || !this.multiple && this.selectedIndex > -1) return;\n\n this.lazySearch = val;\n\n this.$emit('update:searchInput', val);\n }\n },\n selectedItem: function selectedItem() {\n var _this2 = this;\n\n if (this.isMultiple) return null;\n\n return this.selectedItems.find(function (i) {\n return _this2.getValue(i) === _this2.getValue(_this2.inputValue);\n });\n },\n shouldOffset: function shouldOffset() {\n return this.isAutocomplete || this.isDropdown;\n }\n }\n});\n\n/***/ }),\n/* 142 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n/**\n * Select events\n *\n * @mixin\n *\n * Event based methods for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n blur: function blur() {\n this.deactivateInput();\n this.menuIsActive = false;\n this.$emit('blur');\n },\n focus: function focus() {\n this.showMenu();\n\n this.$emit('focus');\n },\n focusInput: function focusInput() {\n var _this = this;\n\n if (this.$refs.input && this.isAutocomplete) {\n this.$refs.input.focus();\n\n this.$nextTick(function () {\n _this.$refs.input.select();\n _this.shouldBreak && (_this.$refs.input.scrollLeft = _this.$refs.input.scrollWidth);\n });\n } else {\n !this.isFocused && this.$el.focus();\n }\n },\n genListeners: function genListeners() {\n var _this2 = this;\n\n var listeners = Object.assign({}, this.$listeners);\n delete listeners.input;\n\n return _extends({}, listeners, {\n click: function click() {\n if (_this2.disabled || _this2.readonly) return;\n\n if (_this2.isFocused && !_this2.menuIsVisible) {\n return _this2.showMenuItems();\n }\n\n _this2.selectedIndex > -1 ? _this2.selectedIndex = -1 : _this2.focus();\n },\n focus: function focus(e) {\n if (_this2.disabled || _this2.readonly || _this2.isFocused) {\n return;\n }\n\n _this2.activateInput();\n _this2.$nextTick(_this2.focusInput);\n },\n keydown: this.onKeyDown // Located in mixins/select-autocomplete.js\n });\n }\n }\n});\n\n/***/ }),\n/* 143 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VCard__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VCheckbox__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VChip__ = __webpack_require__(45);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__VDivider__ = __webpack_require__(52);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__VMenu__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__VSubheader__ = __webpack_require__(55);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__VList__ = __webpack_require__(56);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n// Components\n\n\n\n\n\n\n\n\n\n/**\n * Select generators\n *\n * @mixin\n *\n * Used for creating the DOM elements for VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genMenu: function genMenu() {\n var _this = this;\n\n var data = {\n ref: 'menu',\n props: {\n activator: this.$el,\n auto: this.auto,\n attach: this.attach && '[data-uid=\"' + this._uid + '\"]',\n closeOnClick: false,\n closeOnContentClick: !this.isMultiple,\n contentClass: this.computedContentClass,\n dark: this.dark,\n disabled: this.disabled,\n light: this.light,\n maxHeight: this.maxHeight,\n nudgeTop: this.nudgeTop,\n offsetY: this.shouldOffset,\n offsetOverflow: this.isAutocomplete,\n openOnClick: false,\n value: this.menuIsVisible,\n zIndex: this.menuZIndex\n },\n on: {\n input: function input(val) {\n if (!val) {\n _this.menuIsActive = false;\n }\n }\n }\n };\n\n if (this.isAutocomplete) data.props.transition = false;\n\n this.minWidth && (data.props.minWidth = this.minWidth);\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_7__VMenu__[\"a\" /* default */], data, [this.genList()]);\n },\n getMenuIndex: function getMenuIndex() {\n return this.$refs.menu ? this.$refs.menu.listIndex : -1;\n },\n setMenuIndex: function setMenuIndex(index) {\n this.$refs.menu && (this.$refs.menu.listIndex = index);\n },\n resetMenuIndex: function resetMenuIndex() {\n this.setMenuIndex(-1);\n },\n isMenuItemSelected: function isMenuItemSelected() {\n return this.menuIsActive && this.menuItems.length && this.getMenuIndex() > -1;\n },\n genSelectionsAndSearch: function genSelectionsAndSearch() {\n return this.$createElement('div', {\n 'class': 'input-group__selections',\n style: { 'overflow': 'hidden' },\n ref: 'activator'\n }, [].concat(_toConsumableArray(this.genSelections()), [this.genSearch()]));\n },\n genSelections: function genSelections() {\n if (this.hideSelections) return [];\n\n var length = this.selectedItems.length;\n var children = new Array(length);\n\n var genSelection = void 0;\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection;\n } else if (this.chips) {\n genSelection = this.genChipSelection;\n } else if (this.segmented) {\n genSelection = this.genSegmentedBtn;\n } else {\n genSelection = this.genCommaSelection;\n }\n\n while (length--) {\n children[length] = genSelection(this.selectedItems[length], length, length === children.length - 1);\n }\n\n return children;\n },\n genSearch: function genSearch() {\n var _this2 = this;\n\n var data = {\n staticClass: 'input-group--select__autocomplete',\n 'class': {\n 'input-group--select__autocomplete--index': this.selectedIndex > -1\n },\n style: {\n flex: this.shouldBreak ? '1 0 100%' : null\n },\n attrs: _extends({}, this.$attrs, {\n disabled: this.disabled || !this.isAutocomplete,\n readonly: this.readonly,\n tabindex: this.disabled || !this.isAutocomplete ? -1 : this.tabindex\n }),\n domProps: {\n value: this.maskText(this.lazySearch || '')\n },\n directives: [{\n name: 'show',\n value: this.isAutocomplete || this.placeholder && !this.selectedItems.length\n }],\n ref: 'input',\n key: 'input'\n };\n\n if (this.isAutocomplete) {\n data.attrs.role = 'combobox';\n data.domProps.autocomplete = this.browserAutocomplete;\n\n data.on = _extends({}, this.genListeners(), {\n input: function input(e) {\n if (_this2.selectedIndex > -1) return;\n\n _this2.searchValue = _this2.unmaskText(e.target.value);\n }\n });\n\n data.directives = data.directives.concat(this.genDirectives());\n }\n\n if (this.placeholder) data.domProps.placeholder = this.placeholder;\n\n return this.$createElement('input', data);\n },\n genSegmentedBtn: function genSegmentedBtn(item) {\n if (!item.text || !item.callback) {\n Object(__WEBPACK_IMPORTED_MODULE_1__util_console__[\"b\" /* consoleWarn */])('When using \\'segmented\\' prop without a selection slot, items must contain both a text and callback property', this);\n return null;\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VBtn__[\"a\" /* default */], {\n props: {\n flat: true\n },\n on: {\n click: function click(e) {\n e.stopPropagation();\n item.callback(e);\n }\n }\n }, [item.text]);\n },\n genSlotSelection: function genSlotSelection(item, index) {\n return this.$scopedSlots.selection({\n parent: this,\n item: item,\n index: index,\n selected: index === this.selectedIndex,\n disabled: this.disabled || this.readonly\n });\n },\n genChipSelection: function genChipSelection(item, index) {\n var _this3 = this;\n\n var isDisabled = this.disabled || this.readonly;\n var click = function click(e) {\n if (isDisabled) return;\n\n e.stopPropagation();\n _this3.focusInput();\n _this3.selectedIndex = index;\n };\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_5__VChip__[\"a\" /* default */], {\n staticClass: 'chip--select-multi',\n attrs: { tabindex: '-1' },\n props: {\n close: this.deletableChips && !isDisabled,\n dark: this.dark,\n disabled: isDisabled,\n selected: index === this.selectedIndex\n },\n on: {\n click: click,\n focus: click,\n input: function input() {\n if (_this3.isMultiple) _this3.selectItem(item);else _this3.inputValue = null;\n }\n },\n key: this.getValue(item)\n }, this.getText(item));\n },\n genCommaSelection: function genCommaSelection(item, index, last) {\n return this.$createElement('div', {\n staticClass: 'input-group__selections__comma',\n 'class': {\n 'input-group__selections__comma--active': index === this.selectedIndex\n },\n key: JSON.stringify(this.getValue(item)) // Item may be an object\n }, '' + this.getText(item) + (last ? '' : ', '));\n },\n genList: function genList() {\n var _this4 = this;\n\n var children = this.menuItems.map(function (o) {\n if (o.header) return _this4.genHeader(o);\n if (o.divider) return _this4.genDivider(o);else return _this4.genTile(o);\n });\n\n if (!children.length) {\n var noData = this.$slots['no-data'];\n if (noData) {\n children.push(noData);\n } else {\n children.push(this.genTile(this.noDataText, true));\n }\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_3__VCard__[\"a\" /* default */], [this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"a\" /* VList */], {\n props: {\n dense: this.dense\n },\n ref: 'list'\n }, children)]);\n },\n genHeader: function genHeader(item) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_8__VSubheader__[\"a\" /* default */], {\n props: item\n }, item.header);\n },\n genDivider: function genDivider(item) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_6__VDivider__[\"a\" /* default */], {\n props: item\n });\n },\n genLabel: function genLabel() {\n var singleLine = this.singleLine || this.isDropdown;\n\n if (singleLine && (this.isDirty || this.isFocused && this.searchValue)) return null;\n\n var data = {};\n\n if (this.id) data.attrs = { for: this.id };\n\n return this.$createElement('label', data, this.$slots.label || this.label);\n },\n genTile: function genTile(item, disabled) {\n var _this5 = this;\n\n var active = this.selectedItems.indexOf(item) !== -1;\n\n if (typeof disabled === 'undefined') {\n disabled = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"i\" /* getObjectValueByPath */])(item, this.itemDisabled);\n }\n\n var data = {\n on: {\n click: function click(e) {\n if (disabled) return;\n\n _this5.selectItem(item);\n }\n },\n props: {\n avatar: item === Object(item) && this.itemAvatar in item,\n ripple: true,\n value: active\n }\n };\n\n if (disabled) {\n data.props.disabled = disabled;\n }\n\n data.props.activeClass = Object.keys(this.addTextColorClassChecks()).join(' ');\n\n if (this.$scopedSlots.item) {\n var tile = this.$scopedSlots.item({ parent: this, item: item, tile: data });\n return this.needsTile(tile) ? this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"b\" /* VListTile */], data, [tile]) : tile;\n }\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"b\" /* VListTile */], data, [this.genAction(item, active), this.genContent(item)]);\n },\n genAction: function genAction(item, active) {\n var _this6 = this;\n\n if (!this.isMultiple || this.isHidingSelected) return null;\n\n var data = {\n staticClass: 'list__tile__action--select-multi',\n on: {\n click: function click(e) {\n e.stopPropagation();\n _this6.selectItem(item);\n }\n }\n };\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"c\" /* VListTileAction */], data, [this.$createElement(__WEBPACK_IMPORTED_MODULE_4__VCheckbox__[\"a\" /* default */], {\n props: {\n color: this.computedColor,\n inputValue: active\n }\n })]);\n },\n genContent: function genContent(item) {\n var text = this.getText(item);\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"d\" /* VListTileContent */], [this.$createElement(__WEBPACK_IMPORTED_MODULE_9__VList__[\"e\" /* VListTileTitle */], {\n domProps: {\n innerHTML: this.genFiltered(text)\n }\n })]);\n }\n }\n});\n\n/***/ }),\n/* 144 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl__ = __webpack_require__(145);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_dividers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-divider',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inset: Boolean\n },\n\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n\n data.staticClass = ('divider ' + (data.staticClass || '')).trim();\n\n if (props.inset) data.staticClass += ' divider--inset';\n if (props.light) data.staticClass += ' theme--light';\n if (props.dark) data.staticClass += ' theme--dark';\n\n return h('hr', data);\n }\n});\n\n/***/ }),\n/* 145 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 146 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl__ = __webpack_require__(147);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_menus_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_delayable__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_detachable__ = __webpack_require__(25);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_menuable_js__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_returnable__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_menu_activator__ = __webpack_require__(148);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_menu_generators__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_menu_keyable__ = __webpack_require__(150);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__mixins_menu_position__ = __webpack_require__(151);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__directives_resize__ = __webpack_require__(11);\n\n\n// Mixins\n\n\n\n\n\n\n\n// Component level mixins\n\n\n\n\n\n// Directives\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-menu',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_7__mixins_menu_activator__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_delayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_detachable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_menu_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_9__mixins_menu_keyable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_menuable_js__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_10__mixins_menu_position__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_returnable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"a\" /* default */]],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_11__directives_click_outside__[\"a\" /* default */],\n Resize: __WEBPACK_IMPORTED_MODULE_12__directives_resize__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n defaultOffset: 8,\n maxHeightAutoDefault: '200px',\n startIndex: 3,\n stopIndex: 0,\n hasJustFocused: false,\n resizeTimeout: null\n };\n },\n\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true\n },\n closeOnContentClick: {\n type: Boolean,\n default: true\n },\n disabled: Boolean,\n fullWidth: Boolean,\n maxHeight: { default: 'auto' },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnClick: {\n type: Boolean,\n default: true\n },\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left'\n },\n transition: {\n type: [Boolean, String],\n default: 'menu-transition'\n }\n },\n\n computed: {\n calculatedLeft: function calculatedLeft() {\n if (!this.auto) return this.calcLeft();\n\n return this.calcXOverflow(this.calcLeftAuto()) + 'px';\n },\n calculatedMaxHeight: function calculatedMaxHeight() {\n return this.auto ? '200px' : isNaN(this.maxHeight) ? this.maxHeight : this.maxHeight + 'px';\n },\n calculatedMaxWidth: function calculatedMaxWidth() {\n return isNaN(this.maxWidth) ? this.maxWidth : this.maxWidth + 'px';\n },\n calculatedMinWidth: function calculatedMinWidth() {\n if (this.minWidth) {\n return isNaN(this.minWidth) ? this.minWidth : this.minWidth + 'px';\n }\n\n var minWidth = this.dimensions.activator.width + this.nudgeWidth + (this.auto ? 16 : 0);\n\n var calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth)) ? minWidth : parseInt(this.calculatedMaxWidth);\n\n return Math.min(calculatedMaxWidth, minWidth) + 'px';\n },\n calculatedTop: function calculatedTop() {\n if (!this.auto || this.isAttached) return this.calcTop();\n\n return this.calcYOverflow(this.calcTopAuto()) + 'px';\n },\n styles: function styles() {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex\n };\n }\n },\n\n watch: {\n activator: function activator(newActivator, oldActivator) {\n this.removeActivatorEvents(oldActivator);\n this.addActivatorEvents(newActivator);\n },\n isContentActive: function isContentActive(val) {\n this.hasJustFocused = val;\n }\n },\n\n methods: {\n activate: function activate() {\n // This exists primarily for v-select\n // helps determine which tiles to activate\n this.getTiles();\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions();\n // Start the transition\n requestAnimationFrame(this.startTransition);\n // Once transitioning, calculate scroll position\n setTimeout(this.calculateScroll, 50);\n },\n closeConditional: function closeConditional() {\n return this.isActive && this.closeOnClick;\n },\n onResize: function onResize() {\n if (!this.isActive) return;\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth;\n this.updateDimensions();\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = setTimeout(this.updateDimensions, 100);\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'menu',\n class: {\n 'menu--disabled': this.disabled\n },\n style: {\n display: this.fullWidth ? 'block' : 'inline-block'\n },\n directives: [{\n arg: 500,\n name: 'resize',\n value: this.onResize\n }],\n on: {\n keydown: this.changeListIndex\n }\n };\n\n return h('div', data, [this.genActivator(), this.genTransition()]);\n }\n});\n\n/***/ }),\n/* 147 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 148 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu activator\n *\n * @mixin\n *\n * Handles the click and hover activation\n * Supports slotted and detached activators\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n activatorClickHandler: function activatorClickHandler(e) {\n if (this.disabled) return;\n if (this.openOnClick && !this.isActive) {\n this.getActivator().focus();\n this.isActive = true;\n this.absoluteX = e.clientX;\n this.absoluteY = e.clientY;\n } else if (this.closeOnClick && this.isActive) {\n this.getActivator().blur();\n this.isActive = false;\n }\n },\n mouseEnterHandler: function mouseEnterHandler(e) {\n var _this = this;\n\n this.runDelay('open', function () {\n if (_this.hasJustFocused) return;\n\n _this.hasJustFocused = true;\n _this.isActive = true;\n });\n },\n mouseLeaveHandler: function mouseLeaveHandler(e) {\n var _this2 = this;\n\n // Prevent accidental re-activation\n this.runDelay('close', function () {\n if (_this2.$refs.content.contains(e.relatedTarget)) return;\n\n requestAnimationFrame(function () {\n _this2.isActive = false;\n _this2.callDeactivate();\n });\n });\n },\n addActivatorEvents: function addActivatorEvents() {\n var activator = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n if (!activator) return;\n activator.addEventListener('click', this.activatorClickHandler);\n },\n removeActivatorEvents: function removeActivatorEvents() {\n var activator = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n if (!activator) return;\n activator.removeEventListener('click', this.activatorClickHandler);\n }\n }\n});\n\n/***/ }),\n/* 149 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n/**\n * Menu generators\n *\n * @mixin\n *\n * Used for creating the DOM elements for VMenu\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genActivator: function genActivator() {\n if (!this.$slots.activator) return null;\n\n var options = {\n staticClass: 'menu__activator',\n 'class': {\n 'menu__activator--active': this.hasJustFocused || this.isActive\n },\n ref: 'activator',\n on: {}\n };\n\n if (this.openOnHover) {\n options.on['mouseenter'] = this.mouseEnterHandler;\n options.on['mouseleave'] = this.mouseLeaveHandler;\n } else if (this.openOnClick) {\n options.on['click'] = this.activatorClickHandler;\n }\n\n return this.$createElement('div', options, this.$slots.activator);\n },\n genTransition: function genTransition() {\n if (!this.transition) return this.genContent();\n\n return this.$createElement('transition', {\n props: {\n name: this.transition\n }\n }, [this.genContent()]);\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n // Do not add click outside for hover menu\n var directives = !this.openOnHover ? [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional,\n include: function include() {\n return [_this.$el].concat(_toConsumableArray(_this.getOpenDependentElements()));\n }\n }\n }] : [];\n\n directives.push({\n name: 'show',\n value: this.isContentActive\n });\n\n return directives;\n },\n genContent: function genContent() {\n var _class,\n _this2 = this;\n\n var options = {\n staticClass: 'menu__content',\n 'class': (_class = {}, _defineProperty(_class, this.contentClass.trim(), true), _defineProperty(_class, 'menuable__content__active', this.isActive), _defineProperty(_class, 'theme--dark', this.dark), _defineProperty(_class, 'theme--light', this.light), _class),\n style: this.styles,\n directives: this.genDirectives(),\n ref: 'content',\n on: {\n click: function click(e) {\n e.stopPropagation();\n if (e.target.getAttribute('disabled')) return;\n if (_this2.closeOnContentClick) _this2.isActive = false;\n }\n }\n };\n\n !this.disabled && this.openOnHover && (options.on.mouseenter = this.mouseEnterHandler);\n this.openOnHover && (options.on.mouseleave = this.mouseLeaveHandler);\n\n return this.$createElement('div', options, this.showLazyContent(this.$slots.default));\n }\n }\n});\n\n/***/ }),\n/* 150 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu keyable\n *\n * @mixin\n *\n * Primarily used to support VSelect\n * Handles opening and closing of VMenu from keystrokes\n * Will conditionally highlight VListTiles for VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n data: function data() {\n return {\n listIndex: -1,\n tiles: []\n };\n },\n\n watch: {\n isActive: function isActive(val) {\n if (!val) this.listIndex = -1;\n },\n listIndex: function listIndex(next, prev) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles();\n\n if (next in this.tiles) {\n var tile = this.tiles[next];\n tile.classList.add('list__tile--highlighted');\n this.$refs.content.scrollTop = tile.offsetTop - tile.clientHeight;\n }\n\n prev in this.tiles && this.tiles[prev].classList.remove('list__tile--highlighted');\n }\n },\n\n methods: {\n changeListIndex: function changeListIndex(e) {\n // Up, Down, Enter, Space\n if ([40, 38, 13].includes(e.keyCode) || e.keyCode === 32 && !this.isActive) {\n e.preventDefault();\n }\n\n // Esc, Tab\n if ([27, 9].includes(e.keyCode)) return this.isActive = false;else if (!this.isActive &&\n // Enter, Space\n [13, 32].includes(e.keyCode) && this.openOnClick) {\n return this.isActive = true;\n }\n\n // Down\n if (e.keyCode === 40 && this.listIndex < this.tiles.length - 1) {\n this.listIndex++;\n // Up\n } else if (e.keyCode === 38 && this.listIndex > 0) {\n this.listIndex--;\n // Enter\n } else if (e.keyCode === 13 && this.listIndex !== -1) {\n this.tiles[this.listIndex].click();\n }\n },\n getTiles: function getTiles() {\n this.tiles = this.$refs.content.querySelectorAll('.list__tile');\n }\n }\n});\n\n/***/ }),\n/* 151 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Menu position\n *\n * @mixin\n *\n * Used for calculating an automatic position (used for VSelect)\n * Will position the VMenu content properly over the VSelect\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n // Revisit this\n calculateScroll: function calculateScroll() {\n if (this.selectedIndex === null) return;\n\n var scrollTop = 0;\n\n if (this.selectedIndex >= this.stopIndex) {\n scrollTop = this.$refs.content.scrollHeight;\n } else if (this.selectedIndex > this.startIndex) {\n scrollTop = this.selectedIndex * (this.defaultOffset * 6) - this.defaultOffset * 7;\n }\n\n this.$refs.content.scrollTop = scrollTop;\n },\n calcLeftAuto: function calcLeftAuto() {\n if (this.isAttached) return 0;\n\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2);\n },\n calcTopAuto: function calcTopAuto() {\n var selectedIndex = Array.from(this.tiles).findIndex(function (n) {\n return n.classList.contains('list__tile--active');\n });\n\n if (selectedIndex === -1) {\n this.selectedIndex = null;\n\n return this.computedTop;\n }\n\n this.selectedIndex = selectedIndex;\n var actingIndex = selectedIndex;\n\n var offsetPadding = -(this.defaultOffset * 2);\n // #708 Stop index should vary by tile length\n this.stopIndex = this.tiles.length > 4 ? this.tiles.length - 4 : this.tiles.length;\n\n if (selectedIndex > this.startIndex && selectedIndex < this.stopIndex) {\n actingIndex = 2;\n offsetPadding = this.defaultOffset * 3;\n } else if (selectedIndex >= this.stopIndex) {\n offsetPadding = -this.defaultOffset;\n actingIndex = selectedIndex - this.stopIndex;\n }\n\n // Is always off by 1 pixel, send help (┛ಠ_ಠ)┛彡┻━┻\n offsetPadding--;\n\n return this.computedTop + offsetPadding - actingIndex * (this.defaultOffset * 6);\n }\n }\n});\n\n/***/ }),\n/* 152 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl__ = __webpack_require__(153);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_subheaders_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-subheader',\n\n functional: true,\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n inset: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children,\n props = _ref.props;\n\n data.staticClass = ('subheader ' + (data.staticClass || '')).trim();\n\n if (props.inset) data.staticClass += ' subheader--inset';\n if (props.light) data.staticClass += ' theme--light';\n if (props.dark) data.staticClass += ' theme--dark';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 153 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 154 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl__ = __webpack_require__(155);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_lists_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\n// Styles\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"b\" /* provide */])('list'), __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n provide: function provide() {\n return {\n 'listClick': this.listClick\n };\n },\n\n\n data: function data() {\n return {\n groups: []\n };\n },\n\n props: {\n dense: Boolean,\n expand: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'list--dense': this.dense,\n 'list--subheader': this.subheader,\n 'list--two-line': this.twoLine,\n 'list--three-line': this.threeLine,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n methods: {\n register: function register(uid, cb) {\n this.groups.push({ uid: uid, cb: cb });\n },\n unregister: function unregister(uid) {\n var index = this.groups.findIndex(function (g) {\n return g.uid === uid;\n });\n\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n },\n listClick: function listClick(uid, isBooted) {\n if (this.expand) return;\n\n for (var i = this.groups.length; i--;) {\n this.groups[i].cb(uid);\n }\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'list',\n 'class': this.classes\n };\n\n return h('div', data, [this.$slots.default]);\n }\n});\n\n/***/ }),\n/* 155 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 156 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__transitions__ = __webpack_require__(7);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Components\n\n\n// Mixins\n\n\n\n\n// Transitions\n\n\n/**\n * List group\n *\n * @component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list-group',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_bootable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_registrable__[\"a\" /* inject */])('list', 'v-list-group', 'v-list'), __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */]],\n\n inject: ['listClick'],\n\n data: function data() {\n return {\n groups: []\n };\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'primary--text'\n },\n appendIcon: {\n type: String,\n default: 'keyboard_arrow_down'\n },\n disabled: Boolean,\n group: String,\n noAction: Boolean,\n prependIcon: String,\n subGroup: Boolean\n },\n\n computed: {\n groupClasses: function groupClasses() {\n return {\n 'list__group--active': this.isActive,\n 'list__group--disabled': this.disabled\n };\n },\n headerClasses: function headerClasses() {\n return {\n 'list__group__header--active': this.isActive,\n 'list__group__header--sub-group': this.subGroup\n };\n },\n itemsClasses: function itemsClasses() {\n return {\n 'list__group__items--no-action': this.noAction\n };\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n if (!this.subGroup && val) {\n this.listClick(this._uid);\n }\n },\n $route: function $route(to) {\n var isActive = this.matchRoute(to.path);\n\n if (this.group) {\n if (isActive && this.isActive !== isActive) {\n this.listClick(this._uid);\n }\n\n this.isActive = isActive;\n }\n }\n },\n\n mounted: function mounted() {\n this.list.register(this._uid, this.toggle);\n\n if (this.group && this.$route && this.value == null) {\n this.isActive = this.matchRoute(this.$route.path);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.list.unregister(this._uid);\n },\n\n\n methods: {\n click: function click() {\n if (this.disabled) return;\n\n this.isActive = !this.isActive;\n },\n genIcon: function genIcon(icon) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__components_VIcon__[\"a\" /* default */], icon);\n },\n genAppendIcon: function genAppendIcon() {\n var icon = !this.subGroup ? this.appendIcon : false;\n\n if (!icon && !this.$slots.appendIcon) return null;\n\n return this.$createElement('div', {\n staticClass: 'list__group__header__append-icon'\n }, [this.$slots.appendIcon || this.genIcon(icon)]);\n },\n genGroup: function genGroup() {\n return this.$createElement('div', {\n staticClass: 'list__group__header',\n 'class': this.headerClasses,\n on: Object.assign({}, {\n click: this.click\n }, this.$listeners),\n ref: 'item'\n }, [this.genPrependIcon(), this.$slots.activator, this.genAppendIcon()]);\n },\n genItems: function genItems() {\n return this.$createElement('div', {\n staticClass: 'list__group__items',\n 'class': this.itemsClasses,\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n ref: 'group'\n }, this.showLazyContent(this.$slots.default));\n },\n genPrependIcon: function genPrependIcon() {\n var icon = this.prependIcon ? this.prependIcon : this.subGroup ? 'arrow_drop_down' : false;\n\n if (!icon && !this.$slots.prependIcon) return null;\n\n return this.$createElement('div', {\n staticClass: 'list__group__header__prepend-icon',\n 'class': _defineProperty({}, this.activeClass, this.isActive)\n }, [this.$slots.prependIcon || this.genIcon(icon)]);\n },\n toggle: function toggle(uid) {\n this.isActive = this._uid === uid;\n },\n matchRoute: function matchRoute(to) {\n if (!this.group) return false;\n return to.match(this.group) !== null;\n }\n },\n\n render: function render(h) {\n return h('div', {\n staticClass: 'list__group',\n 'class': this.groupClasses\n }, [this.genGroup(), h(__WEBPACK_IMPORTED_MODULE_4__transitions__[\"a\" /* VExpandTransition */], [this.genItems()])]);\n }\n});\n\n/***/ }),\n/* 157 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__directives_ripple__ = __webpack_require__(17);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Mixins\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-list-tile',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_routable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */]],\n\n directives: {\n Ripple: __WEBPACK_IMPORTED_MODULE_3__directives_ripple__[\"a\" /* default */]\n },\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n proxyClass: 'list__tile--active'\n };\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'primary--text'\n },\n avatar: Boolean,\n inactive: Boolean,\n tag: String\n },\n\n computed: {\n listClasses: function listClasses() {\n return this.disabled ? 'text--disabled' : this.color ? this.addTextColorClassChecks() : this.defaultColor;\n },\n classes: function classes() {\n return _defineProperty({\n 'list__tile': true,\n 'list__tile--link': this.isLink && !this.inactive,\n 'list__tile--avatar': this.avatar,\n 'list__tile--disabled': this.disabled,\n 'list__tile--active': !this.to && this.isActive\n }, this.activeClass, this.isActive);\n },\n isLink: function isLink() {\n return this.href || this.to || this.$listeners && (this.$listeners.click || this.$listeners['!click']);\n }\n },\n\n render: function render(h) {\n var isRouteLink = !this.inactive && this.isLink;\n\n var _ref2 = isRouteLink ? this.generateRouteLink() : {\n tag: this.tag || 'div',\n data: {\n class: this.classes\n }\n },\n tag = _ref2.tag,\n data = _ref2.data;\n\n data.attrs = Object.assign({}, data.attrs, this.$attrs);\n\n return h('div', {\n 'class': this.listClasses,\n attrs: {\n disabled: this.disabled\n },\n on: _extends({}, this.$listeners)\n }, [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 158 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n functional: true,\n\n name: 'v-list-tile-action',\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children;\n\n data.staticClass = data.staticClass ? 'list__tile__action ' + data.staticClass : 'list__tile__action';\n if ((children || []).length > 1) data.staticClass += ' list__tile__action--stack';\n\n return h('div', data, children);\n }\n});\n\n/***/ }),\n/* 159 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VAvatar__ = __webpack_require__(34);\n// Components\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n functional: true,\n\n name: 'v-list-tile-avatar',\n\n props: {\n color: String,\n size: {\n type: [Number, String],\n default: 40\n },\n tile: Boolean\n },\n\n render: function render(h, _ref) {\n var data = _ref.data,\n children = _ref.children,\n props = _ref.props;\n\n data.staticClass = ('list__tile__avatar ' + (data.staticClass || '')).trim();\n\n var avatar = h(__WEBPACK_IMPORTED_MODULE_0__VAvatar__[\"a\" /* default */], {\n props: {\n color: props.color,\n size: props.size,\n tile: props.tile\n }\n }, [children]);\n\n return h('div', data, [avatar]);\n }\n});\n\n/***/ }),\n/* 160 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n// Helpers\n\n\n/**\n * Select helpers\n *\n * @mixin\n *\n * Helper methods for the\n * v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n getText: function getText(item) {\n return this.getPropertyFromItem(item, this.itemText);\n },\n getValue: function getValue(item) {\n return this.getPropertyFromItem(item, this.itemValue);\n },\n getPropertyFromItem: function getPropertyFromItem(item, field) {\n if (item !== Object(item)) return item;\n\n var value = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"i\" /* getObjectValueByPath */])(item, field);\n\n return typeof value === 'undefined' ? item : value;\n }\n }\n});\n\n/***/ }),\n/* 161 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Select menu methods\n *\n * @mixin\n *\n * Menu based methods for\n * the v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n activateInput: function activateInput() {\n this.isActive = true;\n this.isFocused = true;\n },\n deactivateInput: function deactivateInput() {\n this.isFocused = false;\n this.isActive = false;\n this.selectedIndex = -1;\n },\n hideMenu: function hideMenu() {\n this.menuIsActive = false;\n },\n showMenu: function showMenu() {\n this.activateInput();\n this.showMenuItems();\n this.isMultiple && this.resetMenuIndex();\n },\n showMenuItems: function showMenuItems() {\n this.menuIsActive = true;\n },\n toggleMenu: function toggleMenu() {\n if (this.disabled || this.readonly || this.menuIsVisible) return this.hideMenu();\n\n this.showMenu();\n this.focusInput();\n }\n }\n});\n\n/***/ }),\n/* 162 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n appendIcon: {\n type: String,\n default: 'arrow_drop_down'\n },\n appendIconCb: Function,\n attach: Boolean,\n auto: Boolean,\n autocomplete: Boolean,\n browserAutocomplete: {\n type: String,\n default: 'off'\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n combobox: Boolean,\n contentClass: String,\n deletableChips: Boolean,\n dense: Boolean,\n editable: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n itemAvatar: {\n type: String,\n default: 'avatar'\n },\n itemDisabled: {\n type: String,\n default: 'disabled'\n },\n itemText: {\n type: String,\n default: 'text'\n },\n itemValue: {\n type: String,\n default: 'value'\n },\n maxHeight: {\n type: [Number, String],\n default: 300\n },\n minWidth: {\n type: [Boolean, Number, String],\n default: false\n },\n multiple: Boolean,\n multiLine: Boolean,\n openOnClear: Boolean,\n overflow: Boolean,\n returnObject: Boolean,\n searchInput: {\n default: null\n },\n segmented: Boolean,\n singleLine: Boolean,\n tags: Boolean,\n valueComparator: {\n type: Function,\n default: function _default(a, b) {\n if (a !== Object(a)) return a === b;\n var aProps = Object.keys(a);\n var bProps = Object.keys(b);\n return aProps.length === bProps.length && aProps.every(function (propName) {\n return a[propName] === b[propName];\n });\n }\n }\n }\n});\n\n/***/ }),\n/* 163 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Select watchers\n *\n * @mixin\n *\n * Watchers for the\n * v-select component\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n watch: {\n filteredItems: function filteredItems() {\n this.$refs.menu && this.$refs.menu.updateDimensions();\n },\n inputValue: function inputValue(val) {\n // Search for an existing item when a\n // value was selected from the menu\n if (this.combobox && this.isNotFiltering) {\n val = this.findExistingItem(val);\n }\n\n // Populate selected items\n this.genSelectedItems(val);\n\n // Only fire an update\n // if values do not\n // match\n val !== this.value && this.$emit('input', val);\n\n // When inputValue is changed\n // and combobox is true set\n // menu property to false\n if (this.combobox) this.menuIsActive = false;\n },\n isActive: function isActive(val) {\n if (val) {\n if (!this.chips && !this.$scopedSlots.selection) {\n this.searchValue = this.getText(this.selectedItem);\n }\n return;\n }\n\n this.blur();\n\n if (this.tags && this.searchValue) {\n this.updateTags(this.searchValue);\n }\n\n if (this.combobox && this.lazySearch && !this.isNotFiltering) {\n this.inputValue = this.lazySearch;\n }\n\n // Only set search value if\n // there is a value to set\n this.searchValue && (this.searchValue = null);\n },\n isBooted: function isBooted() {\n var _this = this;\n\n this.$nextTick(function () {\n if (_this.content && _this.content.addEventListener) {\n _this.content.addEventListener('scroll', _this.onScroll, false);\n }\n });\n },\n items: function items(val) {\n var _this2 = this;\n\n if (this.cacheItems) {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val));\n }\n\n this.resetMenuIndex();\n\n // Tags and combobox should not\n // pre-select the first entry\n if (this.searchValue && !this.isAnyValueAllowed) {\n this.$nextTick(function () {\n return _this2.setMenuIndex(0);\n });\n }\n\n this.genSelectedItems();\n },\n menuIsActive: function menuIsActive(val) {\n if (!val) return;\n\n this.isBooted = true;\n },\n isMultiple: function isMultiple(val) {\n this.inputValue = val ? [] : null;\n },\n searchInput: function searchInput(val) {\n this.searchValue = val;\n },\n searchValue: function searchValue(val, prev) {\n var _this3 = this;\n\n // Wrap input to next line if overflowing\n if (this.$refs.input.scrollWidth > this.$refs.input.clientWidth) {\n this.shouldBreak = true;\n this.$nextTick(this.$refs.menu.updateDimensions);\n } else if (val === null) {\n this.shouldBreak = false;\n }\n\n // Activate menu if inactive and searching\n if (this.isActive && !this.menuIsActive && val !== this.getText(this.selectedItem)) {\n this.menuIsActive = true;\n }\n\n // Only reset list index\n // if typing in search\n !val && prev && this.resetMenuIndex();\n\n this.$nextTick(function () {\n if (val && !_this3.isAnyValueAllowed) {\n _this3.setMenuIndex(0);\n }\n if (val !== null && _this3.selectedIndex > -1) {\n _this3.selectedIndex = -1;\n }\n });\n },\n selectedItems: function selectedItems() {\n if (this.isAutocomplete) {\n this.$nextTick(this.$refs.menu.updateDimensions);\n }\n },\n value: function value(val) {\n this.inputValue = val;\n this.validate();\n }\n }\n});\n\n/***/ }),\n/* 164 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VTableOverflow */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDataTable__ = __webpack_require__(165);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VEditDialog__ = __webpack_require__(172);\n/* unused harmony reexport VDataTable */\n/* unused harmony reexport VEditDialog */\n\n\n\n\n\nvar VTableOverflow = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('table__overflow');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VEditDialog__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VEditDialog__[\"a\" /* default */]);\n Vue.component(VTableOverflow.name, VTableOverflow);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VDataTable__[\"a\" /* default */]);\n\n/***/ }),\n/* 165 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl__ = __webpack_require__(166);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tables_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl__ = __webpack_require__(167);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_data_table_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_data_iterable__ = __webpack_require__(46);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_head__ = __webpack_require__(168);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_body__ = __webpack_require__(169);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_foot__ = __webpack_require__(170);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_progress__ = __webpack_require__(171);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__util_helpers__ = __webpack_require__(2);\n\n\n\n\n\n\n\n\n\n\n\n\n// Importing does not work properly\nvar VTableOverflow = Object(__WEBPACK_IMPORTED_MODULE_7__util_helpers__[\"e\" /* createSimpleFunctional */])('table__overflow');\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-data-table',\n\n data: function data() {\n return {\n actionsClasses: 'datatable__actions',\n actionsRangeControlsClasses: 'datatable__actions__range-controls',\n actionsSelectClasses: 'datatable__actions__select',\n actionsPaginationClasses: 'datatable__actions__pagination'\n };\n },\n\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_data_iterable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_head__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_body__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_foot__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_progress__[\"a\" /* default */]],\n\n props: {\n headers: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n headerText: {\n type: String,\n default: 'text'\n },\n hideHeaders: Boolean,\n rowsPerPageText: {\n type: String,\n default: 'Rows per page:'\n },\n customFilter: {\n type: Function,\n default: function _default(items, search, filter, headers) {\n search = search.toString().toLowerCase();\n if (search.trim() === '') return items;\n\n var props = headers.map(function (h) {\n return h.value;\n });\n\n return items.filter(function (item) {\n return props.some(function (prop) {\n return filter(Object(__WEBPACK_IMPORTED_MODULE_7__util_helpers__[\"i\" /* getObjectValueByPath */])(item, prop), search);\n });\n });\n }\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'datatable table': true,\n 'datatable--select-all': this.selectAll !== false,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n filteredItems: function filteredItems() {\n return this.filteredItemsImpl(this.headers);\n },\n headerColumns: function headerColumns() {\n return this.headers.length + (this.selectAll !== false);\n }\n },\n\n methods: {\n hasTag: function hasTag(elements, tag) {\n return Array.isArray(elements) && elements.find(function (e) {\n return e.tag === tag;\n });\n },\n genTR: function genTR(children) {\n var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return this.$createElement('tr', data, children);\n }\n },\n\n created: function created() {\n var firstSortable = this.headers.find(function (h) {\n return !('sortable' in h) || h.sortable;\n });\n\n this.defaultPagination.sortBy = !this.disableInitialSort && firstSortable ? firstSortable.value : null;\n\n this.initPagination();\n },\n render: function render(h) {\n var tableOverflow = h(VTableOverflow, {}, [h('table', {\n 'class': this.classes\n }, [this.genTHead(), this.genTBody(), this.genTFoot()])]);\n\n return h('div', [tableOverflow, this.genActionsFooter()]);\n }\n});\n\n/***/ }),\n/* 166 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 167 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 168 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_console__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCheckbox__ = __webpack_require__(28);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n sortIcon: {\n type: String,\n default: 'arrow_upward'\n }\n },\n\n methods: {\n genTHead: function genTHead() {\n var _this = this;\n\n if (this.hideHeaders) return; // Exit Early since no headers are needed.\n\n var children = [];\n\n if (this.$scopedSlots.headers) {\n var row = this.$scopedSlots.headers({\n headers: this.headers,\n indeterminate: this.indeterminate,\n all: this.everyItem\n });\n\n children = [this.hasTag(row, 'th') ? this.genTR(row) : row, this.genTProgress()];\n } else {\n var _row = this.headers.map(function (o) {\n return _this.genHeader(o);\n });\n var checkbox = this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VCheckbox__[\"a\" /* default */], {\n props: {\n dark: this.dark,\n light: this.light,\n color: this.selectAll === true ? '' : this.selectAll,\n hideDetails: true,\n inputValue: this.everyItem,\n indeterminate: this.indeterminate\n },\n on: { change: this.toggle }\n });\n\n this.hasSelectAll && _row.unshift(this.$createElement('th', [checkbox]));\n\n children = [this.genTR(_row), this.genTProgress()];\n }\n\n return this.$createElement('thead', [children]);\n },\n genHeader: function genHeader(header) {\n var array = [this.$scopedSlots.headerCell ? this.$scopedSlots.headerCell({ header: header }) : header[this.headerText]];\n\n return this.$createElement.apply(this, ['th'].concat(_toConsumableArray(this.genHeaderData(header, array))));\n },\n genHeaderData: function genHeaderData(header, children) {\n var classes = ['column'];\n var data = {\n key: header[this.headerText],\n attrs: {\n role: 'columnheader',\n scope: 'col',\n width: header.width || null,\n 'aria-label': header[this.headerText] || '',\n 'aria-sort': 'none'\n }\n };\n\n if (header.sortable == null || header.sortable) {\n this.genHeaderSortingData(header, children, data, classes);\n } else {\n data.attrs['aria-label'] += ': Not sorted.'; // TODO: Localization\n }\n\n classes.push('text-xs-' + (header.align || 'left'));\n if (Array.isArray(header.class)) {\n classes.push.apply(classes, _toConsumableArray(header.class));\n } else if (header.class) {\n classes.push(header.class);\n }\n data.class = classes;\n\n return [data, children];\n },\n genHeaderSortingData: function genHeaderSortingData(header, children, data, classes) {\n var _this2 = this;\n\n if (!('value' in header)) {\n Object(__WEBPACK_IMPORTED_MODULE_0__util_console__[\"b\" /* consoleWarn */])('Headers must have a value property that corresponds to a value in the v-model array', this);\n }\n\n data.attrs.tabIndex = 0;\n data.on = {\n click: function click() {\n _this2.expanded = {};\n _this2.sort(header.value);\n },\n keydown: function keydown(e) {\n // check for space\n if (e.keyCode === 32) {\n e.preventDefault();\n _this2.sort(header.value);\n }\n }\n };\n\n classes.push('sortable');\n var icon = this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n props: {\n small: true\n }\n }, this.sortIcon);\n if (!header.align || header.align === 'left') {\n children.push(icon);\n } else {\n children.unshift(icon);\n }\n\n var pagination = this.computedPagination;\n var beingSorted = pagination.sortBy === header.value;\n if (beingSorted) {\n classes.push('active');\n if (pagination.descending) {\n classes.push('desc');\n data.attrs['aria-sort'] = 'descending';\n data.attrs['aria-label'] += ': Sorted descending. Activate to remove sorting.'; // TODO: Localization\n } else {\n classes.push('asc');\n data.attrs['aria-sort'] = 'ascending';\n data.attrs['aria-label'] += ': Sorted ascending. Activate to sort descending.'; // TODO: Localization\n }\n } else {\n data.attrs['aria-label'] += ': Not sorted. Activate to sort ascending.'; // TODO: Localization\n }\n }\n }\n});\n\n/***/ }),\n/* 169 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions_expand_transition__ = __webpack_require__(41);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTBody: function genTBody() {\n var children = this.genItems();\n\n return this.$createElement('tbody', children);\n },\n genExpandedRow: function genExpandedRow(props) {\n var children = [];\n\n if (this.isExpanded(props.item)) {\n var expand = this.$createElement('div', {\n class: 'datatable__expand-content',\n key: props.item[this.itemKey]\n }, this.$scopedSlots.expand(props));\n\n children.push(expand);\n }\n\n var transition = this.$createElement('transition-group', {\n class: 'datatable__expand-col',\n attrs: { colspan: this.headerColumns },\n props: {\n tag: 'td'\n },\n on: Object(__WEBPACK_IMPORTED_MODULE_0__transitions_expand_transition__[\"a\" /* default */])('datatable__expand-col--expanded')\n }, children);\n\n return this.genTR([transition], { class: 'datatable__expand-row' });\n },\n genFilteredItems: function genFilteredItems() {\n if (!this.$scopedSlots.items) {\n return null;\n }\n\n var rows = [];\n for (var index = 0, len = this.filteredItems.length; index < len; ++index) {\n var item = this.filteredItems[index];\n var props = this.createProps(item, index);\n var row = this.$scopedSlots.items(props);\n\n rows.push(this.hasTag(row, 'td') ? this.genTR(row, {\n key: index,\n attrs: { active: this.isSelected(item) }\n }) : row);\n\n if (this.$scopedSlots.expand) {\n var expandRow = this.genExpandedRow(props);\n rows.push(expandRow);\n }\n }\n\n return rows;\n },\n genEmptyItems: function genEmptyItems(content) {\n if (this.hasTag(content, 'tr')) {\n return content;\n } else if (this.hasTag(content, 'td')) {\n return this.genTR(content);\n } else {\n return this.genTR([this.$createElement('td', {\n class: {\n 'text-xs-center': typeof content === 'string'\n },\n attrs: { colspan: this.headerColumns }\n }, content)]);\n }\n }\n }\n});\n\n/***/ }),\n/* 170 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTFoot: function genTFoot() {\n if (!this.$slots.footer) {\n return null;\n }\n\n var footer = this.$slots.footer;\n var row = this.hasTag(footer, 'td') ? this.genTR(footer) : footer;\n\n return this.$createElement('tfoot', [row]);\n },\n genActionsFooter: function genActionsFooter() {\n if (this.hideActions) {\n return null;\n }\n\n return this.$createElement('div', {\n 'class': this.classes\n }, this.genActions());\n }\n }\n});\n\n/***/ }),\n/* 171 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genTProgress: function genTProgress() {\n var col = this.$createElement('th', {\n staticClass: 'column',\n attrs: {\n colspan: this.headerColumns\n }\n }, [this.genProgress()]);\n\n return this.genTR([col], {\n staticClass: 'datatable__progress'\n });\n }\n }\n});\n\n/***/ }),\n/* 172 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl__ = __webpack_require__(173);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_small_dialog_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_returnable__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VMenu__ = __webpack_require__(30);\n\n\n// Mixins\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-edit-dialog',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_returnable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isActive: false,\n isSaving: false\n };\n },\n\n\n props: {\n cancelText: {\n default: 'Cancel'\n },\n large: Boolean,\n lazy: Boolean,\n persistent: Boolean,\n saveText: {\n default: 'Save'\n },\n transition: {\n type: String,\n default: 'slide-x-reverse-transition'\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n val && setTimeout(this.focus, 50); // Give DOM time to paint\n }\n },\n\n methods: {\n cancel: function cancel() {\n this.isActive = false;\n },\n focus: function focus() {\n var input = this.$refs.content.querySelector('input');\n input && input.focus();\n },\n genButton: function genButton(fn, text) {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VBtn__[\"a\" /* default */], {\n props: {\n flat: true,\n color: 'primary',\n light: true\n },\n on: { click: fn }\n }, text);\n },\n genActions: function genActions() {\n var _this = this;\n\n return this.$createElement('div', {\n 'class': 'small-dialog__actions'\n }, [this.genButton(this.cancel, this.cancelText), this.genButton(function () {\n return _this.save(_this.returnValue);\n }, this.saveText)]);\n },\n genContent: function genContent() {\n var _this2 = this;\n\n return this.$createElement('div', {\n on: {\n keydown: function keydown(e) {\n var input = _this2.$refs.content.querySelector('input');\n e.keyCode === 27 && _this2.cancel();\n e.keyCode === 13 && input && _this2.save(input.value);\n }\n },\n ref: 'content'\n }, [this.$slots.input]);\n }\n },\n\n render: function render(h) {\n var _this3 = this;\n\n return h(__WEBPACK_IMPORTED_MODULE_3__VMenu__[\"a\" /* default */], {\n 'class': 'small-dialog',\n props: {\n contentClass: 'small-dialog__content',\n transition: this.transition,\n origin: 'top right',\n right: true,\n value: this.isActive,\n closeOnClick: !this.persistent,\n closeOnContentClick: false,\n lazy: this.lazy\n },\n on: {\n input: function input(val) {\n return _this3.isActive = val;\n }\n }\n }, [h('a', {\n slot: 'activator'\n }, this.$slots.default), this.genContent(), this.large ? this.genActions() : null]);\n }\n});\n\n/***/ }),\n/* 173 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 174 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDatePicker__ = __webpack_require__(175);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__ = __webpack_require__(59);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__ = __webpack_require__(60);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__ = __webpack_require__(63);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__ = __webpack_require__(64);\n/* unused harmony reexport VDatePicker */\n/* unused harmony reexport VDatePickerTitle */\n/* unused harmony reexport VDatePickerHeader */\n/* unused harmony reexport VDatePickerDateTable */\n/* unused harmony reexport VDatePickerMonthTable */\n/* unused harmony reexport VDatePickerYears */\n\n\n\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VDatePickerTitle__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VDatePickerHeader__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VDatePickerDateTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VDatePickerMonthTable__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_5__VDatePickerYears__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDatePicker__[\"a\" /* default */]);\n\n/***/ }),\n/* 175 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDatePickerTitle__ = __webpack_require__(57);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VDatePickerHeader__ = __webpack_require__(59);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VDatePickerDateTable__ = __webpack_require__(60);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VDatePickerMonthTable__ = __webpack_require__(63);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePickerYears__ = __webpack_require__(64);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_picker__ = __webpack_require__(65);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util__ = __webpack_require__(14);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__util_isDateAllowed__ = __webpack_require__(62);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n// Components\n\n\n\n\n\n\n// Mixins\n\n\n// Utils\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-date-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_5__mixins_picker__[\"a\" /* default */]],\n\n data: function data() {\n var _this = this;\n\n var now = new Date();\n return {\n activePicker: this.type.toUpperCase(),\n defaultColor: 'accent',\n inputDay: null,\n inputMonth: null,\n inputYear: null,\n isReversing: false,\n now: now,\n // tableDate is a string in 'YYYY' / 'YYYY-M' format (leading zero for month is not required)\n tableDate: function () {\n if (_this.pickerDate) {\n return _this.pickerDate;\n }\n\n var date = _this.value || now.getFullYear() + '-' + (now.getMonth() + 1);\n var type = _this.type === 'date' ? 'month' : 'year';\n return _this.sanitizeDateString(date, type);\n }()\n };\n },\n\n\n props: {\n allowedDates: Function,\n // Function formatting the day in date picker table\n dayFormat: {\n type: Function,\n default: null\n },\n events: {\n type: [Array, Object, Function],\n default: function _default() {\n return null;\n }\n },\n eventColor: {\n type: [String, Function, Object],\n default: 'warning'\n },\n firstDayOfWeek: {\n type: [String, Number],\n default: 0\n },\n // Function formatting the tableDate in the day/month table header\n headerDateFormat: {\n type: Function,\n default: null\n },\n locale: {\n type: String,\n default: 'en-us'\n },\n max: String,\n min: String,\n // Function formatting month in the months table\n monthFormat: {\n type: Function,\n default: null\n },\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n pickerDate: String,\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n reactive: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n showCurrent: {\n type: [Boolean, String],\n default: true\n },\n // Function formatting currently selected date in the picker title\n titleDateFormat: {\n type: Function,\n default: null\n },\n type: {\n type: String,\n default: 'date',\n validator: function validator(type) {\n return ['date', 'month'].includes(type);\n } // TODO: year\n },\n value: String,\n // Function formatting the year in table header and pickup title\n yearFormat: {\n type: Function,\n default: null\n },\n yearIcon: String\n },\n\n computed: {\n current: function current() {\n if (this.showCurrent === true) {\n return this.sanitizeDateString(this.now.getFullYear() + '-' + (this.now.getMonth() + 1) + '-' + this.now.getDate(), this.type);\n }\n\n return this.showCurrent || null;\n },\n inputDate: function inputDate() {\n return this.type === 'date' ? this.inputYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputMonth + 1) + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputDay) : this.inputYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.inputMonth + 1);\n },\n tableMonth: function tableMonth() {\n return (this.pickerDate || this.tableDate).split('-')[1] - 1;\n },\n tableYear: function tableYear() {\n return (this.pickerDate || this.tableDate).split('-')[0] * 1;\n },\n minMonth: function minMonth() {\n return this.min ? this.sanitizeDateString(this.min, 'month') : null;\n },\n maxMonth: function maxMonth() {\n return this.max ? this.sanitizeDateString(this.max, 'month') : null;\n },\n minYear: function minYear() {\n return this.min ? this.sanitizeDateString(this.min, 'year') : null;\n },\n maxYear: function maxYear() {\n return this.max ? this.sanitizeDateString(this.max, 'year') : null;\n },\n formatters: function formatters() {\n return {\n year: this.yearFormat || Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, { year: 'numeric', timeZone: 'UTC' }, { length: 4 }),\n titleDate: this.titleDateFormat || this.defaultTitleDateFormatter\n };\n },\n defaultTitleDateFormatter: function defaultTitleDateFormatter() {\n var titleFormats = {\n year: { year: 'numeric', timeZone: 'UTC' },\n month: { month: 'long', timeZone: 'UTC' },\n date: { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }\n };\n\n var titleDateFormatter = Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"a\" /* createNativeLocaleFormatter */])(this.locale, titleFormats[this.type], {\n start: 0,\n length: { date: 10, month: 7, year: 4 }[this.type]\n });\n\n var landscapeFormatter = function landscapeFormatter(date) {\n return titleDateFormatter(date).replace(/([^\\d\\s])([\\d])/g, function (match, nonDigit, digit) {\n return nonDigit + ' ' + digit;\n }).replace(', ', ',
');\n };\n\n return this.landscape ? landscapeFormatter : titleDateFormatter;\n }\n },\n\n watch: {\n tableDate: function tableDate(val, prev) {\n // Make a ISO 8601 strings from val and prev for comparision, otherwise it will incorrectly\n // compare for example '2000-9' and '2000-10'\n var sanitizeType = this.type === 'month' ? 'year' : 'month';\n this.isReversing = this.sanitizeDateString(val, sanitizeType) < this.sanitizeDateString(prev, sanitizeType);\n this.$emit('update:pickerDate', val);\n },\n pickerDate: function pickerDate(val) {\n if (val) {\n this.tableDate = val;\n } else if (this.value && this.type === 'date') {\n this.tableDate = this.sanitizeDateString(this.value, 'month');\n } else if (this.value && this.type === 'month') {\n this.tableDate = this.sanitizeDateString(this.value, 'year');\n }\n },\n value: function value() {\n this.setInputDate();\n if (this.value && !this.pickerDate) {\n this.tableDate = this.sanitizeDateString(this.inputDate, this.type === 'month' ? 'year' : 'month');\n }\n },\n type: function type(_type) {\n this.activePicker = _type.toUpperCase();\n\n if (this.value) {\n var date = this.sanitizeDateString(this.value, _type);\n this.$emit('input', this.isDateAllowed(date) ? date : null);\n }\n }\n },\n\n methods: {\n isDateAllowed: function isDateAllowed(value) {\n return Object(__WEBPACK_IMPORTED_MODULE_7__util_isDateAllowed__[\"a\" /* default */])(value, this.min, this.max, this.allowedDates);\n },\n yearClick: function yearClick(value) {\n this.inputYear = value;\n if (this.type === 'month') {\n this.tableDate = '' + value;\n } else {\n this.tableDate = value + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1);\n }\n this.activePicker = 'MONTH';\n this.reactive && this.isDateAllowed(this.inputDate) && this.$emit('input', this.inputDate);\n },\n monthClick: function monthClick(value) {\n this.inputYear = parseInt(value.split('-')[0], 10);\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1;\n if (this.type === 'date') {\n this.tableDate = value;\n this.activePicker = 'DATE';\n this.reactive && this.isDateAllowed(this.inputDate) && this.$emit('input', this.inputDate);\n } else {\n this.$emit('input', this.inputDate);\n this.$emit('change', this.inputDate);\n }\n },\n dateClick: function dateClick(value) {\n this.inputYear = parseInt(value.split('-')[0], 10);\n this.inputMonth = parseInt(value.split('-')[1], 10) - 1;\n this.inputDay = parseInt(value.split('-')[2], 10);\n this.$emit('input', this.inputDate);\n this.$emit('change', this.inputDate);\n },\n genPickerTitle: function genPickerTitle() {\n var _this2 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VDatePickerTitle__[\"a\" /* default */], {\n props: {\n date: this.value ? this.formatters.titleDate(this.value) : '',\n selectingYear: this.activePicker === 'YEAR',\n year: this.formatters.year('' + this.inputYear),\n yearIcon: this.yearIcon,\n value: this.value\n },\n slot: 'title',\n style: this.readonly ? {\n 'pointer-events': 'none'\n } : undefined,\n on: {\n 'update:selectingYear': function updateSelectingYear(value) {\n return _this2.activePicker = value ? 'YEAR' : _this2.type.toUpperCase();\n }\n }\n });\n },\n genTableHeader: function genTableHeader() {\n var _this3 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VDatePickerHeader__[\"a\" /* default */], {\n props: {\n nextIcon: this.nextIcon,\n color: this.color,\n disabled: this.readonly,\n format: this.headerDateFormat,\n locale: this.locale,\n min: this.activePicker === 'DATE' ? this.minMonth : this.minYear,\n max: this.activePicker === 'DATE' ? this.maxMonth : this.maxYear,\n prevIcon: this.prevIcon,\n value: this.activePicker === 'DATE' ? this.tableYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1) : '' + this.tableYear\n },\n on: {\n toggle: function toggle() {\n return _this3.activePicker = _this3.activePicker === 'DATE' ? 'MONTH' : 'YEAR';\n },\n input: function input(value) {\n return _this3.tableDate = value;\n }\n }\n });\n },\n genDateTable: function genDateTable() {\n var _this4 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VDatePickerDateTable__[\"a\" /* default */], {\n props: {\n allowedDates: this.allowedDates,\n color: this.color,\n current: this.current,\n disabled: this.readonly,\n events: this.events,\n eventColor: this.eventColor,\n firstDayOfWeek: this.firstDayOfWeek,\n format: this.dayFormat,\n locale: this.locale,\n min: this.min,\n max: this.max,\n tableDate: this.tableYear + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(this.tableMonth + 1),\n scrollable: this.scrollable,\n value: this.value\n },\n ref: 'table',\n on: {\n input: this.dateClick,\n tableDate: function tableDate(value) {\n return _this4.tableDate = value;\n }\n }\n });\n },\n genMonthTable: function genMonthTable() {\n var _this5 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_3__VDatePickerMonthTable__[\"a\" /* default */], {\n props: {\n allowedDates: this.type === 'month' ? this.allowedDates : null,\n color: this.color,\n current: this.current ? this.sanitizeDateString(this.current, 'month') : null,\n disabled: this.readonly,\n format: this.monthFormat,\n locale: this.locale,\n min: this.minMonth,\n max: this.maxMonth,\n scrollable: this.scrollable,\n value: !this.value || this.type === 'month' ? this.value : this.value.substr(0, 7),\n tableDate: '' + this.tableYear\n },\n ref: 'table',\n on: {\n input: this.monthClick,\n tableDate: function tableDate(value) {\n return _this5.tableDate = value;\n }\n }\n });\n },\n genYears: function genYears() {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_4__VDatePickerYears__[\"a\" /* default */], {\n props: {\n color: this.color,\n format: this.yearFormat,\n locale: this.locale,\n min: this.minYear,\n max: this.maxYear,\n value: '' + this.tableYear\n },\n on: {\n input: this.yearClick\n }\n });\n },\n genPickerBody: function genPickerBody() {\n var children = this.activePicker === 'YEAR' ? [this.genYears()] : [this.genTableHeader(), this.activePicker === 'DATE' ? this.genDateTable() : this.genMonthTable()];\n\n return this.$createElement('div', {\n key: this.activePicker,\n style: this.readonly ? {\n 'pointer-events': 'none'\n } : undefined\n }, children);\n },\n\n // Adds leading zero to month/day if necessary, returns 'YYYY' if type = 'year',\n // 'YYYY-MM' if 'month' and 'YYYY-MM-DD' if 'date'\n sanitizeDateString: function sanitizeDateString(dateString, type) {\n var _dateString$split = dateString.split('-'),\n _dateString$split2 = _slicedToArray(_dateString$split, 3),\n year = _dateString$split2[0],\n _dateString$split2$ = _dateString$split2[1],\n month = _dateString$split2$ === undefined ? 1 : _dateString$split2$,\n _dateString$split2$2 = _dateString$split2[2],\n date = _dateString$split2$2 === undefined ? 1 : _dateString$split2$2;\n\n return (year + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(month) + '-' + Object(__WEBPACK_IMPORTED_MODULE_6__util__[\"c\" /* pad */])(date)).substr(0, { date: 10, month: 7, year: 4 }[type]);\n },\n setInputDate: function setInputDate() {\n if (this.value) {\n var array = this.value.split('-');\n this.inputYear = parseInt(array[0], 10);\n this.inputMonth = parseInt(array[1], 10) - 1;\n if (this.type === 'date') {\n this.inputDay = parseInt(array[2], 10);\n }\n } else {\n this.inputYear = this.inputYear || this.now.getFullYear();\n this.inputMonth = this.inputMonth == null ? this.inputMonth : this.now.getMonth();\n this.inputDay = this.inputDay || this.now.getDate();\n }\n }\n },\n\n created: function created() {\n if (this.pickerDate !== this.tableDate) {\n this.$emit('update:pickerDate', this.tableDate);\n }\n this.setInputDate();\n },\n render: function render(h) {\n return this.genPicker('picker--date');\n }\n});\n\n/***/ }),\n/* 176 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 177 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 178 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (function (locale, options) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : { start: 0, length: 0 },\n start = _ref.start,\n length = _ref.length;\n\n var makeIsoString = function makeIsoString(dateString) {\n var _dateString$trim$spli = dateString.trim().split(' ')[0].split('-'),\n _dateString$trim$spli2 = _slicedToArray(_dateString$trim$spli, 3),\n year = _dateString$trim$spli2[0],\n month = _dateString$trim$spli2[1],\n date = _dateString$trim$spli2[2];\n\n return [year, Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(month || 1), Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(date || 1)].join('-');\n };\n\n try {\n var intlFormatter = new Intl.DateTimeFormat(locale || undefined, options);\n return function (dateString) {\n return intlFormatter.format(new Date(makeIsoString(dateString) + 'T00:00:00+00:00'));\n };\n } catch (e) {\n return start || length ? function (dateString) {\n return makeIsoString(dateString).substr(start, length);\n } : null;\n }\n});\n\n/***/ }),\n/* 179 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n\n\n/**\n * @param {String} value YYYY-MM format\n * @param {Number} sign -1 or +1\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = (function (value, sign) {\n var _value$split$map = value.split('-').map(function (v) {\n return 1 * v;\n }),\n _value$split$map2 = _slicedToArray(_value$split$map, 2),\n year = _value$split$map2[0],\n month = _value$split$map2[1];\n\n if (month + sign === 0) {\n return year - 1 + '-12';\n } else if (month + sign === 13) {\n return year + 1 + '-01';\n } else {\n return year + '-' + Object(__WEBPACK_IMPORTED_MODULE_0__pad__[\"a\" /* default */])(month + sign);\n }\n});\n\n/***/ }),\n/* 180 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 181 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 182 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl__ = __webpack_require__(183);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_pickers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VCard__ = __webpack_require__(27);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n// Components\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'primary'\n };\n },\n\n\n props: {\n fullWidth: Boolean,\n landscape: Boolean,\n transition: {\n type: String,\n default: 'fade-transition'\n },\n width: {\n type: [Number, String],\n default: 290,\n validator: function validator(value) {\n return parseInt(value, 10) > 0;\n }\n }\n },\n\n computed: {\n computedTitleColor: function computedTitleColor() {\n var darkTheme = this.dark || !this.light && this.$vuetify.dark;\n var defaultTitleColor = darkTheme ? null : this.computedColor;\n return this.color || defaultTitleColor;\n }\n },\n\n methods: {\n genTitle: function genTitle() {\n return this.$createElement('div', {\n staticClass: 'picker__title',\n 'class': this.addBackgroundColorClassChecks({\n 'picker__title--landscape': this.landscape\n }, this.computedTitleColor)\n }, this.$slots.title);\n },\n genBodyTransition: function genBodyTransition() {\n return this.$createElement('transition', {\n props: {\n name: this.transition\n }\n }, this.$slots.default);\n },\n genBody: function genBody() {\n return this.$createElement('div', {\n staticClass: 'picker__body',\n style: this.fullWidth ? undefined : {\n width: this.width + 'px'\n }\n }, [this.genBodyTransition()]);\n },\n genActions: function genActions() {\n return this.$createElement('div', {\n staticClass: 'picker__actions card__actions'\n }, this.$slots.actions);\n }\n },\n\n render: function render(h) {\n return h(__WEBPACK_IMPORTED_MODULE_1__VCard__[\"a\" /* default */], {\n staticClass: 'picker',\n 'class': _extends({\n 'picker--landscape': this.landscape\n }, this.themeClasses)\n }, [this.$slots.title ? this.genTitle() : null, this.genBody(), this.$slots.actions ? this.genActions() : null]);\n }\n});\n\n/***/ }),\n/* 183 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 184 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VDialog__ = __webpack_require__(36);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VDialog__[\"a\" /* default */]);\n\n/***/ }),\n/* 185 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__ = __webpack_require__(186);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__ = __webpack_require__(188);\n/* unused harmony reexport VExpansionPanel */\n/* unused harmony reexport VExpansionPanelContent */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VExpansionPanelContent__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VExpansionPanel__[\"a\" /* default */]);\n\n/***/ }),\n/* 186 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl__ = __webpack_require__(187);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_expansion_panel_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-expansion-panel',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"b\" /* provide */])('expansionPanel')],\n\n provide: function provide() {\n return {\n panelClick: this.panelClick,\n focusable: this.focusable\n };\n },\n data: function data() {\n return {\n items: []\n };\n },\n\n\n props: {\n expand: Boolean,\n focusable: Boolean,\n inset: Boolean,\n popout: Boolean\n },\n\n methods: {\n panelClick: function panelClick(uid) {\n if (!this.expand) {\n for (var i = 0; i < this.items.length; i++) {\n this.items[i].toggle(uid);\n }\n return;\n }\n\n for (var _i = 0; _i < this.items.length; _i++) {\n if (this.items[_i].uid === uid) {\n this.items[_i].toggle(uid);\n return;\n }\n }\n },\n register: function register(uid, toggle) {\n this.items.push({ uid: uid, toggle: toggle });\n },\n unregister: function unregister(uid) {\n this.items = this.items.filter(function (i) {\n return i.uid !== uid;\n });\n }\n },\n\n render: function render(h) {\n return h('ul', {\n staticClass: 'expansion-panel',\n 'class': _extends({\n 'expansion-panel--focusable': this.focusable,\n 'expansion-panel--popout': this.popout,\n 'expansion-panel--inset': this.inset\n }, this.themeClasses)\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 187 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 188 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_click_outside__ = __webpack_require__(8);\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-expansion-panel-content',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_4__mixins_registrable__[\"a\" /* inject */])('expansionPanel', 'v-expansion-panel', 'v-expansion-panel-content')],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_6__directives_click_outside__[\"a\" /* default */]\n },\n\n inject: ['focusable', 'panelClick'],\n\n data: function data() {\n return {\n height: 'auto'\n };\n },\n\n\n props: {\n expandIcon: {\n type: String,\n default: 'keyboard_arrow_down'\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false\n }\n },\n\n methods: {\n genBody: function genBody() {\n return this.$createElement('div', {\n ref: 'body',\n class: 'expansion-panel__body',\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, this.showLazyContent(this.$slots.default));\n },\n genHeader: function genHeader() {\n var _this = this;\n\n return this.$createElement('div', {\n staticClass: 'expansion-panel__header',\n directives: [{\n name: 'ripple',\n value: this.ripple\n }],\n on: {\n click: function click() {\n return _this.panelClick(_this._uid);\n }\n }\n }, [this.$slots.header, this.genIcon()]);\n },\n genIcon: function genIcon(h) {\n if (this.hideActions) return null;\n\n var icon = this.$slots.actions || this.$createElement(__WEBPACK_IMPORTED_MODULE_5__VIcon__[\"a\" /* default */], this.expandIcon);\n\n return this.$createElement('div', {\n staticClass: 'header__icon'\n }, [icon]);\n },\n toggle: function toggle(uid) {\n var _this2 = this;\n\n var isActive = this._uid === uid && !this.isActive;\n\n if (isActive) this.isBooted = true;\n\n // We treat bootable differently\n // Needs time to calc height\n this.$nextTick(function () {\n return _this2.isActive = isActive;\n });\n }\n },\n\n mounted: function mounted() {\n this.expansionPanel.register(this._uid, this.toggle);\n },\n beforeDestroy: function beforeDestroy() {\n this.expansionPanel.unregister(this._uid);\n },\n render: function render(h) {\n var _this3 = this;\n\n var children = [];\n\n this.$slots.header && children.push(this.genHeader());\n children.push(h(__WEBPACK_IMPORTED_MODULE_0__transitions__[\"a\" /* VExpandTransition */], [this.genBody()]));\n\n return h('li', {\n staticClass: 'expansion-panel__container',\n 'class': {\n 'expansion-panel__container--active': this.isActive\n },\n attrs: {\n tabindex: 0\n },\n on: {\n keydown: function keydown(e) {\n // Ensure element is focusable and the activeElement\n if (_this3.focusable && _this3.$el === document.activeElement && e.keyCode === 13) _this3.panelClick(_this3._uid);\n }\n }\n }, children);\n }\n});\n\n/***/ }),\n/* 189 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VFooter__ = __webpack_require__(190);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VFooter__[\"a\" /* default */]);\n\n/***/ }),\n/* 190 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl__ = __webpack_require__(191);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_footer_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n// Styles\n\n\n// Mixins\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-footer',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('footer', ['height']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n height: {\n default: 32,\n type: [Number, String]\n },\n inset: Boolean\n },\n\n computed: {\n computedMarginBottom: function computedMarginBottom() {\n if (!this.app) return;\n\n return this.$vuetify.application.bottom;\n },\n computedPaddingLeft: function computedPaddingLeft() {\n return !this.app || !this.inset ? 0 : this.$vuetify.application.left;\n },\n computedPaddingRight: function computedPaddingRight() {\n return !this.app ? 0 : this.$vuetify.application.right;\n },\n styles: function styles() {\n var styles = {\n height: isNaN(this.height) ? this.height : this.height + 'px'\n };\n\n if (this.computedPaddingLeft) {\n styles.paddingLeft = this.computedPaddingLeft + 'px';\n }\n\n if (this.computedPaddingRight) {\n styles.paddingRight = this.computedPaddingRight + 'px';\n }\n\n if (this.computedMarginBottom) {\n styles.marginBottom = this.computedMarginBottom + 'px';\n }\n\n return styles;\n }\n },\n\n methods: {\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return isNaN(this.height) ? this.$el ? this.$el.clientHeight : 0 : this.height;\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'footer',\n 'class': this.addBackgroundColorClassChecks({\n 'footer--absolute': this.absolute,\n 'footer--fixed': !this.absolute && (this.app || this.fixed),\n 'footer--inset': this.inset,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n }),\n style: this.styles,\n ref: 'content'\n };\n\n return h('footer', data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 191 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 192 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VForm__ = __webpack_require__(193);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VForm__[\"a\" /* default */]);\n\n/***/ }),\n/* 193 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-form',\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n inputs: [],\n errorBag: {}\n };\n },\n\n\n props: {\n value: Boolean,\n lazyValidation: Boolean\n },\n\n watch: {\n errorBag: {\n handler: function handler() {\n var errors = Object.values(this.errorBag).includes(true);\n\n this.$emit('input', !errors);\n\n return !errors;\n },\n\n deep: true\n }\n },\n\n methods: {\n getInputs: function getInputs() {\n var results = [];\n\n var search = function search(children) {\n var depth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n for (var index = 0; index < children.length; index++) {\n var child = children[index];\n if (child.errorBucket !== undefined) {\n results.push(child);\n } else {\n search(child.$children, depth + 1);\n }\n }\n if (depth === 0) return results;\n };\n\n return search(this.$children);\n },\n watchInputs: function watchInputs() {\n var inputs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getInputs();\n\n for (var index = 0; index < inputs.length; index++) {\n var child = inputs[index];\n if (this.inputs.includes(child)) {\n continue; // We already know about this input\n }\n\n this.inputs.push(child);\n this.watchChild(child);\n }\n },\n watchChild: function watchChild(child) {\n var _this = this;\n\n var watcher = function watcher(child) {\n child.$watch('valid', function (val) {\n _this.$set(_this.errorBag, child._uid, !val);\n }, { immediate: true });\n };\n\n if (!this.lazyValidation) return watcher(child);\n\n // Only start watching inputs if we need to\n child.$watch('shouldValidate', function (val) {\n if (!val) return;\n\n // Only watch if we're not already doing it\n if (_this.errorBag.hasOwnProperty(child._uid)) return;\n\n watcher(child);\n });\n },\n validate: function validate() {\n var errors = this.inputs.filter(function (input) {\n return !input.validate(true);\n }).length;\n return !errors;\n },\n reset: function reset() {\n for (var i = this.inputs.length; i--;) {\n this.inputs[i].reset();\n }\n if (this.lazyValidation) this.errorBag = {};\n }\n },\n\n mounted: function mounted() {\n this.watchInputs();\n },\n updated: function updated() {\n var inputs = this.getInputs();\n\n if (inputs.length < this.inputs.length) {\n // Something was removed, we don't want it in the errorBag any more\n var removed = this.inputs.filter(function (i) {\n return !inputs.includes(i);\n });\n\n for (var index = 0; index < removed.length; index++) {\n var input = removed[index];\n this.$delete(this.errorBag, input._uid);\n this.$delete(this.inputs, this.inputs.indexOf(input));\n }\n }\n\n this.watchInputs(inputs);\n },\n render: function render(h) {\n var _this2 = this;\n\n return h('form', {\n attrs: Object.assign({\n novalidate: true\n }, this.$attrs),\n on: {\n submit: function submit(e) {\n return _this2.$emit('submit', e);\n }\n }\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 194 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VSpacer */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VContent__ = __webpack_require__(195);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VContainer__ = __webpack_require__(197);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VFlex__ = __webpack_require__(198);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VLayout__ = __webpack_require__(199);\n/* unused harmony reexport VContainer */\n/* unused harmony reexport VContent */\n/* unused harmony reexport VFlex */\n/* unused harmony reexport VLayout */\n\n\n\n\n\n\nvar VSpacer = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('spacer');\n\n\n\nvar VGrid = {};\n\n/* istanbul ignore next */\nVGrid.install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VContent__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VContainer__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VContainer__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VFlex__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VFlex__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VLayout__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VLayout__[\"a\" /* default */]);\n Vue.component(VSpacer.name, VSpacer);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (VGrid);\n\n/***/ }),\n/* 195 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl__ = __webpack_require__(196);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_content_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_ssr_bootable__ = __webpack_require__(23);\n// Styles\n\n\n// Mixins\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-content',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_ssr_bootable__[\"a\" /* default */]],\n\n props: {\n tag: {\n type: String,\n default: 'main'\n }\n },\n\n computed: {\n styles: function styles() {\n var _$vuetify$application = this.$vuetify.application,\n bar = _$vuetify$application.bar,\n top = _$vuetify$application.top,\n right = _$vuetify$application.right,\n footer = _$vuetify$application.footer,\n bottom = _$vuetify$application.bottom,\n left = _$vuetify$application.left;\n\n\n return {\n paddingTop: top + bar + 'px',\n paddingRight: right + 'px',\n paddingBottom: footer + bottom + 'px',\n paddingLeft: left + 'px'\n };\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'content',\n 'class': this.classes,\n style: this.styles,\n ref: 'content'\n };\n\n return h(this.tag, data, [h('div', { staticClass: 'content--wrap' }, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 196 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 197 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('container'));\n\n/***/ }),\n/* 198 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('flex'));\n\n/***/ }),\n/* 199 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_grid_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__grid__ = __webpack_require__(32);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (Object(__WEBPACK_IMPORTED_MODULE_1__grid__[\"a\" /* default */])('layout'));\n\n/***/ }),\n/* 200 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__ = __webpack_require__(201);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VNavigationDrawer__[\"a\" /* default */]);\n\n/***/ }),\n/* 201 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl__ = __webpack_require__(202);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_navigation_drawer_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_overlayable__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__directives_touch__ = __webpack_require__(9);\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-navigation-drawer',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])(null, ['miniVariant', 'right', 'width']), __WEBPACK_IMPORTED_MODULE_2__mixins_overlayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_themeable__[\"a\" /* default */]],\n\n directives: {\n ClickOutside: __WEBPACK_IMPORTED_MODULE_5__directives_click_outside__[\"a\" /* default */],\n Resize: __WEBPACK_IMPORTED_MODULE_6__directives_resize__[\"a\" /* default */],\n Touch: __WEBPACK_IMPORTED_MODULE_7__directives_touch__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n isActive: false,\n touchArea: {\n left: 0,\n right: 0\n }\n };\n },\n\n props: {\n clipped: Boolean,\n disableRouteWatcher: Boolean,\n disableResizeWatcher: Boolean,\n height: {\n type: [Number, String],\n default: '100%'\n },\n floating: Boolean,\n miniVariant: Boolean,\n miniVariantWidth: {\n type: [Number, String],\n default: 80\n },\n mobileBreakPoint: {\n type: [Number, String],\n default: 1264\n },\n permanent: Boolean,\n right: Boolean,\n stateless: Boolean,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 300\n },\n value: { required: false }\n },\n\n computed: {\n /**\n * Used for setting an app\n * value from a dynamic\n * property. Called from\n * applicationable.js\n *\n * @return {string}\n */\n applicationProperty: function applicationProperty() {\n return this.right ? 'right' : 'left';\n },\n calculatedHeight: function calculatedHeight() {\n return isNaN(this.height) ? this.height : this.height + 'px';\n },\n calculatedTransform: function calculatedTransform() {\n if (this.isActive) return 0;\n\n return this.right ? this.calculatedWidth : -this.calculatedWidth;\n },\n calculatedWidth: function calculatedWidth() {\n return this.miniVariant ? this.miniVariantWidth : this.width;\n },\n classes: function classes() {\n return {\n 'navigation-drawer': true,\n 'navigation-drawer--absolute': this.absolute,\n 'navigation-drawer--clipped': this.clipped,\n 'navigation-drawer--close': !this.isActive,\n 'navigation-drawer--fixed': !this.absolute && (this.app || this.fixed),\n 'navigation-drawer--floating': this.floating,\n 'navigation-drawer--is-mobile': this.isMobile,\n 'navigation-drawer--mini-variant': this.miniVariant,\n 'navigation-drawer--open': this.isActive,\n 'navigation-drawer--right': this.right,\n 'navigation-drawer--temporary': this.temporary,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n },\n isMobile: function isMobile() {\n return !this.stateless && !this.permanent && !this.temporary && this.$vuetify.breakpoint.width < parseInt(this.mobileBreakPoint, 10);\n },\n marginTop: function marginTop() {\n if (!this.app) return 0;\n var marginTop = this.$vuetify.application.bar;\n\n marginTop += this.clipped ? this.$vuetify.application.top : 0;\n\n return marginTop;\n },\n maxHeight: function maxHeight() {\n if (!this.app) return '100%';\n\n return this.clipped ? this.$vuetify.application.top + this.$vuetify.application.bottom : this.$vuetify.application.bottom;\n },\n reactsToClick: function reactsToClick() {\n return !this.stateless && !this.permanent && (this.isMobile || this.temporary);\n },\n reactsToMobile: function reactsToMobile() {\n return !this.disableResizeWatcher && !this.stateless && !this.permanent && !this.temporary;\n },\n reactsToRoute: function reactsToRoute() {\n return !this.disableRouteWatcher && !this.stateless && (this.temporary || this.isMobile);\n },\n resizeIsDisabled: function resizeIsDisabled() {\n return this.disableResizeWatcher || this.stateless;\n },\n showOverlay: function showOverlay() {\n return this.isActive && (this.isMobile || this.temporary);\n },\n styles: function styles() {\n var styles = {\n height: this.calculatedHeight,\n marginTop: this.marginTop + 'px',\n maxHeight: 'calc(100% - ' + this.maxHeight + 'px)',\n transform: 'translateX(' + this.calculatedTransform + 'px)',\n width: this.calculatedWidth + 'px'\n };\n\n return styles;\n }\n },\n\n watch: {\n $route: function $route() {\n if (this.reactsToRoute && this.closeConditional()) {\n this.isActive = false;\n }\n },\n isActive: function isActive(val) {\n this.$emit('input', val);\n this.callUpdate();\n },\n\n /**\n * When mobile changes, adjust\n * the active state only when\n * there has been a previous\n * value\n */\n isMobile: function isMobile(val, prev) {\n !val && this.isActive && !this.temporary && this.removeOverlay();\n\n if (prev == null || this.resizeIsDisabled || !this.reactsToMobile) return;\n\n this.isActive = !val;\n this.callUpdate();\n },\n permanent: function permanent(val) {\n // If enabling prop\n // enable the drawer\n if (val) {\n this.isActive = true;\n }\n this.callUpdate();\n },\n showOverlay: function showOverlay(val) {\n if (val) this.genOverlay();else this.removeOverlay();\n },\n temporary: function temporary() {\n this.callUpdate();\n },\n value: function value(val) {\n if (this.permanent) return;\n\n if (val == null) return this.init();\n\n if (val !== this.isActive) this.isActive = val;\n }\n },\n\n beforeMount: function beforeMount() {\n this.init();\n },\n\n\n methods: {\n calculateTouchArea: function calculateTouchArea() {\n if (!this.$el.parentNode) return;\n var parentRect = this.$el.parentNode.getBoundingClientRect();\n\n this.touchArea = {\n left: parentRect.left + 50,\n right: parentRect.right - 50\n };\n },\n closeConditional: function closeConditional() {\n return this.isActive && this.reactsToClick;\n },\n genDirectives: function genDirectives() {\n var _this = this;\n\n var directives = [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n },\n args: {\n closeConditional: this.closeConditional\n }\n }];\n\n !this.touchless && directives.push({\n name: 'touch',\n value: {\n parent: true,\n left: this.swipeLeft,\n right: this.swipeRight\n }\n });\n\n return directives;\n },\n\n /**\n * Sets state before mount to avoid\n * entry transitions in SSR\n *\n * @return {void}\n */\n init: function init() {\n if (this.permanent) {\n this.isActive = true;\n } else if (this.stateless || this.value != null) {\n this.isActive = this.value;\n } else if (!this.temporary) {\n this.isActive = !this.isMobile;\n }\n },\n swipeRight: function swipeRight(e) {\n if (this.isActive && !this.right) return;\n this.calculateTouchArea();\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (!this.right && e.touchstartX <= this.touchArea.left) this.isActive = true;else if (this.right && this.isActive) this.isActive = false;\n },\n swipeLeft: function swipeLeft(e) {\n if (this.isActive && this.right) return;\n this.calculateTouchArea();\n\n if (Math.abs(e.touchendX - e.touchstartX) < 100) return;\n if (this.right && e.touchstartX >= this.touchArea.right) this.isActive = true;else if (!this.right && this.isActive) this.isActive = false;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return !this.isActive || this.temporary || this.isMobile ? 0 : this.calculatedWidth;\n }\n },\n\n render: function render(h) {\n var _this2 = this;\n\n var data = {\n 'class': this.classes,\n style: this.styles,\n directives: this.genDirectives(),\n on: {\n click: function click() {\n if (!_this2.miniVariant) return;\n\n _this2.$emit('update:miniVariant', false);\n },\n transitionend: function transitionend(e) {\n _this2.$emit('transitionend', e);\n window.dispatchEvent(new Event('resize'));\n }\n }\n };\n\n return h('aside', data, [this.$slots.default, h('div', { 'class': 'navigation-drawer__border' })]);\n }\n});\n\n/***/ }),\n/* 202 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 203 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VPagination__ = __webpack_require__(204);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VPagination__[\"a\" /* default */]);\n\n/***/ }),\n/* 204 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl__ = __webpack_require__(205);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_pagination_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_colorable__ = __webpack_require__(0);\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-pagination',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_colorable__[\"a\" /* default */]],\n\n directives: { Resize: __WEBPACK_IMPORTED_MODULE_2__directives_resize__[\"a\" /* default */] },\n\n data: function data() {\n return {\n maxButtons: 0,\n defaultColor: 'primary'\n };\n },\n\n\n props: {\n circle: Boolean,\n disabled: Boolean,\n length: {\n type: Number,\n default: 0,\n validator: function validator(val) {\n return val % 1 === 0;\n }\n },\n totalVisible: [Number, String],\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n value: {\n type: Number,\n default: 0\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'pagination': true,\n 'pagination--circle': this.circle,\n 'pagination--disabled': this.disabled\n };\n },\n items: function items() {\n var maxLength = this.totalVisible || this.maxButtons;\n if (this.length <= maxLength) {\n return this.range(1, this.length);\n }\n\n var even = maxLength % 2 === 0 ? 1 : 0;\n var left = Math.floor(maxLength / 2);\n var right = this.length - left + 1 + even;\n\n if (this.value >= left && this.value <= right) {\n var start = this.value - left + 2;\n var end = this.value + left - 2 - even;\n\n return [1, '...'].concat(_toConsumableArray(this.range(start, end)), ['...', this.length]);\n } else {\n return [].concat(_toConsumableArray(this.range(1, left)), ['...'], _toConsumableArray(this.range(this.length - left + 1 + even, this.length)));\n }\n }\n },\n\n watch: {\n value: function value() {\n this.init();\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n init: function init() {\n var _this = this;\n\n this.selected = null;\n\n this.$nextTick(this.onResize);\n // TODO: Change this (f75dee3a, cbdf7caa)\n setTimeout(function () {\n return _this.selected = _this.value;\n }, 100);\n },\n onResize: function onResize() {\n var width = this.$el && this.$el.parentNode ? this.$el.parentNode.clientWidth : window.innerWidth;\n\n this.maxButtons = Math.floor((width - 96) / 42);\n },\n next: function next(e) {\n e.preventDefault();\n this.$emit('input', this.value + 1);\n this.$emit('next');\n },\n previous: function previous(e) {\n e.preventDefault();\n this.$emit('input', this.value - 1);\n this.$emit('previous');\n },\n range: function range(from, to) {\n var range = [];\n\n from = from > 0 ? from : 1;\n\n for (var i = from; i <= to; i++) {\n range.push(i);\n }\n\n return range;\n },\n genIcon: function genIcon(h, icon, disabled, fn) {\n return h('li', [h('button', {\n staticClass: 'pagination__navigation',\n class: {\n 'pagination__navigation--disabled': disabled\n },\n on: disabled ? {} : { click: fn }\n }, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], [icon])])]);\n },\n genItem: function genItem(h, i) {\n var _this2 = this;\n\n return h('button', {\n staticClass: 'pagination__item',\n class: i === this.value ? this.addBackgroundColorClassChecks({\n 'pagination__item--active': true\n }) : {},\n on: {\n click: function click() {\n return _this2.$emit('input', i);\n }\n }\n }, [i]);\n },\n genItems: function genItems(h) {\n var _this3 = this;\n\n return this.items.map(function (i, index) {\n return h('li', { key: index }, [isNaN(i) ? h('span', { class: 'pagination__more' }, [i]) : _this3.genItem(h, i)]);\n });\n }\n },\n\n render: function render(h) {\n var children = [this.genIcon(h, this.prevIcon, this.value <= 1, this.previous), this.genItems(h), this.genIcon(h, this.nextIcon, this.value >= this.length, this.next)];\n\n return h('ul', {\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.onResize\n }],\n class: this.classes\n }, children);\n }\n});\n\n/***/ }),\n/* 205 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 206 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VParallax__ = __webpack_require__(207);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VParallax__[\"a\" /* default */]);\n\n/***/ }),\n/* 207 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl__ = __webpack_require__(208);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_parallax_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_translatable__ = __webpack_require__(209);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-parallax',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_translatable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n isBooted: false\n };\n },\n\n\n props: {\n alt: String,\n height: {\n type: [String, Number],\n default: 500\n },\n src: String\n },\n\n computed: {\n styles: function styles() {\n return {\n display: 'block',\n opacity: this.isBooted ? 1 : 0,\n transform: 'translate(-50%, ' + this.parallax + 'px)'\n };\n }\n },\n\n watch: {\n parallax: function parallax() {\n this.isBooted = true;\n }\n },\n\n mounted: function mounted() {\n this.init();\n },\n\n\n methods: {\n init: function init() {\n var _this = this;\n\n if (!this.$refs.img) return;\n\n if (this.$refs.img.complete) {\n this.translate();\n this.listeners();\n } else {\n this.$refs.img.addEventListener('load', function () {\n _this.translate();\n _this.listeners();\n }, false);\n }\n },\n objHeight: function objHeight() {\n return this.$refs.img.naturalHeight;\n },\n elOffsetTop: function elOffsetTop() {\n return this.$el.offsetTop;\n }\n },\n\n render: function render(h) {\n var imgData = {\n staticClass: 'parallax__image',\n style: this.styles,\n attrs: {\n src: this.src\n },\n ref: 'img'\n };\n\n if (this.alt) imgData.attrs.alt = this.alt;\n\n var container = h('div', {\n staticClass: 'parallax__image-container'\n }, [h('img', imgData)]);\n\n var content = h('div', {\n staticClass: 'parallax__content'\n }, this.$slots.default);\n\n return h('div', {\n staticClass: 'parallax',\n style: {\n height: this.normalizedHeight + 'px'\n },\n on: this.$listeners\n }, [container, content]);\n }\n});\n\n/***/ }),\n/* 208 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 209 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'translatable',\n\n data: function data() {\n return {\n parallax: null,\n parallaxDist: null,\n percentScrolled: null,\n scrollTop: null,\n windowHeight: null,\n windowBottom: null\n };\n },\n\n\n computed: {\n normalizedHeight: function normalizedHeight() {\n if (this.jumbotron) {\n return isNaN(this.height) ? this.height : this.height + 'px';\n }\n\n return Number(this.height.toString().replace(/(^[0-9]*$)/, '$1'));\n },\n imgHeight: function imgHeight() {\n return this.objHeight();\n }\n },\n\n beforeDestroy: function beforeDestroy() {\n window.removeEventListener('scroll', this.translate, false);\n window.removeEventListener('resize', this.translate, false);\n },\n\n\n methods: {\n listeners: function listeners() {\n window.addEventListener('scroll', this.translate, false);\n window.addEventListener('resize', this.translate, false);\n },\n translate: function translate() {\n this.calcDimensions();\n\n this.percentScrolled = (this.windowBottom - this.elOffsetTop) / (this.normalizedHeight + this.windowHeight);\n\n this.parallax = Math.round(this.parallaxDist * this.percentScrolled);\n\n if (this.translated) {\n this.translated();\n }\n },\n calcDimensions: function calcDimensions() {\n var offset = this.$el.getBoundingClientRect();\n\n this.scrollTop = window.pageYOffset;\n this.parallaxDist = this.imgHeight - this.normalizedHeight;\n this.elOffsetTop = offset.top + this.scrollTop;\n this.windowHeight = window.innerHeight;\n this.windowBottom = this.scrollTop + this.windowHeight;\n }\n }\n});\n\n/***/ }),\n/* 210 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VRadioGroup__ = __webpack_require__(211);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VRadio__ = __webpack_require__(213);\n/* unused harmony reexport VRadioGroup */\n/* unused harmony reexport VRadio */\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VRadio__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VRadio__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VRadioGroup__[\"a\" /* default */]);\n\n/***/ }),\n/* 211 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl__ = __webpack_require__(212);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_radio_group_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_registrable__ = __webpack_require__(4);\n// Styles\n\n\n\n\n// Mixins\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-radio-group',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_4__mixins_registrable__[\"b\" /* provide */])('radio')],\n\n model: {\n prop: 'inputValue',\n event: 'change'\n },\n\n provide: function provide() {\n var _this = this;\n\n return {\n isMandatory: function isMandatory() {\n return _this.mandatory;\n },\n name: function name() {\n return _this.name;\n }\n };\n },\n\n\n data: function data() {\n return {\n internalTabIndex: -1,\n radios: []\n };\n },\n\n props: {\n column: {\n type: Boolean,\n default: true\n },\n inputValue: null,\n mandatory: {\n type: Boolean,\n default: true\n },\n name: String,\n row: Boolean\n },\n\n watch: {\n hasError: function hasError(val) {\n for (var index = this.radios.length; --index >= 0;) {\n this.radios[index].parentError = val;\n }\n },\n inputValue: function inputValue(val) {\n for (var index = this.radios.length; --index >= 0;) {\n var radio = this.radios[index];\n radio.isActive = val === radio.value;\n }\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'radio-group': true,\n 'radio-group--column': this.column && !this.row,\n 'radio-group--row': this.row,\n 'error--text': this.hasError\n };\n }\n },\n\n methods: {\n toggleRadio: function toggleRadio(value) {\n var _this2 = this;\n\n if (this.disabled) {\n return;\n }\n\n this.shouldValidate = true;\n this.$emit('change', value);\n this.$nextTick(function () {\n return _this2.validate();\n });\n\n for (var index = this.radios.length; --index >= 0;) {\n var radio = this.radios[index];\n if (radio.value !== value) radio.isActive = false;\n }\n },\n radioBlur: function radioBlur(e) {\n if (!e.relatedTarget || !e.relatedTarget.classList.contains('radio')) {\n this.shouldValidate = true;\n this.$emit('blur', this.inputValue);\n }\n },\n register: function register(radio) {\n radio.isActive = this.inputValue === radio.value;\n radio.$el.tabIndex = radio.$el.tabIndex > 0 ? radio.$el.tabIndex : 0;\n radio.$on('change', this.toggleRadio);\n radio.$on('blur', this.radioBlur);\n radio.$on('focus', this.radioFocus);\n this.radios.push(radio);\n },\n unregister: function unregister(radio) {\n radio.$off('change', this.toggleRadio);\n radio.$off('blur', this.radioBlur);\n radio.$off('focus', this.radioFocus);\n\n var index = this.radios.findIndex(function (r) {\n return r === radio;\n });\n\n if (index > -1) this.radios.splice(index, 1);\n }\n },\n\n render: function render(h) {\n var data = {\n attrs: {\n role: 'radiogroup'\n }\n };\n return this.genInputGroup(this.$slots.default, data);\n }\n});\n\n/***/ }),\n/* 212 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 213 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_tab_focusable__ = __webpack_require__(214);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_registrable__ = __webpack_require__(4);\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n// Components\n\n\n\n// Mixins\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-radio',\n\n inheritAttrs: false,\n\n inject: ['isMandatory', 'name'],\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_6__mixins_registrable__[\"a\" /* inject */])('radio', 'v-radio', 'v-radio-group'), __WEBPACK_IMPORTED_MODULE_4__mixins_tab_focusable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_themeable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n defaultColor: 'accent',\n isActive: false,\n parentError: false\n };\n },\n\n props: {\n disabled: Boolean,\n value: null,\n label: String\n },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'input-group': true,\n 'input-group--active': this.isActive,\n 'input-group--disabled': this.disabled,\n 'input-group--selection-controls': true,\n 'input-group--tab-focused': this.tabFocused,\n 'radio': true,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n\n if (!this.parentError) {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n icon: function icon() {\n return this.isActive ? 'radio_button_checked' : 'radio_button_unchecked';\n }\n },\n\n methods: {\n genInput: function genInput(radio) {\n var value = ['string', 'number'].includes(_typeof(this.value)) ? this.value : JSON.stringify(this.value);\n var input = this.$createElement('input', {\n ref: 'input',\n style: {\n display: 'none'\n },\n attrs: Object.assign({\n name: this.name && this.name(),\n id: this.id,\n type: 'radio',\n value: value\n }, this.$attrs)\n }, [value]);\n\n radio.push(input);\n\n return this.$createElement('div', {\n class: 'input-group__input'\n }, radio);\n },\n genWrapper: function genWrapper(radio) {\n var _this = this;\n\n var children = [];\n\n children.push(this.genLabel());\n children.push(this.genInput(radio));\n\n return this.$createElement('div', {\n class: this.classes,\n attrs: {\n role: 'radio',\n 'aria-checked': this.isActive ? 'true' : 'false',\n 'aria-label': this.label\n },\n on: {\n keydown: function keydown(e) {\n if ([13, 32].includes(e.keyCode)) {\n e.preventDefault();\n _this.toggle();\n }\n },\n blur: function blur(e) {\n _this.$emit('blur', e);\n _this.tabFocused = false;\n }\n }\n }, children);\n },\n genLabel: function genLabel() {\n return this.$createElement('label', {\n on: {\n click: this.toggle\n }\n }, this.$slots.label || this.label);\n },\n toggle: function toggle() {\n var mandatory = !!this.isMandatory && this.isMandatory();\n\n if (!this.disabled && (!this.isActive || !mandatory)) {\n this.$refs.input.checked = true;\n this.isActive = true;\n this.$emit('change', this.value);\n }\n }\n },\n\n mounted: function mounted() {\n this.radio.register(this);\n },\n beforeDestroy: function beforeDestroy() {\n this.radio.unregister(this);\n },\n render: function render(h) {\n var transition = h(__WEBPACK_IMPORTED_MODULE_0__transitions__[\"b\" /* VFadeTransition */], {}, [h(__WEBPACK_IMPORTED_MODULE_1__VIcon__[\"a\" /* default */], {\n staticClass: 'icon--selection-control',\n 'class': {\n 'icon--radio': this.isActive\n },\n key: this.icon,\n on: Object.assign({\n click: this.toggle\n }, this.$listeners)\n }, this.icon)]);\n\n var ripple = this.ripple ? this.genRipple() : null;\n\n return this.genWrapper([transition, ripple]);\n }\n});\n\n/***/ }),\n/* 214 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'tab-focusable',\n\n data: function data() {\n return {\n tabFocused: false\n };\n }\n});\n\n/***/ }),\n/* 215 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSlider__ = __webpack_require__(216);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSlider__[\"a\" /* default */]);\n\n/***/ }),\n/* 216 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl__ = __webpack_require__(217);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_sliders_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util_console__ = __webpack_require__(5);\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-slider',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */]],\n\n directives: { ClickOutside: __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__[\"a\" /* default */] },\n\n data: function data() {\n return {\n app: {},\n defaultColor: 'primary',\n isActive: false,\n keyPressed: 0\n };\n },\n\n\n props: {\n min: {\n type: [Number, String],\n default: 0\n },\n max: {\n type: [Number, String],\n default: 100\n },\n step: {\n type: [Number, String],\n default: 1\n },\n ticks: Boolean,\n thumbColor: {\n type: String,\n default: null\n },\n thumbLabel: Boolean,\n trackColor: {\n type: String,\n default: null\n },\n value: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'input-group--slider': true,\n 'input-group--active': this.isActive,\n 'input-group--dirty': this.inputWidth > 0,\n 'input-group--disabled': this.disabled,\n 'input-group--ticks': !this.disabled && this.stepNumeric && this.ticks\n };\n },\n computedColor: function computedColor() {\n return this.disabled ? null : this.color || this.defaultColor;\n },\n computedTrackColor: function computedTrackColor() {\n return this.disabled ? null : this.trackColor || null;\n },\n computedThumbColor: function computedThumbColor() {\n return this.disabled || !this.inputWidth ? null : this.thumbColor || this.color || this.defaultColor;\n },\n stepNumeric: function stepNumeric() {\n return this.step > 0 ? parseFloat(this.step) : 0;\n },\n\n inputValue: {\n get: function get() {\n return this.value;\n },\n set: function set(val) {\n var min = this.min,\n max = this.max;\n\n val = Math.min(Math.max(val, min), max);\n\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n var value = this.roundValue(val);\n this.lazyValue = value;\n\n if (value !== this.value) {\n this.$emit('input', value);\n }\n }\n },\n interval: function interval() {\n return 100 / (this.max - this.min) * this.stepNumeric;\n },\n thumbStyles: function thumbStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n left: this.inputWidth + '%'\n };\n },\n tickContainerStyles: function tickContainerStyles() {\n return {\n transform: 'translate(0, -50%)'\n };\n },\n trackPadding: function trackPadding() {\n if (this.thumbLabel && this.isActive) return 0;\n\n return 6 + (this.isActive && !this.disabled ? 3 : 0);\n },\n trackStyles: function trackStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n left: 'calc(' + this.inputWidth + '% + ' + this.trackPadding + 'px)',\n width: 'calc(' + (100 - this.inputWidth) + '% - ' + this.trackPadding + 'px)'\n };\n },\n trackFillStyles: function trackFillStyles() {\n return {\n transition: this.keyPressed >= 2 ? 'none' : '',\n width: 'calc(' + this.inputWidth + '% - ' + this.trackPadding + 'px)'\n };\n },\n numTicks: function numTicks() {\n return Math.ceil((this.max - this.min) / this.stepNumeric);\n },\n inputWidth: function inputWidth() {\n return (this.roundValue(this.inputValue) - this.min) / (this.max - this.min) * 100;\n }\n },\n\n watch: {\n isActive: function isActive(val) {\n this.isFocused = val;\n },\n min: function min(val) {\n val > this.inputValue && this.$emit('input', parseFloat(val));\n },\n max: function max(val) {\n val < this.inputValue && this.$emit('input', parseFloat(val));\n },\n value: function value(val) {\n this.inputValue = parseFloat(val);\n }\n },\n\n mounted: function mounted() {\n this.inputValue = this.value;\n\n // Without a v-app, iOS does not work with body selectors\n this.app = document.querySelector('[data-app]') || Object(__WEBPACK_IMPORTED_MODULE_6__util_console__[\"b\" /* consoleWarn */])('Missing v-app or a non-body wrapping element with the [data-app] attribute', this);\n },\n\n\n methods: {\n onMouseDown: function onMouseDown(e) {\n this.keyPressed = 2;\n var options = { passive: true };\n this.isActive = true;\n\n if ('touches' in e) {\n this.app.addEventListener('touchmove', this.onMouseMove, options);\n Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"a\" /* addOnceEventListener */])(this.app, 'touchend', this.onMouseUp);\n } else {\n this.app.addEventListener('mousemove', this.onMouseMove, options);\n Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"a\" /* addOnceEventListener */])(this.app, 'mouseup', this.onMouseUp);\n }\n },\n onMouseUp: function onMouseUp() {\n this.keyPressed = 0;\n var options = { passive: true };\n this.isActive = false;\n this.app.removeEventListener('touchmove', this.onMouseMove, options);\n this.app.removeEventListener('mousemove', this.onMouseMove, options);\n },\n onMouseMove: function onMouseMove(e) {\n var _$refs$track$getBound = this.$refs.track.getBoundingClientRect(),\n offsetLeft = _$refs$track$getBound.left,\n trackWidth = _$refs$track$getBound.width;\n\n var clientX = 'touches' in e ? e.touches[0].clientX : e.clientX;\n var left = Math.min(Math.max((clientX - offsetLeft) / trackWidth, 0), 1);\n\n if (clientX >= offsetLeft - 8 && clientX <= offsetLeft + trackWidth + 8) {\n this.inputValue = parseFloat(this.min) + left * (this.max - this.min);\n }\n },\n onKeyDown: function onKeyDown(e) {\n if (this.disabled || ![33, 34, 35, 36, 37, 39].includes(e.keyCode)) return;\n\n e.preventDefault();\n var step = this.stepNumeric || 1;\n var steps = (this.max - this.min) / step;\n if (e.keyCode === 37 || e.keyCode === 39) {\n // Left/right\n this.keyPressed += 1;\n\n var direction = e.keyCode === 37 ? -1 : 1;\n var multiplier = e.shiftKey ? 3 : e.ctrlKey ? 2 : 1;\n\n this.inputValue = this.inputValue + direction * step * multiplier;\n } else if (e.keyCode === 36) {\n // Home\n this.inputValue = parseFloat(this.min);\n } else if (e.keyCode === 35) {\n // End\n this.inputValue = parseFloat(this.max);\n } else /* if (e.keyCode === 33 || e.keyCode === 34) */{\n // Page up/down\n var _direction = e.keyCode === 34 ? -1 : 1;\n this.inputValue = this.inputValue - _direction * step * (steps > 100 ? steps / 10 : 10);\n }\n },\n onKeyUp: function onKeyUp(e) {\n this.keyPressed = 0;\n },\n sliderMove: function sliderMove(e) {\n if (!this.isActive) {\n this.onMouseMove(e);\n }\n },\n genThumbLabel: function genThumbLabel(h) {\n return h(__WEBPACK_IMPORTED_MODULE_5__transitions__[\"c\" /* VScaleTransition */], {\n props: { origin: 'bottom center' }\n }, [h('div', {\n staticClass: 'slider__thumb--label__container',\n directives: [{\n name: 'show',\n value: this.isActive\n }]\n }, [h('div', {\n staticClass: 'slider__thumb--label',\n 'class': this.addBackgroundColorClassChecks({}, this.computedThumbColor)\n }, [h('span', {}, this.inputValue)])])]);\n },\n roundValue: function roundValue(value) {\n if (!this.stepNumeric) {\n return value;\n }\n\n // Format input value using the same number\n // of decimals places as in the step prop\n var trimmedStep = this.step.toString().trim();\n var decimals = trimmedStep.indexOf('.') > -1 ? trimmedStep.length - trimmedStep.indexOf('.') - 1 : 0;\n return 1 * (Math.round(value / this.stepNumeric) * this.stepNumeric).toFixed(decimals);\n },\n genThumbContainer: function genThumbContainer(h) {\n var children = [];\n children.push(h('div', {\n staticClass: 'slider__thumb',\n 'class': this.addBackgroundColorClassChecks({}, this.computedThumbColor)\n }));\n\n this.thumbLabel && children.push(this.genThumbLabel(h));\n\n return h('div', {\n staticClass: 'slider__thumb-container',\n 'class': {\n 'slider__thumb-container--label': this.thumbLabel\n },\n style: this.thumbStyles,\n on: {\n touchstart: this.onMouseDown,\n mousedown: this.onMouseDown\n },\n ref: 'thumb'\n }, children);\n },\n genSteps: function genSteps(h) {\n var _this = this;\n\n var ticks = Object(__WEBPACK_IMPORTED_MODULE_1__util_helpers__[\"d\" /* createRange */])(this.numTicks + 1).map(function (i) {\n var span = h('span', {\n key: i,\n staticClass: 'slider__tick',\n style: {\n left: i * (100 / _this.numTicks) + '%'\n }\n });\n\n return span;\n });\n\n return h('div', {\n staticClass: 'slider__ticks-container',\n style: this.tickContainerStyles\n }, ticks);\n },\n genTrackContainer: function genTrackContainer(h) {\n var children = [h('div', {\n staticClass: 'slider__track',\n 'class': this.addBackgroundColorClassChecks({}, this.computedTrackColor),\n style: this.trackStyles\n }), h('div', {\n staticClass: 'slider__track-fill',\n 'class': this.addBackgroundColorClassChecks(),\n style: this.trackFillStyles\n })];\n\n return h('div', {\n staticClass: 'slider__track__container',\n ref: 'track'\n }, children);\n }\n },\n\n render: function render(h) {\n var _this2 = this;\n\n var children = [];\n\n children.push(this.genTrackContainer(h));\n this.step && this.ticks && children.push(this.genSteps(h));\n children.push(this.genThumbContainer(h));\n\n var slider = h('div', {\n staticClass: 'slider'\n }, children);\n\n return this.genInputGroup([slider], {\n attrs: {\n role: 'slider',\n tabindex: this.disabled ? -1 : this.tabindex\n },\n on: Object.assign({}, {\n mouseup: this.sliderMove,\n keydown: this.onKeyDown,\n keyup: this.onKeyUp\n }, this.$listeners),\n directives: [{\n name: 'click-outside',\n value: function value() {\n return _this2.isActive = false;\n }\n }]\n });\n }\n});\n\n/***/ }),\n/* 217 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 218 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSnackbar__ = __webpack_require__(219);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSnackbar__[\"a\" /* default */]);\n\n/***/ }),\n/* 219 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl__ = __webpack_require__(220);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_snackbars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_positionable__ = __webpack_require__(12);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-snackbar',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_toggleable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_3__mixins_positionable__[\"b\" /* factory */])(['absolute', 'top', 'bottom', 'left', 'right'])],\n\n data: function data() {\n return {\n activeTimeout: {}\n };\n },\n\n\n props: {\n autoHeight: Boolean,\n multiLine: Boolean,\n // TODO: change this to closeDelay to match other API in delayable.js\n timeout: {\n type: Number,\n default: 6000\n },\n vertical: Boolean\n },\n\n computed: {\n classes: function classes() {\n return {\n 'snack--active': this.isActive,\n 'snack--absolute': this.absolute,\n 'snack--auto-height': this.autoHeight,\n 'snack--bottom': this.bottom || !this.top,\n 'snack--left': this.left,\n 'snack--multi-line': this.multiLine && !this.vertical,\n 'snack--right': this.right,\n 'snack--top': this.top,\n 'snack--vertical': this.vertical\n };\n }\n },\n\n watch: {\n isActive: function isActive() {\n this.setTimeout();\n }\n },\n\n methods: {\n setTimeout: function (_setTimeout) {\n function setTimeout() {\n return _setTimeout.apply(this, arguments);\n }\n\n setTimeout.toString = function () {\n return _setTimeout.toString();\n };\n\n return setTimeout;\n }(function () {\n var _this = this;\n\n clearTimeout(this.activeTimeout);\n\n if (this.isActive && this.timeout) {\n this.activeTimeout = setTimeout(function () {\n _this.isActive = false;\n }, this.timeout);\n }\n })\n },\n\n mounted: function mounted() {\n this.setTimeout();\n },\n render: function render(h) {\n var children = [];\n\n if (this.isActive) {\n children.push(h('div', {\n staticClass: 'snack',\n class: this.classes,\n on: this.$listeners\n }, [h('div', {\n staticClass: 'snack__wrapper',\n class: this.addBackgroundColorClassChecks()\n }, [h('div', {\n staticClass: 'snack__content'\n }, this.$slots.default)])]));\n }\n\n return h('transition', {\n attrs: { name: 'snack-transition' }\n }, children);\n }\n});\n\n/***/ }),\n/* 220 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 221 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSpeedDial__ = __webpack_require__(222);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSpeedDial__[\"a\" /* default */]);\n\n/***/ }),\n/* 222 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl__ = __webpack_require__(223);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_speed_dial_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_toggleable__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_positionable__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_transitionable__ = __webpack_require__(24);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__ = __webpack_require__(8);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-speed-dial',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_positionable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_toggleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_transitionable__[\"a\" /* default */]],\n\n directives: { ClickOutside: __WEBPACK_IMPORTED_MODULE_4__directives_click_outside__[\"a\" /* default */] },\n\n props: {\n direction: {\n type: String,\n default: 'top',\n validator: function validator(val) {\n return ['top', 'right', 'bottom', 'left'].includes(val);\n }\n },\n openOnHover: Boolean,\n transition: {\n type: String,\n default: 'scale-transition'\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'speed-dial': true,\n 'speed-dial--top': this.top,\n 'speed-dial--right': this.right,\n 'speed-dial--bottom': this.bottom,\n 'speed-dial--left': this.left,\n 'speed-dial--absolute': this.absolute,\n 'speed-dial--fixed': this.fixed\n }, 'speed-dial--direction-' + this.direction, true);\n }\n },\n\n render: function render(h) {\n var _this = this;\n\n var children = [];\n var data = {\n 'class': this.classes,\n directives: [{\n name: 'click-outside',\n value: function value() {\n return _this.isActive = false;\n }\n }],\n on: {\n click: function click() {\n return _this.isActive = !_this.isActive;\n }\n }\n };\n\n if (this.openOnHover) {\n data.on.mouseenter = function () {\n return _this.isActive = true;\n };\n data.on.mouseleave = function () {\n return _this.isActive = false;\n };\n }\n\n if (this.isActive) {\n children = (this.$slots.default || []).map(function (b, i) {\n b.key = i;\n\n return b;\n });\n }\n\n var list = h('transition-group', {\n 'class': 'speed-dial__list',\n props: {\n name: this.transition,\n mode: this.mode,\n origin: this.origin,\n tag: 'div'\n }\n }, children);\n\n return h('div', data, [this.$slots.activator, list]);\n }\n});\n\n/***/ }),\n/* 223 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 224 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VStepperHeader */\n/* unused harmony export VStepperItems */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VStepper__ = __webpack_require__(225);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VStepperStep__ = __webpack_require__(227);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VStepperContent__ = __webpack_require__(228);\n/* unused harmony reexport VStepper */\n/* unused harmony reexport VStepperContent */\n/* unused harmony reexport VStepperStep */\n\n\n\n\n\nvar VStepperHeader = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('stepper__header');\nvar VStepperItems = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('stepper__items');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VStepperContent__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VStepperContent__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VStepperStep__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VStepperStep__[\"a\" /* default */]);\n Vue.component(VStepperHeader.name, VStepperHeader);\n Vue.component(VStepperItems.name, VStepperItems);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VStepper__[\"a\" /* default */]);\n\n/***/ }),\n/* 225 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl__ = __webpack_require__(226);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_steppers_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_themeable__[\"a\" /* default */]],\n\n provide: function provide() {\n return {\n stepClick: this.stepClick\n };\n },\n data: function data() {\n return {\n inputValue: null,\n isBooted: false,\n steps: [],\n content: [],\n isReverse: false\n };\n },\n\n\n props: {\n nonLinear: Boolean,\n altLabels: Boolean,\n vertical: Boolean,\n value: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper': true,\n 'stepper--is-booted': this.isBooted,\n 'stepper--vertical': this.vertical,\n 'stepper--alt-labels': this.altLabels,\n 'stepper--non-linear': this.nonLinear,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n };\n }\n },\n\n watch: {\n inputValue: function inputValue(val, prev) {\n this.isReverse = Number(val) < Number(prev);\n for (var index = this.steps.length; --index >= 0;) {\n this.steps[index].toggle(this.inputValue);\n }\n for (var _index = this.content.length; --_index >= 0;) {\n this.content[_index].toggle(this.inputValue, this.isReverse);\n }\n\n this.$emit('input', this.inputValue);\n prev && (this.isBooted = true);\n },\n value: function value() {\n var _this = this;\n\n this.getSteps();\n this.$nextTick(function () {\n return _this.inputValue = _this.value;\n });\n }\n },\n\n mounted: function mounted() {\n this.getSteps();\n\n this.inputValue = this.value || this.steps[0].step || 1;\n },\n\n\n methods: {\n getSteps: function getSteps() {\n this.steps = [];\n this.content = [];\n for (var index = 0; index < this.$children.length; index++) {\n var child = this.$children[index];\n // TODO: use the component name instead of tag\n if (child.$options._componentTag === 'v-stepper-step') {\n this.steps.push(child);\n } else if (child.$options._componentTag === 'v-stepper-content') {\n child.isVertical = this.vertical;\n this.content.push(child);\n }\n }\n },\n stepClick: function stepClick(step) {\n var _this2 = this;\n\n this.getSteps();\n this.$nextTick(function () {\n return _this2.inputValue = step;\n });\n }\n },\n\n render: function render(h) {\n return h('div', {\n 'class': this.classes\n }, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 226 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 227 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VIcon__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__directives_ripple__ = __webpack_require__(17);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper-step',\n\n directives: { Ripple: __WEBPACK_IMPORTED_MODULE_1__directives_ripple__[\"a\" /* default */] },\n\n inject: ['stepClick'],\n\n data: function data() {\n return {\n isActive: false,\n isInactive: true\n };\n },\n\n\n props: {\n complete: Boolean,\n completeIcon: {\n type: String,\n default: 'check'\n },\n editIcon: {\n type: String,\n default: 'edit'\n },\n errorIcon: {\n type: String,\n default: 'warning'\n },\n editable: Boolean,\n rules: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n step: [Number, String]\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper__step': true,\n 'stepper__step--active': this.isActive,\n 'stepper__step--editable': this.editable,\n 'stepper__step--inactive': this.isInactive,\n 'stepper__step--error': this.hasError,\n 'stepper__step--complete': this.complete,\n 'error--text': this.hasError\n };\n },\n hasError: function hasError() {\n return this.rules.some(function (i) {\n return i() !== true;\n });\n }\n },\n\n methods: {\n click: function click(e) {\n e.stopPropagation();\n\n if (this.editable) {\n this.stepClick(this.step);\n }\n },\n toggle: function toggle(step) {\n this.isActive = step.toString() === this.step.toString();\n this.isInactive = Number(step) < Number(this.step);\n }\n },\n\n render: function render(h) {\n var data = {\n 'class': this.classes,\n directives: [{\n name: 'ripple',\n value: this.editable\n }],\n on: { click: this.click }\n };\n var stepContent = void 0;\n\n if (this.hasError) {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.errorIcon)];\n } else if (this.complete) {\n if (this.editable) {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.editIcon)];\n } else {\n stepContent = [h(__WEBPACK_IMPORTED_MODULE_0__VIcon__[\"a\" /* default */], {}, this.completeIcon)];\n }\n } else {\n stepContent = this.step;\n }\n\n var step = h('span', {\n staticClass: 'stepper__step__step',\n 'class': {\n 'primary': !this.hasError && (this.complete || this.isActive)\n }\n }, stepContent);\n\n var label = h('div', {\n staticClass: 'stepper__label'\n }, this.$slots.default);\n\n return h('div', data, [step, label]);\n }\n});\n\n/***/ }),\n/* 228 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transitions__ = __webpack_require__(7);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-stepper-content',\n\n data: function data() {\n return {\n height: 0,\n // Must be null to allow\n // previous comparison\n isActive: null,\n isReverse: false,\n isVertical: false\n };\n },\n\n\n props: {\n step: {\n type: [Number, String],\n required: true\n }\n },\n\n computed: {\n classes: function classes() {\n return {\n 'stepper__content': true\n };\n },\n computedTransition: function computedTransition() {\n return this.isReverse ? __WEBPACK_IMPORTED_MODULE_0__transitions__[\"e\" /* VTabReverseTransition */] : __WEBPACK_IMPORTED_MODULE_0__transitions__[\"f\" /* VTabTransition */];\n },\n styles: function styles() {\n if (!this.isVertical) return {};\n\n return {\n height: !isNaN(this.height) ? this.height + 'px' : this.height\n };\n },\n wrapperClasses: function wrapperClasses() {\n return {\n 'stepper__wrapper': true\n };\n }\n },\n\n watch: {\n isActive: function isActive(current, previous) {\n // If active and the previous state\n // was null, is just booting up\n if (current && previous == null) {\n return this.height = 'auto';\n }\n\n if (!this.isVertical) return;\n\n if (this.isActive) this.enter();else this.leave();\n }\n },\n\n mounted: function mounted() {\n this.$refs.wrapper.addEventListener('transitionend', this.onTransition, false);\n },\n beforeDestroy: function beforeDestroy() {\n this.$refs.wrapper.removeEventListener('transitionend', this.onTransition, false);\n },\n\n\n methods: {\n onTransition: function onTransition(e) {\n if (!this.isActive || e.propertyName !== 'height') return;\n\n this.height = 'auto';\n },\n enter: function enter() {\n var _this = this;\n\n var scrollHeight = 0;\n\n // Render bug with height\n requestAnimationFrame(function () {\n scrollHeight = _this.$refs.wrapper.scrollHeight;\n });\n\n this.height = 0;\n\n // Give the collapsing element time to collapse\n setTimeout(function () {\n return _this.height = scrollHeight || 'auto';\n }, 450);\n },\n leave: function leave() {\n var _this2 = this;\n\n this.height = this.$refs.wrapper.clientHeight;\n setTimeout(function () {\n return _this2.height = 0;\n }, 10);\n },\n toggle: function toggle(step, reverse) {\n this.isActive = step.toString() === this.step.toString();\n this.isReverse = reverse;\n }\n },\n\n render: function render(h) {\n var contentData = {\n 'class': this.classes\n };\n var wrapperData = {\n 'class': this.wrapperClasses,\n style: this.styles,\n ref: 'wrapper'\n };\n\n if (!this.isVertical) {\n contentData.directives = [{\n name: 'show',\n value: this.isActive\n }];\n }\n\n var wrapper = h('div', wrapperData, [this.$slots.default]);\n var content = h('div', contentData, [wrapper]);\n\n return h(this.computedTransition, {\n on: this.$listeners\n }, [content]);\n }\n});\n\n/***/ }),\n/* 229 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSwitch__ = __webpack_require__(230);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSwitch__[\"a\" /* default */]);\n\n/***/ }),\n/* 230 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_selection_controls_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl__ = __webpack_require__(231);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__stylus_components_switch_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_selectable__ = __webpack_require__(42);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_touch__ = __webpack_require__(9);\n\n\n\n\n// Mixins\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-switch',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_3__mixins_rippleable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_selectable__[\"a\" /* default */]],\n\n directives: { Touch: __WEBPACK_IMPORTED_MODULE_5__directives_touch__[\"a\" /* default */] },\n\n computed: {\n classes: function classes() {\n var classes = {\n 'input-group--selection-controls switch': true\n };\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n rippleClasses: function rippleClasses() {\n return {\n 'input-group--selection-controls__ripple': true,\n 'input-group--selection-controls__ripple--active': this.isActive\n };\n },\n containerClasses: function containerClasses() {\n return {\n 'input-group--selection-controls__container': true,\n 'input-group--selection-controls__container--light': this.light,\n 'input-group--selection-controls__container--disabled': this.disabled\n };\n },\n toggleClasses: function toggleClasses() {\n return {\n 'input-group--selection-controls__toggle': true,\n 'input-group--selection-controls__toggle--active': this.isActive\n };\n }\n },\n\n methods: {\n onSwipeLeft: function onSwipeLeft() {\n if (this.isActive) this.toggle();\n },\n onSwipeRight: function onSwipeRight() {\n if (!this.isActive) this.toggle();\n }\n },\n\n render: function render(h) {\n var container = h('div', {\n 'class': this.containerClasses\n }, [h('div', { 'class': this.toggleClasses }), this.genRipple({\n directives: [{\n name: 'touch',\n value: {\n left: this.onSwipeLeft,\n right: this.onSwipeRight\n }\n }]\n })]);\n\n return this.genInputGroup([container]);\n }\n});\n\n/***/ }),\n/* 231 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 232 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VSystemBar__ = __webpack_require__(233);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VSystemBar__[\"a\" /* default */]);\n\n/***/ }),\n/* 233 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl__ = __webpack_require__(234);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_system_bars_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-system-bar',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('bar', ['height', 'window']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n props: {\n height: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n lightsOut: Boolean,\n status: Boolean,\n window: Boolean\n },\n\n computed: {\n classes: function classes() {\n return this.addBackgroundColorClassChecks(Object.assign({\n 'system-bar--lights-out': this.lightsOut,\n 'system-bar--absolute': this.absolute,\n 'system-bar--fixed': !this.absolute && (this.app || this.fixed),\n 'system-bar--status': this.status,\n 'system-bar--window': this.window\n }, this.themeClasses));\n },\n computedHeight: function computedHeight() {\n if (this.height) return parseInt(this.height);\n\n return this.window ? 32 : 24;\n }\n },\n\n methods: {\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return this.computedHeight;\n }\n },\n\n render: function render(h) {\n var data = {\n staticClass: 'system-bar',\n 'class': this.classes,\n style: {\n height: this.computedHeight + 'px'\n }\n };\n\n return h('div', data, this.$slots.default);\n }\n});\n\n/***/ }),\n/* 234 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 235 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTabs__ = __webpack_require__(236);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTab__ = __webpack_require__(243);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VTabsItems__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__VTabItem__ = __webpack_require__(244);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VTabsSlider__ = __webpack_require__(68);\n/* unused harmony reexport VTabs */\n/* unused harmony reexport VTabItem */\n/* unused harmony reexport VTab */\n/* unused harmony reexport VTabsItems */\n/* unused harmony reexport VTabsSlider */\n\n\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VTab__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VTab__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VTabsItems__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VTabsItems__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_3__VTabItem__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_3__VTabItem__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_4__VTabsSlider__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_4__VTabsSlider__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTabs__[\"a\" /* default */]);\n\n/***/ }),\n/* 236 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl__ = __webpack_require__(237);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tabs_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_tabs_computed__ = __webpack_require__(238);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_tabs_generators__ = __webpack_require__(239);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_tabs_props__ = __webpack_require__(240);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_tabs_touch__ = __webpack_require__(241);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_tabs_watchers__ = __webpack_require__(242);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__directives_resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__directives_touch__ = __webpack_require__(9);\n// Styles\n\n\n// Component level mixins\n\n\n\n\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tabs',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_9__mixins_registrable__[\"b\" /* provide */])('tabs'), __WEBPACK_IMPORTED_MODULE_6__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_7__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_1__mixins_tabs_computed__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_tabs_props__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_tabs_generators__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_tabs_touch__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_tabs_watchers__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_8__mixins_themeable__[\"a\" /* default */]],\n\n directives: {\n Resize: __WEBPACK_IMPORTED_MODULE_10__directives_resize__[\"a\" /* default */],\n Touch: __WEBPACK_IMPORTED_MODULE_11__directives_touch__[\"a\" /* default */]\n },\n\n provide: function provide() {\n return {\n tabClick: this.tabClick,\n tabProxy: this.tabProxy,\n registerItems: this.registerItems,\n unregisterItems: this.unregisterItems\n };\n },\n data: function data() {\n return {\n bar: [],\n content: [],\n isBooted: false,\n isOverflowing: false,\n lazyValue: this.value,\n nextIconVisible: false,\n prevIconVisible: false,\n resizeTimeout: null,\n reverse: false,\n scrollOffset: 0,\n sliderWidth: null,\n sliderLeft: null,\n startX: 0,\n tabsContainer: null,\n tabs: [],\n tabItems: null,\n transitionTime: 300,\n widths: {\n bar: 0,\n container: 0,\n wrapper: 0\n }\n };\n },\n\n\n watch: {\n tabs: 'onResize'\n },\n\n mounted: function mounted() {\n this.checkIcons();\n },\n\n\n methods: {\n checkIcons: function checkIcons() {\n this.prevIconVisible = this.checkPrevIcon();\n this.nextIconVisible = this.checkNextIcon();\n },\n checkPrevIcon: function checkPrevIcon() {\n return this.scrollOffset > 0;\n },\n checkNextIcon: function checkNextIcon() {\n // Check one scroll ahead to know the width of right-most item\n return this.widths.container > this.scrollOffset + this.widths.wrapper;\n },\n callSlider: function callSlider() {\n var _this = this;\n\n if (this.hideSlider || !this.activeTab) return false;\n\n // Give screen time to paint\n var action = (this.activeTab || {}).action;\n var activeTab = action === this.activeTab ? this.activeTab : this.tabs.find(function (tab) {\n return tab.action === action;\n });\n\n this.$nextTick(function () {\n if (!activeTab || !activeTab.$el) return;\n _this.sliderWidth = activeTab.$el.scrollWidth;\n _this.sliderLeft = activeTab.$el.offsetLeft;\n });\n },\n\n /**\n * When v-navigation-drawer changes the\n * width of the container, call resize\n * after the transition is complete\n */\n onResize: function onResize() {\n var _this2 = this;\n\n if (this._isDestroyed) return;\n\n this.setWidths();\n\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = setTimeout(function () {\n _this2.callSlider();\n _this2.scrollIntoView();\n _this2.checkIcons();\n }, this.transitionTime);\n },\n overflowCheck: function overflowCheck(e, fn) {\n this.isOverflowing && fn(e);\n },\n scrollTo: function scrollTo(direction) {\n this.scrollOffset = this.newOffset(direction);\n },\n setOverflow: function setOverflow() {\n this.isOverflowing = this.widths.bar < this.widths.container;\n },\n setWidths: function setWidths() {\n var bar = this.$refs.bar ? this.$refs.bar.clientWidth : 0;\n var container = this.$refs.container ? this.$refs.container.clientWidth : 0;\n var wrapper = this.$refs.wrapper ? this.$refs.wrapper.clientWidth : 0;\n\n this.widths = { bar: bar, container: container, wrapper: wrapper };\n\n this.setOverflow();\n },\n findActiveLink: function findActiveLink() {\n var _this3 = this;\n\n if (!this.tabs.length || this.lazyValue) return;\n\n var activeIndex = this.tabs.findIndex(function (tabItem, index) {\n var id = tabItem.action === tabItem ? index.toString() : tabItem.action;\n return id === _this3.lazyValue || tabItem.$el.firstChild.className.indexOf(_this3.activeClass) > -1;\n });\n\n var index = activeIndex > -1 ? activeIndex : 0;\n var tab = this.tabs[index];\n\n /* istanbul ignore next */\n // There is not a reliable way to test\n this.inputValue = tab.action === tab ? index : tab.action;\n },\n parseNodes: function parseNodes() {\n var item = [];\n var items = [];\n var slider = [];\n var tab = [];\n var length = (this.$slots.default || []).length;\n\n for (var i = 0; i < length; i++) {\n var vnode = this.$slots.default[i];\n\n if (vnode.componentOptions) {\n switch (vnode.componentOptions.Ctor.options.name) {\n case 'v-tabs-slider':\n slider.push(vnode);\n break;\n case 'v-tabs-items':\n items.push(vnode);\n break;\n case 'v-tab-item':\n item.push(vnode);\n break;\n // case 'v-tab' - intentionally omitted\n default:\n tab.push(vnode);\n }\n } else {\n tab.push(vnode);\n }\n }\n\n return { tab: tab, slider: slider, items: items, item: item };\n },\n register: function register(options) {\n this.tabs.push(options);\n },\n scrollIntoView: function scrollIntoView() {\n if (!this.activeTab) return;\n if (!this.isOverflowing) return this.scrollOffset = 0;\n\n var totalWidth = this.widths.wrapper + this.scrollOffset;\n var _activeTab$$el = this.activeTab.$el,\n clientWidth = _activeTab$$el.clientWidth,\n offsetLeft = _activeTab$$el.offsetLeft;\n\n var itemOffset = clientWidth + offsetLeft;\n var additionalOffset = clientWidth * 0.3;\n\n /* istanbul ignore else */\n if (offsetLeft < this.scrollOffset) {\n this.scrollOffset = Math.max(offsetLeft - additionalOffset, 0);\n } else if (totalWidth < itemOffset) {\n this.scrollOffset -= totalWidth - itemOffset - additionalOffset;\n }\n },\n tabClick: function tabClick(tab) {\n this.inputValue = tab.action === tab ? this.tabs.indexOf(tab) : tab.action;\n this.scrollIntoView();\n },\n tabProxy: function tabProxy(val) {\n this.lazyValue = val;\n },\n registerItems: function registerItems(fn) {\n this.tabItems = fn;\n },\n unregisterItems: function unregisterItems() {\n this.tabItems = null;\n },\n unregister: function unregister(tab) {\n this.tabs = this.tabs.filter(function (o) {\n return o !== tab;\n });\n },\n updateTabs: function updateTabs() {\n for (var index = this.tabs.length; --index >= 0;) {\n this.tabs[index].toggle(this.target);\n }\n\n this.setOverflow();\n }\n },\n\n render: function render(h) {\n var _parseNodes = this.parseNodes(),\n tab = _parseNodes.tab,\n slider = _parseNodes.slider,\n items = _parseNodes.items,\n item = _parseNodes.item;\n\n return h('div', {\n staticClass: 'tabs',\n directives: [{\n name: 'resize',\n arg: 400,\n modifiers: { quiet: true },\n value: this.onResize\n }]\n }, [this.genBar([this.hideSlider ? null : this.genSlider(slider), tab]), this.genItems(items, item)]);\n }\n});\n\n/***/ }),\n/* 237 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 238 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs computed\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n computed: {\n activeIndex: function activeIndex() {\n var _this = this;\n\n return this.tabs.findIndex(function (tab, index) {\n var id = tab.action === tab ? index.toString() : tab.action;\n return id === _this.lazyValue;\n });\n },\n activeTab: function activeTab() {\n if (!this.tabs.length) return undefined;\n\n return this.tabs[this.activeIndex];\n },\n containerStyles: function containerStyles() {\n return this.height ? {\n height: parseInt(this.height, 10) + 'px'\n } : null;\n },\n hasArrows: function hasArrows() {\n return (this.showArrows || !this.isMobile) && this.isOverflowing;\n },\n\n inputValue: {\n get: function get() {\n return this.lazyValue;\n },\n set: function set(val) {\n // Always use strings\n val = val.toString();\n\n this.lazyValue = val;\n this.$emit('input', val);\n }\n },\n isMobile: function isMobile() {\n return this.$vuetify.breakpoint.width < this.mobileBreakPoint;\n },\n sliderStyles: function sliderStyles() {\n return {\n left: this.sliderLeft + 'px',\n transition: this.sliderLeft != null ? null : 'none',\n width: this.sliderWidth + 'px'\n };\n },\n target: function target() {\n return this.activeTab ? this.activeTab.action : null;\n }\n }\n});\n\n/***/ }),\n/* 239 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTabsItems__ = __webpack_require__(67);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTabsSlider__ = __webpack_require__(68);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VIcon__ = __webpack_require__(3);\n\n\n\n\n/**\n * Tabs generators\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n genBar: function genBar(items) {\n return this.$createElement('div', {\n staticClass: 'tabs__bar',\n 'class': this.addBackgroundColorClassChecks({\n 'theme--dark': this.dark,\n 'theme--light': this.light\n }),\n ref: 'bar'\n }, [this.genTransition('prev'), this.genWrapper(this.genContainer(items)), this.genTransition('next')]);\n },\n genContainer: function genContainer(items) {\n return this.$createElement('div', {\n staticClass: 'tabs__container',\n class: {\n 'tabs__container--align-with-title': this.alignWithTitle,\n 'tabs__container--centered': this.centered,\n 'tabs__container--fixed-tabs': this.fixedTabs,\n 'tabs__container--grow': this.grow,\n 'tabs__container--icons-and-text': this.iconsAndText,\n 'tabs__container--overflow': this.isOverflowing,\n 'tabs__container--right': this.right\n },\n style: this.containerStyles,\n ref: 'container'\n }, items);\n },\n genIcon: function genIcon(direction) {\n var _this = this;\n\n if (!this.hasArrows || !this[direction + 'IconVisible']) return null;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_2__VIcon__[\"a\" /* default */], {\n staticClass: 'tabs__icon tabs__icon--' + direction,\n props: {\n disabled: !this[direction + 'IconVisible']\n },\n on: {\n click: function click() {\n return _this.scrollTo(direction);\n }\n }\n }, this[direction + 'Icon']);\n },\n genItems: function genItems(items, item) {\n if (items.length > 0) return items;\n if (!item.length) return null;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VTabsItems__[\"a\" /* default */], item);\n },\n genTransition: function genTransition(direction) {\n return this.$createElement('transition', {\n props: { name: 'fade-transition' }\n }, [this.genIcon(direction)]);\n },\n genWrapper: function genWrapper(items) {\n var _this2 = this;\n\n return this.$createElement('div', {\n staticClass: 'tabs__wrapper',\n class: {\n 'tabs__wrapper--show-arrows': this.hasArrows\n },\n ref: 'wrapper',\n directives: [{\n name: 'touch',\n value: {\n start: function start(e) {\n return _this2.overflowCheck(e, _this2.onTouchStart);\n },\n move: function move(e) {\n return _this2.overflowCheck(e, _this2.onTouchMove);\n },\n end: function end(e) {\n return _this2.overflowCheck(e, _this2.onTouchEnd);\n }\n }\n }]\n }, [items]);\n },\n genSlider: function genSlider(items) {\n if (!items.length) {\n items = [this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VTabsSlider__[\"a\" /* default */], {\n props: { color: this.sliderColor }\n })];\n }\n\n return this.$createElement('div', {\n staticClass: 'tabs__slider-wrapper',\n style: this.sliderStyles\n }, items);\n }\n }\n});\n\n/***/ }),\n/* 240 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs props\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n props: {\n alignWithTitle: Boolean,\n centered: Boolean,\n fixedTabs: Boolean,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: undefined,\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n hideSlider: Boolean,\n iconsAndText: Boolean,\n mobileBreakPoint: {\n type: [Number, String],\n default: 1264,\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n nextIcon: {\n type: String,\n default: 'chevron_right'\n },\n prevIcon: {\n type: String,\n default: 'chevron_left'\n },\n right: Boolean,\n showArrows: Boolean,\n sliderColor: {\n type: String,\n default: 'accent'\n },\n value: [Number, String]\n }\n});\n\n/***/ }),\n/* 241 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs touch\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n methods: {\n newOffset: function newOffset(direction) {\n var clientWidth = this.$refs.wrapper.clientWidth;\n\n if (direction === 'prev') {\n return Math.max(this.scrollOffset - clientWidth, 0);\n } else {\n return Math.min(this.scrollOffset + clientWidth, this.$refs.container.clientWidth - clientWidth);\n }\n },\n onTouchStart: function onTouchStart(e) {\n this.startX = this.scrollOffset + e.touchstartX;\n this.$refs.container.style.transition = 'none';\n this.$refs.container.style.willChange = 'transform';\n },\n onTouchMove: function onTouchMove(e) {\n this.scrollOffset = this.startX - e.touchmoveX;\n },\n onTouchEnd: function onTouchEnd() {\n var container = this.$refs.container;\n var wrapper = this.$refs.wrapper;\n var maxScrollOffset = container.clientWidth - wrapper.clientWidth;\n container.style.transition = null;\n container.style.willChange = null;\n\n /* istanbul ignore else */\n if (this.scrollOffset < 0 || !this.isOverflowing) {\n this.scrollOffset = 0;\n } else if (this.scrollOffset >= maxScrollOffset) {\n this.scrollOffset = maxScrollOffset;\n }\n }\n }\n});\n\n/***/ }),\n/* 242 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/**\n * Tabs watchers\n *\n * @mixin\n */\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n watch: {\n activeTab: function activeTab(tab, prev) {\n !prev && tab && this.updateTabs();\n\n setTimeout(this.callSlider, 0);\n\n if (!tab) return;\n\n var action = tab.action;\n this.tabItems && this.tabItems(action === tab ? this.tabs.indexOf(tab).toString() : action);\n },\n\n alignWithTitle: 'callSlider',\n centered: 'callSlider',\n fixedTabs: 'callSlider',\n hasArrows: function hasArrows(val) {\n if (!val) this.scrollOffset = 0;\n },\n\n isBooted: 'findActiveLink',\n lazyValue: 'updateTabs',\n right: 'callSlider',\n value: function value(val) {\n this.lazyValue = val;\n },\n\n '$vuetify.application.left': 'onResize',\n '$vuetify.application.right': 'onResize',\n scrollOffset: function scrollOffset(val) {\n this.$refs.container.style.transform = 'translateX(' + -val + 'px)';\n if (this.hasArrows) {\n this.prevIconVisible = this.checkPrevIcon();\n this.nextIconVisible = this.checkNextIcon();\n }\n }\n }\n});\n\n/***/ }),\n/* 243 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_routable__ = __webpack_require__(13);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_helpers__ = __webpack_require__(2);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Mixins\n\n\n\n// Utilities\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tab',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_registrable__[\"a\" /* inject */])('tabs', 'v-tab', 'v-tabs'), __WEBPACK_IMPORTED_MODULE_0__mixins_routable__[\"a\" /* default */]],\n\n inject: ['tabClick'],\n\n data: function data() {\n return {\n isActive: false\n };\n },\n\n\n props: {\n activeClass: {\n type: String,\n default: 'tabs__item--active'\n },\n ripple: {\n type: [Boolean, Object],\n default: true\n }\n },\n\n computed: {\n classes: function classes() {\n return _defineProperty({\n 'tabs__item': true,\n 'tabs__item--disabled': this.disabled\n }, this.activeClass, !this.to && this.isActive);\n },\n action: function action() {\n var to = this.to || this.href;\n\n if (this.$router && this.to === Object(this.to)) {\n var resolve = this.$router.resolve(this.to, this.$route, this.append);\n\n to = resolve.href;\n }\n\n return typeof to === 'string' ? to.replace('#', '') : this;\n }\n },\n\n watch: {\n $route: 'onRouteChange'\n },\n\n mounted: function mounted() {\n this.tabs.register(this);\n this.onRouteChange();\n },\n beforeDestroy: function beforeDestroy() {\n this.tabs.unregister(this);\n },\n\n\n methods: {\n click: function click(e) {\n // If user provides an\n // actual link, do not\n // prevent default\n if (this.href && this.href.indexOf('#') > -1) e.preventDefault();\n\n this.$emit('click', e);\n\n this.to || this.tabClick(this);\n },\n onRouteChange: function onRouteChange() {\n var _this = this;\n\n if (!this.to || !this.$refs.link) return;\n\n var path = '_vnode.data.class.' + this.activeClass;\n\n this.$nextTick(function () {\n if (Object(__WEBPACK_IMPORTED_MODULE_2__util_helpers__[\"i\" /* getObjectValueByPath */])(_this.$refs.link, path)) {\n _this.tabClick(_this);\n }\n });\n },\n toggle: function toggle(action) {\n this.isActive = action === this || action === this.action;\n }\n },\n\n render: function render(h) {\n var link = this.generateRouteLink();\n var data = link.data;\n\n // If disabled, use div as anchor tags do not support\n // being disabled\n\n var tag = this.disabled ? 'div' : link.tag;\n\n data.ref = 'link';\n\n return h('div', {\n staticClass: 'tabs__div'\n }, [h(tag, data, this.$slots.default)]);\n }\n});\n\n/***/ }),\n/* 244 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__mixins_bootable__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__transitions__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_registrable__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__directives_touch__ = __webpack_require__(9);\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tab-item',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_0__mixins_bootable__[\"a\" /* default */], Object(__WEBPACK_IMPORTED_MODULE_2__mixins_registrable__[\"a\" /* inject */])('tabs', 'v-tab-item', 'v-tabs-items')],\n\n components: {\n VTabTransition: __WEBPACK_IMPORTED_MODULE_1__transitions__[\"f\" /* VTabTransition */],\n VTabReverseTransition: __WEBPACK_IMPORTED_MODULE_1__transitions__[\"e\" /* VTabReverseTransition */]\n },\n\n directives: {\n Touch: __WEBPACK_IMPORTED_MODULE_3__directives_touch__[\"a\" /* default */]\n },\n\n data: function data() {\n return {\n isActive: false,\n reverse: false\n };\n },\n\n\n props: {\n id: String,\n transition: {\n type: [Boolean, String],\n default: 'tab-transition'\n },\n reverseTransition: {\n type: [Boolean, String],\n default: 'tab-reverse-transition'\n }\n },\n\n computed: {\n computedTransition: function computedTransition() {\n return this.reverse ? this.reverseTransition : this.transition;\n }\n },\n\n methods: {\n toggle: function toggle(target, reverse, showTransition, index) {\n this.$el.style.transition = !showTransition ? 'none' : null;\n this.reverse = reverse;\n this.isActive = (this.id || index.toString()) === target;\n }\n },\n\n mounted: function mounted() {\n this.tabs.register(this);\n },\n beforeDestroy: function beforeDestroy() {\n this.tabs.unregister(this);\n },\n render: function render(h) {\n var data = {\n staticClass: 'tabs__content',\n directives: [{\n name: 'show',\n value: this.isActive\n }],\n domProps: { id: this.id },\n on: this.$listeners\n };\n\n var div = h('div', data, this.showLazyContent(this.$slots.default));\n\n if (!this.computedTransition) return div;\n\n return h('transition', {\n props: { name: this.computedTransition }\n }, [div]);\n }\n});\n\n/***/ }),\n/* 245 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTextField__ = __webpack_require__(246);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTextField__[\"a\" /* default */]);\n\n/***/ }),\n/* 246 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__ = __webpack_require__(18);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_input_groups_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__stylus_components_text_fields_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_input__ = __webpack_require__(19);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_maskable__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_soloable__ = __webpack_require__(51);\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// Styles\n\n\n\n// Mixins\n\n\n\n\n\nvar dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month'];\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-text-field',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_input__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_maskable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_soloable__[\"a\" /* default */]],\n\n inheritAttrs: false,\n\n data: function data() {\n return {\n initialValue: null,\n inputHeight: null,\n internalChange: false,\n badInput: false\n };\n },\n\n\n props: {\n autofocus: Boolean,\n autoGrow: Boolean,\n box: Boolean,\n clearable: Boolean,\n color: {\n type: String,\n default: 'primary'\n },\n counter: [Boolean, Number, String],\n fullWidth: Boolean,\n multiLine: Boolean,\n noResize: Boolean,\n placeholder: String,\n prefix: String,\n rowHeight: {\n type: [Number, String],\n default: 24,\n validator: function validator(v) {\n return !isNaN(parseFloat(v));\n }\n },\n rows: {\n type: [Number, String],\n default: 5,\n validator: function validator(v) {\n return !isNaN(parseInt(v, 10));\n }\n },\n singleLine: Boolean,\n suffix: String,\n textarea: Boolean,\n type: {\n type: String,\n default: 'text'\n }\n },\n\n computed: {\n classes: function classes() {\n var classes = _extends({}, this.genSoloClasses(), {\n 'input-group--text-field': true,\n 'input-group--text-field-box': this.box,\n 'input-group--single-line': this.singleLine || this.isSolo,\n 'input-group--multi-line': this.multiLine,\n 'input-group--full-width': this.fullWidth,\n 'input-group--no-resize': this.noResizeHandle,\n 'input-group--prefix': this.prefix,\n 'input-group--suffix': this.suffix,\n 'input-group--textarea': this.textarea\n });\n\n if (this.hasError) {\n classes['error--text'] = true;\n } else {\n return this.addTextColorClassChecks(classes);\n }\n\n return classes;\n },\n count: function count() {\n var inputLength = void 0;\n if (this.inputValue) inputLength = this.inputValue.toString().length;else inputLength = 0;\n\n return inputLength + ' / ' + this.counterLength;\n },\n counterLength: function counterLength() {\n var parsedLength = parseInt(this.counter, 10);\n return isNaN(parsedLength) ? 25 : parsedLength;\n },\n\n inputValue: {\n get: function get() {\n return this.lazyValue;\n },\n set: function set(val) {\n if (this.mask) {\n this.lazyValue = this.unmaskText(this.maskText(this.unmaskText(val)));\n this.setSelectionRange();\n } else {\n this.lazyValue = val;\n this.$emit('input', this.lazyValue);\n }\n }\n },\n isDirty: function isDirty() {\n return this.lazyValue != null && this.lazyValue.toString().length > 0 || this.badInput || dirtyTypes.includes(this.type);\n },\n isTextarea: function isTextarea() {\n return this.multiLine || this.textarea;\n },\n noResizeHandle: function noResizeHandle() {\n return this.isTextarea && (this.noResize || this.shouldAutoGrow);\n },\n shouldAutoGrow: function shouldAutoGrow() {\n return this.isTextarea && this.autoGrow;\n }\n },\n\n watch: {\n isFocused: function isFocused(val) {\n if (val) {\n this.initialValue = this.lazyValue;\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue);\n }\n },\n value: function value(val) {\n var _this = this;\n\n if (this.mask && !this.internalChange) {\n var masked = this.maskText(this.unmaskText(val));\n this.lazyValue = this.unmaskText(masked);\n\n // Emit when the externally set value was modified internally\n String(val) !== this.lazyValue && this.$nextTick(function () {\n _this.$refs.input.value = masked;\n _this.$emit('input', _this.lazyValue);\n });\n } else this.lazyValue = val;\n\n if (this.internalChange) this.internalChange = false;\n\n !this.validateOnBlur && this.validate();\n this.shouldAutoGrow && this.calculateInputHeight();\n }\n },\n\n mounted: function mounted() {\n this.shouldAutoGrow && this.calculateInputHeight();\n this.autofocus && this.focus();\n },\n\n\n methods: {\n calculateInputHeight: function calculateInputHeight() {\n var _this2 = this;\n\n this.inputHeight = null;\n\n this.$nextTick(function () {\n var height = _this2.$refs.input ? _this2.$refs.input.scrollHeight : 0;\n var minHeight = parseInt(_this2.rows, 10) * parseFloat(_this2.rowHeight);\n _this2.inputHeight = Math.max(minHeight, height);\n });\n },\n onInput: function onInput(e) {\n this.mask && this.resetSelections(e.target);\n this.inputValue = e.target.value;\n this.badInput = e.target.validity && e.target.validity.badInput;\n this.shouldAutoGrow && this.calculateInputHeight();\n },\n blur: function blur(e) {\n var _this3 = this;\n\n this.isFocused = false;\n // Reset internalChange state\n // to allow external change\n // to persist\n this.internalChange = false;\n\n this.$nextTick(function () {\n _this3.validate();\n });\n this.$emit('blur', e);\n },\n focus: function focus(e) {\n if (!this.$refs.input) return;\n\n this.isFocused = true;\n if (document.activeElement !== this.$refs.input) {\n this.$refs.input.focus();\n }\n this.$emit('focus', e);\n },\n keyDown: function keyDown(e) {\n // Prevents closing of a\n // dialog when pressing\n // enter\n if (this.isTextarea && this.isFocused && e.keyCode === 13) {\n e.stopPropagation();\n }\n\n this.internalChange = true;\n },\n genCounter: function genCounter() {\n return this.$createElement('div', {\n 'class': {\n 'input-group__counter': true,\n 'input-group__counter--error': this.hasError\n }\n }, this.count);\n },\n genInput: function genInput() {\n var tag = this.isTextarea ? 'textarea' : 'input';\n var listeners = Object.assign({}, this.$listeners);\n delete listeners['change']; // Change should not be bound externally\n\n var data = {\n style: {},\n domProps: {\n value: this.maskText(this.lazyValue)\n },\n attrs: _extends({}, this.$attrs, {\n autofocus: this.autofocus,\n disabled: this.disabled,\n required: this.required,\n readonly: this.readonly,\n tabindex: this.tabindex,\n 'aria-label': (!this.$attrs || !this.$attrs.id) && this.label // Label `for` will be set if we have an id\n }),\n on: Object.assign(listeners, {\n blur: this.blur,\n input: this.onInput,\n focus: this.focus,\n keydown: this.keyDown\n }),\n ref: 'input'\n };\n\n if (this.shouldAutoGrow) {\n data.style.height = this.inputHeight && this.inputHeight + 'px';\n }\n\n if (this.placeholder) data.attrs.placeholder = this.placeholder;\n\n if (!this.isTextarea) {\n data.attrs.type = this.type;\n } else {\n data.attrs.rows = this.rows;\n }\n\n if (this.mask) {\n data.attrs.maxlength = this.masked.length;\n }\n\n var children = [this.$createElement(tag, data)];\n\n this.prefix && children.unshift(this.genFix('prefix'));\n this.suffix && children.push(this.genFix('suffix'));\n\n return children;\n },\n genFix: function genFix(type) {\n return this.$createElement('span', {\n 'class': 'input-group--text-field__' + type\n }, this[type]);\n },\n clearableCallback: function clearableCallback() {\n var _this4 = this;\n\n this.inputValue = null;\n this.$nextTick(function () {\n return _this4.$refs.input.focus();\n });\n }\n },\n\n render: function render() {\n return this.genInputGroup(this.genInput(), { attrs: { tabindex: false } });\n }\n});\n\n/***/ }),\n/* 247 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTimePicker__ = __webpack_require__(248);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__ = __webpack_require__(69);\n/* unused harmony reexport VTimePicker */\n/* unused harmony reexport VTimePickerClock */\n/* unused harmony reexport VTimePickerTitle */\n\n\n\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */]);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VTimePickerTitle__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTimePicker__[\"a\" /* default */]);\n\n/***/ }),\n/* 248 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTimePickerTitle__ = __webpack_require__(69);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__ = __webpack_require__(70);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_picker__ = __webpack_require__(65);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__ = __webpack_require__(22);\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\n// Components\n\n\n\n// Mixins\n\n\n// Utils\n\n\n\nvar rangeHours24 = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(24);\nvar rangeHours12am = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(12);\nvar rangeHours12pm = rangeHours12am.map(function (v) {\n return v + 12;\n});\nvar rangeMinutes = Object(__WEBPACK_IMPORTED_MODULE_3__util_helpers__[\"d\" /* createRange */])(60);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-time-picker',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_2__mixins_picker__[\"a\" /* default */]],\n\n data: function data() {\n return {\n inputHour: null,\n inputMinute: null,\n period: 'am',\n selectingHour: true\n };\n },\n\n\n props: {\n allowedHours: Function,\n allowedMinutes: Function,\n format: {\n type: String,\n default: 'ampm',\n validator: function validator(val) {\n return ['ampm', '24hr'].includes(val);\n }\n },\n min: String,\n max: String,\n scrollable: Boolean,\n value: null\n },\n\n computed: {\n isAllowedHourCb: function isAllowedHourCb() {\n var _this = this;\n\n if (!this.min && !this.max) return this.allowedHours;\n\n var minHour = this.min ? this.min.split(':')[0] : 0;\n var maxHour = this.max ? this.max.split(':')[0] : 23;\n\n return function (val) {\n return val >= minHour * 1 && val <= maxHour * 1 && (!_this.allowedHours || _this.allowedHours(val));\n };\n },\n isAllowedMinuteCb: function isAllowedMinuteCb() {\n var _this2 = this;\n\n var isHourAllowed = !this.allowedHours || this.allowedHours(this.inputHour);\n if (!this.min && !this.max) {\n return isHourAllowed ? this.allowedMinutes : function () {\n return false;\n };\n }\n\n var _ref = this.min ? this.min.split(':') : [0, 0],\n _ref2 = _slicedToArray(_ref, 2),\n minHour = _ref2[0],\n minMinute = _ref2[1];\n\n var _ref3 = this.max ? this.max.split(':') : [23, 59],\n _ref4 = _slicedToArray(_ref3, 2),\n maxHour = _ref4[0],\n maxMinute = _ref4[1];\n\n var minTime = minHour * 60 + minMinute * 1;\n var maxTime = maxHour * 60 + maxMinute * 1;\n\n return function (val) {\n var time = 60 * _this2.inputHour + val;\n return time >= minTime && time <= maxTime && isHourAllowed && (!_this2.allowedMinutes || _this2.allowedMinutes(val));\n };\n },\n isAmPm: function isAmPm() {\n return this.format === 'ampm';\n }\n },\n\n watch: {\n value: 'setInputData'\n },\n\n methods: {\n emitValue: function emitValue() {\n if (this.inputHour != null && this.inputMinute != null) {\n this.$emit('input', Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(this.inputHour) + ':' + Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(this.inputMinute));\n }\n },\n setPeriod: function setPeriod(period) {\n this.period = period;\n if (this.inputHour != null) {\n var newHour = this.inputHour + (period === 'am' ? -12 : 12);\n this.inputHour = this.firstAllowed('hour', newHour);\n this.emitValue();\n }\n },\n setInputData: function setInputData(value) {\n if (value == null) {\n this.inputHour = null;\n this.inputMinute = null;\n return;\n }\n\n if (value instanceof Date) {\n this.inputHour = value.getHours();\n this.inputMinute = value.getMinutes();\n } else {\n var _ref5 = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:\\d+)?([ap]m)?$/, '') || [],\n _ref6 = _slicedToArray(_ref5, 5),\n hour = _ref6[1],\n minute = _ref6[2],\n period = _ref6[4];\n\n this.inputHour = period ? this.convert12to24(parseInt(hour, 10), period) : parseInt(hour, 10);\n this.inputMinute = parseInt(minute, 10);\n }\n\n this.period = this.inputHour < 12 ? 'am' : 'pm';\n },\n convert24to12: function convert24to12(hour) {\n return hour ? (hour - 1) % 12 + 1 : 12;\n },\n convert12to24: function convert12to24(hour, period) {\n return hour % 12 + (period === 'pm' ? 12 : 0);\n },\n onInput: function onInput(value) {\n if (this.selectingHour) {\n this.inputHour = this.isAmPm ? this.convert12to24(value, this.period) : value;\n } else {\n this.inputMinute = value;\n }\n this.emitValue();\n },\n onChange: function onChange() {\n if (!this.selectingHour) {\n this.$emit('change', this.value);\n }\n\n this.selectingHour = !this.selectingHour;\n },\n firstAllowed: function firstAllowed(type, value) {\n var allowedFn = type === 'hour' ? this.isAllowedHourCb : this.isAllowedMinuteCb;\n if (!allowedFn) return value;\n\n // TODO: clean up\n var range = type === 'minute' ? rangeMinutes : this.isAmPm ? value < 12 ? rangeHours12am : rangeHours12pm : rangeHours24;\n var first = range.find(function (v) {\n return allowedFn((v + value) % range.length + range[0]);\n });\n return ((first || 0) + value) % range.length + range[0];\n },\n genClock: function genClock() {\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_1__VTimePickerClock__[\"a\" /* default */], {\n props: {\n allowedValues: this.selectingHour ? this.isAllowedHourCb : this.isAllowedMinuteCb,\n color: this.color,\n dark: this.dark,\n double: this.selectingHour && !this.isAmPm,\n format: this.selectingHour ? this.isAmPm ? this.convert24to12 : function (val) {\n return val;\n } : function (val) {\n return Object(__WEBPACK_IMPORTED_MODULE_4__VDatePicker_util_pad__[\"a\" /* default */])(val, 2);\n },\n max: this.selectingHour ? this.isAmPm && this.period === 'am' ? 11 : 23 : 59,\n min: this.selectingHour && this.isAmPm && this.period === 'pm' ? 12 : 0,\n scrollable: this.scrollable,\n size: this.width - (!this.fullWidth && this.landscape ? 80 : 20),\n step: this.selectingHour ? 1 : 5,\n value: this.selectingHour ? this.inputHour : this.inputMinute\n },\n on: {\n input: this.onInput,\n change: this.onChange\n },\n ref: 'clock'\n });\n },\n genPickerBody: function genPickerBody() {\n return this.$createElement('div', {\n staticClass: 'time-picker-clock__container',\n style: {\n width: this.width + 'px',\n height: this.width - (!this.fullWidth && this.landscape ? 60 : 0) + 'px'\n },\n key: this.selectingHour\n }, [this.genClock()]);\n },\n genPickerTitle: function genPickerTitle() {\n var _this3 = this;\n\n return this.$createElement(__WEBPACK_IMPORTED_MODULE_0__VTimePickerTitle__[\"a\" /* default */], {\n props: {\n ampm: this.isAmPm,\n hour: this.inputHour,\n minute: this.inputMinute,\n period: this.period,\n selectingHour: this.selectingHour\n },\n on: {\n 'update:selectingHour': function updateSelectingHour(value) {\n return _this3.selectingHour = value;\n },\n 'update:period': this.setPeriod\n },\n ref: 'title',\n slot: 'title'\n });\n }\n },\n\n mounted: function mounted() {\n this.setInputData(this.value);\n },\n render: function render(h) {\n return this.genPicker('picker--time');\n }\n});\n\n/***/ }),\n/* 249 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 250 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 251 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export VToolbarTitle */\n/* unused harmony export VToolbarItems */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_helpers__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__VToolbar__ = __webpack_require__(252);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__ = __webpack_require__(254);\n/* unused harmony reexport VToolbar */\n/* unused harmony reexport VToolbarSideIcon */\n\n\n\n\n\nvar VToolbarTitle = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('toolbar__title');\nvar VToolbarItems = Object(__WEBPACK_IMPORTED_MODULE_0__util_helpers__[\"e\" /* createSimpleFunctional */])('toolbar__items');\n\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */]);\n Vue.component(VToolbarItems.name, VToolbarItems);\n Vue.component(VToolbarTitle.name, VToolbarTitle);\n Vue.component(__WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_2__VToolbarSideIcon__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_1__VToolbar__[\"a\" /* default */]);\n\n/***/ }),\n/* 252 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl__ = __webpack_require__(253);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_toolbar_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_ssr_bootable__ = __webpack_require__(23);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__directives_scroll__ = __webpack_require__(71);\n// Styles\n\n\n// Mixins\n\n\n\n\n\n// Directives\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-toolbar',\n\n mixins: [Object(__WEBPACK_IMPORTED_MODULE_1__mixins_applicationable__[\"a\" /* default */])('top', ['clippedLeft', 'clippedRight', 'computedHeight', 'invertedScroll', 'manualScroll']), __WEBPACK_IMPORTED_MODULE_2__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_ssr_bootable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_themeable__[\"a\" /* default */]],\n\n directives: { Scroll: __WEBPACK_IMPORTED_MODULE_5__directives_scroll__[\"a\" /* default */] },\n\n data: function data() {\n return {\n activeTimeout: null,\n currentScroll: 0,\n heights: {\n mobileLandscape: 48,\n mobile: 56,\n desktop: 64,\n dense: 48\n },\n isActive: true,\n isExtended: false,\n isScrollingUp: false,\n previousScroll: null,\n previousScrollDirection: null,\n savedScroll: 0,\n target: null\n };\n },\n\n props: {\n card: Boolean,\n clippedLeft: Boolean,\n clippedRight: Boolean,\n dense: Boolean,\n extended: Boolean,\n extensionHeight: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n flat: Boolean,\n floating: Boolean,\n height: {\n type: [Number, String],\n validator: function validator(v) {\n return !isNaN(parseInt(v));\n }\n },\n invertedScroll: Boolean,\n manualScroll: Boolean,\n prominent: Boolean,\n scrollOffScreen: Boolean,\n scrollTarget: String,\n scrollThreshold: {\n type: Number,\n default: 300\n },\n tabs: Boolean\n },\n\n computed: {\n computedContentHeight: function computedContentHeight() {\n if (this.height) return parseInt(this.height);\n if (this.dense) return this.heights.dense;\n\n if (this.prominent || this.$vuetify.breakpoint.mdAndUp) return this.heights.desktop;\n\n if (this.$vuetify.breakpoint.width > this.$vuetify.breakpoint.height) return this.heights.mobileLandscape;\n\n return this.heights.mobile;\n },\n computedExtensionHeight: function computedExtensionHeight() {\n if (this.tabs) return 48;\n if (this.extensionHeight) return parseInt(this.extensionHeight);\n\n return this.computedContentHeight;\n },\n computedHeight: function computedHeight() {\n if (!this.isExtended) return this.computedContentHeight;\n\n return this.computedContentHeight + this.computedExtensionHeight;\n },\n computedMarginTop: function computedMarginTop() {\n if (!this.app) return 0;\n\n return this.$vuetify.application.bar;\n },\n classes: function classes() {\n return this.addBackgroundColorClassChecks({\n 'toolbar': true,\n 'elevation-0': this.flat || !this.isActive && !this.tabs,\n 'toolbar--absolute': this.absolute,\n 'toolbar--card': this.card,\n 'toolbar--clipped': this.clippedLeft || this.clippedRight,\n 'toolbar--dense': this.dense,\n 'toolbar--extended': this.isExtended,\n 'toolbar--fixed': !this.absolute && (this.app || this.fixed),\n 'toolbar--floating': this.floating,\n 'toolbar--prominent': this.prominent,\n 'theme--dark': this.dark,\n 'theme--light': this.light\n });\n },\n computedPaddingLeft: function computedPaddingLeft() {\n if (!this.app || this.clippedLeft) return 0;\n\n return this.$vuetify.application.left;\n },\n computedPaddingRight: function computedPaddingRight() {\n if (!this.app || this.clippedRight) return 0;\n\n return this.$vuetify.application.right;\n },\n computedTransform: function computedTransform() {\n return !this.isActive ? -this.computedHeight : 0;\n },\n currentThreshold: function currentThreshold() {\n return Math.abs(this.currentScroll - this.savedScroll);\n },\n styles: function styles() {\n return {\n marginTop: this.computedMarginTop + 'px',\n paddingRight: this.computedPaddingRight + 'px',\n paddingLeft: this.computedPaddingLeft + 'px',\n transform: 'translateY(' + this.computedTransform + 'px)'\n };\n }\n },\n\n watch: {\n currentThreshold: function currentThreshold(val) {\n if (this.invertedScroll) {\n return this.isActive = this.currentScroll > this.scrollThreshold;\n }\n\n if (val < this.scrollThreshold || !this.isBooted) return;\n\n this.isActive = this.isScrollingUp;\n this.savedScroll = this.currentScroll;\n },\n isActive: function isActive() {\n this.savedScroll = 0;\n },\n invertedScroll: function invertedScroll(val) {\n this.isActive = !val;\n },\n manualScroll: function manualScroll(val) {\n this.isActive = !val;\n },\n isScrollingUp: function isScrollingUp(val) {\n this.savedScroll = this.savedScroll || this.currentScroll;\n }\n },\n\n created: function created() {\n if (this.invertedScroll || this.manualScroll) this.isActive = false;\n },\n mounted: function mounted() {\n if (this.scrollTarget) {\n this.target = document.querySelector(this.scrollTarget);\n }\n },\n\n\n methods: {\n onScroll: function onScroll() {\n if (!this.scrollOffScreen || this.manualScroll || typeof window === 'undefined') return;\n\n var target = this.target || window;\n\n this.currentScroll = this.scrollTarget ? target.scrollTop : target.pageYOffset || document.documentElement.scrollTop;\n\n this.isScrollingUp = this.currentScroll < this.previousScroll;\n\n this.previousScroll = this.currentScroll;\n },\n\n /**\n * Update the application layout\n *\n * @return {number}\n */\n updateApplication: function updateApplication() {\n return this.invertedScroll || this.manualScroll ? 0 : this.computedHeight;\n }\n },\n\n render: function render(h) {\n this.isExtended = this.extended || !!this.$slots.extension;\n\n var children = [];\n var data = {\n 'class': this.classes,\n style: this.styles,\n on: this.$listeners\n };\n\n data.directives = [{\n arg: this.scrollTarget,\n name: 'scroll',\n value: this.onScroll\n }];\n\n children.push(h('div', {\n staticClass: 'toolbar__content',\n style: { height: this.computedContentHeight + 'px' },\n ref: 'content'\n }, this.$slots.default));\n\n if (this.isExtended) {\n children.push(h('div', {\n staticClass: 'toolbar__extension',\n style: { height: this.computedExtensionHeight + 'px' }\n }, this.$slots.extension));\n }\n\n return h('nav', data, children);\n }\n});\n\n/***/ }),\n/* 253 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 254 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_VBtn__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_VIcon__ = __webpack_require__(3);\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-toolbar-side-icon',\n\n functional: true,\n\n render: function render(h, _ref) {\n var slots = _ref.slots,\n listeners = _ref.listeners,\n props = _ref.props,\n data = _ref.data;\n\n var classes = data.staticClass ? data.staticClass + ' toolbar__side-icon' : 'toolbar__side-icon';\n\n var d = Object.assign(data, {\n staticClass: classes,\n props: Object.assign(props, {\n icon: true\n }),\n on: listeners\n });\n\n var defaultSlot = slots().default;\n\n return h(__WEBPACK_IMPORTED_MODULE_0__components_VBtn__[\"a\" /* default */], d, defaultSlot || [h(__WEBPACK_IMPORTED_MODULE_1__components_VIcon__[\"a\" /* default */], 'menu')]);\n }\n});\n\n/***/ }),\n/* 255 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__VTooltip__ = __webpack_require__(256);\n\n\n/* istanbul ignore next */\n__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */].install = function install(Vue) {\n Vue.component(__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */]);\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (__WEBPACK_IMPORTED_MODULE_0__VTooltip__[\"a\" /* default */]);\n\n/***/ }),\n/* 256 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl__ = __webpack_require__(257);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__stylus_components_tooltips_styl__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mixins_colorable__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__mixins_delayable__ = __webpack_require__(53);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__mixins_dependent__ = __webpack_require__(20);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__mixins_detachable__ = __webpack_require__(25);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__mixins_menuable__ = __webpack_require__(54);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__ = __webpack_require__(6);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n// Mixins\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n name: 'v-tooltip',\n\n mixins: [__WEBPACK_IMPORTED_MODULE_1__mixins_colorable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_2__mixins_delayable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_3__mixins_dependent__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_4__mixins_detachable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_5__mixins_menuable__[\"a\" /* default */], __WEBPACK_IMPORTED_MODULE_6__mixins_toggleable__[\"a\" /* default */]],\n\n data: function data() {\n return {\n calculatedMinWidth: 0,\n closeDependents: false\n };\n },\n\n props: {\n debounce: {\n type: [Number, String],\n default: 0\n },\n disabled: Boolean,\n fixed: {\n type: Boolean,\n default: true\n },\n openDelay: {\n type: [Number, String],\n default: 200\n },\n tag: {\n type: String,\n default: 'span'\n },\n transition: String,\n zIndex: {\n default: null\n }\n },\n\n computed: {\n calculatedLeft: function calculatedLeft() {\n var _dimensions = this.dimensions,\n activator = _dimensions.activator,\n content = _dimensions.content;\n\n var unknown = !this.bottom && !this.left && !this.top && !this.right;\n var left = 0;\n\n if (this.top || this.bottom || unknown) {\n left = activator.left + activator.width / 2 - content.width / 2;\n } else if (this.left || this.right) {\n left = activator.left + (this.right ? activator.width : -content.width) + (this.right ? 10 : -10);\n }\n\n return this.calcXOverflow(left) + 'px';\n },\n calculatedTop: function calculatedTop() {\n var _dimensions2 = this.dimensions,\n activator = _dimensions2.activator,\n content = _dimensions2.content;\n\n var top = 0;\n\n if (this.top || this.bottom) {\n top = activator.top + (this.bottom ? activator.height : -content.height) + (this.bottom ? 10 : -10);\n } else if (this.left || this.right) {\n top = activator.top + activator.height / 2 - content.height / 2;\n }\n\n return this.calcYOverflow(top + this.pageYOffset) + 'px';\n },\n classes: function classes() {\n return {\n 'tooltip--top': this.top,\n 'tooltip--right': this.right,\n 'tooltip--bottom': this.bottom,\n 'tooltip--left': this.left\n };\n },\n computedTransition: function computedTransition() {\n if (this.transition) return this.transition;\n if (this.top) return 'slide-y-reverse-transition';\n if (this.right) return 'slide-x-transition';\n if (this.bottom) return 'slide-y-transition';\n if (this.left) return 'slide-x-reverse-transition';\n },\n offsetY: function offsetY() {\n return this.top || this.bottom;\n },\n offsetX: function offsetX() {\n return this.left || this.right;\n },\n styles: function styles() {\n return {\n left: this.calculatedLeft,\n maxWidth: isNaN(this.maxWidth) ? this.maxWidth : this.maxWidth + 'px',\n opacity: this.isActive ? 0.9 : 0,\n top: this.calculatedTop,\n zIndex: this.zIndex || this.activeZIndex\n };\n }\n },\n\n methods: {\n activate: function activate() {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions();\n // Start the transition\n requestAnimationFrame(this.startTransition);\n }\n },\n\n mounted: function mounted() {\n this.value && this.callActivate();\n },\n render: function render(h) {\n var _addBackgroundColorCl,\n _this = this;\n\n var tooltip = h('div', {\n staticClass: 'tooltip__content',\n 'class': this.addBackgroundColorClassChecks((_addBackgroundColorCl = {}, _defineProperty(_addBackgroundColorCl, this.contentClass, true), _defineProperty(_addBackgroundColorCl, 'menuable__content__active', this.isActive), _addBackgroundColorCl)),\n style: this.styles,\n attrs: this.attrs,\n directives: [{\n name: 'show',\n value: this.isContentActive\n }],\n ref: 'content'\n }, this.$slots.default);\n\n return h(this.tag, {\n staticClass: 'tooltip',\n 'class': this.classes\n }, [h('transition', {\n props: {\n name: this.computedTransition\n }\n }, [tooltip]), h('span', {\n on: this.disabled ? {} : {\n mouseenter: function mouseenter() {\n _this.runDelay('open', function () {\n return _this.isActive = true;\n });\n },\n mouseleave: function mouseleave() {\n _this.runDelay('close', function () {\n return _this.isActive = false;\n });\n }\n },\n ref: 'activator'\n }, this.$slots.activator)]);\n }\n});\n\n/***/ }),\n/* 257 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 258 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (immutable) */ __webpack_exports__[\"default\"] = install;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__click_outside__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__resize__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__ripple__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__scroll__ = __webpack_require__(71);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__touch__ = __webpack_require__(9);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"ClickOutside\", function() { return __WEBPACK_IMPORTED_MODULE_0__click_outside__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Ripple\", function() { return __WEBPACK_IMPORTED_MODULE_2__ripple__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Resize\", function() { return __WEBPACK_IMPORTED_MODULE_1__resize__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Scroll\", function() { return __WEBPACK_IMPORTED_MODULE_3__scroll__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"Touch\", function() { return __WEBPACK_IMPORTED_MODULE_4__touch__[\"a\"]; });\n\n\n\n\n\n\n\n\nfunction install(Vue) {\n Vue.directive('click-outside', __WEBPACK_IMPORTED_MODULE_0__click_outside__[\"a\" /* default */]);\n Vue.directive('ripple', __WEBPACK_IMPORTED_MODULE_2__ripple__[\"a\" /* default */]);\n Vue.directive('resize', __WEBPACK_IMPORTED_MODULE_1__resize__[\"a\" /* default */]);\n Vue.directive('scroll', __WEBPACK_IMPORTED_MODULE_3__scroll__[\"a\" /* default */]);\n Vue.directive('touch', __WEBPACK_IMPORTED_MODULE_4__touch__[\"a\" /* default */]);\n}\n\n/***/ })\n/******/ ])[\"default\"];\n});\n//# sourceMappingURL=vuetify.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanM/ZGM0OCJdLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KCk7XG5cdGVsc2UgaWYodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKVxuXHRcdGRlZmluZShbXSwgZmFjdG9yeSk7XG5cdGVsc2UgaWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnKVxuXHRcdGV4cG9ydHNbXCJWdWV0aWZ5XCJdID0gZmFjdG9yeSgpO1xuXHRlbHNlXG5cdFx0cm9vdFtcIlZ1ZXRpZnlcIl0gPSBmYWN0b3J5KCk7XG59KSh0eXBlb2Ygc2VsZiAhPT0gJ3VuZGVmaW5lZCcgPyBzZWxmIDogdGhpcywgZnVuY3Rpb24oKSB7XG5yZXR1cm4gLyoqKioqKi8gKGZ1bmN0aW9uKG1vZHVsZXMpIHsgLy8gd2VicGFja0Jvb3RzdHJhcFxuLyoqKioqKi8gXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuLyoqKioqKi8gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG4vKioqKioqL1xuLyoqKioqKi8gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuLyoqKioqKi8gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4vKioqKioqLyBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbi8qKioqKiovIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4vKioqKioqLyBcdFx0XHRpOiBtb2R1bGVJZCxcbi8qKioqKiovIFx0XHRcdGw6IGZhbHNlLFxuLyoqKioqKi8gXHRcdFx0ZXhwb3J0czoge31cbi8qKioqKiovIFx0XHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbi8qKioqKiovIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuLyoqKioqKi8gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcbi8qKioqKiovXG4vKioqKioqLyBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbi8qKioqKiovIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4vKioqKioqLyBcdH1cbi8qKioqKiovXG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbi8qKioqKiovIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4vKioqKioqLyBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwge1xuLyoqKioqKi8gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuLyoqKioqKi8gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuLyoqKioqKi8gXHRcdFx0XHRnZXQ6IGdldHRlclxuLyoqKioqKi8gXHRcdFx0fSk7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHR9O1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbi8qKioqKiovIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4vKioqKioqLyBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4vKioqKioqLyBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuLyoqKioqKi8gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbi8qKioqKiovIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4vKioqKioqLyBcdFx0cmV0dXJuIGdldHRlcjtcbi8qKioqKiovIFx0fTtcbi8qKioqKiovXG4vKioqKioqLyBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG4vKioqKioqL1xuLyoqKioqKi8gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuLyoqKioqKi8gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIi9kaXN0L1wiO1xuLyoqKioqKi9cbi8qKioqKiovIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4vKioqKioqLyBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDcyKTtcbi8qKioqKiovIH0pXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gKFtcbi8qIDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnY29sb3JhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGNvbG9yOiBTdHJpbmdcbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6IG51bGxcbiAgICB9O1xuICB9LFxuXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZENvbG9yOiBmdW5jdGlvbiBjb21wdXRlZENvbG9yKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29sb3IgfHwgdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBhZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrczogZnVuY3Rpb24gYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoKSB7XG4gICAgICB2YXIgb2JqID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB7fTtcbiAgICAgIHZhciBjb2xvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogdGhpcy5jb21wdXRlZENvbG9yO1xuXG4gICAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5hc3NpZ24oe30sIG9iaik7XG5cbiAgICAgIGlmIChjb2xvcikge1xuICAgICAgICBjbGFzc2VzW2NvbG9yXSA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgYWRkVGV4dENvbG9yQ2xhc3NDaGVja3M6IGZ1bmN0aW9uIGFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKCkge1xuICAgICAgdmFyIG9iaiA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDoge307XG4gICAgICB2YXIgY29sb3IgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHRoaXMuY29tcHV0ZWRDb2xvcjtcblxuICAgICAgdmFyIGNsYXNzZXMgPSBPYmplY3QuYXNzaWduKHt9LCBvYmopO1xuXG4gICAgICBpZiAoY29sb3IpIHtcbiAgICAgICAgdmFyIF9jb2xvciR0cmltJHNwbGl0ID0gY29sb3IudHJpbSgpLnNwbGl0KCcgJyksXG4gICAgICAgICAgICBfY29sb3IkdHJpbSRzcGxpdDIgPSBfc2xpY2VkVG9BcnJheShfY29sb3IkdHJpbSRzcGxpdCwgMiksXG4gICAgICAgICAgICBjb2xvck5hbWUgPSBfY29sb3IkdHJpbSRzcGxpdDJbMF0sXG4gICAgICAgICAgICBjb2xvck1vZGlmaWVyID0gX2NvbG9yJHRyaW0kc3BsaXQyWzFdO1xuXG4gICAgICAgIGNsYXNzZXNbY29sb3JOYW1lICsgJy0tdGV4dCddID0gdHJ1ZTtcbiAgICAgICAgY29sb3JNb2RpZmllciAmJiAoY2xhc3Nlc1sndGV4dC0tJyArIGNvbG9yTW9kaWZpZXJdID0gdHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndGhlbWVhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGRhcms6IEJvb2xlYW4sXG4gICAgbGlnaHQ6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIHRoZW1lQ2xhc3NlczogZnVuY3Rpb24gdGhlbWVDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFya1xuICAgICAgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZVwiXSA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWw7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZlwiXSA9IGNyZWF0ZVNpbXBsZVRyYW5zaXRpb247XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiY1wiXSA9IGNyZWF0ZUphdmFTY3JpcHRUcmFuc2l0aW9uO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IGRpcmVjdGl2ZUNvbmZpZyAqL1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBhZGRPbmNlRXZlbnRMaXN0ZW5lcjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJpXCJdID0gZ2V0T2JqZWN0VmFsdWVCeVBhdGg7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZFwiXSA9IGNyZWF0ZVJhbmdlO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImpcIl0gPSBnZXRaSW5kZXg7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZ1wiXSA9IGVzY2FwZUhUTUw7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiaFwiXSA9IGZpbHRlck9iamVjdE9uS2V5cztcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBmaWx0ZXJDaGlsZHJlbiAqL1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBjb252ZXJ0VG9Vbml0O1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cbmZ1bmN0aW9uIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoYykge1xuICB2YXIgZWwgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICdkaXYnO1xuICB2YXIgbmFtZSA9IGFyZ3VtZW50c1syXTtcblxuICBuYW1lID0gbmFtZSB8fCBjLnJlcGxhY2UoL19fL2csICctJyk7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndi0nICsgbmFtZSxcbiAgICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgX3JlZikge1xuICAgICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgICAgY2hpbGRyZW4gPSBfcmVmLmNoaWxkcmVuO1xuXG4gICAgICBkYXRhLnN0YXRpY0NsYXNzID0gKGMgKyAnICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgICAgcmV0dXJuIGgoZWwsIGRhdGEsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24obmFtZSkge1xuICB2YXIgb3JpZ2luID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiAndG9wIGNlbnRlciAwJztcbiAgdmFyIG1vZGUgPSBhcmd1bWVudHNbMl07XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBuYW1lLFxuXG4gICAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICAgIHByb3BzOiB7XG4gICAgICBvcmlnaW46IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBkZWZhdWx0OiBvcmlnaW5cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgY29udGV4dCkge1xuICAgICAgY29udGV4dC5kYXRhID0gY29udGV4dC5kYXRhIHx8IHt9O1xuICAgICAgY29udGV4dC5kYXRhLnByb3BzID0geyBuYW1lOiBuYW1lIH07XG4gICAgICBjb250ZXh0LmRhdGEub24gPSBjb250ZXh0LmRhdGEub24gfHwge307XG4gICAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUoY29udGV4dC5kYXRhLm9uKSkge1xuICAgICAgICBjb250ZXh0LmRhdGEub24gPSBfZXh0ZW5kcyh7fSwgY29udGV4dC5kYXRhLm9uKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1vZGUpIGNvbnRleHQuZGF0YS5wcm9wcy5tb2RlID0gbW9kZTtcblxuICAgICAgY29udGV4dC5kYXRhLm9uLmJlZm9yZUVudGVyID0gZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9IGNvbnRleHQucHJvcHMub3JpZ2luO1xuICAgICAgICBlbC5zdHlsZS53ZWJraXRUcmFuc2Zvcm1PcmlnaW4gPSBjb250ZXh0LnByb3BzLm9yaWdpbjtcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgY29udGV4dC5kYXRhLCBjb250ZXh0LmNoaWxkcmVuKTtcbiAgICB9XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUphdmFTY3JpcHRUcmFuc2l0aW9uKG5hbWUsIGZ1bmN0aW9ucykge1xuICB2YXIgY3NzID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiB0cnVlO1xuICB2YXIgbW9kZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAzICYmIGFyZ3VtZW50c1szXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzNdIDogJ2luLW91dCc7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBuYW1lLFxuXG4gICAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICAgIHByb3BzOiB7XG4gICAgICBjc3M6IHtcbiAgICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgICAgZGVmYXVsdDogY3NzXG4gICAgICB9LFxuICAgICAgbW9kZToge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIGRlZmF1bHQ6IG1vZGVcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgY29udGV4dCkge1xuICAgICAgdmFyIGRhdGEgPSB7XG4gICAgICAgIHByb3BzOiBfZXh0ZW5kcyh7fSwgY29udGV4dC5wcm9wcywge1xuICAgICAgICAgIG5hbWU6IG5hbWVcbiAgICAgICAgfSksXG4gICAgICAgIG9uOiBmdW5jdGlvbnNcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgZGF0YSwgY29udGV4dC5jaGlsZHJlbik7XG4gICAgfVxuICB9O1xufVxuXG5mdW5jdGlvbiBkaXJlY3RpdmVDb25maWcoYmluZGluZykge1xuICB2YXIgZGVmYXVsdHMgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHt9O1xuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0cywgYmluZGluZy5tb2RpZmllcnMsIHsgdmFsdWU6IGJpbmRpbmcuYXJnIH0sIGJpbmRpbmcudmFsdWUgfHwge30pO1xufVxuXG5mdW5jdGlvbiBhZGRPbmNlRXZlbnRMaXN0ZW5lcihlbCwgZXZlbnQsIGNiKSB7XG4gIHZhciBvbmNlID0gZnVuY3Rpb24gb25jZSgpIHtcbiAgICBjYigpO1xuICAgIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIG9uY2UsIGZhbHNlKTtcbiAgfTtcblxuICBlbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBvbmNlLCBmYWxzZSk7XG59XG5cbmZ1bmN0aW9uIGdldE9iamVjdFZhbHVlQnlQYXRoKG9iaiwgcGF0aCkge1xuICAvLyBjcmVkaXQ6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjQ5MTQ2My9hY2Nlc3NpbmctbmVzdGVkLWphdmFzY3JpcHQtb2JqZWN0cy13aXRoLXN0cmluZy1rZXkjY29tbWVudDU1Mjc4NDEzXzY0OTE2MjFcbiAgaWYgKCFwYXRoIHx8IHBhdGguY29uc3RydWN0b3IgIT09IFN0cmluZykgcmV0dXJuO1xuICBwYXRoID0gcGF0aC5yZXBsYWNlKC9cXFsoXFx3KylcXF0vZywgJy4kMScpOyAvLyBjb252ZXJ0IGluZGV4ZXMgdG8gcHJvcGVydGllc1xuICBwYXRoID0gcGF0aC5yZXBsYWNlKC9eXFwuLywgJycpOyAvLyBzdHJpcCBhIGxlYWRpbmcgZG90XG4gIHZhciBhID0gcGF0aC5zcGxpdCgnLicpO1xuICBmb3IgKHZhciBpID0gMCwgbiA9IGEubGVuZ3RoOyBpIDwgbjsgKytpKSB7XG4gICAgdmFyIGsgPSBhW2ldO1xuICAgIGlmIChvYmogaW5zdGFuY2VvZiBPYmplY3QgJiYgayBpbiBvYmopIHtcbiAgICAgIG9iaiA9IG9ialtrXTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuICByZXR1cm4gb2JqO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVSYW5nZShsZW5ndGgpIHtcbiAgcmV0dXJuIFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoQXJyYXkuZnJvbSh7IGxlbmd0aDogbGVuZ3RoIH0sIGZ1bmN0aW9uICh2LCBrKSB7XG4gICAgcmV0dXJuIGs7XG4gIH0pKSk7XG59XG5cbmZ1bmN0aW9uIGdldFpJbmRleChlbCkge1xuICBpZiAoIWVsIHx8IGVsLm5vZGVUeXBlICE9PSBOb2RlLkVMRU1FTlRfTk9ERSkgcmV0dXJuIDA7XG5cbiAgdmFyIGluZGV4ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWwpLmdldFByb3BlcnR5VmFsdWUoJ3otaW5kZXgnKTtcblxuICBpZiAoaXNOYU4oaW5kZXgpKSByZXR1cm4gZ2V0WkluZGV4KGVsLnBhcmVudE5vZGUpO1xuICByZXR1cm4gaW5kZXg7XG59XG5cbnZhciB0YWdzVG9SZXBsYWNlID0ge1xuICAnJic6ICcmYW1wOycsXG4gICc8JzogJyZsdDsnLFxuICAnPic6ICcmZ3Q7J1xufTtcblxuZnVuY3Rpb24gZXNjYXBlSFRNTChzdHIpIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bJjw+XS9nLCBmdW5jdGlvbiAodGFnKSB7XG4gICAgcmV0dXJuIHRhZ3NUb1JlcGxhY2VbdGFnXSB8fCB0YWc7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJPYmplY3RPbktleXMob2JqLCBrZXlzKSB7XG4gIHZhciBmaWx0ZXJlZCA9IHt9O1xuXG4gIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgIGlmICh0eXBlb2Ygb2JqW2tleV0gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBmaWx0ZXJlZFtrZXldID0gb2JqW2tleV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZpbHRlcmVkO1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJDaGlsZHJlbigpIHtcbiAgdmFyIGFycmF5ID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBbXTtcbiAgdmFyIHRhZyA9IGFyZ3VtZW50c1sxXTtcblxuICByZXR1cm4gYXJyYXkuZmlsdGVyKGZ1bmN0aW9uIChjaGlsZCkge1xuICAgIHJldHVybiBjaGlsZC5jb21wb25lbnRPcHRpb25zICYmIGNoaWxkLmNvbXBvbmVudE9wdGlvbnMuQ3Rvci5vcHRpb25zLm5hbWUgPT09IHRhZztcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRUb1VuaXQoc3RyKSB7XG4gIHZhciB1bml0ID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiAncHgnO1xuXG4gIHJldHVybiBpc05hTihzdHIpID8gc3RyIDogJycgKyBOdW1iZXIoc3RyKSArIHVuaXQ7XG59XG5cbi8qKiovIH0pLFxuLyogMyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGluamVjdDtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gcHJvdmlkZTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cblxuXG5mdW5jdGlvbiBnZW5lcmF0ZVdhcm5pbmcoY2hpbGQsIHBhcmVudCkge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdUaGUgJyArIGNoaWxkICsgJyBjb21wb25lbnQgbXVzdCBiZSB1c2VkIGluc2lkZSBhICcgKyBwYXJlbnQpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBpbmplY3QobmFtZXNwYWNlLCBjaGlsZCwgcGFyZW50KSB7XG4gIHZhciBkZWZhdWx0SW1wbCA9IGNoaWxkICYmIHBhcmVudCA/IHtcbiAgICByZWdpc3RlcjogZ2VuZXJhdGVXYXJuaW5nKGNoaWxkLCBwYXJlbnQpLFxuICAgIHVucmVnaXN0ZXI6IGdlbmVyYXRlV2FybmluZyhjaGlsZCwgcGFyZW50KVxuICB9IDogbnVsbDtcblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1pbmplY3QnLFxuXG4gICAgaW5qZWN0OiBfZGVmaW5lUHJvcGVydHkoe30sIG5hbWVzcGFjZSwge1xuICAgICAgZGVmYXVsdDogZGVmYXVsdEltcGxcbiAgICB9KVxuICB9O1xufVxuXG5mdW5jdGlvbiBwcm92aWRlKG5hbWVzcGFjZSkge1xuICByZXR1cm4ge1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1wcm92aWRlJyxcblxuICAgIG1ldGhvZHM6IHtcbiAgICAgIHJlZ2lzdGVyOiBudWxsLFxuICAgICAgdW5yZWdpc3RlcjogbnVsbFxuICAgIH0sXG4gICAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe30sIG5hbWVzcGFjZSwge1xuICAgICAgICByZWdpc3RlcjogdGhpcy5yZWdpc3RlcixcbiAgICAgICAgdW5yZWdpc3RlcjogdGhpcy51bnJlZ2lzdGVyXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG5cbi8qKiovIH0pLFxuLyogNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gY29uc29sZVdhcm47XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGNvbnNvbGVFcnJvcjtcbmZ1bmN0aW9uIGNyZWF0ZU1lc3NhZ2UobWVzc2FnZSwgY29tcG9uZW50SW5zdGFuY2UpIHtcbiAgdmFyIGNvbXBvbmVudEluZm8gPSBjb21wb25lbnRJbnN0YW5jZSA/ICcgaW4gXCInICsgY29tcG9uZW50SW5zdGFuY2UuJG9wdGlvbnMubmFtZSArICdcIicgOiAnJztcbiAgcmV0dXJuICdbVnVldGlmeV0gJyArIG1lc3NhZ2UgKyBjb21wb25lbnRJbmZvO1xufVxuXG5mdW5jdGlvbiBjb25zb2xlV2FybihtZXNzYWdlKSB7XG4gIHZhciBjb21wb25lbnRJbnN0YW5jZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogbnVsbDtcblxuICBjb25zb2xlLndhcm4oY3JlYXRlTWVzc2FnZShtZXNzYWdlLCBjb21wb25lbnRJbnN0YW5jZSkpO1xufVxuXG5mdW5jdGlvbiBjb25zb2xlRXJyb3IobWVzc2FnZSkge1xuICB2YXIgY29tcG9uZW50SW5zdGFuY2UgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IG51bGw7XG5cbiAgY29uc29sZS5lcnJvcihjcmVhdGVNZXNzYWdlKG1lc3NhZ2UsIGNvbXBvbmVudEluc3RhbmNlKSk7XG59XG5cbi8qKiovIH0pLFxuLyogNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gZmFjdG9yeTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbmZ1bmN0aW9uIGZhY3RvcnkoKSB7XG4gIHZhciBfd2F0Y2g7XG5cbiAgdmFyIHByb3AgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6ICd2YWx1ZSc7XG4gIHZhciBldmVudCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogJ2lucHV0JztcblxuICByZXR1cm4ge1xuICAgIG5hbWU6ICd0b2dnbGVhYmxlJyxcblxuICAgIG1vZGVsOiB7IHByb3A6IHByb3AsIGV2ZW50OiBldmVudCB9LFxuXG4gICAgcHJvcHM6IF9kZWZpbmVQcm9wZXJ0eSh7fSwgcHJvcCwgeyByZXF1aXJlZDogZmFsc2UgfSksXG5cbiAgICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXNBY3RpdmU6ICEhdGhpc1twcm9wXVxuICAgICAgfTtcbiAgICB9LFxuXG5cbiAgICB3YXRjaDogKF93YXRjaCA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3dhdGNoLCBwcm9wLCBmdW5jdGlvbiAodmFsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gISF2YWw7XG4gICAgfSksIF9kZWZpbmVQcm9wZXJ0eShfd2F0Y2gsICdpc0FjdGl2ZScsIGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgISF2YWwgIT09IHRoaXNbcHJvcF0gJiYgdGhpcy4kZW1pdChldmVudCwgdmFsKTtcbiAgICB9KSwgX3dhdGNoKVxuICB9O1xufVxuXG52YXIgVG9nZ2xlYWJsZSA9IGZhY3RvcnkoKTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChUb2dnbGVhYmxlKTtcblxuLyoqKi8gfSksXG4vKiA3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZCb3R0b21TaGVldFRyYW5zdGlvbiAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZDYXJvdXNlbFRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWQ2Fyb3VzZWxSZXZlcnNlVHJhbnNpdGlvbiAqL1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImZcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWVGFiVHJhbnNpdGlvbjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZUYWJSZXZlcnNlVHJhbnNpdGlvbjsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVk1lbnVUcmFuc2l0aW9uICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkZhYlRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWRGlhbG9nVHJhbnNpdGlvbiAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZEaWFsb2dCb3R0b21UcmFuc2l0aW9uICovXG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZGYWRlVHJhbnNpdGlvbjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiY1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIFZTY2FsZVRyYW5zaXRpb247IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWU2xpZGVYVHJhbnNpdGlvbjsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlNsaWRlWFJldmVyc2VUcmFuc2l0aW9uICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlNsaWRlWVRyYW5zaXRpb24gKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWU2xpZGVZUmV2ZXJzZVRyYW5zaXRpb24gKi9cbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gVkV4cGFuZFRyYW5zaXRpb247IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZSb3dFeHBhbmRUcmFuc2l0aW9uICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19leHBhbmRfdHJhbnNpdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MSk7XG5cblxuXG5cbi8vIENvbXBvbmVudCBzcGVjaWZpYyB0cmFuc2l0aW9uc1xudmFyIFZCb3R0b21TaGVldFRyYW5zdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnYm90dG9tLXNoZWV0LXRyYW5zaXRpb24nKTtcbnZhciBWQ2Fyb3VzZWxUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdjYXJvdXNlbC10cmFuc2l0aW9uJyk7XG52YXIgVkNhcm91c2VsUmV2ZXJzZVRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ2Nhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbicpO1xudmFyIFZUYWJUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCd0YWItdHJhbnNpdGlvbicpO1xudmFyIFZUYWJSZXZlcnNlVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgndGFiLXJldmVyc2UtdHJhbnNpdGlvbicpO1xudmFyIFZNZW51VHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnbWVudS10cmFuc2l0aW9uJyk7XG52YXIgVkZhYlRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ2ZhYi10cmFuc2l0aW9uJywgJ2NlbnRlciBjZW50ZXInLCAnb3V0LWluJyk7XG5cbi8vIEdlbmVyaWMgdHJhbnNpdGlvbnNcbnZhciBWRGlhbG9nVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnZGlhbG9nLXRyYW5zaXRpb24nKTtcbnZhciBWRGlhbG9nQm90dG9tVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnZGlhbG9nLWJvdHRvbS10cmFuc2l0aW9uJyk7XG52YXIgVkZhZGVUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdmYWRlLXRyYW5zaXRpb24nKTtcbnZhciBWU2NhbGVUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdzY2FsZS10cmFuc2l0aW9uJyk7XG52YXIgVlNsaWRlWFRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImZcIiAvKiBjcmVhdGVTaW1wbGVUcmFuc2l0aW9uICovXSkoJ3NsaWRlLXgtdHJhbnNpdGlvbicpO1xudmFyIFZTbGlkZVhSZXZlcnNlVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24nKTtcbnZhciBWU2xpZGVZVHJhbnNpdGlvbiA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZlwiIC8qIGNyZWF0ZVNpbXBsZVRyYW5zaXRpb24gKi9dKSgnc2xpZGUteS10cmFuc2l0aW9uJyk7XG52YXIgVlNsaWRlWVJldmVyc2VUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJmXCIgLyogY3JlYXRlU2ltcGxlVHJhbnNpdGlvbiAqL10pKCdzbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbicpO1xuXG4vLyBKYXZhU2NyaXB0IHRyYW5zaXRpb25zXG52YXIgVkV4cGFuZFRyYW5zaXRpb24gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImNcIiAvKiBjcmVhdGVKYXZhU2NyaXB0VHJhbnNpdGlvbiAqL10pKCdleHBhbmQtdHJhbnNpdGlvbicsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2V4cGFuZF90cmFuc2l0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCkpO1xudmFyIFZSb3dFeHBhbmRUcmFuc2l0aW9uID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJjXCIgLyogY3JlYXRlSmF2YVNjcmlwdFRyYW5zaXRpb24gKi9dKSgncm93LWV4cGFuZC10cmFuc2l0aW9uJywgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZXhwYW5kX3RyYW5zaXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSkoJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWQnKSk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImdcIl0gPSAoaW5zdGFsbCk7XG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudCgndi1ib3R0b20tc2hlZXQtdHJhbnNpdGlvbicsIFZCb3R0b21TaGVldFRyYW5zdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtY2Fyb3VzZWwtdHJhbnNpdGlvbicsIFZDYXJvdXNlbFRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LWNhcm91c2VsLXJldmVyc2UtdHJhbnNpdGlvbicsIFZDYXJvdXNlbFJldmVyc2VUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1kaWFsb2ctdHJhbnNpdGlvbicsIFZEaWFsb2dUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1kaWFsb2ctYm90dG9tLXRyYW5zaXRpb24nLCBWRGlhbG9nQm90dG9tVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZmFiLXRyYW5zaXRpb24nLCBWRmFiVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZmFkZS10cmFuc2l0aW9uJywgVkZhZGVUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1tZW51LXRyYW5zaXRpb24nLCBWTWVudVRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LXNjYWxlLXRyYW5zaXRpb24nLCBWU2NhbGVUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1zbGlkZS14LXRyYW5zaXRpb24nLCBWU2xpZGVYVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3Ytc2xpZGUteC1yZXZlcnNlLXRyYW5zaXRpb24nLCBWU2xpZGVYUmV2ZXJzZVRyYW5zaXRpb24pO1xuICBWdWUuY29tcG9uZW50KCd2LXNsaWRlLXktdHJhbnNpdGlvbicsIFZTbGlkZVlUcmFuc2l0aW9uKTtcbiAgVnVlLmNvbXBvbmVudCgndi1zbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbicsIFZTbGlkZVlSZXZlcnNlVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtdGFiLXJldmVyc2UtdHJhbnNpdGlvbicsIFZUYWJSZXZlcnNlVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtdGFiLXRyYW5zaXRpb24nLCBWVGFiVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3YtZXhwYW5kLXRyYW5zaXRpb24nLCBWRXhwYW5kVHJhbnNpdGlvbik7XG4gIFZ1ZS5jb21wb25lbnQoJ3Ytcm93LWV4cGFuZC10cmFuc2l0aW9uJywgVlJvd0V4cGFuZFRyYW5zaXRpb24pO1xufVxuXG4vKioqLyB9KSxcbi8qIDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKCkge1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGRpcmVjdGl2ZShlLCBlbCwgYmluZGluZykge1xuICAvLyBBcmdzIG1heSBub3QgYWx3YXlzIGJlIHN1cHBsaWVkXG4gIGJpbmRpbmcuYXJncyA9IGJpbmRpbmcuYXJncyB8fCB7fTtcblxuICAvLyBJZiBubyBjbG9zZUNvbmRpdGlvbmFsIHdhcyBzdXBwbGllZCBhc3NpZ24gYSBkZWZhdWx0XG4gIHZhciBpc0FjdGl2ZSA9IGJpbmRpbmcuYXJncy5jbG9zZUNvbmRpdGlvbmFsIHx8IGNsb3NlQ29uZGl0aW9uYWw7XG5cbiAgLy8gVGhlIGluY2x1ZGUgZWxlbWVudCBjYWxsYmFja3MgYmVsb3cgY2FuIGJlIGV4cGVuc2l2ZVxuICAvLyBzbyB3ZSBzaG91bGQgYXZvaWQgY2FsbGluZyB0aGVtIHdoZW4gd2UncmUgbm90IGFjdGl2ZS5cbiAgLy8gRXhwbGljaXRseSBjaGVjayBmb3IgZmFsc2UgdG8gYWxsb3cgZmFsbGJhY2sgY29tcGF0aWJpbGl0eVxuICAvLyB3aXRoIG5vbi10b2dnbGVhYmxlIGNvbXBvbmVudHNcbiAgaWYgKCFlIHx8IGlzQWN0aXZlKGUpID09PSBmYWxzZSkgcmV0dXJuO1xuXG4gIC8vIElmIGNsaWNrIHdhcyB0cmlnZ2VyZWQgcHJvZ3JhbW1hdGljYWx5IChkb21FbC5jbGljaygpKSB0aGVuXG4gIC8vIGl0IHNob3VsZG4ndCBiZSB0cmVhdGVkIGFzIGNsaWNrLW91dHNpZGVcbiAgLy8gQ2hyb21lL0ZpcmVmb3ggc3VwcG9ydCBpc1RydXN0ZWQgcHJvcGVydHlcbiAgLy8gSUUvRWRnZSBzdXBwb3J0IHBvaW50ZXJUeXBlIHByb3BlcnR5IChlbXB0eSBpZiBub3QgdHJpZ2dlcmVkXG4gIC8vIGJ5IHBvaW50aW5nIGRldmljZSlcbiAgaWYgKCdpc1RydXN0ZWQnIGluIGUgJiYgIWUuaXNUcnVzdGVkIHx8ICdwb2ludGVyVHlwZScgaW4gZSAmJiAhZS5wb2ludGVyVHlwZSkgcmV0dXJuO1xuXG4gIC8vIENoZWNrIGlmIGFkZGl0aW9uYWwgZWxlbWVudHMgd2VyZSBwYXNzZWQgdG8gYmUgaW5jbHVkZWQgaW4gY2hlY2tcbiAgLy8gKGNsaWNrIG11c3QgYmUgb3V0c2lkZSBhbGwgaW5jbHVkZWQgZWxlbWVudHMsIGlmIGFueSlcbiAgdmFyIGVsZW1lbnRzID0gKGJpbmRpbmcuYXJncy5pbmNsdWRlIHx8IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gW107XG4gIH0pKCk7XG4gIC8vIEFkZCB0aGUgcm9vdCBlbGVtZW50IGZvciB0aGUgY29tcG9uZW50IHRoaXMgZGlyZWN0aXZlIHdhcyBkZWZpbmVkIG9uXG4gIGVsZW1lbnRzLnB1c2goZWwpO1xuXG4gIC8vIENoZWNrIGlmIGl0J3MgYSBjbGljayBvdXRzaWRlIG91ciBlbGVtZW50cywgYW5kIHRoZW4gaWYgb3VyIGNhbGxiYWNrIHJldHVybnMgdHJ1ZS5cbiAgLy8gTm9uLXRvZ2dsZWFibGUgY29tcG9uZW50cyBzaG91bGQgdGFrZSBhY3Rpb24gaW4gdGhlaXIgY2FsbGJhY2sgYW5kIHJldHVybiBmYWxzeS5cbiAgLy8gVG9nZ2xlYWJsZSBjYW4gcmV0dXJuIHRydWUgaWYgaXQgd2FudHMgdG8gZGVhY3RpdmF0ZS5cbiAgLy8gTm90ZSB0aGF0LCBiZWNhdXNlIHdlJ3JlIGluIHRoZSBjYXB0dXJlIHBoYXNlLCB0aGlzIGNhbGxiYWNrIHdpbGwgb2NjdXJlIGJlZm9yZVxuICAvLyB0aGUgYnViYmxpbmcgY2xpY2sgZXZlbnQgb24gYW55IG91dHNpZGUgZWxlbWVudHMuXG4gICFjbGlja2VkSW5FbHMoZSwgZWxlbWVudHMpICYmIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgIGlzQWN0aXZlKGUpICYmIGJpbmRpbmcudmFsdWUoKTtcbiAgfSwgMCk7XG59XG5cbmZ1bmN0aW9uIGNsaWNrZWRJbkVscyhlLCBlbGVtZW50cykge1xuICAvLyBHZXQgcG9zaXRpb24gb2YgY2xpY2tcbiAgdmFyIHggPSBlLmNsaWVudFgsXG4gICAgICB5ID0gZS5jbGllbnRZO1xuICAvLyBMb29wIG92ZXIgYWxsIGluY2x1ZGVkIGVsZW1lbnRzIHRvIHNlZSBpZiBjbGljayB3YXMgaW4gYW55IG9mIHRoZW1cblxuICB2YXIgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWU7XG4gIHZhciBfZGlkSXRlcmF0b3JFcnJvciA9IGZhbHNlO1xuICB2YXIgX2l0ZXJhdG9yRXJyb3IgPSB1bmRlZmluZWQ7XG5cbiAgdHJ5IHtcbiAgICBmb3IgKHZhciBfaXRlcmF0b3IgPSBlbGVtZW50c1tTeW1ib2wuaXRlcmF0b3JdKCksIF9zdGVwOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24gPSAoX3N0ZXAgPSBfaXRlcmF0b3IubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWUpIHtcbiAgICAgIHZhciBlbCA9IF9zdGVwLnZhbHVlO1xuXG4gICAgICBpZiAoY2xpY2tlZEluRWwoZWwsIHgsIHkpKSByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIF9kaWRJdGVyYXRvckVycm9yID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvciA9IGVycjtcbiAgfSBmaW5hbGx5IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uICYmIF9pdGVyYXRvci5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yLnJldHVybigpO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAoX2RpZEl0ZXJhdG9yRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgX2l0ZXJhdG9yRXJyb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5mdW5jdGlvbiBjbGlja2VkSW5FbChlbCwgeCwgeSkge1xuICAvLyBHZXQgYm91bmRpbmcgcmVjdCBmb3IgZWxlbWVudFxuICAvLyAod2UncmUgaW4gY2FwdHVyaW5nIGV2ZW50IGFuZCB3ZSB3YW50IHRvIGNoZWNrIGZvciBtdWx0aXBsZSBlbGVtZW50cyxcbiAgLy8gIHNvIGNhbid0IHVzZSB0YXJnZXQuKVxuICB2YXIgYiA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgd2FzIGluIHRoZSBlbGVtZW50J3MgYm91bmRpbmcgcmVjdFxuXG4gIHJldHVybiB4ID49IGIubGVmdCAmJiB4IDw9IGIucmlnaHQgJiYgeSA+PSBiLnRvcCAmJiB5IDw9IGIuYm90dG9tO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuXG4gIC8vIFtkYXRhLWFwcF0gbWF5IG5vdCBiZSBmb3VuZFxuICAvLyBpZiB1c2luZyBiaW5kLCBpbnNlcnRlZCBtYWtlc1xuICAvLyBzdXJlIHRoYXQgdGhlIHJvb3QgZWxlbWVudCBpc1xuICAvLyBhdmFpbGFibGUsIGlPUyBkb2VzIG5vdCBzdXBwb3J0XG4gIC8vIGNsaWNrcyBvbiBib2R5XG4gIGluc2VydGVkOiBmdW5jdGlvbiBpbnNlcnRlZChlbCwgYmluZGluZykge1xuICAgIHZhciBvbkNsaWNrID0gZnVuY3Rpb24gb25DbGljayhlKSB7XG4gICAgICByZXR1cm4gZGlyZWN0aXZlKGUsIGVsLCBiaW5kaW5nKTtcbiAgICB9O1xuICAgIC8vIGlPUyBkb2VzIG5vdCByZWNvZ25pemUgY2xpY2sgZXZlbnRzIG9uIGRvY3VtZW50XG4gICAgLy8gb3IgYm9keSwgdGhpcyBpcyB0aGUgZW50aXJlIHB1cnBvc2Ugb2YgdGhlIHYtYXBwXG4gICAgLy8gY29tcG9uZW50IGFuZCBbZGF0YS1hcHBdLCBzdG9wIHJlbW92aW5nIHRoaXNcbiAgICB2YXIgYXBwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtYXBwXScpIHx8IGRvY3VtZW50LmJvZHk7IC8vIFRoaXMgaXMgb25seSBmb3IgdW5pdCB0ZXN0c1xuICAgIGFwcC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIG9uQ2xpY2ssIHRydWUpO1xuICAgIGVsLl9jbGlja091dHNpZGUgPSBvbkNsaWNrO1xuICB9LFxuICB1bmJpbmQ6IGZ1bmN0aW9uIHVuYmluZChlbCkge1xuICAgIHZhciBhcHAgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hcHBdJykgfHwgZG9jdW1lbnQuYm9keTsgLy8gVGhpcyBpcyBvbmx5IGZvciB1bml0IHRlc3RzXG4gICAgYXBwICYmIGFwcC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGVsLl9jbGlja091dHNpZGUsIHRydWUpO1xuICAgIGRlbGV0ZSBlbC5fY2xpY2tPdXRzaWRlO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxudmFyIF90b3VjaHN0YXJ0ID0gZnVuY3Rpb24gX3RvdWNoc3RhcnQoZXZlbnQsIHdyYXBwZXIpIHtcbiAgdmFyIHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF07XG4gIHdyYXBwZXIudG91Y2hzdGFydFggPSB0b3VjaC5jbGllbnRYO1xuICB3cmFwcGVyLnRvdWNoc3RhcnRZID0gdG91Y2guY2xpZW50WTtcblxuICB3cmFwcGVyLnN0YXJ0ICYmIHdyYXBwZXIuc3RhcnQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpO1xufTtcblxudmFyIF90b3VjaGVuZCA9IGZ1bmN0aW9uIF90b3VjaGVuZChldmVudCwgd3JhcHBlcikge1xuICB2YXIgdG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXTtcbiAgd3JhcHBlci50b3VjaGVuZFggPSB0b3VjaC5jbGllbnRYO1xuICB3cmFwcGVyLnRvdWNoZW5kWSA9IHRvdWNoLmNsaWVudFk7XG5cbiAgd3JhcHBlci5lbmQgJiYgd3JhcHBlci5lbmQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpO1xuXG4gIGhhbmRsZUdlc3R1cmUod3JhcHBlcik7XG59O1xuXG52YXIgX3RvdWNobW92ZSA9IGZ1bmN0aW9uIF90b3VjaG1vdmUoZXZlbnQsIHdyYXBwZXIpIHtcbiAgdmFyIHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF07XG4gIHdyYXBwZXIudG91Y2htb3ZlWCA9IHRvdWNoLmNsaWVudFg7XG4gIHdyYXBwZXIudG91Y2htb3ZlWSA9IHRvdWNoLmNsaWVudFk7XG5cbiAgd3JhcHBlci5tb3ZlICYmIHdyYXBwZXIubW92ZShPYmplY3QuYXNzaWduKGV2ZW50LCB3cmFwcGVyKSk7XG59O1xuXG52YXIgaGFuZGxlR2VzdHVyZSA9IGZ1bmN0aW9uIGhhbmRsZUdlc3R1cmUod3JhcHBlcikge1xuICB2YXIgdG91Y2hzdGFydFggPSB3cmFwcGVyLnRvdWNoc3RhcnRYLFxuICAgICAgdG91Y2hlbmRYID0gd3JhcHBlci50b3VjaGVuZFgsXG4gICAgICB0b3VjaHN0YXJ0WSA9IHdyYXBwZXIudG91Y2hzdGFydFksXG4gICAgICB0b3VjaGVuZFkgPSB3cmFwcGVyLnRvdWNoZW5kWTtcblxuICB2YXIgZGlyUmF0aW8gPSAwLjU7XG4gIHZhciBtaW5EaXN0YW5jZSA9IDE2O1xuICB3cmFwcGVyLm9mZnNldFggPSB0b3VjaGVuZFggLSB0b3VjaHN0YXJ0WDtcbiAgd3JhcHBlci5vZmZzZXRZID0gdG91Y2hlbmRZIC0gdG91Y2hzdGFydFk7XG5cbiAgaWYgKE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WSkgPCBkaXJSYXRpbyAqIE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WCkpIHtcbiAgICB3cmFwcGVyLmxlZnQgJiYgdG91Y2hlbmRYIDwgdG91Y2hzdGFydFggLSBtaW5EaXN0YW5jZSAmJiB3cmFwcGVyLmxlZnQod3JhcHBlcik7XG4gICAgd3JhcHBlci5yaWdodCAmJiB0b3VjaGVuZFggPiB0b3VjaHN0YXJ0WCArIG1pbkRpc3RhbmNlICYmIHdyYXBwZXIucmlnaHQod3JhcHBlcik7XG4gIH1cblxuICBpZiAoTWF0aC5hYnMod3JhcHBlci5vZmZzZXRYKSA8IGRpclJhdGlvICogTWF0aC5hYnMod3JhcHBlci5vZmZzZXRZKSkge1xuICAgIHdyYXBwZXIudXAgJiYgdG91Y2hlbmRZIDwgdG91Y2hzdGFydFkgLSBtaW5EaXN0YW5jZSAmJiB3cmFwcGVyLnVwKHdyYXBwZXIpO1xuICAgIHdyYXBwZXIuZG93biAmJiB0b3VjaGVuZFkgPiB0b3VjaHN0YXJ0WSArIG1pbkRpc3RhbmNlICYmIHdyYXBwZXIuZG93bih3cmFwcGVyKTtcbiAgfVxufTtcblxuZnVuY3Rpb24gaW5zZXJ0ZWQoZWwsIF9yZWYsIF9yZWYyKSB7XG4gIHZhciB2YWx1ZSA9IF9yZWYudmFsdWU7XG4gIHZhciBjb250ZXh0ID0gX3JlZjIuY29udGV4dDtcblxuICB2YXIgd3JhcHBlciA9IHtcbiAgICB0b3VjaHN0YXJ0WDogMCxcbiAgICB0b3VjaHN0YXJ0WTogMCxcbiAgICB0b3VjaGVuZFg6IDAsXG4gICAgdG91Y2hlbmRZOiAwLFxuICAgIHRvdWNobW92ZVg6IDAsXG4gICAgdG91Y2htb3ZlWTogMCxcbiAgICBvZmZzZXRYOiAwLFxuICAgIG9mZnNldFk6IDAsXG4gICAgbGVmdDogdmFsdWUubGVmdCxcbiAgICByaWdodDogdmFsdWUucmlnaHQsXG4gICAgdXA6IHZhbHVlLnVwLFxuICAgIGRvd246IHZhbHVlLmRvd24sXG4gICAgc3RhcnQ6IHZhbHVlLnN0YXJ0LFxuICAgIG1vdmU6IHZhbHVlLm1vdmUsXG4gICAgZW5kOiB2YWx1ZS5lbmRcbiAgfTtcblxuICB2YXIgdGFyZ2V0ID0gdmFsdWUucGFyZW50ID8gZWwucGFyZW50Tm9kZSA6IGVsO1xuICB2YXIgb3B0aW9ucyA9IHZhbHVlLm9wdGlvbnMgfHwgeyBwYXNzaXZlOiB0cnVlXG5cbiAgICAvLyBOZWVkZWQgdG8gcGFzcyB1bml0IHRlc3RzXG4gIH07aWYgKCF0YXJnZXQpIHJldHVybjtcblxuICB2YXIgaGFuZGxlcnMgPSB7XG4gICAgdG91Y2hzdGFydDogZnVuY3Rpb24gdG91Y2hzdGFydChlKSB7XG4gICAgICByZXR1cm4gX3RvdWNoc3RhcnQoZSwgd3JhcHBlcik7XG4gICAgfSxcbiAgICB0b3VjaGVuZDogZnVuY3Rpb24gdG91Y2hlbmQoZSkge1xuICAgICAgcmV0dXJuIF90b3VjaGVuZChlLCB3cmFwcGVyKTtcbiAgICB9LFxuICAgIHRvdWNobW92ZTogZnVuY3Rpb24gdG91Y2htb3ZlKGUpIHtcbiAgICAgIHJldHVybiBfdG91Y2htb3ZlKGUsIHdyYXBwZXIpO1xuICAgIH1cbiAgfTtcbiAgdGFyZ2V0Ll90b3VjaEhhbmRsZXJzID0gT2JqZWN0LmFzc2lnbihPYmplY3QodGFyZ2V0Ll90b3VjaEhhbmRsZXJzKSwgX2RlZmluZVByb3BlcnR5KHt9LCBjb250ZXh0Ll91aWQsIGhhbmRsZXJzKSk7XG4gIHZhciBfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uID0gdHJ1ZTtcbiAgdmFyIF9kaWRJdGVyYXRvckVycm9yID0gZmFsc2U7XG4gIHZhciBfaXRlcmF0b3JFcnJvciA9IHVuZGVmaW5lZDtcblxuICB0cnkge1xuICAgIGZvciAodmFyIF9pdGVyYXRvciA9IE9iamVjdC5rZXlzKGhhbmRsZXJzKVtTeW1ib2wuaXRlcmF0b3JdKCksIF9zdGVwOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24gPSAoX3N0ZXAgPSBfaXRlcmF0b3IubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbiA9IHRydWUpIHtcbiAgICAgIHZhciBldmVudE5hbWUgPSBfc3RlcC52YWx1ZTtcblxuICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyc1tldmVudE5hbWVdLCBvcHRpb25zKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIF9kaWRJdGVyYXRvckVycm9yID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvciA9IGVycjtcbiAgfSBmaW5hbGx5IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCFfaXRlcmF0b3JOb3JtYWxDb21wbGV0aW9uICYmIF9pdGVyYXRvci5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yLnJldHVybigpO1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICBpZiAoX2RpZEl0ZXJhdG9yRXJyb3IpIHtcbiAgICAgICAgdGhyb3cgX2l0ZXJhdG9yRXJyb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHVuYmluZChlbCwgX3JlZjMsIF9yZWY0KSB7XG4gIHZhciB2YWx1ZSA9IF9yZWYzLnZhbHVlO1xuICB2YXIgY29udGV4dCA9IF9yZWY0LmNvbnRleHQ7XG5cbiAgdmFyIHRhcmdldCA9IHZhbHVlLnBhcmVudCA/IGVsLnBhcmVudE5vZGUgOiBlbDtcblxuICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuXG4gIHZhciBoYW5kbGVycyA9IHRhcmdldC5fdG91Y2hIYW5kbGVyc1tjb250ZXh0Ll91aWRdO1xuICB2YXIgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgPSB0cnVlO1xuICB2YXIgX2RpZEl0ZXJhdG9yRXJyb3IyID0gZmFsc2U7XG4gIHZhciBfaXRlcmF0b3JFcnJvcjIgPSB1bmRlZmluZWQ7XG5cbiAgdHJ5IHtcbiAgICBmb3IgKHZhciBfaXRlcmF0b3IyID0gT2JqZWN0LmtleXMoaGFuZGxlcnMpW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3N0ZXAyOyAhKF9pdGVyYXRvck5vcm1hbENvbXBsZXRpb24yID0gKF9zdGVwMiA9IF9pdGVyYXRvcjIubmV4dCgpKS5kb25lKTsgX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgPSB0cnVlKSB7XG4gICAgICB2YXIgZXZlbnROYW1lID0gX3N0ZXAyLnZhbHVlO1xuXG4gICAgICB0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIGhhbmRsZXJzW2V2ZW50TmFtZV0pO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgX2RpZEl0ZXJhdG9yRXJyb3IyID0gdHJ1ZTtcbiAgICBfaXRlcmF0b3JFcnJvcjIgPSBlcnI7XG4gIH0gZmluYWxseSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghX2l0ZXJhdG9yTm9ybWFsQ29tcGxldGlvbjIgJiYgX2l0ZXJhdG9yMi5yZXR1cm4pIHtcbiAgICAgICAgX2l0ZXJhdG9yMi5yZXR1cm4oKTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgaWYgKF9kaWRJdGVyYXRvckVycm9yMikge1xuICAgICAgICB0aHJvdyBfaXRlcmF0b3JFcnJvcjI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGVsZXRlIHRhcmdldC5fdG91Y2hIYW5kbGVyc1tjb250ZXh0Ll91aWRdO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3RvdWNoJyxcbiAgaW5zZXJ0ZWQ6IGluc2VydGVkLFxuICB1bmJpbmQ6IHVuYmluZFxufSk7XG5cbi8qKiovIH0pLFxuLyogMTAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExMSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gaW5zZXJ0ZWQoZWwsIGJpbmRpbmcpIHtcbiAgdmFyIGNhbGxiYWNrID0gYmluZGluZy52YWx1ZTtcbiAgdmFyIG9wdGlvbnMgPSBiaW5kaW5nLm9wdGlvbnMgfHwgeyBwYXNzaXZlOiB0cnVlIH07XG5cbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGNhbGxiYWNrLCBvcHRpb25zKTtcbiAgZWwuX29uUmVzaXplID0ge1xuICAgIGNhbGxiYWNrOiBjYWxsYmFjayxcbiAgICBvcHRpb25zOiBvcHRpb25zXG4gIH07XG5cbiAgaWYgKCFiaW5kaW5nLm1vZGlmaWVycyB8fCAhYmluZGluZy5tb2RpZmllcnMucXVpZXQpIHtcbiAgICBjYWxsYmFjaygpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHVuYmluZChlbCwgYmluZGluZykge1xuICB2YXIgX2VsJF9vblJlc2l6ZSA9IGVsLl9vblJlc2l6ZSxcbiAgICAgIGNhbGxiYWNrID0gX2VsJF9vblJlc2l6ZS5jYWxsYmFjayxcbiAgICAgIG9wdGlvbnMgPSBfZWwkX29uUmVzaXplLm9wdGlvbnM7XG5cblxuICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigncmVzaXplJywgY2FsbGJhY2ssIG9wdGlvbnMpO1xuICBkZWxldGUgZWwuX29uUmVzaXplO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Jlc2l6ZScsXG4gIGluc2VydGVkOiBpbnNlcnRlZCxcbiAgdW5iaW5kOiB1bmJpbmRcbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBmYWN0b3J5O1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuXG5cbmZ1bmN0aW9uIGZhY3RvcnkoKSB7XG4gIHZhciBzZWxlY3RlZCA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogW107XG5cbiAgdmFyIHByb3BzID0ge1xuICAgIGFic29sdXRlOiBCb29sZWFuLFxuICAgIGJvdHRvbTogQm9vbGVhbixcbiAgICBmaXhlZDogQm9vbGVhbixcbiAgICBsZWZ0OiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHRvcDogQm9vbGVhblxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ3Bvc2l0aW9uYWJsZScsXG4gICAgcHJvcHM6IHNlbGVjdGVkLmxlbmd0aCA/IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaFwiIC8qIGZpbHRlck9iamVjdE9uS2V5cyAqL10pKHByb3BzLCBzZWxlY3RlZCkgOiBwcm9wc1xuICB9O1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZhY3RvcnkoKSk7XG5cbi8qKiovIH0pLFxuLyogMTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyb3V0YWJsZScsXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIFJpcHBsZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBhY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGFwcGVuZDogQm9vbGVhbixcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBleGFjdDoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHVuZGVmaW5lZFxuICAgIH0sXG4gICAgZXhhY3RBY3RpdmVDbGFzczogU3RyaW5nLFxuICAgIGhyZWY6IFtTdHJpbmcsIE9iamVjdF0sXG4gICAgdG86IFtTdHJpbmcsIE9iamVjdF0sXG4gICAgbnV4dDogQm9vbGVhbixcbiAgICByZXBsYWNlOiBCb29sZWFuLFxuICAgIHJpcHBsZTogW0Jvb2xlYW4sIE9iamVjdF0sXG4gICAgdGFnOiBTdHJpbmcsXG4gICAgdGFyZ2V0OiBTdHJpbmdcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge30sXG4gICAgZ2VuZXJhdGVSb3V0ZUxpbms6IGZ1bmN0aW9uIGdlbmVyYXRlUm91dGVMaW5rKCkge1xuICAgICAgdmFyIGV4YWN0ID0gdGhpcy5leGFjdDtcbiAgICAgIHZhciB0YWcgPSB2b2lkIDA7XG5cbiAgICAgIHZhciBkYXRhID0gX2RlZmluZVByb3BlcnR5KHtcbiAgICAgICAgYXR0cnM6IHsgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSxcbiAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgICAgcHJvcHM6IHt9LFxuICAgICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICAgIG5hbWU6ICdyaXBwbGUnLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnJpcHBsZSAmJiAhdGhpcy5kaXNhYmxlZCA/IHRoaXMucmlwcGxlIDogZmFsc2VcbiAgICAgICAgfV1cbiAgICAgIH0sIHRoaXMudG8gPyAnbmF0aXZlT24nIDogJ29uJywgX2V4dGVuZHMoe30sIHRoaXMuJGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogdGhpcy5jbGlja1xuICAgICAgfSkpO1xuXG4gICAgICBpZiAodHlwZW9mIHRoaXMuZXhhY3QgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGV4YWN0ID0gdGhpcy50byA9PT0gJy8nIHx8IHRoaXMudG8gPT09IE9iamVjdCh0aGlzLnRvKSAmJiB0aGlzLnRvLnBhdGggPT09ICcvJztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudG8pIHtcbiAgICAgICAgLy8gQWRkIGEgc3BlY2lhbCBhY3RpdmVDbGFzcyBob29rXG4gICAgICAgIC8vIGZvciBjb21wb25lbnQgbGV2ZWwgc3R5bGVzXG4gICAgICAgIHZhciBhY3RpdmVDbGFzcyA9IHRoaXMuYWN0aXZlQ2xhc3M7XG4gICAgICAgIHZhciBleGFjdEFjdGl2ZUNsYXNzID0gdGhpcy5leGFjdEFjdGl2ZUNsYXNzIHx8IGFjdGl2ZUNsYXNzO1xuXG4gICAgICAgIGlmICh0aGlzLnByb3h5Q2xhc3MpIHtcbiAgICAgICAgICBhY3RpdmVDbGFzcyArPSAnICcgKyB0aGlzLnByb3h5Q2xhc3M7XG4gICAgICAgICAgZXhhY3RBY3RpdmVDbGFzcyArPSAnICcgKyB0aGlzLnByb3h5Q2xhc3M7XG4gICAgICAgIH1cblxuICAgICAgICB0YWcgPSB0aGlzLm51eHQgPyAnbnV4dC1saW5rJyA6ICdyb3V0ZXItbGluayc7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oZGF0YS5wcm9wcywge1xuICAgICAgICAgIHRvOiB0aGlzLnRvLFxuICAgICAgICAgIGV4YWN0OiBleGFjdCxcbiAgICAgICAgICBhY3RpdmVDbGFzczogYWN0aXZlQ2xhc3MsXG4gICAgICAgICAgZXhhY3RBY3RpdmVDbGFzczogZXhhY3RBY3RpdmVDbGFzcyxcbiAgICAgICAgICBhcHBlbmQ6IHRoaXMuYXBwZW5kLFxuICAgICAgICAgIHJlcGxhY2U6IHRoaXMucmVwbGFjZVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRhZyA9IHRoaXMuaHJlZiAmJiAnYScgfHwgdGhpcy50YWcgfHwgJ2EnO1xuXG4gICAgICAgIGlmICh0YWcgPT09ICdhJykge1xuICAgICAgICAgIGlmICh0aGlzLmhyZWYpIGRhdGEuYXR0cnMuaHJlZiA9IHRoaXMuaHJlZjtcbiAgICAgICAgICBpZiAodGhpcy50YXJnZXQpIGRhdGEuYXR0cnMudGFyZ2V0ID0gdGhpcy50YXJnZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgdGFnOiB0YWcsIGRhdGE6IGRhdGEgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19tb250aENoYW5nZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcGFkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImFcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NyZWF0ZU5hdGl2ZUxvY2FsZUZvcm1hdHRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJiXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19tb250aENoYW5nZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJjXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19wYWRfX1tcImFcIl07IH0pO1xuXG5cblxuXG5cblxuLyoqKi8gfSksXG4vKiAxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gYXBwbGljYXRpb25hYmxlO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcblxuXG5mdW5jdGlvbiBhcHBsaWNhdGlvbmFibGUodmFsdWUpIHtcbiAgdmFyIGV2ZW50cyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogW107XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnYXBwbGljYXRpb25hYmxlJyxcblxuICAgIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3Bvc2l0aW9uYWJsZV9fW1wiYlwiIC8qIGZhY3RvcnkgKi9dKShbJ2Fic29sdXRlJywgJ2ZpeGVkJ10pXSxcblxuICAgIHByb3BzOiB7XG4gICAgICBhcHA6IEJvb2xlYW5cbiAgICB9LFxuXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgIGFwcGxpY2F0aW9uUHJvcGVydHk6IGZ1bmN0aW9uIGFwcGxpY2F0aW9uUHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgd2F0Y2g6IHtcbiAgICAgIC8vIElmIHByZXZpb3VzIHZhbHVlIHdhcyBhcHBcbiAgICAgIC8vIHJlc2V0IHRoZSBwcm92aWRlZCBwcm9wXG4gICAgICBhcHA6IGZ1bmN0aW9uIGFwcCh4LCBwcmV2KSB7XG4gICAgICAgIHByZXYgPyB0aGlzLnJlbW92ZUFwcGxpY2F0aW9uKHRydWUpIDogdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIGFjdGl2YXRlZDogZnVuY3Rpb24gYWN0aXZhdGVkKCkge1xuICAgICAgdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgfSxcbiAgICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgICAgZm9yICh2YXIgaSA9IDAsIGxlbmd0aCA9IGV2ZW50cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICB0aGlzLiR3YXRjaChldmVudHNbaV0sIHRoaXMuY2FsbFVwZGF0ZSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuICAgIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuICAgIGRlYWN0aXZhdGVkOiBmdW5jdGlvbiBkZWFjdGl2YXRlZCgpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXBwbGljYXRpb24oKTtcbiAgICB9LFxuICAgIGRlc3Ryb3llZDogZnVuY3Rpb24gZGVzdHJveWVkKCkge1xuICAgICAgdGhpcy5yZW1vdmVBcHBsaWNhdGlvbigpO1xuICAgIH0sXG5cblxuICAgIG1ldGhvZHM6IHtcbiAgICAgIGNhbGxVcGRhdGU6IGZ1bmN0aW9uIGNhbGxVcGRhdGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5hcHApIHJldHVybjtcblxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmJpbmQodGhpcy5fdWlkLCB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHksIHRoaXMudXBkYXRlQXBwbGljYXRpb24oKSk7XG4gICAgICB9LFxuICAgICAgcmVtb3ZlQXBwbGljYXRpb246IGZ1bmN0aW9uIHJlbW92ZUFwcGxpY2F0aW9uKGZvcmNlKSB7XG4gICAgICAgIGlmICghZm9yY2UgJiYgIXRoaXMuYXBwKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi51bmJpbmQodGhpcy5fdWlkLCB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHkpO1xuICAgICAgfSxcblxuICAgICAgdXBkYXRlQXBwbGljYXRpb246IGZ1bmN0aW9uIHVwZGF0ZUFwcGxpY2F0aW9uKCkge31cbiAgICB9XG4gIH07XG59XG5cbi8qKiovIH0pLFxuLyogMTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKipcbiAqIEJvb3RhYmxlXG4gKiBAbWl4aW5cbiAqXG4gKiBVc2VkIHRvIGFkZCBsYXp5IGNvbnRlbnQgZnVuY3Rpb25hbGl0eSB0byBjb21wb25lbnRzXG4gKiBMb29rcyBmb3IgY2hhbmdlIGluIFwiaXNBY3RpdmVcIiB0byBhdXRvbWF0aWNhbGx5IGJvb3RcbiAqIE90aGVyd2lzZSBjYW4gYmUgc2V0IG1hbnVhbGx5XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnYm9vdGFibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQm9vdGVkOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBsYXp5OiBCb29sZWFuXG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoKSB7XG4gICAgICB0aGlzLmlzQm9vdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHNob3dMYXp5Q29udGVudDogZnVuY3Rpb24gc2hvd0xhenlDb250ZW50KGNvbnRlbnQpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQm9vdGVkIHx8ICF0aGlzLmxhenkgfHwgdGhpcy5pc0FjdGl2ZSA/IGNvbnRlbnQgOiBudWxsO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBzdHlsZShlbCwgdmFsdWUpIHtcbiAgZWwuc3R5bGVbJ3RyYW5zZm9ybSddID0gdmFsdWU7XG4gIGVsLnN0eWxlWyd3ZWJraXRUcmFuc2Zvcm0nXSA9IHZhbHVlO1xufVxuXG52YXIgcmlwcGxlID0ge1xuICAvKipcbiAgICogQHBhcmFtIHtFdmVudH0gZVxuICAgKiBAcGFyYW0ge0VsZW1lbnR9IGVsXG4gICAqIEBwYXJhbSB7eyBjbGFzcz86IHN0cmluZywgY2VudGVyPzogYm9vbGVhbiB9fSBbdmFsdWU9e31dXG4gICAqL1xuICBzaG93OiBmdW5jdGlvbiBzaG93KGUsIGVsKSB7XG4gICAgdmFyIHZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiB7fTtcblxuICAgIGlmICghZWwuX3JpcHBsZSB8fCAhZWwuX3JpcHBsZS5lbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICB2YXIgYW5pbWF0aW9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuXG4gICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGFuaW1hdGlvbik7XG4gICAgY29udGFpbmVyLmNsYXNzTmFtZSA9ICdyaXBwbGVfX2NvbnRhaW5lcic7XG5cbiAgICBpZiAodmFsdWUuY2xhc3MpIHtcbiAgICAgIGNvbnRhaW5lci5jbGFzc05hbWUgKz0gJyAnICsgdmFsdWUuY2xhc3M7XG4gICAgfVxuXG4gICAgdmFyIHNpemUgPSBlbC5jbGllbnRXaWR0aCA+IGVsLmNsaWVudEhlaWdodCA/IGVsLmNsaWVudFdpZHRoIDogZWwuY2xpZW50SGVpZ2h0O1xuICAgIGFuaW1hdGlvbi5jbGFzc05hbWUgPSAncmlwcGxlX19hbmltYXRpb24nO1xuICAgIGFuaW1hdGlvbi5zdHlsZS53aWR0aCA9IHNpemUgKiAodmFsdWUuY2VudGVyID8gMSA6IDIpICsgJ3B4JztcbiAgICBhbmltYXRpb24uc3R5bGUuaGVpZ2h0ID0gYW5pbWF0aW9uLnN0eWxlLndpZHRoO1xuXG4gICAgZWwuYXBwZW5kQ2hpbGQoY29udGFpbmVyKTtcbiAgICB2YXIgY29tcHV0ZWQgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG4gICAgaWYgKGNvbXB1dGVkLnBvc2l0aW9uICE9PSAnYWJzb2x1dGUnICYmIGNvbXB1dGVkLnBvc2l0aW9uICE9PSAnZml4ZWQnKSBlbC5zdHlsZS5wb3NpdGlvbiA9ICdyZWxhdGl2ZSc7XG5cbiAgICB2YXIgb2Zmc2V0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgdmFyIHggPSB2YWx1ZS5jZW50ZXIgPyAnNTAlJyA6IGUuY2xpZW50WCAtIG9mZnNldC5sZWZ0ICsgJ3B4JztcbiAgICB2YXIgeSA9IHZhbHVlLmNlbnRlciA/ICc1MCUnIDogZS5jbGllbnRZIC0gb2Zmc2V0LnRvcCArICdweCc7XG5cbiAgICBhbmltYXRpb24uY2xhc3NMaXN0LmFkZCgncmlwcGxlX19hbmltYXRpb24tLWVudGVyJyk7XG4gICAgYW5pbWF0aW9uLmNsYXNzTGlzdC5hZGQoJ3JpcHBsZV9fYW5pbWF0aW9uLS12aXNpYmxlJyk7XG4gICAgc3R5bGUoYW5pbWF0aW9uLCAndHJhbnNsYXRlKC01MCUsIC01MCUpIHRyYW5zbGF0ZSgnICsgeCArICcsICcgKyB5ICsgJykgc2NhbGUzZCgwLjAxLDAuMDEsMC4wMSknKTtcbiAgICBhbmltYXRpb24uZGF0YXNldC5hY3RpdmF0ZWQgPSBEYXRlLm5vdygpO1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBhbmltYXRpb24uY2xhc3NMaXN0LnJlbW92ZSgncmlwcGxlX19hbmltYXRpb24tLWVudGVyJyk7XG4gICAgICBzdHlsZShhbmltYXRpb24sICd0cmFuc2xhdGUoLTUwJSwgLTUwJSkgdHJhbnNsYXRlKCcgKyB4ICsgJywgJyArIHkgKyAnKSAgc2NhbGUzZCgwLjk5LDAuOTksMC45OSknKTtcbiAgICB9LCAwKTtcbiAgfSxcblxuICBoaWRlOiBmdW5jdGlvbiBoaWRlKGVsKSB7XG4gICAgaWYgKCFlbC5fcmlwcGxlIHx8ICFlbC5fcmlwcGxlLmVuYWJsZWQpIHJldHVybjtcblxuICAgIHZhciByaXBwbGVzID0gZWwuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgncmlwcGxlX19hbmltYXRpb24nKTtcblxuICAgIGlmIChyaXBwbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIHZhciBhbmltYXRpb24gPSByaXBwbGVzW3JpcHBsZXMubGVuZ3RoIC0gMV07XG4gICAgdmFyIGRpZmYgPSBEYXRlLm5vdygpIC0gTnVtYmVyKGFuaW1hdGlvbi5kYXRhc2V0LmFjdGl2YXRlZCk7XG4gICAgdmFyIGRlbGF5ID0gNDAwIC0gZGlmZjtcblxuICAgIGRlbGF5ID0gZGVsYXkgPCAwID8gMCA6IGRlbGF5O1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBhbmltYXRpb24uY2xhc3NMaXN0LnJlbW92ZSgncmlwcGxlX19hbmltYXRpb24tLXZpc2libGUnKTtcblxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIE5lZWQgdG8gZmlndXJlIG91dCBhIG5ldyB3YXkgdG8gZG8gdGhpc1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmIChyaXBwbGVzLmxlbmd0aCA8IDEpIGVsLnN0eWxlLnBvc2l0aW9uID0gbnVsbDtcbiAgICAgICAgICBhbmltYXRpb24ucGFyZW50Tm9kZSAmJiBlbC5yZW1vdmVDaGlsZChhbmltYXRpb24ucGFyZW50Tm9kZSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHt9XG4gICAgICB9LCAzMDApO1xuICAgIH0sIGRlbGF5KTtcbiAgfVxufTtcblxuZnVuY3Rpb24gaXNSaXBwbGVFbmFibGVkKHZhbHVlKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8ICEhdmFsdWU7XG59XG5cbmZ1bmN0aW9uIHJpcHBsZVNob3coZSkge1xuICB2YXIgdmFsdWUgPSB7fTtcbiAgdmFyIGVsZW1lbnQgPSBlLmN1cnJlbnRUYXJnZXQ7XG4gIHZhbHVlLmNlbnRlciA9IGVsZW1lbnQuX3JpcHBsZS5jZW50ZXJlZDtcbiAgaWYgKGVsZW1lbnQuX3JpcHBsZS5jbGFzcykge1xuICAgIHZhbHVlLmNsYXNzID0gZWxlbWVudC5fcmlwcGxlLmNsYXNzO1xuICB9XG4gIHJpcHBsZS5zaG93KGUsIGVsZW1lbnQsIHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gcmlwcGxlSGlkZShlKSB7XG4gIHJpcHBsZS5oaWRlKGUuY3VycmVudFRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVJpcHBsZShlbCwgYmluZGluZywgd2FzRW5hYmxlZCkge1xuICB2YXIgZW5hYmxlZCA9IGlzUmlwcGxlRW5hYmxlZChiaW5kaW5nLnZhbHVlKTtcbiAgaWYgKCFlbmFibGVkKSB7XG4gICAgcmlwcGxlLmhpZGUoZWwpO1xuICB9XG4gIGVsLl9yaXBwbGUgPSBlbC5fcmlwcGxlIHx8IHt9O1xuICBlbC5fcmlwcGxlLmVuYWJsZWQgPSBlbmFibGVkO1xuICB2YXIgdmFsdWUgPSBiaW5kaW5nLnZhbHVlIHx8IHt9O1xuICBpZiAodmFsdWUuY2VudGVyKSB7XG4gICAgZWwuX3JpcHBsZS5jZW50ZXJlZCA9IHRydWU7XG4gIH1cbiAgaWYgKHZhbHVlLmNsYXNzKSB7XG4gICAgZWwuX3JpcHBsZS5jbGFzcyA9IGJpbmRpbmcudmFsdWUuY2xhc3M7XG4gIH1cbiAgaWYgKGVuYWJsZWQgJiYgIXdhc0VuYWJsZWQpIHtcbiAgICBpZiAoJ29udG91Y2hzdGFydCcgaW4gd2luZG93KSB7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHJpcHBsZUhpZGUsIGZhbHNlKTtcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoY2FuY2VsJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICAgIH1cblxuICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHJpcHBsZVNob3csIGZhbHNlKTtcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gICAgLy8gQW5jaG9yIHRhZ3MgY2FuIGJlIGRyYWdnZWQsIGNhdXNlcyBvdGhlciBoaWRlcyB0byBmYWlsIC0gIzE1MzdcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdkcmFnc3RhcnQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gIH0gZWxzZSBpZiAoIWVuYWJsZWQgJiYgd2FzRW5hYmxlZCkge1xuICAgIHJlbW92ZUxpc3RlbmVycyhlbCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVtb3ZlTGlzdGVuZXJzKGVsKSB7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCByaXBwbGVTaG93LCBmYWxzZSk7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHJpcHBsZVNob3csIGZhbHNlKTtcbiAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG4gIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoY2FuY2VsJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgcmlwcGxlSGlkZSwgZmFsc2UpO1xuICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcmFnc3RhcnQnLCByaXBwbGVIaWRlLCBmYWxzZSk7XG59XG5cbmZ1bmN0aW9uIGRpcmVjdGl2ZShlbCwgYmluZGluZykge1xuICB1cGRhdGVSaXBwbGUoZWwsIGJpbmRpbmcsIGZhbHNlKTtcbn1cblxuZnVuY3Rpb24gdW5iaW5kKGVsLCBiaW5kaW5nKSB7XG4gIGRlbGV0ZSBlbC5fcmlwcGxlO1xuICByZW1vdmVMaXN0ZW5lcnMoZWwpO1xufVxuXG5mdW5jdGlvbiB1cGRhdGUoZWwsIGJpbmRpbmcpIHtcbiAgaWYgKGJpbmRpbmcudmFsdWUgPT09IGJpbmRpbmcub2xkVmFsdWUpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICB2YXIgd2FzRW5hYmxlZCA9IGlzUmlwcGxlRW5hYmxlZChiaW5kaW5nLm9sZFZhbHVlKTtcbiAgdXBkYXRlUmlwcGxlKGVsLCBiaW5kaW5nLCB3YXNFbmFibGVkKTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyaXBwbGUnLFxuICBiaW5kOiBkaXJlY3RpdmUsXG4gIHVuYmluZDogdW5iaW5kLFxuICB1cGRhdGU6IHVwZGF0ZVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2xvYWRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3ZhbGlkYXRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnaW5wdXQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbG9hZGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX192YWxpZGF0YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc0ZvY3VzZWQ6IGZhbHNlLFxuICAgICAgdGFiRm9jdXNlZDogZmFsc2UsXG4gICAgICBpbnRlcm5hbFRhYkluZGV4OiBudWxsLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXBwZW5kSWNvbjogU3RyaW5nLFxuICAgIGFwcGVuZEljb25DYjogRnVuY3Rpb24sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgaGludDogU3RyaW5nLFxuICAgIGhpZGVEZXRhaWxzOiBCb29sZWFuLFxuICAgIGxhYmVsOiBTdHJpbmcsXG4gICAgcGVyc2lzdGVudEhpbnQ6IEJvb2xlYW4sXG4gICAgcGxhY2Vob2xkZXI6IFN0cmluZyxcbiAgICBwcmVwZW5kSWNvbjogU3RyaW5nLFxuICAgIHByZXBlbmRJY29uQ2I6IEZ1bmN0aW9uLFxuICAgIHJlYWRvbmx5OiBCb29sZWFuLFxuICAgIHJlcXVpcmVkOiBCb29sZWFuLFxuICAgIHRhYmluZGV4OiB7XG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICB0b2dnbGVLZXlzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gWzEzLCAzMl07XG4gICAgICB9XG4gICAgfSxcbiAgICB2YWx1ZToge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgaW5wdXRHcm91cENsYXNzZXM6IGZ1bmN0aW9uIGlucHV0R3JvdXBDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAnaW5wdXQtZ3JvdXAnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFzeW5jLWxvYWRpbmcnOiB0aGlzLmxvYWRpbmcgIT09IGZhbHNlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWZvY3VzZWQnOiB0aGlzLmlzRm9jdXNlZCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXJ0eSc6IHRoaXMuaXNEaXJ0eSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS10YWItZm9jdXNlZCc6IHRoaXMudGFiRm9jdXNlZCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZXJyb3InOiB0aGlzLmhhc0Vycm9yLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFwcGVuZC1pY29uJzogdGhpcy5hcHBlbmRJY29uLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXByZXBlbmQtaWNvbic6IHRoaXMucHJlcGVuZEljb24sXG4gICAgICAgICdpbnB1dC1ncm91cC0tcmVxdWlyZWQnOiB0aGlzLnJlcXVpcmVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWhpZGUtZGV0YWlscyc6IHRoaXMuaGlkZURldGFpbHMsXG4gICAgICAgICdpbnB1dC1ncm91cC0tcGxhY2Vob2xkZXInOiAhIXRoaXMucGxhY2Vob2xkZXIsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH0sIHRoaXMuY2xhc3Nlcyk7XG4gICAgfSxcbiAgICBpc0RpcnR5OiBmdW5jdGlvbiBpc0RpcnR5KCkge1xuICAgICAgcmV0dXJuICEhdGhpcy5pbnB1dFZhbHVlO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ3JvdXBGb2N1czogZnVuY3Rpb24gZ3JvdXBGb2N1cyhlKSB7fSxcbiAgICBncm91cEJsdXI6IGZ1bmN0aW9uIGdyb3VwQmx1cihlKSB7XG4gICAgICB0aGlzLnRhYkZvY3VzZWQgPSBmYWxzZTtcbiAgICB9LFxuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICBmb3I6IHRoaXMuJGF0dHJzLmlkXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmxhYmVsIHx8IHRoaXMubGFiZWwpO1xuICAgIH0sXG4gICAgZ2VuTWVzc2FnZXM6IGZ1bmN0aW9uIGdlbk1lc3NhZ2VzKCkge1xuICAgICAgdmFyIG1lc3NhZ2VzID0gbnVsbDtcblxuICAgICAgaWYgKHRoaXMuaGludCAmJiAodGhpcy5pc0ZvY3VzZWQgfHwgdGhpcy5wZXJzaXN0ZW50SGludCkgJiYgIXRoaXMudmFsaWRhdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIG1lc3NhZ2VzID0gW3RoaXMuZ2VuSGludCgpXTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWxpZGF0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgbWVzc2FnZXMgPSBbdGhpcy5nZW5FcnJvcih0aGlzLnZhbGlkYXRpb25zWzBdKV07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIG5hbWU6ICdzbGlkZS15LXRyYW5zaXRpb24nXG4gICAgICAgIH1cbiAgICAgIH0sIG1lc3NhZ2VzKTtcbiAgICB9LFxuICAgIGdlbkhpbnQ6IGZ1bmN0aW9uIGdlbkhpbnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXBfX21lc3NhZ2VzIGlucHV0LWdyb3VwX19oaW50JyxcbiAgICAgICAgZG9tUHJvcHM6IHsgaW5uZXJIVE1MOiB0aGlzLmhpbnQgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5FcnJvcjogZnVuY3Rpb24gZ2VuRXJyb3IoZXJyb3IpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdpbnB1dC1ncm91cF9fbWVzc2FnZXMgaW5wdXQtZ3JvdXBfX2Vycm9yJ1xuICAgICAgfSwgZXJyb3IpO1xuICAgIH0sXG4gICAgZ2VuSWNvbjogZnVuY3Rpb24gZ2VuSWNvbih0eXBlKSB7XG4gICAgICB2YXIgX2NsYXNzO1xuXG4gICAgICB2YXIgZGVmYXVsdENhbGxiYWNrID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiBudWxsO1xuXG4gICAgICB2YXIgc2hvdWxkQ2xlYXIgPSB0eXBlID09PSAnYXBwZW5kJyAmJiB0aGlzLmNsZWFyYWJsZSAmJiB0aGlzLmlzRGlydHk7XG4gICAgICB2YXIgaWNvbiA9IHNob3VsZENsZWFyID8gJ2NsZWFyJyA6IHRoaXNbdHlwZSArICdJY29uJ107XG4gICAgICB2YXIgY2FsbGJhY2sgPSBzaG91bGRDbGVhciA/IHRoaXMuY2xlYXJhYmxlQ2FsbGJhY2sgOiB0aGlzW3R5cGUgKyAnSWNvbkNiJ10gfHwgZGVmYXVsdENhbGxiYWNrO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2NvbXBvbmVudHNfVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAnY2xhc3MnOiAoX2NsYXNzID0ge30sIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdpbnB1dC1ncm91cF9fJyArIHR5cGUgKyAnLWljb24nLCB0cnVlKSwgX2RlZmluZVByb3BlcnR5KF9jbGFzcywgJ2lucHV0LWdyb3VwX19pY29uLWNiJywgISFjYWxsYmFjayksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdpbnB1dC1ncm91cF9faWNvbi1jbGVhcmFibGUnLCBzaG91bGRDbGVhciksIF9jbGFzcyksXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWRcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgaWYgKCFjYWxsYmFjaykgcmV0dXJuO1xuXG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGljb24pO1xuICAgIH0sXG4gICAgZ2VuSW5wdXRHcm91cDogZnVuY3Rpb24gZ2VuSW5wdXRHcm91cChpbnB1dCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGRhdGEgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IHt9O1xuICAgICAgdmFyIGRlZmF1bHRBcHBlbmRDYWxsYmFjayA9IGFyZ3VtZW50cy5sZW5ndGggPiAyICYmIGFyZ3VtZW50c1syXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzJdIDogbnVsbDtcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgICB2YXIgd3JhcHBlckNoaWxkcmVuID0gW107XG4gICAgICB2YXIgZGV0YWlsc0NoaWxkcmVuID0gW107XG5cbiAgICAgIGRhdGEgPSBPYmplY3QuYXNzaWduKHt9LCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuaW5wdXRHcm91cENsYXNzZXMsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdGFiaW5kZXg6IHRoaXMuZGlzYWJsZWQgPyAtMSA6IHRoaXMuaW50ZXJuYWxUYWJJbmRleCB8fCB0aGlzLnRhYmluZGV4XG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgZm9jdXM6IHRoaXMuZ3JvdXBGb2N1cyxcbiAgICAgICAgICBibHVyOiB0aGlzLmdyb3VwQmx1cixcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMudGFiRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAga2V5dXA6IGZ1bmN0aW9uIGtleXVwKGUpIHtcbiAgICAgICAgICAgIGlmIChbOSwgMTZdLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgX3RoaXMudGFiRm9jdXNlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAgIGlmICghX3RoaXMudG9nZ2xlKSByZXR1cm47XG5cbiAgICAgICAgICAgIGlmIChfdGhpcy50b2dnbGVLZXlzLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGRhdGEpO1xuXG4gICAgICBpZiAodGhpcy4kc2xvdHMubGFiZWwgfHwgdGhpcy5sYWJlbCkge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuTGFiZWwoKSk7XG4gICAgICB9XG5cbiAgICAgIHdyYXBwZXJDaGlsZHJlbi5wdXNoKGlucHV0KTtcblxuICAgICAgaWYgKHRoaXMucHJlcGVuZEljb24pIHtcbiAgICAgICAgd3JhcHBlckNoaWxkcmVuLnVuc2hpZnQodGhpcy5nZW5JY29uKCdwcmVwZW5kJykpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5hcHBlbmRJY29uIHx8IHRoaXMuY2xlYXJhYmxlKSB7XG4gICAgICAgIHdyYXBwZXJDaGlsZHJlbi5wdXNoKHRoaXMuZ2VuSWNvbignYXBwZW5kJywgZGVmYXVsdEFwcGVuZENhbGxiYWNrKSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBwcm9ncmVzcyA9IHRoaXMuZ2VuUHJvZ3Jlc3MoKTtcbiAgICAgIHByb2dyZXNzICYmIGRldGFpbHNDaGlsZHJlbi5wdXNoKHByb2dyZXNzKTtcblxuICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdpbnB1dC1ncm91cF9faW5wdXQnXG4gICAgICB9LCB3cmFwcGVyQ2hpbGRyZW4pKTtcblxuICAgICAgIXRoaXMuaGlkZURldGFpbHMgJiYgZGV0YWlsc0NoaWxkcmVuLnB1c2godGhpcy5nZW5NZXNzYWdlcygpKTtcblxuICAgICAgaWYgKHRoaXMuY291bnRlcikge1xuICAgICAgICBkZXRhaWxzQ2hpbGRyZW4ucHVzaCh0aGlzLmdlbkNvdW50ZXIoKSk7XG4gICAgICB9XG5cbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXBfX2RldGFpbHMnXG4gICAgICB9LCBkZXRhaWxzQ2hpbGRyZW4pKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGRhdGEsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cbmZ1bmN0aW9uIHNlYXJjaENoaWxkcmVuKGNoaWxkcmVuKSB7XG4gIHZhciByZXN1bHRzID0gW107XG4gIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBjaGlsZHJlbi5sZW5ndGg7IGluZGV4KyspIHtcbiAgICB2YXIgY2hpbGQgPSBjaGlsZHJlbltpbmRleF07XG4gICAgaWYgKGNoaWxkLmlzQWN0aXZlICYmIGNoaWxkLmlzRGVwZW5kZW50KSB7XG4gICAgICByZXN1bHRzLnB1c2goY2hpbGQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHRzLnB1c2guYXBwbHkocmVzdWx0cywgX3RvQ29uc3VtYWJsZUFycmF5KHNlYXJjaENoaWxkcmVuKGNoaWxkLiRjaGlsZHJlbikpKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0cztcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdkZXBlbmRlbnQnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNsb3NlRGVwZW5kZW50czogdHJ1ZSxcbiAgICAgIGlzRGVwZW5kZW50OiB0cnVlXG4gICAgfTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRPcGVuRGVwZW5kZW50czogZnVuY3Rpb24gZ2V0T3BlbkRlcGVuZGVudHMoKSB7XG4gICAgICBpZiAodGhpcy5jbG9zZURlcGVuZGVudHMpIHJldHVybiBzZWFyY2hDaGlsZHJlbih0aGlzLiRjaGlsZHJlbik7XG5cbiAgICAgIHJldHVybiBbXTtcbiAgICB9LFxuICAgIGdldE9wZW5EZXBlbmRlbnRFbGVtZW50czogZnVuY3Rpb24gZ2V0T3BlbkRlcGVuZGVudEVsZW1lbnRzKCkge1xuICAgICAgdmFyIHJlc3VsdCA9IFtdO1xuICAgICAgdmFyIG9wZW5EZXBlbmRlbnRzID0gdGhpcy5nZXRPcGVuRGVwZW5kZW50cygpO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoLmFwcGx5KHJlc3VsdCwgX3RvQ29uc3VtYWJsZUFycmF5KG9wZW5EZXBlbmRlbnRzW2luZGV4XS5nZXRDbGlja2FibGVEZXBlbmRlbnRFbGVtZW50cygpKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSxcbiAgICBnZXRDbGlja2FibGVEZXBlbmRlbnRFbGVtZW50czogZnVuY3Rpb24gZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMoKSB7XG4gICAgICB2YXIgcmVzdWx0ID0gW3RoaXMuJGVsXTtcbiAgICAgIGlmICh0aGlzLiRyZWZzLmNvbnRlbnQpIHJlc3VsdC5wdXNoKHRoaXMuJHJlZnMuY29udGVudCk7XG4gICAgICByZXN1bHQucHVzaC5hcHBseShyZXN1bHQsIF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdldE9wZW5EZXBlbmRlbnRFbGVtZW50cygpKSk7XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKHZhbCkgcmV0dXJuO1xuXG4gICAgICB2YXIgb3BlbkRlcGVuZGVudHMgPSB0aGlzLmdldE9wZW5EZXBlbmRlbnRzKCk7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIG9wZW5EZXBlbmRlbnRzW2luZGV4XS5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG5cblxuLyoqIEBtaXhpbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdyaXBwbGVhYmxlJyxcblxuICBkaXJlY3RpdmVzOiB7IFJpcHBsZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19kaXJlY3RpdmVzX3JpcHBsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgcHJvcHM6IHtcbiAgICByaXBwbGU6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuUmlwcGxlOiBmdW5jdGlvbiBnZW5SaXBwbGUoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGF0YSA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogeyBkaXJlY3RpdmVzOiBbXSB9O1xuXG4gICAgICBkYXRhLmNsYXNzID0gdGhpcy5yaXBwbGVDbGFzc2VzIHx8ICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUnO1xuICAgICAgZGF0YS5kaXJlY3RpdmVzLnB1c2goe1xuICAgICAgICBuYW1lOiAncmlwcGxlJyxcbiAgICAgICAgdmFsdWU6IHRoaXMucmlwcGxlICYmICF0aGlzLmRpc2FibGVkICYmIHsgY2VudGVyOiB0cnVlIH1cbiAgICAgIH0pO1xuICAgICAgZGF0YS5vbiA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuJGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgIF90aGlzLiRlbWl0KCdjbGljaycsIGUpO1xuICAgICAgICAgIF90aGlzLnRvZ2dsZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGRhdGEpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgcGFkU3RhcnQgPSBmdW5jdGlvbiBwYWRTdGFydChzdHJpbmcsIHRhcmdldExlbmd0aCwgcGFkU3RyaW5nKSB7XG4gIHRhcmdldExlbmd0aCA9IHRhcmdldExlbmd0aCA+PiAwO1xuICBzdHJpbmcgPSBTdHJpbmcoc3RyaW5nKTtcbiAgcGFkU3RyaW5nID0gU3RyaW5nKHBhZFN0cmluZyk7XG4gIGlmIChzdHJpbmcubGVuZ3RoID4gdGFyZ2V0TGVuZ3RoKSB7XG4gICAgcmV0dXJuIFN0cmluZyhzdHJpbmcpO1xuICB9XG5cbiAgdGFyZ2V0TGVuZ3RoID0gdGFyZ2V0TGVuZ3RoIC0gc3RyaW5nLmxlbmd0aDtcbiAgaWYgKHRhcmdldExlbmd0aCA+IHBhZFN0cmluZy5sZW5ndGgpIHtcbiAgICBwYWRTdHJpbmcgKz0gcGFkU3RyaW5nLnJlcGVhdCh0YXJnZXRMZW5ndGggLyBwYWRTdHJpbmcubGVuZ3RoKTtcbiAgfVxuICByZXR1cm4gcGFkU3RyaW5nLnNsaWNlKDAsIHRhcmdldExlbmd0aCkgKyBTdHJpbmcoc3RyaW5nKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoZnVuY3Rpb24gKG4pIHtcbiAgdmFyIGxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogMjtcbiAgcmV0dXJuIHBhZFN0YXJ0KG4sIGxlbmd0aCwgJzAnKTtcbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBTU1JCb290YWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIFVzZWQgaW4gbGF5b3V0IGNvbXBvbmVudHMgKGRyYXdlciwgdG9vbGJhciwgY29udGVudClcbiAqIHRvIGF2b2lkIGFuIGVudHJ5IGFuaW1hdGlvbiB3aGVuIHVzaW5nIFNTUlxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Nzci1ib290YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNCb290ZWQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAvLyBVc2Ugc2V0QXR0cmlidXRlIGluc3RlYWQgb2YgZGF0YXNldFxuICAgIC8vIGJlY2F1c2UgZGF0YXNldCBkb2VzIG5vdCB3b3JrIHdlbGxcbiAgICAvLyB3aXRoIHVuaXQgdGVzdHNcbiAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgIF90aGlzLiRlbC5zZXRBdHRyaWJ1dGUoJ2RhdGEtYm9vdGVkJywgdHJ1ZSk7XG4gICAgICBfdGhpcy5pc0Jvb3RlZCA9IHRydWU7XG4gICAgfSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd0cmFuc2l0aW9uYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBtb2RlOiBTdHJpbmcsXG4gICAgb3JpZ2luOiBTdHJpbmcsXG4gICAgdHJhbnNpdGlvbjogU3RyaW5nXG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xudmFyIF90eXBlb2YgPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgdHlwZW9mIFN5bWJvbC5pdGVyYXRvciA9PT0gXCJzeW1ib2xcIiA/IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIHR5cGVvZiBvYmo7IH0gOiBmdW5jdGlvbiAob2JqKSB7IHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqOyB9O1xuXG5cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUF0dGFjaFRhcmdldCh2YWwpIHtcbiAgdmFyIHR5cGUgPSB0eXBlb2YgdmFsID09PSAndW5kZWZpbmVkJyA/ICd1bmRlZmluZWQnIDogX3R5cGVvZih2YWwpO1xuXG4gIGlmICh0eXBlID09PSAnYm9vbGVhbicgfHwgdHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiB0cnVlO1xuXG4gIHJldHVybiB2YWwubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFO1xufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2RldGFjaGFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBhdHRhY2g6IHtcbiAgICAgIHR5cGU6IG51bGwsXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIHZhbGlkYXRvcjogdmFsaWRhdGVBdHRhY2hUYXJnZXRcbiAgICB9LFxuICAgIGNvbnRlbnRDbGFzczoge1xuICAgICAgZGVmYXVsdDogJydcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmluaXREZXRhY2goKTtcbiAgfSxcbiAgZGVhY3RpdmF0ZWQ6IGZ1bmN0aW9uIGRlYWN0aXZhdGVkKCkge1xuICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAoIXRoaXMuJHJlZnMuY29udGVudCkgcmV0dXJuO1xuXG4gICAgLy8gSUUxMSBGaXhcbiAgICB0cnkge1xuICAgICAgdGhpcy4kcmVmcy5jb250ZW50LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy4kcmVmcy5jb250ZW50KTtcbiAgICB9IGNhdGNoIChlKSB7fVxuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGluaXREZXRhY2g6IGZ1bmN0aW9uIGluaXREZXRhY2goKSB7XG4gICAgICBpZiAodGhpcy5faXNEZXN0cm95ZWQgfHwgIXRoaXMuJHJlZnMuY29udGVudCB8fFxuICAgICAgLy8gTGVhdmUgbWVudSBpbiBwbGFjZSBpZiBhdHRhY2hlZFxuICAgICAgLy8gYW5kIGRldiBoYXMgbm90IGNoYW5nZWQgdGFyZ2V0XG4gICAgICB0aGlzLmF0dGFjaCA9PT0gJycgfHwgLy8gSWYgdXNlZCBhcyBhIGJvb2xlYW4gcHJvcCAoPHYtbWVudSBhdHRhY2g+KVxuICAgICAgdGhpcy5hdHRhY2ggPT09IHRydWUgfHwgLy8gSWYgYm91bmQgdG8gYSBib29sZWFuICg8di1tZW51IDphdHRhY2g9XCJ0cnVlXCI+KVxuICAgICAgdGhpcy5hdHRhY2ggPT09ICdhdHRhY2gnIC8vIElmIGJvdW5kIGFzIGJvb2xlYW4gcHJvcCBpbiBwdWcgKHYtbWVudShhdHRhY2gpKVxuICAgICAgKSByZXR1cm47XG5cbiAgICAgIHZhciB0YXJnZXQgPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy5hdHRhY2ggPT09IGZhbHNlKSB7XG4gICAgICAgIC8vIERlZmF1bHQsIGRldGFjaCB0byBhcHBcbiAgICAgICAgdGFyZ2V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtYXBwXScpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5hdHRhY2ggPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIC8vIENTUyBzZWxlY3RvclxuICAgICAgICB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRoaXMuYXR0YWNoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIERPTSBFbGVtZW50XG4gICAgICAgIHRhcmdldCA9IHRoaXMuYXR0YWNoO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRhcmdldCkge1xuICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdVbmFibGUgdG8gbG9jYXRlIHRhcmdldCAnICsgKHRoaXMuYXR0YWNoIHx8ICdbZGF0YS1hcHBdJyksIHRoaXMpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRhcmdldC5pbnNlcnRCZWZvcmUodGhpcy4kcmVmcy5jb250ZW50LCB0YXJnZXQuZmlyc3RDaGlsZCk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAncmV0dXJuYWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgb3JpZ2luYWxWYWx1ZTogbnVsbFxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICByZXR1cm5WYWx1ZTogbnVsbFxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLm9yaWdpbmFsVmFsdWUgPSB0aGlzLnJldHVyblZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4kZW1pdCgndXBkYXRlOnJldHVyblZhbHVlJywgdGhpcy5vcmlnaW5hbFZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHNhdmU6IGZ1bmN0aW9uIHNhdmUodmFsdWUpIHtcbiAgICAgIHRoaXMub3JpZ2luYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkNhcmRBY3Rpb25zICovXG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkNhcmRUZXh0ICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkNhcmRUaXRsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjEpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNhcmQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJkTWVkaWEgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJkVGl0bGUgKi9cblxuXG5cblxuXG52YXIgVkNhcmRBY3Rpb25zID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdjYXJkX19hY3Rpb25zJyk7XG52YXIgVkNhcmRUZXh0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdjYXJkX190ZXh0Jyk7XG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDYXJkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNhcmRNZWRpYV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkVGl0bGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkVGl0bGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVkNhcmRBY3Rpb25zLm5hbWUsIFZDYXJkQWN0aW9ucyk7XG4gIFZ1ZS5jb21wb25lbnQoVkNhcmRUZXh0Lm5hbWUsIFZDYXJkVGV4dCk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hlY2tib3hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTI4KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hlY2tib3hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoZWNrYm94X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDMwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk1lbnVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQ2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTWVudV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk1lbnVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDMxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IEdyaWQ7XG5mdW5jdGlvbiBHcmlkKG5hbWUpIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndi0nICsgbmFtZSxcblxuICAgIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgICBwcm9wczoge1xuICAgICAgaWQ6IFN0cmluZyxcbiAgICAgIHRhZzoge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIGRlZmF1bHQ6ICdkaXYnXG4gICAgICB9XG4gICAgfSxcblxuICAgIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICAgIHZhciBwcm9wcyA9IF9yZWYucHJvcHMsXG4gICAgICAgICAgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgICBjaGlsZHJlbiA9IF9yZWYuY2hpbGRyZW47XG5cbiAgICAgIGRhdGEuc3RhdGljQ2xhc3MgPSAobmFtZSArICcgJyArIChkYXRhLnN0YXRpY0NsYXNzIHx8ICcnKSkudHJpbSgpO1xuXG4gICAgICBpZiAoZGF0YS5hdHRycykge1xuICAgICAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5rZXlzKGRhdGEuYXR0cnMpLmZpbHRlcihmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgdmFyIHZhbHVlID0gZGF0YS5hdHRyc1trZXldO1xuICAgICAgICAgIHJldHVybiB2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY2xhc3Nlcy5sZW5ndGgpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyAnICsgY2xhc3Nlcy5qb2luKCcgJyk7XG4gICAgICAgIGRlbGV0ZSBkYXRhLmF0dHJzO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgZGF0YS5kb21Qcm9wcyA9IGRhdGEuZG9tUHJvcHMgfHwge307XG4gICAgICAgIGRhdGEuZG9tUHJvcHMuaWQgPSBwcm9wcy5pZDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGgocHJvcHMudGFnLCBkYXRhLCBjaGlsZHJlbik7XG4gICAgfVxuICB9O1xufVxuXG4vKioqLyB9KSxcbi8qIDMzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBjb2xvclRvSW50O1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSBpbnRUb0hleDtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG5cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IGNvbG9yXG4gKiBAcmV0dXJucyB7bnVtYmVyfVxuICovXG5mdW5jdGlvbiBjb2xvclRvSW50KGNvbG9yKSB7XG4gIHZhciByZ2IgPSB2b2lkIDA7XG5cbiAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ251bWJlcicpIHtcbiAgICByZ2IgPSBjb2xvcjtcbiAgfSBlbHNlIGlmICh0eXBlb2YgY29sb3IgPT09ICdzdHJpbmcnKSB7XG4gICAgdmFyIGMgPSBjb2xvclswXSA9PT0gJyMnID8gY29sb3Iuc3Vic3RyaW5nKDEpIDogY29sb3I7XG4gICAgaWYgKGMubGVuZ3RoID09PSAzKSB7XG4gICAgICBjID0gYy5zcGxpdCgnJykubWFwKGZ1bmN0aW9uIChjaGFyKSB7XG4gICAgICAgIHJldHVybiBjaGFyICsgY2hhcjtcbiAgICAgIH0pLmpvaW4oJycpO1xuICAgIH1cbiAgICBpZiAoYy5sZW5ndGggIT09IDYpIHtcbiAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdcXCcnICsgY29sb3IgKyAnXFwnIGlzIG5vdCBhIHZhbGlkIHJnYiBjb2xvcicpO1xuICAgIH1cbiAgICByZ2IgPSBwYXJzZUludChjLCAxNik7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ29sb3JzIGNhbiBvbmx5IGJlIG51bWJlcnMgb3Igc3RyaW5ncywgcmVjaWV2ZWQgJyArIGNvbG9yLmNvbnN0cnVjdG9yLm5hbWUgKyAnIGluc3RlYWQnKTtcbiAgfVxuXG4gIGlmIChyZ2IgPCAwKSB7XG4gICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ0NvbG9ycyBjYW5ub3QgYmUgbmVnYXRpdmU6IFxcJycgKyBjb2xvciArICdcXCcnKTtcbiAgICByZ2IgPSAwO1xuICB9IGVsc2UgaWYgKHJnYiA+IDB4ZmZmZmZmIHx8IGlzTmFOKHJnYikpIHtcbiAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnXFwnJyArIGNvbG9yICsgJ1xcJyBpcyBub3QgYSB2YWxpZCByZ2IgY29sb3InKTtcbiAgICByZ2IgPSAweGZmZmZmZjtcbiAgfVxuXG4gIHJldHVybiByZ2I7XG59XG5cbi8qKlxuICogQHBhcmFtIHtudW1iZXJ9IGNvbG9yXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5mdW5jdGlvbiBpbnRUb0hleChjb2xvcikge1xuICBjb2xvciA9IGNvbG9yLnRvU3RyaW5nKDE2KTtcblxuICBpZiAoY29sb3IubGVuZ3RoIDwgNikgY29sb3IgPSAnMCcucmVwZWF0KDYgLSBjb2xvci5sZW5ndGgpICsgY29sb3I7XG5cbiAgcmV0dXJuICcjJyArIGNvbG9yO1xufVxuXG4vKioqLyB9KSxcbi8qIDM0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5NCk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQXZhdGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDM1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2J1dHRvbi1ncm91cCcsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcmVnaXN0cmFibGVfX1tcImJcIiAvKiBwcm92aWRlICovXSkoJ2J1dHRvbkdyb3VwJyldLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJ1dHRvbnM6IFtdLFxuICAgICAgbGlzdGVuZXJzOiBbXSxcbiAgICAgIGlzRGVzdHJveWluZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBidXR0b25zOiAndXBkYXRlJ1xuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRWYWx1ZTogZnVuY3Rpb24gZ2V0VmFsdWUoaSkge1xuICAgICAgaWYgKHRoaXMuYnV0dG9uc1tpXS52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvbnNbaV0udmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpeCBmb3IgdGVzdGluZywgdGhpcyBzaG91bGQgYWx3YXlzIGJlIGZhbHNlIGluIHRoZSBicm93c2VyXG4gICAgICBpZiAodGhpcy5idXR0b25zW2ldLiRlbC52YWx1ZSAhPSBudWxsICYmIHRoaXMuYnV0dG9uc1tpXS4kZWwudmFsdWUgIT09ICcnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvbnNbaV0uJGVsLnZhbHVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaTtcbiAgICB9LFxuICAgIHVwZGF0ZTogZnVuY3Rpb24gdXBkYXRlKCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0gW107XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5idXR0b25zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBlbG0gPSB0aGlzLmJ1dHRvbnNbaV0uJGVsO1xuICAgICAgICB2YXIgYnV0dG9uID0gdGhpcy5idXR0b25zW2ldO1xuXG4gICAgICAgIGVsbS5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtb25seS1jaGlsZCcpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzU2VsZWN0ZWQoaSkpIHtcbiAgICAgICAgICAhYnV0dG9uLnRvICYmIChidXR0b24uaXNBY3RpdmUgPSB0cnVlKTtcbiAgICAgICAgICBzZWxlY3RlZC5wdXNoKGkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICFidXR0b24udG8gJiYgKGJ1dHRvbi5pc0FjdGl2ZSA9IGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoc2VsZWN0ZWQubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uc1tzZWxlY3RlZFswXV0uJGVsLnNldEF0dHJpYnV0ZSgnZGF0YS1vbmx5LWNoaWxkJywgdHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZW5zdXJlTWFuZGF0b3J5SW52YXJpYW50KHNlbGVjdGVkLmxlbmd0aCA+IDApO1xuICAgIH0sXG4gICAgcmVnaXN0ZXI6IGZ1bmN0aW9uIHJlZ2lzdGVyKGJ1dHRvbikge1xuICAgICAgdmFyIGluZGV4ID0gdGhpcy5idXR0b25zLmxlbmd0aDtcbiAgICAgIHRoaXMuYnV0dG9ucy5wdXNoKGJ1dHRvbik7XG4gICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKHRoaXMudXBkYXRlVmFsdWUuYmluZCh0aGlzLCBpbmRleCkpO1xuICAgICAgYnV0dG9uLiRvbignY2xpY2snLCB0aGlzLmxpc3RlbmVyc1tpbmRleF0pO1xuICAgIH0sXG4gICAgdW5yZWdpc3RlcjogZnVuY3Rpb24gdW5yZWdpc3RlcihidXR0b25Ub1VucmVnaXN0ZXIpIHtcbiAgICAgIC8vIEJhc2ljIGNsZWFudXAgaWYgd2UncmUgZGVzdHJveWluZ1xuICAgICAgaWYgKHRoaXMuaXNEZXN0cm95aW5nKSB7XG4gICAgICAgIHZhciBpbmRleCA9IHRoaXMuYnV0dG9ucy5pbmRleE9mKGJ1dHRvblRvVW5yZWdpc3Rlcik7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBidXR0b25Ub1VucmVnaXN0ZXIuJG9mZignY2xpY2snLCB0aGlzLmxpc3RlbmVyc1tpbmRleF0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5yZWRvUmVnaXN0cmF0aW9ucyhidXR0b25Ub1VucmVnaXN0ZXIpO1xuICAgIH0sXG4gICAgcmVkb1JlZ2lzdHJhdGlvbnM6IGZ1bmN0aW9uIHJlZG9SZWdpc3RyYXRpb25zKGJ1dHRvblRvVW5yZWdpc3Rlcikge1xuICAgICAgdmFyIHNlbGVjdGVkQ291bnQgPSAwO1xuXG4gICAgICB2YXIgYnV0dG9ucyA9IFtdO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMuYnV0dG9ucy5sZW5ndGg7ICsraW5kZXgpIHtcbiAgICAgICAgdmFyIGJ1dHRvbiA9IHRoaXMuYnV0dG9uc1tpbmRleF07XG4gICAgICAgIGlmIChidXR0b24gIT09IGJ1dHRvblRvVW5yZWdpc3Rlcikge1xuICAgICAgICAgIGJ1dHRvbnMucHVzaChidXR0b24pO1xuICAgICAgICAgIHNlbGVjdGVkQ291bnQgKz0gQm9vbGVhbih0aGlzLmlzU2VsZWN0ZWQoaW5kZXgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbi4kb2ZmKCdjbGljaycsIHRoaXMubGlzdGVuZXJzW2luZGV4XSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuYnV0dG9ucyA9IFtdO1xuICAgICAgdGhpcy5saXN0ZW5lcnMgPSBbXTtcblxuICAgICAgZm9yICh2YXIgX2luZGV4ID0gMDsgX2luZGV4IDwgYnV0dG9ucy5sZW5ndGg7ICsrX2luZGV4KSB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXIoYnV0dG9uc1tfaW5kZXhdKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5lbnN1cmVNYW5kYXRvcnlJbnZhcmlhbnQoc2VsZWN0ZWRDb3VudCA+IDApO1xuICAgICAgdGhpcy51cGRhdGVBbGxWYWx1ZXMgJiYgdGhpcy51cGRhdGVBbGxWYWx1ZXMoKTtcbiAgICB9LFxuICAgIGVuc3VyZU1hbmRhdG9yeUludmFyaWFudDogZnVuY3Rpb24gZW5zdXJlTWFuZGF0b3J5SW52YXJpYW50KGhhc1NlbGVjdGVkQWxyZWFkeSkge1xuICAgICAgLy8gUHJlc2VydmUgdGhlIG1hbmRhdG9yeSBpbnZhcmlhbnQgYnkgc2VsZWN0aW5nIHRoZSBmaXJzdCB0cmFja2VkIGJ1dHRvbiwgaWYgbmVlZGVkXG5cbiAgICAgIGlmICghdGhpcy5tYW5kYXRvcnkgfHwgaGFzU2VsZWN0ZWRBbHJlYWR5KSByZXR1cm47XG5cbiAgICAgIGlmICghdGhpcy5saXN0ZW5lcnMubGVuZ3RoKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1RoZXJlIG11c3QgYmUgYXQgbGVhc3Qgb25lIHYtYnRuIGNoaWxkIGlmIHRoZSBtYW5kYXRvcnkgcHJvcGVydHkgaXMgdHJ1ZS4nLCB0aGlzKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxpc3RlbmVyc1swXSgpO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMudXBkYXRlKCk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy5pc0Rlc3Ryb3lpbmcgPSB0cnVlO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RpYWxvZ3Nfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGlhbG9nc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RpYWxvZ3Nfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kZXBlbmRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RldGFjaGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX292ZXJsYXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZXR1cm5hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zdGFja2FibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG4vLyBIZWxwZXJzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRpYWxvZycsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGVwZW5kZW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RldGFjaGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfb3ZlcmxheWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmV0dXJuYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zdGFja2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX2RpcmVjdGl2ZXNfY2xpY2tfb3V0c2lkZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNEZXBlbmRlbnQ6IGZhbHNlLFxuICAgICAgc3RhY2tDbGFzczogJ2RpYWxvZ19fY29udGVudF9fYWN0aXZlJyxcbiAgICAgIHN0YWNrTWluWkluZGV4OiAyMDBcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBwZXJzaXN0ZW50OiBCb29sZWFuLFxuICAgIGZ1bGxzY3JlZW46IEJvb2xlYW4sXG4gICAgZnVsbFdpZHRoOiBCb29sZWFuLFxuICAgIG1heFdpZHRoOiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBOdW1iZXJdLFxuICAgICAgZGVmYXVsdDogJ25vbmUnXG4gICAgfSxcbiAgICBvcmlnaW46IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjZW50ZXIgY2VudGVyJ1xuICAgIH0sXG4gICAgd2lkdGg6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIE51bWJlcl0sXG4gICAgICBkZWZhdWx0OiAnYXV0bydcbiAgICB9LFxuICAgIHNjcm9sbGFibGU6IEJvb2xlYW4sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogW1N0cmluZywgQm9vbGVhbl0sXG4gICAgICBkZWZhdWx0OiAnZGlhbG9nLXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBfcmVmO1xuXG4gICAgICByZXR1cm4gX3JlZiA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgKCdkaWFsb2cgJyArIHRoaXMuY29udGVudENsYXNzKS50cmltKCksIHRydWUpLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgJ2RpYWxvZy0tYWN0aXZlJywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfcmVmLCAnZGlhbG9nLS1wZXJzaXN0ZW50JywgdGhpcy5wZXJzaXN0ZW50KSwgX2RlZmluZVByb3BlcnR5KF9yZWYsICdkaWFsb2ctLWZ1bGxzY3JlZW4nLCB0aGlzLmZ1bGxzY3JlZW4pLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgJ2RpYWxvZy0tc2Nyb2xsYWJsZScsIHRoaXMuc2Nyb2xsYWJsZSksIF9yZWY7XG4gICAgfSxcbiAgICBjb250ZW50Q2xhc3NlczogZnVuY3Rpb24gY29udGVudENsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnZGlhbG9nX19jb250ZW50JzogdHJ1ZSxcbiAgICAgICAgJ2RpYWxvZ19fY29udGVudF9fYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICBpZiAodmFsKSB7XG4gICAgICAgIHRoaXMuc2hvdygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW1vdmVPdmVybGF5KCk7XG4gICAgICAgIHRoaXMudW5iaW5kKCk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5pc0Jvb3RlZCA9IHRoaXMuaXNBY3RpdmU7XG4gICAgdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLnNob3coKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHRoaXMudW5iaW5kKCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgY2xvc2VDb25kaXRpb25hbDogZnVuY3Rpb24gY2xvc2VDb25kaXRpb25hbChlKSB7XG4gICAgICAvLyBjbG9zZSBkaWFsb2cgaWYgIXBlcnNpc3RlbnQsIGNsaWNrZWQgb3V0c2lkZSBhbmQgd2UncmUgdGhlIHRvcG1vc3QgZGlhbG9nLlxuICAgICAgLy8gU2luY2UgdGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgaW4gYSBjYXB0dXJlIGV2ZW50IChib3R0b20gdXApLCB3ZSBzaG91bGRuJ3QgbmVlZCB0byBzdG9wIHByb3BhZ2F0aW9uXG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5wZXJzaXN0ZW50ICYmIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX3V0aWxfaGVscGVyc19fW1wialwiIC8qIGdldFpJbmRleCAqL10pKHRoaXMuJHJlZnMuY29udGVudCkgPj0gdGhpcy5nZXRNYXhaSW5kZXgoKSAmJiAhdGhpcy4kcmVmcy5jb250ZW50LmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICB9LFxuICAgIHNob3c6IGZ1bmN0aW9uIHNob3coKSB7XG4gICAgICAhdGhpcy5mdWxsc2NyZWVuICYmICF0aGlzLmhpZGVPdmVybGF5ICYmIHRoaXMuZ2VuT3ZlcmxheSgpO1xuICAgICAgdGhpcy5mdWxsc2NyZWVuICYmIHRoaXMuaGlkZVNjcm9sbCgpO1xuICAgICAgdGhpcy4kcmVmcy5jb250ZW50LmZvY3VzKCk7XG4gICAgICB0aGlzLiRsaXN0ZW5lcnMua2V5ZG93biAmJiB0aGlzLmJpbmQoKTtcbiAgICB9LFxuICAgIGJpbmQ6IGZ1bmN0aW9uIGJpbmQoKSB7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMub25LZXlkb3duKTtcbiAgICB9LFxuICAgIHVuYmluZDogZnVuY3Rpb24gdW5iaW5kKCkge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLm9uS2V5ZG93bik7XG4gICAgfSxcbiAgICBvbktleWRvd246IGZ1bmN0aW9uIG9uS2V5ZG93bihlKSB7XG4gICAgICB0aGlzLiRlbWl0KCdrZXlkb3duJywgZSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICByZWY6ICdkaWFsb2cnLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICBjbG9zZUNvbmRpdGlvbmFsOiB0aGlzLmNsb3NlQ29uZGl0aW9uYWwsXG4gICAgICAgICAgaW5jbHVkZTogdGhpcy5nZXRPcGVuRGVwZW5kZW50RWxlbWVudHNcbiAgICAgICAgfVxuICAgICAgfSwgeyBuYW1lOiAnc2hvdycsIHZhbHVlOiB0aGlzLmlzQWN0aXZlIH1dLFxuICAgICAgb246IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmICghdGhpcy5mdWxsc2NyZWVuKSB7XG4gICAgICBkYXRhLnN0eWxlID0ge1xuICAgICAgICBtYXhXaWR0aDogdGhpcy5tYXhXaWR0aCA9PT0gJ25vbmUnID8gdW5kZWZpbmVkIDogaXNOYU4odGhpcy5tYXhXaWR0aCkgPyB0aGlzLm1heFdpZHRoIDogdGhpcy5tYXhXaWR0aCArICdweCcsXG4gICAgICAgIHdpZHRoOiB0aGlzLndpZHRoID09PSAnYXV0bycgPyB1bmRlZmluZWQgOiBpc05hTih0aGlzLndpZHRoKSA/IHRoaXMud2lkdGggOiB0aGlzLndpZHRoICsgJ3B4J1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy4kc2xvdHMuYWN0aXZhdG9yKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2RpYWxvZ19fYWN0aXZhdG9yJyxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGlmICghX3RoaXMuZGlzYWJsZWQpIF90aGlzLmlzQWN0aXZlID0gIV90aGlzLmlzQWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmFjdGl2YXRvcl0pKTtcbiAgICB9XG5cbiAgICB2YXIgZGlhbG9nID0gaCgndHJhbnNpdGlvbicsIHtcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIG5hbWU6IHRoaXMudHJhbnNpdGlvbiB8fCAnJywgLy8gSWYgZmFsc2UsIHNob3cgbm90aGluZ1xuICAgICAgICBvcmlnaW46IHRoaXMub3JpZ2luXG4gICAgICB9XG4gICAgfSwgW2goJ2RpdicsIGRhdGEsIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKV0pO1xuXG4gICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNvbnRlbnRDbGFzc2VzLFxuICAgICAgZG9tUHJvcHM6IHsgdGFiSW5kZXg6IC0xIH0sXG4gICAgICBzdHlsZTogeyB6SW5kZXg6IHRoaXMuYWN0aXZlWkluZGV4IH0sXG4gICAgICByZWY6ICdjb250ZW50J1xuICAgIH0sIFtkaWFsb2ddKSk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdkaWFsb2dfX2NvbnRhaW5lcicsXG4gICAgICBzdHlsZToge1xuICAgICAgICBkaXNwbGF5OiAhdGhpcy4kc2xvdHMuYWN0aXZhdG9yIHx8IHRoaXMuZnVsbFdpZHRoID8gJ2Jsb2NrJyA6ICdpbmxpbmUtYmxvY2snXG4gICAgICB9XG4gICAgfSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAzNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX292ZXJsYXlfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfb3ZlcmxheV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX292ZXJsYXlfc3R5bF9fKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ292ZXJsYXlhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBvdmVybGF5OiBudWxsLFxuICAgICAgb3ZlcmxheU9mZnNldDogMCxcbiAgICAgIG92ZXJsYXlUaW1lb3V0OiBudWxsLFxuICAgICAgb3ZlcmxheVRyYW5zaXRpb25EdXJhdGlvbjogNTAwICsgMTUwIC8vIHRyYW5zaXRpb24gKyBkZWxheVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGhpZGVPdmVybGF5OiBCb29sZWFuXG4gIH0sXG5cbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlbW92ZU92ZXJsYXkoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5PdmVybGF5OiBmdW5jdGlvbiBnZW5PdmVybGF5KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgLy8gSWYgZm4gaXMgY2FsbGVkIGFuZCB0aW1lb3V0IGlzIGFjdGl2ZVxuICAgICAgLy8gb3Igb3ZlcmxheSBhbHJlYWR5IGV4aXN0c1xuICAgICAgLy8gY2FuY2VsIHJlbW92YWwgb2Ygb3ZlcmxheSBhbmQgcmUtYWRkIGFjdGl2ZVxuICAgICAgaWYgKCF0aGlzLmlzQWN0aXZlIHx8IHRoaXMuaGlkZU92ZXJsYXkgfHwgdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLm92ZXJsYXlUaW1lb3V0IHx8IHRoaXMub3ZlcmxheSkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5vdmVybGF5VGltZW91dCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheSAmJiB0aGlzLm92ZXJsYXkuY2xhc3NMaXN0LmFkZCgnb3ZlcmxheS0tYWN0aXZlJyk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMub3ZlcmxheSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdGhpcy5vdmVybGF5LmNsYXNzTmFtZSA9ICdvdmVybGF5JztcblxuICAgICAgaWYgKHRoaXMuYWJzb2x1dGUpIHRoaXMub3ZlcmxheS5jbGFzc05hbWUgKz0gJyBvdmVybGF5LS1hYnNvbHV0ZSc7XG5cbiAgICAgIHRoaXMuaGlkZVNjcm9sbCgpO1xuXG4gICAgICB2YXIgcGFyZW50ID0gdGhpcy5hYnNvbHV0ZSA/IHRoaXMuJGVsLnBhcmVudE5vZGUgOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hcHBdJyk7XG5cbiAgICAgIHBhcmVudCAmJiBwYXJlbnQuaW5zZXJ0QmVmb3JlKHRoaXMub3ZlcmxheSwgcGFyZW50LmZpcnN0Q2hpbGQpO1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgICB0aGlzLm92ZXJsYXkuY2xpZW50SGVpZ2h0OyAvLyBGb3JjZSByZXBhaW50XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24gKCkge1xuICAgICAgICBfdGhpcy5vdmVybGF5LmNsYXNzTmFtZSArPSAnIG92ZXJsYXktLWFjdGl2ZSc7XG5cbiAgICAgICAgaWYgKF90aGlzLmFjdGl2ZVpJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgX3RoaXMub3ZlcmxheS5zdHlsZS56SW5kZXggPSBfdGhpcy5hY3RpdmVaSW5kZXggLSAxO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcbiAgICByZW1vdmVPdmVybGF5OiBmdW5jdGlvbiByZW1vdmVPdmVybGF5KCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5vdmVybGF5KSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dTY3JvbGwoKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5vdmVybGF5LmNsYXNzTGlzdC5yZW1vdmUoJ292ZXJsYXktLWFjdGl2ZScpO1xuXG4gICAgICB0aGlzLm92ZXJsYXlUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vIElFMTEgRml4XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgX3RoaXMyLm92ZXJsYXkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChfdGhpczIub3ZlcmxheSk7XG4gICAgICAgICAgX3RoaXMyLm92ZXJsYXkgPSBudWxsO1xuICAgICAgICAgIF90aGlzMi5zaG93U2Nyb2xsKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHt9XG5cbiAgICAgICAgY2xlYXJUaW1lb3V0KF90aGlzMi5vdmVybGF5VGltZW91dCk7XG4gICAgICAgIF90aGlzMi5vdmVybGF5VGltZW91dCA9IG51bGw7XG4gICAgICB9LCB0aGlzLm92ZXJsYXlUcmFuc2l0aW9uRHVyYXRpb24pO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHNjcm9sbExpc3RlbmVyOiBmdW5jdGlvbiBzY3JvbGxMaXN0ZW5lcihlKSB7XG4gICAgICBpZiAoZS50eXBlID09PSAna2V5ZG93bicpIHtcbiAgICAgICAgaWYgKFsnSU5QVVQnLCAnVEVYVEFSRUEnLCAnU0VMRUNUJ10uaW5jbHVkZXMoZS50YXJnZXQudGFnTmFtZSkpIHJldHVybjtcblxuICAgICAgICB2YXIgdXAgPSBbMzgsIDMzXTtcbiAgICAgICAgdmFyIGRvd24gPSBbNDAsIDM0XTtcblxuICAgICAgICBpZiAodXAuaW5jbHVkZXMoZS5rZXlDb2RlKSkge1xuICAgICAgICAgIGUuZGVsdGFZID0gLTE7XG4gICAgICAgIH0gZWxzZSBpZiAoZG93bi5pbmNsdWRlcyhlLmtleUNvZGUpKSB7XG4gICAgICAgICAgZS5kZWx0YVkgPSAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZS50YXJnZXQgPT09IHRoaXMub3ZlcmxheSB8fCBlLnR5cGUgIT09ICdrZXlkb3duJyAmJiBlLnRhcmdldCA9PT0gZG9jdW1lbnQuYm9keSB8fCB0aGlzLmNoZWNrUGF0aChlKSkgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH0sXG4gICAgaGFzU2Nyb2xsYmFyOiBmdW5jdGlvbiBoYXNTY3JvbGxiYXIoZWwpIHtcbiAgICAgIGlmICghZWwgfHwgZWwubm9kZVR5cGUgIT09IE5vZGUuRUxFTUVOVF9OT0RFKSByZXR1cm4gZmFsc2U7XG5cbiAgICAgIHZhciBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsKTtcbiAgICAgIHJldHVybiBbJ2F1dG8nLCAnc2Nyb2xsJ10uaW5jbHVkZXMoc3R5bGVbJ292ZXJmbG93LXknXSkgJiYgZWwuc2Nyb2xsSGVpZ2h0ID4gZWwuY2xpZW50SGVpZ2h0O1xuICAgIH0sXG4gICAgc2hvdWxkU2Nyb2xsOiBmdW5jdGlvbiBzaG91bGRTY3JvbGwoZWwsIGRlbHRhKSB7XG4gICAgICBpZiAoZWwuc2Nyb2xsVG9wID09PSAwICYmIGRlbHRhIDwgMCkgcmV0dXJuIHRydWU7XG4gICAgICByZXR1cm4gZWwuc2Nyb2xsVG9wICsgZWwuY2xpZW50SGVpZ2h0ID09PSBlbC5zY3JvbGxIZWlnaHQgJiYgZGVsdGEgPiAwO1xuICAgIH0sXG4gICAgaXNJbnNpZGU6IGZ1bmN0aW9uIGlzSW5zaWRlKGVsLCBwYXJlbnQpIHtcbiAgICAgIGlmIChlbCA9PT0gcGFyZW50KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChlbCA9PT0gbnVsbCB8fCBlbCA9PT0gZG9jdW1lbnQuYm9keSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0luc2lkZShlbC5wYXJlbnROb2RlLCBwYXJlbnQpO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBlXG4gICAgICogQHJldHVybnMgYm9vbGVhblxuICAgICAqL1xuICAgIGNoZWNrUGF0aDogZnVuY3Rpb24gY2hlY2tQYXRoKGUpIHtcbiAgICAgIHZhciBwYXRoID0gZS5wYXRoIHx8IHRoaXMuY29tcG9zZWRQYXRoKGUpO1xuICAgICAgdmFyIGRlbHRhID0gZS5kZWx0YVkgfHwgLWUud2hlZWxEZWx0YTtcblxuICAgICAgaWYgKGUudHlwZSA9PT0gJ2tleWRvd24nICYmIHBhdGhbMF0gPT09IGRvY3VtZW50LmJvZHkpIHtcbiAgICAgICAgdmFyIGRpYWxvZyA9IHRoaXMuJHJlZnMuZGlhbG9nO1xuICAgICAgICB2YXIgc2VsZWN0ZWQgPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuYW5jaG9yTm9kZTtcbiAgICAgICAgaWYgKHRoaXMuaGFzU2Nyb2xsYmFyKGRpYWxvZykgJiYgdGhpcy5pc0luc2lkZShzZWxlY3RlZCwgZGlhbG9nKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLnNob3VsZFNjcm9sbChkaWFsb2csIGRlbHRhKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHBhdGgubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHZhciBlbCA9IHBhdGhbaW5kZXhdO1xuXG4gICAgICAgIGlmIChlbCA9PT0gZG9jdW1lbnQpIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoZWwgPT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkgcmV0dXJuIHRydWU7XG4gICAgICAgIGlmIChlbCA9PT0gdGhpcy4kcmVmcy5jb250ZW50KSByZXR1cm4gdHJ1ZTtcblxuICAgICAgICBpZiAodGhpcy5oYXNTY3JvbGxiYXIoZWwpKSByZXR1cm4gdGhpcy5zaG91bGRTY3JvbGwoZWwsIGRlbHRhKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFBvbHlmaWxsIGZvciBFdmVudC5wcm90b3R5cGUuY29tcG9zZWRQYXRoXG4gICAgICogQHBhcmFtIHtFdmVudH0gZVxuICAgICAqIEByZXR1cm5zIEVsZW1lbnRbXVxuICAgICAqL1xuICAgIGNvbXBvc2VkUGF0aDogZnVuY3Rpb24gY29tcG9zZWRQYXRoKGUpIHtcbiAgICAgIGlmIChlLmNvbXBvc2VkUGF0aCkgcmV0dXJuIGUuY29tcG9zZWRQYXRoKCk7XG5cbiAgICAgIHZhciBwYXRoID0gW107XG4gICAgICB2YXIgZWwgPSBlLnRhcmdldDtcblxuICAgICAgd2hpbGUgKGVsKSB7XG4gICAgICAgIHBhdGgucHVzaChlbCk7XG5cbiAgICAgICAgaWYgKGVsLnRhZ05hbWUgPT09ICdIVE1MJykge1xuICAgICAgICAgIHBhdGgucHVzaChkb2N1bWVudCk7XG4gICAgICAgICAgcGF0aC5wdXNoKHdpbmRvdyk7XG5cbiAgICAgICAgICByZXR1cm4gcGF0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIGVsID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGhpZGVTY3JvbGw6IGZ1bmN0aW9uIGhpZGVTY3JvbGwoKSB7XG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5icmVha3BvaW50LnNtQW5kRG93bikge1xuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnb3ZlcmZsb3cteS1oaWRkZW4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd3aGVlbCcsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hvd1Njcm9sbDogZnVuY3Rpb24gc2hvd1Njcm9sbCgpIHtcbiAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdvdmVyZmxvdy15LWhpZGRlbicpO1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3doZWVsJywgdGhpcy5zY3JvbGxMaXN0ZW5lcik7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMzggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5mdW5jdGlvbiBfdG9Db25zdW1hYmxlQXJyYXkoYXJyKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgZm9yICh2YXIgaSA9IDAsIGFycjIgPSBBcnJheShhcnIubGVuZ3RoKTsgaSA8IGFyci5sZW5ndGg7IGkrKykgeyBhcnIyW2ldID0gYXJyW2ldOyB9IHJldHVybiBhcnIyOyB9IGVsc2UgeyByZXR1cm4gQXJyYXkuZnJvbShhcnIpOyB9IH1cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc3RhY2thYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBzdGFja0Jhc2U6IG51bGwsXG4gICAgICBzdGFja0NsYXNzOiAndW5wZWNpZmllZCcsXG4gICAgICBzdGFja0VsZW1lbnQ6IG51bGwsXG4gICAgICBzdGFja0V4Y2x1ZGU6IG51bGwsXG4gICAgICBzdGFja01pblpJbmRleDogMFxuICAgIH07XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICAvKipcbiAgICAgKiBDdXJyZW50bHkgYWN0aXZlIHotaW5kZXhcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICBhY3RpdmVaSW5kZXg6IGZ1bmN0aW9uIGFjdGl2ZVpJbmRleCgpIHtcbiAgICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIDA7XG5cbiAgICAgIHZhciBjb250ZW50ID0gdGhpcy5zdGFja0VsZW1lbnQgfHwgdGhpcy4kcmVmcy5jb250ZW50O1xuICAgICAgLy8gUmV0dXJuIGN1cnJlbnQgemluZGV4IGlmIG5vdCBhY3RpdmVcblxuICAgICAgdmFyIGluZGV4ID0gIXRoaXMuaXNBY3RpdmUgPyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImpcIiAvKiBnZXRaSW5kZXggKi9dKShjb250ZW50KSA6IHRoaXMuZ2V0TWF4WkluZGV4KHRoaXMuc3RhY2tFeGNsdWRlIHx8IFtjb250ZW50XSkgKyAyO1xuXG4gICAgICBpZiAoaW5kZXggPT0gbnVsbCkgcmV0dXJuIGluZGV4O1xuXG4gICAgICAvLyBSZXR1cm4gbWF4IGN1cnJlbnQgei1pbmRleCAoZXhjbHVkaW5nIHNlbGYpICsgMlxuICAgICAgLy8gKDIgdG8gbGVhdmUgcm9vbSBmb3IgYW4gb3ZlcmxheSBiZWxvdywgaWYgbmVlZGVkKVxuICAgICAgcmV0dXJuIHBhcnNlSW50KGluZGV4KTtcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBnZXRNYXhaSW5kZXg6IGZ1bmN0aW9uIGdldE1heFpJbmRleCgpIHtcbiAgICAgIHZhciBleGNsdWRlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBbXTtcblxuICAgICAgdmFyIGJhc2UgPSB0aGlzLnN0YWNrQmFzZSB8fCB0aGlzLiRlbDtcbiAgICAgIC8vIFN0YXJ0IHdpdGggbG93ZXN0IGFsbG93ZWQgei1pbmRleCBvciB6LWluZGV4IG9mXG4gICAgICAvLyBiYXNlIGNvbXBvbmVudCdzIGVsZW1lbnQsIHdoaWNoZXZlciBpcyBncmVhdGVyXG4gICAgICB2YXIgemlzID0gW3RoaXMuc3RhY2tNaW5aSW5kZXgsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wialwiIC8qIGdldFpJbmRleCAqL10pKGJhc2UpXTtcbiAgICAgIC8vIENvbnZlcnQgdGhlIE5vZGVMaXN0IHRvIGFuIGFycmF5IHRvXG4gICAgICAvLyBwcmV2ZW50IGFuIEVkZ2UgYnVnIHdpdGggU3ltYm9sLml0ZXJhdG9yXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdnVldGlmeWpzL3Z1ZXRpZnkvaXNzdWVzLzIxNDZcbiAgICAgIHZhciBhY3RpdmVFbGVtZW50cyA9IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSh0aGlzLnN0YWNrQ2xhc3MpKSk7XG5cbiAgICAgIC8vIEdldCB6LWluZGV4IGZvciBhbGwgYWN0aXZlIGRpYWxvZ3NcbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCBhY3RpdmVFbGVtZW50cy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgaWYgKCFleGNsdWRlLmluY2x1ZGVzKGFjdGl2ZUVsZW1lbnRzW2luZGV4XSkpIHtcbiAgICAgICAgICB6aXMucHVzaChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImpcIiAvKiBnZXRaSW5kZXggKi9dKShhY3RpdmVFbGVtZW50c1tpbmRleF0pKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gTWF0aC5tYXguYXBwbHkoTWF0aCwgemlzKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDM5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzQ2lyY3VsYXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEzKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUHJvZ3Jlc3NDaXJjdWxhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzQ2lyY3VsYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZKdW1ib3Ryb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA0MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZ1bmN0aW9uICgpIHtcbiAgdmFyIGV4cGFuZGVkUGFyZW50Q2xhc3MgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6ICcnO1xuXG4gIHJldHVybiB7XG4gICAgZW50ZXI6IGZ1bmN0aW9uIGVudGVyKGVsLCBkb25lKSB7XG4gICAgICBlbC5fcGFyZW50ID0gZWwucGFyZW50Tm9kZTtcblxuICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJhXCIgLyogYWRkT25jZUV2ZW50TGlzdGVuZXIgKi9dKShlbCwgJ3RyYW5zaXRpb25lbmQnLCBkb25lKTtcblxuICAgICAgLy8gR2V0IGhlaWdodCB0aGF0IGlzIHRvIGJlIHNjcm9sbGVkXG4gICAgICBlbC5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICAgICAgZWwuc3R5bGUuaGVpZ2h0ID0gMDtcbiAgICAgIGVsLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgZXhwYW5kZWRQYXJlbnRDbGFzcyAmJiBlbC5fcGFyZW50LmNsYXNzTGlzdC5hZGQoZXhwYW5kZWRQYXJlbnRDbGFzcyk7XG5cbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gZWwuc3R5bGUuaGVpZ2h0ID0gZWwuc2Nyb2xsSGVpZ2h0ICsgJ3B4JztcbiAgICAgIH0sIDEwMCk7XG4gICAgfSxcbiAgICBhZnRlckVudGVyOiBmdW5jdGlvbiBhZnRlckVudGVyKGVsKSB7XG4gICAgICBlbC5zdHlsZS5vdmVyZmxvdyA9IG51bGw7XG4gICAgICBlbC5zdHlsZS5oZWlnaHQgPSBudWxsO1xuICAgIH0sXG4gICAgbGVhdmU6IGZ1bmN0aW9uIGxlYXZlKGVsLCBkb25lKSB7XG4gICAgICAvLyBSZW1vdmUgaW5pdGlhbCB0cmFuc2l0aW9uXG4gICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImFcIiAvKiBhZGRPbmNlRXZlbnRMaXN0ZW5lciAqL10pKGVsLCAndHJhbnNpdGlvbmVuZCcsIGRvbmUpO1xuXG4gICAgICAvLyBTZXQgaGVpZ2h0IGJlZm9yZSB3ZSB0cmFuc2l0aW9uIHRvIDBcbiAgICAgIGVsLnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7XG4gICAgICBlbC5zdHlsZS5oZWlnaHQgPSBlbC5vZmZzZXRIZWlnaHQgKyAncHgnO1xuXG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIGVsLnN0eWxlLmhlaWdodCA9IDA7XG4gICAgICB9LCAxMDApO1xuICAgIH0sXG4gICAgYWZ0ZXJMZWF2ZTogZnVuY3Rpb24gYWZ0ZXJMZWF2ZShlbCkge1xuICAgICAgZXhwYW5kZWRQYXJlbnRDbGFzcyAmJiBlbC5fcGFyZW50ICYmIGVsLl9wYXJlbnQuY2xhc3NMaXN0LnJlbW92ZShleHBhbmRlZFBhcmVudENsYXNzKTtcbiAgICB9XG4gIH07XG59KTtcblxuLyoqKi8gfSksXG4vKiA0MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2lucHV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5KTtcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc2VsZWN0YWJsZScsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19pbnB1dF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBtb2RlbDoge1xuICAgIHByb3A6ICdpbnB1dFZhbHVlJyxcbiAgICBldmVudDogJ2NoYW5nZSdcbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdhY2NlbnQnXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGlkOiBTdHJpbmcsXG4gICAgaW5wdXRWYWx1ZTogbnVsbCxcbiAgICBmYWxzZVZhbHVlOiBudWxsLFxuICAgIHRydWVWYWx1ZTogbnVsbFxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKCkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5pbnB1dFZhbHVlKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlLmluZGV4T2YodGhpcy52YWx1ZSkgIT09IC0xO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudHJ1ZVZhbHVlIHx8ICF0aGlzLmZhbHNlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUgPyB0aGlzLnZhbHVlID09PSB0aGlzLmlucHV0VmFsdWUgOiBCb29sZWFuKHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmlucHV0VmFsdWUgPT09IHRoaXMudHJ1ZVZhbHVlO1xuICAgIH0sXG4gICAgaXNEaXJ0eTogZnVuY3Rpb24gaXNEaXJ0eSgpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQWN0aXZlO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGluZGV0ZXJtaW5hdGUodmFsKSB7XG4gICAgICB0aGlzLmlucHV0SW5kZXRlcm1pbmF0ZSA9IHZhbDtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgb246IHsgY2xpY2s6IHRoaXMudG9nZ2xlIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgZm9yOiB0aGlzLmlkXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmxhYmVsIHx8IHRoaXMubGFiZWwpO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoKSB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHZhciBpbnB1dCA9IHRoaXMuaW5wdXRWYWx1ZTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGlucHV0KSkge1xuICAgICAgICBpbnB1dCA9IGlucHV0LnNsaWNlKCk7XG4gICAgICAgIHZhciBpID0gaW5wdXQuaW5kZXhPZih0aGlzLnZhbHVlKTtcblxuICAgICAgICBpZiAoaSA9PT0gLTEpIHtcbiAgICAgICAgICBpbnB1dC5wdXNoKHRoaXMudmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlucHV0LnNwbGljZShpLCAxKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLnRydWVWYWx1ZSB8fCB0aGlzLmZhbHNlVmFsdWUpIHtcbiAgICAgICAgaW5wdXQgPSBpbnB1dCA9PT0gdGhpcy50cnVlVmFsdWUgPyB0aGlzLmZhbHNlVmFsdWUgOiB0aGlzLnRydWVWYWx1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICBpbnB1dCA9IHRoaXMudmFsdWUgPT09IHRoaXMuaW5wdXRWYWx1ZSA/IG51bGwgOiB0aGlzLnZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5wdXQgPSAhaW5wdXQ7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudmFsaWRhdGUodHJ1ZSwgaW5wdXQpO1xuXG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCBpbnB1dCk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVlByb2dyZXNzTGluZWFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ0KTtcblxuXG4vKipcbiAqIExvYWRhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCB0byBhZGQgbGluZWFyIHByb2dyZXNzIGJhciB0byBjb21wb25lbnRzXG4gKiBDYW4gdXNlIGEgZGVmYXVsdCBiYXIgd2l0aCBhIHNwZWNpZmljIGNvbG9yXG4gKiBvciBkZXNpZ25hdGUgYSBjdXN0b20gcHJvZ3Jlc3MgbGluZWFyIGJhclxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2xvYWRhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxvYWRpbmc6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblByb2dyZXNzOiBmdW5jdGlvbiBnZW5Qcm9ncmVzcygpIHtcbiAgICAgIGlmICh0aGlzLmxvYWRpbmcgPT09IGZhbHNlKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuJHNsb3RzLnByb2dyZXNzIHx8IHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZQcm9ncmVzc0xpbmVhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMubG9hZGluZyA9PT0gdHJ1ZSB8fCB0aGlzLmxvYWRpbmcgPT09ICcnID8gdGhpcy5jb2xvciB8fCAncHJpbWFyeScgOiB0aGlzLmxvYWRpbmcsXG4gICAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICAgIGluZGV0ZXJtaW5hdGU6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0xpbmVhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjkpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQcm9ncmVzc0xpbmVhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzTGluZWFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUHJvZ3Jlc3NMaW5lYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlByb2dyZXNzTGluZWFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQ1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoaXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2hpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNoaXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDaGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDQ2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb21wb25lbnRzX1ZTZWxlY3RfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZmlsdGVyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19sb2FkYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKipcbiAqIERhdGFJdGVyYWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIEJhc2UgYmVoYXZpb3IgZm9yIGRhdGEgdGFibGUgYW5kIGRhdGEgaXRlcmF0b3JcbiAqIHByb3ZpZGluZyBzZWxlY3Rpb24sIHBhZ2luYXRpb24sIHNvcnRpbmcgYW5kIGZpbHRlcmluZy5cbiAqXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnZGF0YS1pdGVyYWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc2VhcmNoTGVuZ3RoOiAwLFxuICAgICAgZGVmYXVsdFBhZ2luYXRpb246IHtcbiAgICAgICAgZGVzY2VuZGluZzogZmFsc2UsXG4gICAgICAgIHBhZ2U6IDEsXG4gICAgICAgIHJvd3NQZXJQYWdlOiA1LFxuICAgICAgICBzb3J0Qnk6IG51bGwsXG4gICAgICAgIHRvdGFsSXRlbXM6IDBcbiAgICAgIH0sXG4gICAgICBleHBhbmRlZDoge30sXG4gICAgICBhY3Rpb25zQ2xhc3NlczogJ2RhdGEtaXRlcmF0b3JfX2FjdGlvbnMnLFxuICAgICAgYWN0aW9uc1JhbmdlQ29udHJvbHNDbGFzc2VzOiAnZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fcmFuZ2UtY29udHJvbHMnLFxuICAgICAgYWN0aW9uc1NlbGVjdENsYXNzZXM6ICdkYXRhLWl0ZXJhdG9yX19hY3Rpb25zX19zZWxlY3QnLFxuICAgICAgYWN0aW9uc1BhZ2luYXRpb25DbGFzc2VzOiAnZGF0YS1pdGVyYXRvcl9fYWN0aW9uc19fcGFnaW5hdGlvbidcbiAgICB9O1xuICB9LFxuXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19maWx0ZXJhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbG9hZGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBleHBhbmQ6IEJvb2xlYW4sXG4gICAgaGlkZUFjdGlvbnM6IEJvb2xlYW4sXG4gICAgZGlzYWJsZUluaXRpYWxTb3J0OiBCb29sZWFuLFxuICAgIG11c3RTb3J0OiBCb29sZWFuLFxuICAgIG5vUmVzdWx0c1RleHQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdObyBtYXRjaGluZyByZWNvcmRzIGZvdW5kJ1xuICAgIH0sXG4gICAgbmV4dEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX3JpZ2h0J1xuICAgIH0sXG4gICAgcHJldkljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICByb3dzUGVyUGFnZUl0ZW1zOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gWzUsIDEwLCAyNSwgeyB0ZXh0OiAnQWxsJywgdmFsdWU6IC0xIH1dO1xuICAgICAgfVxuICAgIH0sXG4gICAgcm93c1BlclBhZ2VUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnSXRlbXMgcGVyIHBhZ2U6J1xuICAgIH0sXG4gICAgc2VsZWN0QWxsOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICBzZWFyY2g6IHtcbiAgICAgIHJlcXVpcmVkOiBmYWxzZVxuICAgIH0sXG4gICAgZmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KHZhbCwgc2VhcmNoKSB7XG4gICAgICAgIHJldHVybiB2YWwgIT0gbnVsbCAmJiB0eXBlb2YgdmFsICE9PSAnYm9vbGVhbicgJiYgdmFsLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKHNlYXJjaCkgIT09IC0xO1xuICAgICAgfVxuICAgIH0sXG4gICAgY3VzdG9tRmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBzZWFyY2gsIGZpbHRlcikge1xuICAgICAgICBzZWFyY2ggPSBzZWFyY2gudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBpZiAoc2VhcmNoLnRyaW0oKSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGkpLnNvbWUoZnVuY3Rpb24gKGopIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXIoaVtqXSwgc2VhcmNoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBjdXN0b21Tb3J0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBpbmRleCwgaXNEZXNjZW5kaW5nKSB7XG4gICAgICAgIGlmIChpbmRleCA9PT0gbnVsbCkgcmV0dXJuIGl0ZW1zO1xuXG4gICAgICAgIHJldHVybiBpdGVtcy5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7XG4gICAgICAgICAgdmFyIHNvcnRBID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShhLCBpbmRleCk7XG4gICAgICAgICAgdmFyIHNvcnRCID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShiLCBpbmRleCk7XG5cbiAgICAgICAgICBpZiAoaXNEZXNjZW5kaW5nKSB7XG4gICAgICAgICAgICB2YXIgX3JlZiA9IFtzb3J0Qiwgc29ydEFdO1xuICAgICAgICAgICAgc29ydEEgPSBfcmVmWzBdO1xuICAgICAgICAgICAgc29ydEIgPSBfcmVmWzFdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIENoZWNrIGlmIGJvdGggYXJlIG51bWJlcnNcbiAgICAgICAgICBpZiAoIWlzTmFOKHNvcnRBKSAmJiAhaXNOYU4oc29ydEIpKSB7XG4gICAgICAgICAgICByZXR1cm4gc29ydEEgLSBzb3J0QjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDaGVjayBpZiBib3RoIGNhbm5vdCBiZSBldmFsdWF0ZWRcbiAgICAgICAgICBpZiAoc29ydEEgPT09IG51bGwgJiYgc29ydEIgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhciBfbWFwID0gW3NvcnRBLCBzb3J0Ql0ubWFwKGZ1bmN0aW9uIChzKSB7XG4gICAgICAgICAgICByZXR1cm4gKHMgfHwgJycpLnRvU3RyaW5nKCkudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHZhciBfbWFwMiA9IF9zbGljZWRUb0FycmF5KF9tYXAsIDIpO1xuXG4gICAgICAgICAgc29ydEEgPSBfbWFwMlswXTtcbiAgICAgICAgICBzb3J0QiA9IF9tYXAyWzFdO1xuXG5cbiAgICAgICAgICBpZiAoc29ydEEgPiBzb3J0QikgcmV0dXJuIDE7XG4gICAgICAgICAgaWYgKHNvcnRBIDwgc29ydEIpIHJldHVybiAtMTtcblxuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBpdGVtczoge1xuICAgICAgdHlwZTogQXJyYXksXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICB0b3RhbEl0ZW1zOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBpdGVtS2V5OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnaWQnXG4gICAgfSxcbiAgICBwYWdpbmF0aW9uOiB7XG4gICAgICB0eXBlOiBPYmplY3QsXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdCgpIHt9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRQYWdpbmF0aW9uOiBmdW5jdGlvbiBjb21wdXRlZFBhZ2luYXRpb24oKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNQYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uIDogdGhpcy5kZWZhdWx0UGFnaW5hdGlvbjtcbiAgICB9LFxuICAgIGhhc1BhZ2luYXRpb246IGZ1bmN0aW9uIGhhc1BhZ2luYXRpb24oKSB7XG4gICAgICB2YXIgcGFnaW5hdGlvbiA9IHRoaXMucGFnaW5hdGlvbiB8fCB7fTtcblxuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHBhZ2luYXRpb24pLmxlbmd0aCA+IDA7XG4gICAgfSxcbiAgICBoYXNTZWxlY3RBbGw6IGZ1bmN0aW9uIGhhc1NlbGVjdEFsbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdEFsbCAhPT0gdW5kZWZpbmVkICYmIHRoaXMuc2VsZWN0QWxsICE9PSBmYWxzZTtcbiAgICB9LFxuICAgIGl0ZW1zTGVuZ3RoOiBmdW5jdGlvbiBpdGVtc0xlbmd0aCgpIHtcbiAgICAgIGlmICh0aGlzLnNlYXJjaCkgcmV0dXJuIHRoaXMuc2VhcmNoTGVuZ3RoO1xuICAgICAgcmV0dXJuIHRoaXMudG90YWxJdGVtcyB8fCB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIGluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGluZGV0ZXJtaW5hdGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNTZWxlY3RBbGwgJiYgdGhpcy5zb21lSXRlbXMgJiYgIXRoaXMuZXZlcnlJdGVtO1xuICAgIH0sXG4gICAgZXZlcnlJdGVtOiBmdW5jdGlvbiBldmVyeUl0ZW0oKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEl0ZW1zLmxlbmd0aCAmJiB0aGlzLmZpbHRlcmVkSXRlbXMuZXZlcnkoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlzU2VsZWN0ZWQoaSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHNvbWVJdGVtczogZnVuY3Rpb24gc29tZUl0ZW1zKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLmZpbHRlcmVkSXRlbXMuc29tZShmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzU2VsZWN0ZWQoaSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdldFBhZ2U6IGZ1bmN0aW9uIGdldFBhZ2UoKSB7XG4gICAgICB2YXIgcm93c1BlclBhZ2UgPSB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5yb3dzUGVyUGFnZTtcblxuXG4gICAgICByZXR1cm4gcm93c1BlclBhZ2UgPT09IE9iamVjdChyb3dzUGVyUGFnZSkgPyByb3dzUGVyUGFnZS52YWx1ZSA6IHJvd3NQZXJQYWdlO1xuICAgIH0sXG4gICAgcGFnZVN0YXJ0OiBmdW5jdGlvbiBwYWdlU3RhcnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQYWdlID09PSAtMSA/IDAgOiAodGhpcy5jb21wdXRlZFBhZ2luYXRpb24ucGFnZSAtIDEpICogdGhpcy5nZXRQYWdlO1xuICAgIH0sXG4gICAgcGFnZVN0b3A6IGZ1bmN0aW9uIHBhZ2VTdG9wKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0UGFnZSA9PT0gLTEgPyB0aGlzLml0ZW1zTGVuZ3RoIDogdGhpcy5jb21wdXRlZFBhZ2luYXRpb24ucGFnZSAqIHRoaXMuZ2V0UGFnZTtcbiAgICB9LFxuICAgIGZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEl0ZW1zSW1wbCgpO1xuICAgIH0sXG4gICAgc2VsZWN0ZWQ6IGZ1bmN0aW9uIHNlbGVjdGVkKCkge1xuICAgICAgdmFyIHNlbGVjdGVkID0ge307XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy52YWx1ZS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgc2VsZWN0ZWRbdGhpcy52YWx1ZVtpbmRleF1bdGhpcy5pdGVtS2V5XV0gPSB0cnVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNlbGVjdGVkO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGl0ZW1zTGVuZ3RoOiBmdW5jdGlvbiBpdGVtc0xlbmd0aCh0b3RhbEl0ZW1zKSB7XG4gICAgICB0aGlzLnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiAxLCB0b3RhbEl0ZW1zOiB0b3RhbEl0ZW1zIH0pO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgaW5pdFBhZ2luYXRpb246IGZ1bmN0aW9uIGluaXRQYWdpbmF0aW9uKCkge1xuICAgICAgaWYgKCF0aGlzLnJvd3NQZXJQYWdlSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1RoZSBwcm9wIFxcJ3Jvd3MtcGVyLXBhZ2UtaXRlbXNcXCcgY2FuIG5vdCBiZSBlbXB0eScsIHRoaXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbi5yb3dzUGVyUGFnZSA9IHRoaXMucm93c1BlclBhZ2VJdGVtc1swXTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbi50b3RhbEl0ZW1zID0gdGhpcy5pdGVtc0xlbmd0aDtcblxuICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uKE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZGVmYXVsdFBhZ2luYXRpb24sIHRoaXMucGFnaW5hdGlvbikpO1xuICAgIH0sXG4gICAgdXBkYXRlUGFnaW5hdGlvbjogZnVuY3Rpb24gdXBkYXRlUGFnaW5hdGlvbih2YWwpIHtcbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5oYXNQYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uIDogdGhpcy5kZWZhdWx0UGFnaW5hdGlvbjtcbiAgICAgIHZhciB1cGRhdGVkUGFnaW5hdGlvbiA9IE9iamVjdC5hc3NpZ24oe30sIHBhZ2luYXRpb24sIHZhbCk7XG4gICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6cGFnaW5hdGlvbicsIHVwZGF0ZWRQYWdpbmF0aW9uKTtcblxuICAgICAgaWYgKCF0aGlzLmhhc1BhZ2luYXRpb24pIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0UGFnaW5hdGlvbiA9IHVwZGF0ZWRQYWdpbmF0aW9uO1xuICAgICAgfVxuICAgIH0sXG4gICAgaXNTZWxlY3RlZDogZnVuY3Rpb24gaXNTZWxlY3RlZChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFtpdGVtW3RoaXMuaXRlbUtleV1dO1xuICAgIH0sXG4gICAgaXNFeHBhbmRlZDogZnVuY3Rpb24gaXNFeHBhbmRlZChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5leHBhbmRlZFtpdGVtW3RoaXMuaXRlbUtleV1dO1xuICAgIH0sXG4gICAgZmlsdGVyZWRJdGVtc0ltcGw6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXNJbXBsKCkge1xuICAgICAgaWYgKHRoaXMudG90YWxJdGVtcykgcmV0dXJuIHRoaXMuaXRlbXM7XG5cbiAgICAgIHZhciBpdGVtcyA9IHRoaXMuaXRlbXMuc2xpY2UoKTtcbiAgICAgIHZhciBoYXNTZWFyY2ggPSB0eXBlb2YgdGhpcy5zZWFyY2ggIT09ICd1bmRlZmluZWQnICYmIHRoaXMuc2VhcmNoICE9PSBudWxsO1xuXG4gICAgICBpZiAoaGFzU2VhcmNoKSB7XG4gICAgICAgIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBhZGRpdGlvbmFsRmlsdGVyQXJncyA9IEFycmF5KF9sZW4pLCBfa2V5ID0gMDsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgICAgIGFkZGl0aW9uYWxGaWx0ZXJBcmdzW19rZXldID0gYXJndW1lbnRzW19rZXldO1xuICAgICAgICB9XG5cbiAgICAgICAgaXRlbXMgPSB0aGlzLmN1c3RvbUZpbHRlci5hcHBseSh0aGlzLCBbaXRlbXMsIHRoaXMuc2VhcmNoLCB0aGlzLmZpbHRlcl0uY29uY2F0KGFkZGl0aW9uYWxGaWx0ZXJBcmdzKSk7XG4gICAgICAgIHRoaXMuc2VhcmNoTGVuZ3RoID0gaXRlbXMubGVuZ3RoO1xuICAgICAgfVxuXG4gICAgICBpdGVtcyA9IHRoaXMuY3VzdG9tU29ydChpdGVtcywgdGhpcy5jb21wdXRlZFBhZ2luYXRpb24uc29ydEJ5LCB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5kZXNjZW5kaW5nKTtcblxuICAgICAgcmV0dXJuIHRoaXMuaGlkZUFjdGlvbnMgJiYgIXRoaXMuaGFzUGFnaW5hdGlvbiA/IGl0ZW1zIDogaXRlbXMuc2xpY2UodGhpcy5wYWdlU3RhcnQsIHRoaXMucGFnZVN0b3ApO1xuICAgIH0sXG4gICAgc29ydDogZnVuY3Rpb24gc29ydChpbmRleCkge1xuICAgICAgdmFyIF9jb21wdXRlZFBhZ2luYXRpb24gPSB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbixcbiAgICAgICAgICBzb3J0QnkgPSBfY29tcHV0ZWRQYWdpbmF0aW9uLnNvcnRCeSxcbiAgICAgICAgICBkZXNjZW5kaW5nID0gX2NvbXB1dGVkUGFnaW5hdGlvbi5kZXNjZW5kaW5nO1xuXG4gICAgICBpZiAoc29ydEJ5ID09PSBudWxsKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogaW5kZXgsIGRlc2NlbmRpbmc6IGZhbHNlIH0pO1xuICAgICAgfSBlbHNlIGlmIChzb3J0QnkgPT09IGluZGV4ICYmICFkZXNjZW5kaW5nKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IGRlc2NlbmRpbmc6IHRydWUgfSk7XG4gICAgICB9IGVsc2UgaWYgKHNvcnRCeSAhPT0gaW5kZXgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uKHsgc29ydEJ5OiBpbmRleCwgZGVzY2VuZGluZzogZmFsc2UgfSk7XG4gICAgICB9IGVsc2UgaWYgKCF0aGlzLm11c3RTb3J0KSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogbnVsbCwgZGVzY2VuZGluZzogbnVsbCB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbih7IHNvcnRCeTogaW5kZXgsIGRlc2NlbmRpbmc6IGZhbHNlIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUodmFsdWUpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB2YXIgc2VsZWN0ZWQgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnNlbGVjdGVkKTtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHNlbGVjdGVkW3RoaXMuZmlsdGVyZWRJdGVtc1tpbmRleF1bdGhpcy5pdGVtS2V5XV0gPSB2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLml0ZW1zLmZpbHRlcihmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gc2VsZWN0ZWRbaVtfdGhpczMuaXRlbUtleV1dO1xuICAgICAgfSkpO1xuICAgIH0sXG4gICAgY3JlYXRlUHJvcHM6IGZ1bmN0aW9uIGNyZWF0ZVByb3BzKGl0ZW0sIGluZGV4KSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgdmFyIHByb3BzID0geyBpdGVtOiBpdGVtLCBpbmRleDogaW5kZXggfTtcbiAgICAgIHZhciBrZXlQcm9wID0gdGhpcy5pdGVtS2V5O1xuICAgICAgdmFyIGl0ZW1LZXkgPSBpdGVtW2tleVByb3BdO1xuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvcHMsICdzZWxlY3RlZCcsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzNC5zZWxlY3RlZFtpdGVtW190aGlzNC5pdGVtS2V5XV07XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gc2V0KHZhbHVlKSB7XG4gICAgICAgICAgaWYgKGl0ZW1LZXkgPT0gbnVsbCkge1xuICAgICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnXCInICsga2V5UHJvcCArICdcIiBhdHRyaWJ1dGUgbXVzdCBiZSBkZWZpbmVkIGZvciBpdGVtJywgX3RoaXM0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB2YXIgc2VsZWN0ZWQgPSBfdGhpczQudmFsdWUuc2xpY2UoKTtcbiAgICAgICAgICBpZiAodmFsdWUpIHNlbGVjdGVkLnB1c2goaXRlbSk7ZWxzZSBzZWxlY3RlZCA9IHNlbGVjdGVkLmZpbHRlcihmdW5jdGlvbiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIGlba2V5UHJvcF0gIT09IGl0ZW1LZXk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgX3RoaXM0LiRlbWl0KCdpbnB1dCcsIHNlbGVjdGVkKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ2V4cGFuZGVkJywge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXM0LmV4cGFuZGVkW2l0ZW1bX3RoaXM0Lml0ZW1LZXldXTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsdWUpIHtcbiAgICAgICAgICBpZiAoaXRlbUtleSA9PSBudWxsKSB7XG4gICAgICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdcIicgKyBrZXlQcm9wICsgJ1wiIGF0dHJpYnV0ZSBtdXN0IGJlIGRlZmluZWQgZm9yIGl0ZW0nLCBfdGhpczQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghX3RoaXM0LmV4cGFuZCkge1xuICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIF90aGlzNC5leHBhbmRlZCkge1xuICAgICAgICAgICAgICBfdGhpczQuZXhwYW5kZWQuaGFzT3duUHJvcGVydHkoa2V5KSAmJiBfdGhpczQuJHNldChfdGhpczQuZXhwYW5kZWQsIGtleSwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBfdGhpczQuJHNldChfdGhpczQuZXhwYW5kZWQsIGl0ZW1LZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBwcm9wcztcbiAgICB9LFxuICAgIGdlbkl0ZW1zOiBmdW5jdGlvbiBnZW5JdGVtcygpIHtcbiAgICAgIGlmICghdGhpcy5pdGVtc0xlbmd0aCAmJiAhdGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgdmFyIG5vRGF0YSA9IHRoaXMuJHNsb3RzWyduby1kYXRhJ10gfHwgdGhpcy5ub0RhdGFUZXh0O1xuICAgICAgICByZXR1cm4gW3RoaXMuZ2VuRW1wdHlJdGVtcyhub0RhdGEpXTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIHZhciBub1Jlc3VsdHMgPSB0aGlzLiRzbG90c1snbm8tcmVzdWx0cyddIHx8IHRoaXMubm9SZXN1bHRzVGV4dDtcbiAgICAgICAgcmV0dXJuIFt0aGlzLmdlbkVtcHR5SXRlbXMobm9SZXN1bHRzKV07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmdlbkZpbHRlcmVkSXRlbXMoKTtcbiAgICB9LFxuICAgIGdlblByZXZJY29uOiBmdW5jdGlvbiBnZW5QcmV2SWNvbigpIHtcbiAgICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuY29tcHV0ZWRQYWdpbmF0aW9uLnBhZ2UgPT09IDEsXG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBsaWdodDogdGhpcy5saWdodFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHZhciBwYWdlID0gX3RoaXM1LmNvbXB1dGVkUGFnaW5hdGlvbi5wYWdlO1xuICAgICAgICAgICAgX3RoaXM1LnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiBwYWdlIC0gMSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiAnUHJldmlvdXMgcGFnZScgLy8gVE9ETzogTG9jYWxpemF0aW9uXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29tcG9uZW50c19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB0aGlzLnByZXZJY29uKV0pO1xuICAgIH0sXG4gICAgZ2VuTmV4dEljb246IGZ1bmN0aW9uIGdlbk5leHRJY29uKCkge1xuICAgICAgdmFyIF90aGlzNiA9IHRoaXM7XG5cbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5jb21wdXRlZFBhZ2luYXRpb247XG4gICAgICB2YXIgZGlzYWJsZWQgPSBwYWdpbmF0aW9uLnJvd3NQZXJQYWdlIDwgMCB8fCBwYWdpbmF0aW9uLnBhZ2UgKiBwYWdpbmF0aW9uLnJvd3NQZXJQYWdlID49IHRoaXMuaXRlbXNMZW5ndGggfHwgdGhpcy5wYWdlU3RvcCA8IDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBkaXNhYmxlZDogZGlzYWJsZWQsXG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBsaWdodDogdGhpcy5saWdodFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHZhciBwYWdlID0gX3RoaXM2LmNvbXB1dGVkUGFnaW5hdGlvbi5wYWdlO1xuICAgICAgICAgICAgX3RoaXM2LnVwZGF0ZVBhZ2luYXRpb24oeyBwYWdlOiBwYWdlICsgMSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiAnTmV4dCBwYWdlJyAvLyBUT0RPOiBMb2NhbGl6YXRpb25cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb21wb25lbnRzX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHRoaXMubmV4dEljb24pXSk7XG4gICAgfSxcbiAgICBnZW5TZWxlY3Q6IGZ1bmN0aW9uIGdlblNlbGVjdCgpIHtcbiAgICAgIHZhciBfdGhpczcgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmFjdGlvbnNTZWxlY3RDbGFzc2VzXG4gICAgICB9LCBbdGhpcy5yb3dzUGVyUGFnZVRleHQsIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb21wb25lbnRzX1ZTZWxlY3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBhdHRyczoge1xuICAgICAgICAgICdhcmlhLWxhYmVsJzogdGhpcy5yb3dzUGVyUGFnZVRleHRcbiAgICAgICAgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBpdGVtczogdGhpcy5yb3dzUGVyUGFnZUl0ZW1zLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLmNvbXB1dGVkUGFnaW5hdGlvbi5yb3dzUGVyUGFnZSxcbiAgICAgICAgICBoaWRlRGV0YWlsczogdHJ1ZSxcbiAgICAgICAgICBhdXRvOiB0cnVlLFxuICAgICAgICAgIG1pbldpZHRoOiAnNzVweCdcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gaW5wdXQodmFsKSB7XG4gICAgICAgICAgICBfdGhpczcudXBkYXRlUGFnaW5hdGlvbih7XG4gICAgICAgICAgICAgIHBhZ2U6IDEsXG4gICAgICAgICAgICAgIHJvd3NQZXJQYWdlOiB2YWxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSldKTtcbiAgICB9LFxuICAgIGdlblBhZ2luYXRpb246IGZ1bmN0aW9uIGdlblBhZ2luYXRpb24oKSB7XG4gICAgICB2YXIgcGFnaW5hdGlvbiA9ICfigJMnO1xuXG4gICAgICBpZiAodGhpcy5pdGVtc0xlbmd0aCkge1xuICAgICAgICB2YXIgc3RvcCA9IHRoaXMuaXRlbXNMZW5ndGggPCB0aGlzLnBhZ2VTdG9wIHx8IHRoaXMucGFnZVN0b3AgPCAwID8gdGhpcy5pdGVtc0xlbmd0aCA6IHRoaXMucGFnZVN0b3A7XG5cbiAgICAgICAgcGFnaW5hdGlvbiA9IHRoaXMuJHNjb3BlZFNsb3RzLnBhZ2VUZXh0ID8gdGhpcy4kc2NvcGVkU2xvdHMucGFnZVRleHQoe1xuICAgICAgICAgIHBhZ2VTdGFydDogdGhpcy5wYWdlU3RhcnQgKyAxLFxuICAgICAgICAgIHBhZ2VTdG9wOiBzdG9wLFxuICAgICAgICAgIGl0ZW1zTGVuZ3RoOiB0aGlzLml0ZW1zTGVuZ3RoXG4gICAgICAgIH0pIDogdGhpcy5wYWdlU3RhcnQgKyAxICsgJy0nICsgc3RvcCArICcgb2YgJyArIHRoaXMuaXRlbXNMZW5ndGg7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWN0aW9uc1BhZ2luYXRpb25DbGFzc2VzXG4gICAgICB9LCBbcGFnaW5hdGlvbl0pO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHZhciByYW5nZUNvbnRyb2xzID0gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmFjdGlvbnNSYW5nZUNvbnRyb2xzQ2xhc3Nlc1xuICAgICAgfSwgW3RoaXMuZ2VuUGFnaW5hdGlvbigpLCB0aGlzLmdlblByZXZJY29uKCksIHRoaXMuZ2VuTmV4dEljb24oKV0pO1xuXG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5hY3Rpb25zQ2xhc3Nlc1xuICAgICAgfSwgW3RoaXMucm93c1BlclBhZ2VJdGVtcy5sZW5ndGggPiAxID8gdGhpcy5nZW5TZWxlY3QoKSA6IG51bGwsIHJhbmdlQ29udHJvbHNdKV07XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTZWxlY3RfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTM3KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2VsZWN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTZWxlY3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiA0OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnZmlsdGVyYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBub0RhdGFUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnTm8gZGF0YSBhdmFpbGFibGUnXG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA1MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzkpO1xuLyoqXG4gKiBNYXNrYWJsZVxuICpcbiAqIEBtaXhpblxuICpcbiAqIENyZWF0ZXMgYW4gaW5wdXQgbWFzayB0aGF0IGlzXG4gKiBnZW5lcmF0ZWQgZnJvbSBhIG1hc2tlZCBzdHJcbiAqXG4gKiBFeGFtcGxlOiBtYXNrPVwiIyMjIyAjIyMjICMjIyMgIyMjI1wiXG4gKi9cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnbWFza2FibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNlbGVjdGlvbjogMCxcbiAgICAgIGxhenlTZWxlY3Rpb246IDAsXG4gICAgICBwcmVEZWZpbmVkOiB7XG4gICAgICAgICdjcmVkaXQtY2FyZCc6ICcjIyMjIC0gIyMjIyAtICMjIyMgLSAjIyMjJyxcbiAgICAgICAgJ2RhdGUnOiAnIyMvIyMvIyMjIycsXG4gICAgICAgICdkYXRlLXdpdGgtdGltZSc6ICcjIy8jIy8jIyMjICMjOiMjJyxcbiAgICAgICAgJ3Bob25lJzogJygjIyMpICMjIyAtICMjIyMnLFxuICAgICAgICAnc29jaWFsJzogJyMjIy0jIy0jIyMjJyxcbiAgICAgICAgJ3RpbWUnOiAnIyM6IyMnLFxuICAgICAgICAndGltZS13aXRoLXNlY29uZHMnOiAnIyM6IyM6IyMnXG4gICAgICB9XG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGRvbnRGaWxsTWFza0JsYW5rczogQm9vbGVhbixcbiAgICBtYXNrOiB7XG4gICAgICB0eXBlOiBbT2JqZWN0LCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgcmV0dXJuTWFza2VkVmFsdWU6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIG1hc2tlZDogZnVuY3Rpb24gbWFza2VkKCkge1xuICAgICAgdmFyIHByZURlZmluZWQgPSB0aGlzLnByZURlZmluZWRbdGhpcy5tYXNrXTtcbiAgICAgIHZhciBtYXNrID0gcHJlRGVmaW5lZCB8fCB0aGlzLm1hc2sgfHwgJyc7XG5cbiAgICAgIHJldHVybiBtYXNrLnNwbGl0KCcnKTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICAvKipcbiAgICAgKiBNYWtlIHN1cmUgdGhlIGN1cnNvciBpcyBpbiB0aGUgY29ycmVjdFxuICAgICAqIGxvY2F0aW9uIHdoZW4gdGhlIG1hc2sgY2hhbmdlc1xuICAgICAqL1xuICAgIG1hc2s6IGZ1bmN0aW9uIG1hc2soKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuJHJlZnMuaW5wdXQpIHJldHVybjtcblxuICAgICAgdmFyIG9sZFZhbHVlID0gdGhpcy4kcmVmcy5pbnB1dC52YWx1ZTtcbiAgICAgIHZhciBuZXdWYWx1ZSA9IHRoaXMubWFza1RleHQoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJjXCIgLyogdW5tYXNrVGV4dCAqL10pKHRoaXMubGF6eVZhbHVlKSk7XG4gICAgICB2YXIgcG9zaXRpb24gPSAwO1xuICAgICAgdmFyIHNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgc2VsZWN0aW9uOyBpbmRleCsrKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fW1wiYVwiIC8qIGlzTWFza0RlbGltaXRlciAqL10pKG9sZFZhbHVlW2luZGV4XSkgfHwgcG9zaXRpb24rKztcbiAgICAgIH1cblxuICAgICAgc2VsZWN0aW9uID0gMDtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBfaW5kZXggPSAwOyBfaW5kZXggPCBuZXdWYWx1ZS5sZW5ndGg7IF9pbmRleCsrKSB7XG4gICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJhXCIgLyogaXNNYXNrRGVsaW1pdGVyICovXSkobmV3VmFsdWVbX2luZGV4XSkgfHwgcG9zaXRpb24tLTtcbiAgICAgICAgICBzZWxlY3Rpb24rKztcbiAgICAgICAgICBpZiAocG9zaXRpb24gPD0gMCkgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBfdGhpcy4kcmVmcy5pbnB1dC52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICBfdGhpcy5zZXRDYXJldFBvc2l0aW9uKHNlbGVjdGlvbik7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgYmVmb3JlTW91bnQ6IGZ1bmN0aW9uIGJlZm9yZU1vdW50KCkge1xuICAgIGlmICghdGhpcy5tYXNrIHx8IHRoaXMudmFsdWUgPT0gbnVsbCB8fCAhdGhpcy5yZXR1cm5NYXNrZWRWYWx1ZSkgcmV0dXJuO1xuXG4gICAgdmFyIHZhbHVlID0gdGhpcy5tYXNrVGV4dCh0aGlzLnZhbHVlKTtcblxuICAgIC8vIFNlZSBpZiBtYXNrZWQgdmFsdWUgZG9lcyBub3RcbiAgICAvLyBtYXRjaCB0aGUgdXNlciBnaXZlbiB2YWx1ZVxuICAgIGlmICh2YWx1ZSA9PT0gdGhpcy52YWx1ZSkgcmV0dXJuO1xuXG4gICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgc2V0Q2FyZXRQb3NpdGlvbjogZnVuY3Rpb24gc2V0Q2FyZXRQb3NpdGlvbihzZWxlY3Rpb24pIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHNlbGVjdGlvbjtcbiAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXMyLiRyZWZzLmlucHV0ICYmIF90aGlzMi4kcmVmcy5pbnB1dC5zZXRTZWxlY3Rpb25SYW5nZShfdGhpczIuc2VsZWN0aW9uLCBfdGhpczIuc2VsZWN0aW9uKTtcbiAgICAgIH0sIDApO1xuICAgIH0sXG4gICAgdXBkYXRlUmFuZ2U6IGZ1bmN0aW9uIHVwZGF0ZVJhbmdlKCkge1xuICAgICAgaWYgKCF0aGlzLiRyZWZzLmlucHV0KSByZXR1cm47XG5cbiAgICAgIHZhciBuZXdWYWx1ZSA9IHRoaXMubWFza1RleHQodGhpcy5sYXp5VmFsdWUpO1xuICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7XG5cbiAgICAgIHRoaXMuJHJlZnMuaW5wdXQudmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgIGlmIChuZXdWYWx1ZSkge1xuICAgICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgbmV3VmFsdWUubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgaWYgKHRoaXMubGF6eVNlbGVjdGlvbiA8PSAwKSBicmVhaztcbiAgICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX21hc2tfX1tcImFcIiAvKiBpc01hc2tEZWxpbWl0ZXIgKi9dKShuZXdWYWx1ZVtpbmRleF0pIHx8IHRoaXMubGF6eVNlbGVjdGlvbi0tO1xuICAgICAgICAgIHNlbGVjdGlvbisrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0Q2FyZXRQb3NpdGlvbihzZWxlY3Rpb24pO1xuICAgICAgLy8gdGhpcy4kZW1pdCgpIG11c3Qgb2NjdXIgb25seSB3aGVuIGFsbCBpbnRlcm5hbCB2YWx1ZXMgYXJlIGNvcnJlY3RcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5yZXR1cm5NYXNrZWRWYWx1ZSA/IHRoaXMuJHJlZnMuaW5wdXQudmFsdWUgOiB0aGlzLmxhenlWYWx1ZSk7XG4gICAgfSxcbiAgICBtYXNrVGV4dDogZnVuY3Rpb24gbWFza1RleHQodGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMubWFzayA/IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfbWFza19fW1wiYlwiIC8qIG1hc2tUZXh0ICovXSkodGV4dCwgdGhpcy5tYXNrZWQsIHRoaXMuZG9udEZpbGxNYXNrQmxhbmtzKSA6IHRleHQ7XG4gICAgfSxcbiAgICB1bm1hc2tUZXh0OiBmdW5jdGlvbiB1bm1hc2tUZXh0KHRleHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1hc2sgJiYgIXRoaXMucmV0dXJuTWFza2VkVmFsdWUgPyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX21hc2tfX1tcImNcIiAvKiB1bm1hc2tUZXh0ICovXSkodGV4dCkgOiB0ZXh0O1xuICAgIH0sXG5cbiAgICAvLyBXaGVuIHRoZSBpbnB1dCBjaGFuZ2VzIGFuZCBpc1xuICAgIC8vIHJlLWNyZWF0ZWQsIGVuc3VyZSB0aGF0IHRoZVxuICAgIC8vIGNhcmV0IGxvY2F0aW9uIGlzIGNvcnJlY3RcbiAgICBzZXRTZWxlY3Rpb25SYW5nZTogZnVuY3Rpb24gc2V0U2VsZWN0aW9uUmFuZ2UoKSB7XG4gICAgICB0aGlzLiRuZXh0VGljayh0aGlzLnVwZGF0ZVJhbmdlKTtcbiAgICB9LFxuICAgIHJlc2V0U2VsZWN0aW9uczogZnVuY3Rpb24gcmVzZXRTZWxlY3Rpb25zKGlucHV0KSB7XG4gICAgICBpZiAoIWlucHV0LnNlbGVjdGlvbkVuZCkgcmV0dXJuO1xuICAgICAgdGhpcy5zZWxlY3Rpb24gPSBpbnB1dC5zZWxlY3Rpb25FbmQ7XG4gICAgICB0aGlzLmxhenlTZWxlY3Rpb24gPSAwO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5zZWxlY3Rpb247IGluZGV4KyspIHtcbiAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9tYXNrX19bXCJhXCIgLyogaXNNYXNrRGVsaW1pdGVyICovXSkoaW5wdXQudmFsdWVbaW5kZXhdKSB8fCB0aGlzLmxhenlTZWxlY3Rpb24rKztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDUxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICdzb2xvYWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBmbGF0OiBCb29sZWFuLFxuICAgIHNvbG9JbnZlcnRlZDogQm9vbGVhbixcbiAgICBzb2xvOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBpc1NvbG86IGZ1bmN0aW9uIGlzU29sbygpIHtcbiAgICAgIHJldHVybiB0aGlzLnNvbG8gfHwgdGhpcy5zb2xvSW52ZXJ0ZWQ7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Tb2xvQ2xhc3NlczogZnVuY3Rpb24gZ2VuU29sb0NsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNvbG8nOiB0aGlzLmlzU29sbyxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zb2xvLWludmVydGVkJzogdGhpcy5zb2xvSW52ZXJ0ZWQsXG4gICAgICAgICdlbGV2YXRpb24tMCc6IHRoaXMuZmxhdFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDUyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpdmlkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQ0KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGl2aWRlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpdmlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDUzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBEZWxheWFibGVcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBDaGFuZ2VzIHRoZSBvcGVuIG9yIGNsb3NlXG4gKiBkZWxheSB0aW1lIGZvciBlbGVtZW50c1xuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ2RlbGF5YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgb3BlblRpbWVvdXQ6IG51bGwsXG4gICAgICBjbG9zZVRpbWVvdXQ6IG51bGxcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgb3BlbkRlbGF5OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgY2xvc2VEZWxheToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDIwMFxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLyoqXG4gICAgICogQ2xlYXIgYW55IHBlbmRpbmcgZGVsYXlcbiAgICAgKiB0aW1lcnMgZnJvbSBleGVjdXRpbmdcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgY2xlYXJEZWxheTogZnVuY3Rpb24gY2xlYXJEZWxheSgpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLm9wZW5UaW1lb3V0KTtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlVGltZW91dCk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFJ1bnMgY2FsbGJhY2sgYWZ0ZXJcbiAgICAgKiBhIHNwZWNpZmllZCBkZWxheVxuICAgICAqXG4gICAgICogQHBhcmFtICB7U3RyaW5nfSAgIHR5cGVcbiAgICAgKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2JcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgcnVuRGVsYXk6IGZ1bmN0aW9uIHJ1bkRlbGF5KHR5cGUsIGNiKSB7XG4gICAgICB0aGlzLmNsZWFyRGVsYXkoKTtcblxuICAgICAgdmFyIGRlbGF5ID0gcGFyc2VJbnQodGhpc1t0eXBlICsgJ0RlbGF5J10sIDEwKTtcblxuICAgICAgdGhpc1t0eXBlICsgJ1RpbWVvdXQnXSA9IHNldFRpbWVvdXQoY2IsIGRlbGF5KTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDU0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0YWNrYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cblxuXG5cblxuXG4vKiBlc2xpbnQtZGlzYWJsZSBvYmplY3QtcHJvcGVydHktbmV3bGluZSAqL1xudmFyIGRpbWVuc2lvbnMgPSB7XG4gIGFjdGl2YXRvcjoge1xuICAgIHRvcDogMCwgbGVmdDogMCxcbiAgICBib3R0b206IDAsIHJpZ2h0OiAwLFxuICAgIHdpZHRoOiAwLCBoZWlnaHQ6IDAsXG4gICAgb2Zmc2V0VG9wOiAwLCBzY3JvbGxIZWlnaHQ6IDBcbiAgfSxcbiAgY29udGVudDoge1xuICAgIHRvcDogMCwgbGVmdDogMCxcbiAgICBib3R0b206IDAsIHJpZ2h0OiAwLFxuICAgIHdpZHRoOiAwLCBoZWlnaHQ6IDAsXG4gICAgb2Zmc2V0VG9wOiAwLCBzY3JvbGxIZWlnaHQ6IDBcbiAgfSxcbiAgaGFzV2luZG93OiBmYWxzZVxuICAvKiBlc2xpbnQtZW5hYmxlIG9iamVjdC1wcm9wZXJ0eS1uZXdsaW5lICovXG5cbiAgLyoqXG4gICAqIE1lbnVhYmxlXG4gICAqXG4gICAqIEBtaXhpblxuICAgKlxuICAgKiBVc2VkIGZvciBmaXhlZCBvciBhYnNvbHV0ZWx5IHBvc2l0aW9uaW5nXG4gICAqIGVsZW1lbnRzIHdpdGhpbiB0aGUgRE9NXG4gICAqIENhbiBjYWxjdWxhdGUgWCBhbmQgWSBheGlzIG92ZXJmbG93c1xuICAgKiBBcyB3ZWxsIGFzIGJlIG1hbnVhbGx5IHBvc2l0aW9uZWRcbiAgICovXG59Oy8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnbWVudWFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcG9zaXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3RhY2thYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFic29sdXRlWDogMCxcbiAgICAgIGFic29sdXRlWTogMCxcbiAgICAgIGRpbWVuc2lvbnM6IE9iamVjdC5hc3NpZ24oe30sIGRpbWVuc2lvbnMpLFxuICAgICAgaXNDb250ZW50QWN0aXZlOiBmYWxzZSxcbiAgICAgIHBhZ2VZT2Zmc2V0OiAwLFxuICAgICAgc3RhY2tDbGFzczogJ21lbnVhYmxlX19jb250ZW50X19hY3RpdmUnLFxuICAgICAgc3RhY2tNaW5aSW5kZXg6IDZcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZhdG9yOiB7XG4gICAgICBkZWZhdWx0OiBudWxsLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiBbJ3N0cmluZycsICdvYmplY3QnXS5pbmNsdWRlcyh0eXBlb2YgdmFsID09PSAndW5kZWZpbmVkJyA/ICd1bmRlZmluZWQnIDogX3R5cGVvZih2YWwpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGFsbG93T3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgbWF4V2lkdGg6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAnYXV0bydcbiAgICB9LFxuICAgIG1pbldpZHRoOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIG51ZGdlQm90dG9tOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZUxlZnQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZVJpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgbnVkZ2VUb3A6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfSxcbiAgICBudWRnZVdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMFxuICAgIH0sXG4gICAgb2Zmc2V0T3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgcG9zaXRpb25YOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBwb3NpdGlvblk6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHpJbmRleDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZExlZnQ6IGZ1bmN0aW9uIGNvbXB1dGVkTGVmdCgpIHtcbiAgICAgIHZhciBhID0gdGhpcy5kaW1lbnNpb25zLmFjdGl2YXRvcjtcbiAgICAgIHZhciBjID0gdGhpcy5kaW1lbnNpb25zLmNvbnRlbnQ7XG4gICAgICB2YXIgbWluV2lkdGggPSBhLndpZHRoIDwgYy53aWR0aCA/IGMud2lkdGggOiBhLndpZHRoO1xuICAgICAgdmFyIGxlZnQgPSAwO1xuXG4gICAgICBsZWZ0ICs9IHRoaXMubGVmdCA/IGEubGVmdCAtIChtaW5XaWR0aCAtIGEud2lkdGgpIDogYS5sZWZ0O1xuXG4gICAgICBpZiAodGhpcy5vZmZzZXRYKSBsZWZ0ICs9IHRoaXMubGVmdCA/IC1hLndpZHRoIDogYS53aWR0aDtcbiAgICAgIGlmICh0aGlzLm51ZGdlTGVmdCkgbGVmdCAtPSBwYXJzZUludCh0aGlzLm51ZGdlTGVmdCk7XG4gICAgICBpZiAodGhpcy5udWRnZVJpZ2h0KSBsZWZ0ICs9IHBhcnNlSW50KHRoaXMubnVkZ2VSaWdodCk7XG5cbiAgICAgIHJldHVybiBsZWZ0O1xuICAgIH0sXG4gICAgY29tcHV0ZWRUb3A6IGZ1bmN0aW9uIGNvbXB1dGVkVG9wKCkge1xuICAgICAgdmFyIGEgPSB0aGlzLmRpbWVuc2lvbnMuYWN0aXZhdG9yO1xuICAgICAgdmFyIGMgPSB0aGlzLmRpbWVuc2lvbnMuY29udGVudDtcbiAgICAgIHZhciB0b3AgPSB0aGlzLnRvcCA/IGEuYm90dG9tIC0gYy5oZWlnaHQgOiBhLnRvcDtcblxuICAgICAgaWYgKCF0aGlzLmlzQXR0YWNoZWQpIHRvcCArPSB0aGlzLnBhZ2VZT2Zmc2V0O1xuICAgICAgaWYgKHRoaXMub2Zmc2V0WSkgdG9wICs9IHRoaXMudG9wID8gLWEuaGVpZ2h0IDogYS5oZWlnaHQ7XG4gICAgICBpZiAodGhpcy5udWRnZVRvcCkgdG9wIC09IHRoaXMubnVkZ2VUb3A7XG4gICAgICBpZiAodGhpcy5udWRnZUJvdHRvbSkgdG9wICs9IHRoaXMubnVkZ2VCb3R0b207XG5cbiAgICAgIHJldHVybiB0b3A7XG4gICAgfSxcbiAgICBoYXNBY3RpdmF0b3I6IGZ1bmN0aW9uIGhhc0FjdGl2YXRvcigpIHtcbiAgICAgIHJldHVybiAhIXRoaXMuJHNsb3RzLmFjdGl2YXRvciB8fCB0aGlzLmFjdGl2YXRvcjtcbiAgICB9LFxuICAgIGlzQXR0YWNoZWQ6IGZ1bmN0aW9uIGlzQXR0YWNoZWQoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdHRhY2ggIT09IGZhbHNlO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGRpc2FibGVkOiBmdW5jdGlvbiBkaXNhYmxlZCh2YWwpIHtcbiAgICAgIHZhbCAmJiB0aGlzLmNhbGxEZWFjdGl2YXRlKCk7XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICB2YWwgPyB0aGlzLmNhbGxBY3RpdmF0ZSgpIDogdGhpcy5jYWxsRGVhY3RpdmF0ZSgpO1xuICAgIH1cbiAgfSxcblxuICBiZWZvcmVNb3VudDogZnVuY3Rpb24gYmVmb3JlTW91bnQoKSB7XG4gICAgdGhpcy5jaGVja0ZvcldpbmRvdygpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGFic29sdXRlUG9zaXRpb246IGZ1bmN0aW9uIGFic29sdXRlUG9zaXRpb24oKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvZmZzZXRUb3A6IDAsXG4gICAgICAgIHNjcm9sbEhlaWdodDogMCxcbiAgICAgICAgdG9wOiB0aGlzLnBvc2l0aW9uWSB8fCB0aGlzLmFic29sdXRlWSxcbiAgICAgICAgYm90dG9tOiB0aGlzLnBvc2l0aW9uWSB8fCB0aGlzLmFic29sdXRlWSxcbiAgICAgICAgbGVmdDogdGhpcy5wb3NpdGlvblggfHwgdGhpcy5hYnNvbHV0ZVgsXG4gICAgICAgIHJpZ2h0OiB0aGlzLnBvc2l0aW9uWCB8fCB0aGlzLmFic29sdXRlWCxcbiAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICB3aWR0aDogMFxuICAgICAgfTtcbiAgICB9LFxuICAgIGFjdGl2YXRlOiBmdW5jdGlvbiBhY3RpdmF0ZSgpIHt9LFxuICAgIGNhbGNMZWZ0OiBmdW5jdGlvbiBjYWxjTGVmdCgpIHtcbiAgICAgIHJldHVybiAodGhpcy5pc0F0dGFjaGVkID8gdGhpcy5jb21wdXRlZExlZnQgOiB0aGlzLmNhbGNYT3ZlcmZsb3codGhpcy5jb21wdXRlZExlZnQpKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjVG9wOiBmdW5jdGlvbiBjYWxjVG9wKCkge1xuICAgICAgcmV0dXJuICh0aGlzLmlzQXR0YWNoZWQgPyB0aGlzLmNvbXB1dGVkVG9wIDogdGhpcy5jYWxjWU92ZXJmbG93KHRoaXMuY29tcHV0ZWRUb3ApKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjWE92ZXJmbG93OiBmdW5jdGlvbiBjYWxjWE92ZXJmbG93KGxlZnQpIHtcbiAgICAgIHZhciBwYXJzZWRNYXhXaWR0aCA9IGlzTmFOKHBhcnNlSW50KHRoaXMubWF4V2lkdGgpKSA/IDAgOiBwYXJzZUludCh0aGlzLm1heFdpZHRoKTtcbiAgICAgIHZhciBpbm5lcldpZHRoID0gdGhpcy5nZXRJbm5lcldpZHRoKCk7XG4gICAgICB2YXIgbWF4V2lkdGggPSBNYXRoLm1heCh0aGlzLmRpbWVuc2lvbnMuY29udGVudC53aWR0aCwgcGFyc2VkTWF4V2lkdGgpO1xuICAgICAgdmFyIHRvdGFsV2lkdGggPSBsZWZ0ICsgbWF4V2lkdGg7XG4gICAgICB2YXIgYXZhaWxhYmxlV2lkdGggPSB0b3RhbFdpZHRoIC0gaW5uZXJXaWR0aDtcblxuICAgICAgaWYgKCghdGhpcy5sZWZ0IHx8IHRoaXMucmlnaHQpICYmIGF2YWlsYWJsZVdpZHRoID4gMCkge1xuICAgICAgICBsZWZ0ID0gaW5uZXJXaWR0aCAtIG1heFdpZHRoIC0gKGlubmVyV2lkdGggPiA2MDAgPyAzMCA6IDEyKSAvLyBBY2NvdW50IGZvciBzY3JvbGxiYXJcbiAgICAgICAgO1xuICAgICAgfVxuXG4gICAgICBpZiAobGVmdCA8IDApIGxlZnQgPSAxMjtcblxuICAgICAgcmV0dXJuIGxlZnQ7XG4gICAgfSxcbiAgICBjYWxjWU92ZXJmbG93OiBmdW5jdGlvbiBjYWxjWU92ZXJmbG93KHRvcCkge1xuICAgICAgdmFyIGRvY3VtZW50SGVpZ2h0ID0gdGhpcy5nZXRJbm5lckhlaWdodCgpO1xuICAgICAgdmFyIHRvVG9wID0gdGhpcy5wYWdlWU9mZnNldCArIGRvY3VtZW50SGVpZ2h0O1xuICAgICAgdmFyIGFjdGl2YXRvciA9IHRoaXMuZGltZW5zaW9ucy5hY3RpdmF0b3I7XG4gICAgICB2YXIgY29udGVudEhlaWdodCA9IHRoaXMuZGltZW5zaW9ucy5jb250ZW50LmhlaWdodDtcbiAgICAgIHZhciB0b3RhbEhlaWdodCA9IHRvcCArIGNvbnRlbnRIZWlnaHQ7XG4gICAgICB2YXIgaXNPdmVyZmxvd2luZyA9IHRvVG9wIDwgdG90YWxIZWlnaHQ7XG5cbiAgICAgIC8vIElmIG92ZXJmbG93aW5nIGJvdHRvbSBhbmQgb2Zmc2V0XG4gICAgICAvLyBUT0RPOiBzZXQgJ2JvdHRvbScgcG9zaXRpb24gaW5zdGVhZCBvZiAndG9wJ1xuICAgICAgaWYgKGlzT3ZlcmZsb3dpbmcgJiYgdGhpcy5vZmZzZXRPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0aGlzLnBhZ2VZT2Zmc2V0ICsgKGFjdGl2YXRvci50b3AgLSBjb250ZW50SGVpZ2h0KTtcbiAgICAgICAgLy8gSWYgb3ZlcmZsb3dpbmcgYm90dG9tXG4gICAgICB9IGVsc2UgaWYgKGlzT3ZlcmZsb3dpbmcgJiYgIXRoaXMuYWxsb3dPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0b1RvcCAtIGNvbnRlbnRIZWlnaHQgLSAxMjtcbiAgICAgICAgLy8gSWYgb3ZlcmZsb3dpbmcgdG9wXG4gICAgICB9IGVsc2UgaWYgKHRvcCA8IHRoaXMucGFnZVlPZmZzZXQgJiYgIXRoaXMuYWxsb3dPdmVyZmxvdykge1xuICAgICAgICB0b3AgPSB0aGlzLnBhZ2VZT2Zmc2V0ICsgMTI7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0b3AgPCAxMiA/IDEyIDogdG9wO1xuICAgIH0sXG4gICAgY2FsbEFjdGl2YXRlOiBmdW5jdGlvbiBjYWxsQWN0aXZhdGUoKSB7XG4gICAgICBpZiAoIXRoaXMuaGFzV2luZG93KSByZXR1cm47XG5cbiAgICAgIHRoaXMuYWN0aXZhdGUoKTtcbiAgICB9LFxuICAgIGNhbGxEZWFjdGl2YXRlOiBmdW5jdGlvbiBjYWxsRGVhY3RpdmF0ZSgpIHtcbiAgICAgIHRoaXMuaXNDb250ZW50QWN0aXZlID0gZmFsc2U7XG5cbiAgICAgIHRoaXMuZGVhY3RpdmF0ZSgpO1xuICAgIH0sXG4gICAgY2hlY2tGb3JXaW5kb3c6IGZ1bmN0aW9uIGNoZWNrRm9yV2luZG93KCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykge1xuICAgICAgICB0aGlzLmhhc1dpbmRvdyA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnO1xuICAgICAgfVxuICAgIH0sXG4gICAgY2hlY2tGb3JQYWdlWU9mZnNldDogZnVuY3Rpb24gY2hlY2tGb3JQYWdlWU9mZnNldCgpIHtcbiAgICAgIGlmICh0aGlzLmhhc1dpbmRvdykge1xuICAgICAgICB0aGlzLnBhZ2VZT2Zmc2V0ID0gdGhpcy5nZXRPZmZzZXRUb3AoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGRlYWN0aXZhdGU6IGZ1bmN0aW9uIGRlYWN0aXZhdGUoKSB7fSxcbiAgICBnZXRBY3RpdmF0b3I6IGZ1bmN0aW9uIGdldEFjdGl2YXRvcigpIHtcbiAgICAgIGlmICh0aGlzLmFjdGl2YXRvcikge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMuYWN0aXZhdG9yID09PSAnc3RyaW5nJyA/IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5hY3RpdmF0b3IpIDogdGhpcy5hY3RpdmF0b3I7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRyZWZzLmFjdGl2YXRvci5jaGlsZHJlbi5sZW5ndGggPiAwID8gdGhpcy4kcmVmcy5hY3RpdmF0b3IuY2hpbGRyZW5bMF0gOiB0aGlzLiRyZWZzLmFjdGl2YXRvcjtcbiAgICB9LFxuICAgIGdldElubmVySGVpZ2h0OiBmdW5jdGlvbiBnZXRJbm5lckhlaWdodCgpIHtcbiAgICAgIGlmICghdGhpcy5oYXNXaW5kb3cpIHJldHVybiAwO1xuXG4gICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgfSxcbiAgICBnZXRJbm5lcldpZHRoOiBmdW5jdGlvbiBnZXRJbm5lcldpZHRoKCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB9LFxuICAgIGdldE9mZnNldFRvcDogZnVuY3Rpb24gZ2V0T2Zmc2V0VG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmhhc1dpbmRvdykgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtcbiAgICB9LFxuICAgIGdldFJvdW5kZWRCb3VuZGVkQ2xpZW50UmVjdDogZnVuY3Rpb24gZ2V0Um91bmRlZEJvdW5kZWRDbGllbnRSZWN0KGVsKSB7XG4gICAgICB2YXIgcmVjdCA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiBNYXRoLnJvdW5kKHJlY3QudG9wKSxcbiAgICAgICAgbGVmdDogTWF0aC5yb3VuZChyZWN0LmxlZnQpLFxuICAgICAgICBib3R0b206IE1hdGgucm91bmQocmVjdC5ib3R0b20pLFxuICAgICAgICByaWdodDogTWF0aC5yb3VuZChyZWN0LnJpZ2h0KSxcbiAgICAgICAgd2lkdGg6IE1hdGgucm91bmQocmVjdC53aWR0aCksXG4gICAgICAgIGhlaWdodDogTWF0aC5yb3VuZChyZWN0LmhlaWdodClcbiAgICAgIH07XG4gICAgfSxcbiAgICBtZWFzdXJlOiBmdW5jdGlvbiBtZWFzdXJlKGVsLCBzZWxlY3Rvcikge1xuICAgICAgZWwgPSBzZWxlY3RvciA/IGVsLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpIDogZWw7XG5cbiAgICAgIGlmICghZWwgfHwgIXRoaXMuaGFzV2luZG93KSByZXR1cm4gbnVsbDtcblxuICAgICAgdmFyIHJlY3QgPSB0aGlzLmdldFJvdW5kZWRCb3VuZGVkQ2xpZW50UmVjdChlbCk7XG5cbiAgICAgIC8vIEFjY291bnQgZm9yIGFjdGl2YXRvciBtYXJnaW5cbiAgICAgIGlmICh0aGlzLmlzQXR0YWNoZWQpIHtcbiAgICAgICAgdmFyIHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWwpO1xuXG4gICAgICAgIHJlY3QubGVmdCA9IHBhcnNlSW50KHN0eWxlLm1hcmdpbkxlZnQpO1xuICAgICAgICByZWN0LnRvcCA9IHBhcnNlSW50KHN0eWxlLm1hcmdpblRvcCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWN0O1xuICAgIH0sXG4gICAgc25lYWtQZWVrOiBmdW5jdGlvbiBzbmVha1BlZWsoY2IpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBlbCA9IF90aGlzLiRyZWZzLmNvbnRlbnQ7XG5cbiAgICAgICAgaWYgKCFlbCB8fCBfdGhpcy5pc1Nob3duKGVsKSkgcmV0dXJuIGNiKCk7XG5cbiAgICAgICAgZWwuc3R5bGUuZGlzcGxheSA9ICdpbmxpbmUtYmxvY2snO1xuICAgICAgICBjYigpO1xuICAgICAgICBlbC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBzdGFydFRyYW5zaXRpb246IGZ1bmN0aW9uIHN0YXJ0VHJhbnNpdGlvbigpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzQ29udGVudEFjdGl2ZSA9IHRydWU7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGlzU2hvd246IGZ1bmN0aW9uIGlzU2hvd24oZWwpIHtcbiAgICAgIHJldHVybiBlbC5zdHlsZS5kaXNwbGF5ICE9PSAnbm9uZSc7XG4gICAgfSxcbiAgICB1cGRhdGVEaW1lbnNpb25zOiBmdW5jdGlvbiB1cGRhdGVEaW1lbnNpb25zKCkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuY2hlY2tGb3JXaW5kb3coKTtcbiAgICAgIHRoaXMuY2hlY2tGb3JQYWdlWU9mZnNldCgpO1xuXG4gICAgICB2YXIgZGltZW5zaW9ucyA9IHt9O1xuXG4gICAgICAvLyBBY3RpdmF0b3Igc2hvdWxkIGFscmVhZHkgYmUgc2hvd25cbiAgICAgIGRpbWVuc2lvbnMuYWN0aXZhdG9yID0gIXRoaXMuaGFzQWN0aXZhdG9yIHx8IHRoaXMuYWJzb2x1dGUgPyB0aGlzLmFic29sdXRlUG9zaXRpb24oKSA6IHRoaXMubWVhc3VyZSh0aGlzLmdldEFjdGl2YXRvcigpKTtcblxuICAgICAgLy8gRGlzcGxheSBhbmQgaGlkZSB0byBnZXQgZGltZW5zaW9uc1xuICAgICAgdGhpcy5zbmVha1BlZWsoZnVuY3Rpb24gKCkge1xuICAgICAgICBkaW1lbnNpb25zLmNvbnRlbnQgPSBfdGhpczMubWVhc3VyZShfdGhpczMuJHJlZnMuY29udGVudCk7XG5cbiAgICAgICAgX3RoaXMzLmRpbWVuc2lvbnMgPSBkaW1lbnNpb25zO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA1NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTdWJoZWFkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUyKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3ViaGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTdWJoZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVkxpc3RUaWxlQWN0aW9uVGV4dCAqL1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBWTGlzdFRpbGVDb250ZW50OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gVkxpc3RUaWxlVGl0bGU7IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZMaXN0VGlsZVN1YlRpdGxlICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WTGlzdF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkxpc3RHcm91cF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkxpc3RUaWxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WTGlzdFRpbGVBY3Rpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTU4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZMaXN0VGlsZUF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIl07IH0pO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkxpc3RHcm91cCAqL1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkxpc3RUaWxlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMaXN0VGlsZUFjdGlvbl9fW1wiYVwiXTsgfSk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWTGlzdFRpbGVBdmF0YXIgKi9cblxuXG5cblxuXG5cblxuXG5cbnZhciBWTGlzdFRpbGVBY3Rpb25UZXh0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCdsaXN0X190aWxlX19hY3Rpb24tdGV4dCcsICdzcGFuJyk7XG52YXIgVkxpc3RUaWxlQ29udGVudCA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnbGlzdF9fdGlsZV9fY29udGVudCcsICdkaXYnKTtcbnZhciBWTGlzdFRpbGVUaXRsZSA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnbGlzdF9fdGlsZV9fdGl0bGUnLCAnZGl2Jyk7XG52YXIgVkxpc3RUaWxlU3ViVGl0bGUgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImVcIiAvKiBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsICovXSkoJ2xpc3RfX3RpbGVfX3N1Yi10aXRsZScsICdkaXYnKTtcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZMaXN0X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WTGlzdF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZMaXN0R3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZMaXN0R3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WTGlzdFRpbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZMaXN0VGlsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMaXN0VGlsZUFjdGlvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkxpc3RUaWxlQWN0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZMaXN0VGlsZUFjdGlvblRleHQubmFtZSwgVkxpc3RUaWxlQWN0aW9uVGV4dCk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WTGlzdFRpbGVBdmF0YXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZMaXN0VGlsZUF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChWTGlzdFRpbGVDb250ZW50Lm5hbWUsIFZMaXN0VGlsZUNvbnRlbnQpO1xuICBWdWUuY29tcG9uZW50KFZMaXN0VGlsZVN1YlRpdGxlLm5hbWUsIFZMaXN0VGlsZVN1YlRpdGxlKTtcbiAgVnVlLmNvbXBvbmVudChWTGlzdFRpbGVUaXRsZS5uYW1lLCBWTGlzdFRpbGVUaXRsZSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJmXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkxpc3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogNTcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl90aXRsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3Nik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl90aXRsZV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RpdGxlX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19waWNrZXJfYnV0dG9uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU4KTtcblxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLXRpdGxlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19waWNrZXJfYnV0dG9uX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzUmV2ZXJzaW5nOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkYXRlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnJ1xuICAgIH0sXG4gICAgc2VsZWN0aW5nWWVhcjogQm9vbGVhbixcbiAgICB5ZWFyOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogJydcbiAgICB9LFxuICAgIHllYXJJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzUmV2ZXJzaW5nID8gJ3BpY2tlci1yZXZlcnNlLXRyYW5zaXRpb24nIDogJ3BpY2tlci10cmFuc2l0aW9uJztcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUodmFsLCBwcmV2KSB7XG4gICAgICB0aGlzLmlzUmV2ZXJzaW5nID0gdmFsIDwgcHJldjtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblllYXJJY29uOiBmdW5jdGlvbiBnZW5ZZWFySWNvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy55ZWFySWNvbik7XG4gICAgfSxcbiAgICBnZXRZZWFyQnRuOiBmdW5jdGlvbiBnZXRZZWFyQnRuKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2VuUGlja2VyQnV0dG9uKCdzZWxlY3RpbmdZZWFyJywgdHJ1ZSwgW3RoaXMueWVhciwgdGhpcy55ZWFySWNvbiA/IHRoaXMuZ2VuWWVhckljb24oKSA6IG51bGxdLCAnZGF0ZS1waWNrZXItdGl0bGVfX3llYXInKTtcbiAgICB9LFxuICAgIGdlblRpdGxlVGV4dDogZnVuY3Rpb24gZ2VuVGl0bGVUZXh0KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy5jb21wdXRlZFRyYW5zaXRpb25cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgZG9tUHJvcHM6IHsgaW5uZXJIVE1MOiB0aGlzLmRhdGUgfHwgJyZuYnNwOycgfSxcbiAgICAgICAga2V5OiB0aGlzLnZhbHVlXG4gICAgICB9KV0pO1xuICAgIH0sXG4gICAgZ2VuVGl0bGVEYXRlOiBmdW5jdGlvbiBnZW5UaXRsZURhdGUodGl0bGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlblBpY2tlckJ1dHRvbignc2VsZWN0aW5nWWVhcicsIGZhbHNlLCB0aGlzLmdlblRpdGxlVGV4dCh0aXRsZSksICdkYXRlLXBpY2tlci10aXRsZV9fZGF0ZScpO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXItdGl0bGUnXG4gICAgfSwgW3RoaXMuZ2V0WWVhckJ0bigpLCB0aGlzLmdlblRpdGxlRGF0ZSgpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDU4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5QaWNrZXJCdXR0b246IGZ1bmN0aW9uIGdlblBpY2tlckJ1dHRvbihwcm9wLCB2YWx1ZSwgY29udGVudCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIHN0YXRpY0NsYXNzID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgJiYgYXJndW1lbnRzWzNdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbM10gOiAnJztcblxuICAgICAgdmFyIGFjdGl2ZSA9IHRoaXNbcHJvcF0gPT09IHZhbHVlO1xuICAgICAgdmFyIGNsaWNrID0gZnVuY3Rpb24gY2xpY2soZXZlbnQpIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIF90aGlzLiRlbWl0KCd1cGRhdGU6JyArIHByb3AsIHZhbHVlKTtcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAoJ3BpY2tlcl9fdGl0bGVfX2J0biAnICsgc3RhdGljQ2xhc3MpLnRyaW0oKSxcbiAgICAgICAgJ2NsYXNzJzogeyBhY3RpdmU6IGFjdGl2ZSB9LFxuICAgICAgICBvbjogYWN0aXZlID8gdW5kZWZpbmVkIDogeyBjbGljazogY2xpY2sgfVxuICAgICAgfSwgQXJyYXkuaXNBcnJheShjb250ZW50KSA/IGNvbnRlbnQgOiBbY29udGVudF0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNTkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl9oZWFkZXJfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfaGVhZGVyX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfaGVhZGVyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xudmFyIF9zbGljZWRUb0FycmF5ID0gZnVuY3Rpb24gKCkgeyBmdW5jdGlvbiBzbGljZUl0ZXJhdG9yKGFyciwgaSkgeyB2YXIgX2FyciA9IFtdOyB2YXIgX24gPSB0cnVlOyB2YXIgX2QgPSBmYWxzZTsgdmFyIF9lID0gdW5kZWZpbmVkOyB0cnkgeyBmb3IgKHZhciBfaSA9IGFycltTeW1ib2wuaXRlcmF0b3JdKCksIF9zOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7IF9hcnIucHVzaChfcy52YWx1ZSk7IGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsgfSB9IGNhdGNoIChlcnIpIHsgX2QgPSB0cnVlOyBfZSA9IGVycjsgfSBmaW5hbGx5IHsgdHJ5IHsgaWYgKCFfbiAmJiBfaVtcInJldHVyblwiXSkgX2lbXCJyZXR1cm5cIl0oKTsgfSBmaW5hbGx5IHsgaWYgKF9kKSB0aHJvdyBfZTsgfSB9IHJldHVybiBfYXJyOyB9IHJldHVybiBmdW5jdGlvbiAoYXJyLCBpKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgcmV0dXJuIGFycjsgfSBlbHNlIGlmIChTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGFycikpIHsgcmV0dXJuIHNsaWNlSXRlcmF0b3IoYXJyLCBpKTsgfSBlbHNlIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2VcIik7IH0gfTsgfSgpO1xuXG5cblxuLy8gQ29tcG9uZW50c1xuXG5cblxuLy8gTWl4aW5zXG5cblxuLy8gVXRpbHNcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZGF0ZS1waWNrZXItaGVhZGVyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNSZXZlcnNpbmc6IGZhbHNlLFxuICAgICAgZGVmYXVsdENvbG9yOiAnYWNjZW50J1xuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBsb2NhbGU6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdlbi11cydcbiAgICB9LFxuICAgIG1pbjogU3RyaW5nLFxuICAgIG1heDogU3RyaW5nLFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgdmFsdWU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGZvcm1hdHRlcjogZnVuY3Rpb24gZm9ybWF0dGVyKCkge1xuICAgICAgaWYgKHRoaXMuZm9ybWF0KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdDtcbiAgICAgIH0gZWxzZSBpZiAoU3RyaW5nKHRoaXMudmFsdWUpLnNwbGl0KCctJylbMV0pIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyBtb250aDogJ2xvbmcnLCB5ZWFyOiAnbnVtZXJpYycsIHRpbWVab25lOiAnVVRDJyB9LCB7IGxlbmd0aDogNyB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgeWVhcjogJ251bWVyaWMnLCB0aW1lWm9uZTogJ1VUQycgfSwgeyBsZW5ndGg6IDQgfSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKG5ld1ZhbCwgb2xkVmFsKSB7XG4gICAgICB0aGlzLmlzUmV2ZXJzaW5nID0gbmV3VmFsIDwgb2xkVmFsO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQnRuOiBmdW5jdGlvbiBnZW5CdG4oY2hhbmdlKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkIHx8IGNoYW5nZSA8IDAgJiYgdGhpcy5taW4gJiYgdGhpcy5jYWxjdWxhdGVDaGFuZ2UoY2hhbmdlKSA8IHRoaXMubWluIHx8IGNoYW5nZSA+IDAgJiYgdGhpcy5tYXggJiYgdGhpcy5jYWxjdWxhdGVDaGFuZ2UoY2hhbmdlKSA+IHRoaXMubWF4O1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGRhcms6IHRoaXMuZGFyayxcbiAgICAgICAgICBkaXNhYmxlZDogZGlzYWJsZWQsXG4gICAgICAgICAgaWNvbjogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBuYXRpdmVPbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljayhlKSB7XG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2lucHV0JywgX3RoaXMuY2FsY3VsYXRlQ2hhbmdlKGNoYW5nZSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBjaGFuZ2UgPCAwID8gdGhpcy5wcmV2SWNvbiA6IHRoaXMubmV4dEljb24pXSk7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVDaGFuZ2U6IGZ1bmN0aW9uIGNhbGN1bGF0ZUNoYW5nZShzaWduKSB7XG4gICAgICB2YXIgX1N0cmluZyRzcGxpdCRtYXAgPSBTdHJpbmcodGhpcy52YWx1ZSkuc3BsaXQoJy0nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICAgICAgcmV0dXJuIDEgKiB2O1xuICAgICAgfSksXG4gICAgICAgICAgX1N0cmluZyRzcGxpdCRtYXAyID0gX3NsaWNlZFRvQXJyYXkoX1N0cmluZyRzcGxpdCRtYXAsIDIpLFxuICAgICAgICAgIHllYXIgPSBfU3RyaW5nJHNwbGl0JG1hcDJbMF0sXG4gICAgICAgICAgbW9udGggPSBfU3RyaW5nJHNwbGl0JG1hcDJbMV07XG5cbiAgICAgIGlmIChtb250aCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiAnJyArICh5ZWFyICsgc2lnbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdXRpbF9fW1wiYlwiIC8qIG1vbnRoQ2hhbmdlICovXSkoU3RyaW5nKHRoaXMudmFsdWUpLCBzaWduKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGdlbkhlYWRlcjogZnVuY3Rpb24gZ2VuSGVhZGVyKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBoZWFkZXIgPSB0aGlzLiRjcmVhdGVFbGVtZW50KCdzdHJvbmcnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuZGlzYWJsZWQgPyB1bmRlZmluZWQgOiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICAgIGtleTogU3RyaW5nKHRoaXMudmFsdWUpLFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczIuJGVtaXQoJ3RvZ2dsZScpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHQgfHwgdGhpcy5mb3JtYXR0ZXIoU3RyaW5nKHRoaXMudmFsdWUpKV0pO1xuXG4gICAgICB2YXIgdHJhbnNpdGlvbiA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy5pc1JldmVyc2luZyA/ICd0YWItcmV2ZXJzZS10cmFuc2l0aW9uJyA6ICd0YWItdHJhbnNpdGlvbidcbiAgICAgICAgfVxuICAgICAgfSwgW2hlYWRlcl0pO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2RhdGUtcGlja2VyLWhlYWRlcl9fdmFsdWUnLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICdkYXRlLXBpY2tlci1oZWFkZXJfX3ZhbHVlLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgICAgfVxuICAgICAgfSwgW3RyYW5zaXRpb25dKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2RhdGUtcGlja2VyLWhlYWRlcidcbiAgICB9LCBbdGhpcy5nZW5CdG4oLTEpLCB0aGlzLmdlbkhlYWRlcigpLCB0aGlzLmdlbkJ0bigrMSldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2RhdGVfcGlja2VyX3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLy8gTWl4aW5zXG5cblxuXG4vLyBVdGlsc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLWRhdGUtdGFibGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kYXRlX3BpY2tlcl90YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGV2ZW50czoge1xuICAgICAgdHlwZTogW0FycmF5LCBPYmplY3QsIEZ1bmN0aW9uXSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGV2ZW50Q29sb3I6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIEZ1bmN0aW9uLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogJ3dhcm5pbmcnXG4gICAgfSxcbiAgICBmaXJzdERheU9mV2Vlazoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIHdlZWtkYXlGb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGZvcm1hdHRlcjogZnVuY3Rpb24gZm9ybWF0dGVyKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0IHx8IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyBkYXk6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sIHsgc3RhcnQ6IDgsIGxlbmd0aDogMiB9KTtcbiAgICB9LFxuICAgIHdlZWtkYXlGb3JtYXR0ZXI6IGZ1bmN0aW9uIHdlZWtkYXlGb3JtYXR0ZXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy53ZWVrZGF5Rm9ybWF0IHx8IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImFcIiAvKiBjcmVhdGVOYXRpdmVMb2NhbGVGb3JtYXR0ZXIgKi9dKSh0aGlzLmxvY2FsZSwgeyB3ZWVrZGF5OiAnbmFycm93JywgdGltZVpvbmU6ICdVVEMnIH0pO1xuICAgIH0sXG4gICAgd2Vla0RheXM6IGZ1bmN0aW9uIHdlZWtEYXlzKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGZpcnN0ID0gcGFyc2VJbnQodGhpcy5maXJzdERheU9mV2VlaywgMTApO1xuXG4gICAgICByZXR1cm4gdGhpcy53ZWVrZGF5Rm9ybWF0dGVyID8gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg3KS5tYXAoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLndlZWtkYXlGb3JtYXR0ZXIoJzIwMTctMDEtJyArIChmaXJzdCArIGkgKyAxNSkpO1xuICAgICAgfSkgLy8gMjAxNy0wMS0xNSBpcyBTdW5kYXlcbiAgICAgIDogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg3KS5tYXAoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIFsnUycsICdNJywgJ1QnLCAnVycsICdUJywgJ0YnLCAnUyddWyhpICsgZmlyc3QpICUgN107XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGNhbGN1bGF0ZVRhYmxlRGF0ZTogZnVuY3Rpb24gY2FsY3VsYXRlVGFibGVEYXRlKGRlbHRhKSB7XG4gICAgICByZXR1cm4gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fW1wiYlwiIC8qIG1vbnRoQ2hhbmdlICovXSkodGhpcy50YWJsZURhdGUsIE1hdGguc2lnbihkZWx0YSB8fCAxKSk7XG4gICAgfSxcbiAgICBnZW5USGVhZDogZnVuY3Rpb24gZ2VuVEhlYWQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGRheXMgPSB0aGlzLndlZWtEYXlzLm1hcChmdW5jdGlvbiAoZGF5KSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuJGNyZWF0ZUVsZW1lbnQoJ3RoJywgZGF5KTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RoZWFkJywgdGhpcy5nZW5UUihkYXlzKSk7XG4gICAgfSxcbiAgICBnZW5FdmVudDogZnVuY3Rpb24gZ2VuRXZlbnQoZGF0ZSkge1xuICAgICAgdmFyIGV2ZW50Q29sb3IgPSB2b2lkIDA7XG4gICAgICBpZiAodHlwZW9mIHRoaXMuZXZlbnRDb2xvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgZXZlbnRDb2xvciA9IHRoaXMuZXZlbnRDb2xvcjtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuZXZlbnRDb2xvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBldmVudENvbG9yID0gdGhpcy5ldmVudENvbG9yKGRhdGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXZlbnRDb2xvciA9IHRoaXMuZXZlbnRDb2xvcltkYXRlXTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXItdGFibGVfX2V2ZW50JyxcbiAgICAgICAgY2xhc3M6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe30sIGV2ZW50Q29sb3IgfHwgdGhpcy5jb2xvcilcbiAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvLyBSZXR1cm5zIG51bWJlciBvZiB0aGUgZGF5cyBmcm9tIHRoZSBmaXJzdERheU9mV2VlayB0byB0aGUgZmlyc3QgZGF5IG9mIHRoZSBjdXJyZW50IG1vbnRoXG4gICAgd2Vla0RheXNCZWZvcmVGaXJzdERheU9mVGhlTW9udGg6IGZ1bmN0aW9uIHdlZWtEYXlzQmVmb3JlRmlyc3REYXlPZlRoZU1vbnRoKCkge1xuICAgICAgdmFyIGZpcnN0RGF5T2ZUaGVNb250aCA9IG5ldyBEYXRlKHRoaXMuZGlzcGxheWVkWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmRpc3BsYXllZE1vbnRoICsgMSkgKyAnLTAxVDAwOjAwOjAwKzAwOjAwJyk7XG4gICAgICB2YXIgd2Vla0RheSA9IGZpcnN0RGF5T2ZUaGVNb250aC5nZXRVVENEYXkoKTtcbiAgICAgIHJldHVybiAod2Vla0RheSAtIHBhcnNlSW50KHRoaXMuZmlyc3REYXlPZldlZWspICsgNykgJSA3O1xuICAgIH0sXG4gICAgaXNFdmVudDogZnVuY3Rpb24gaXNFdmVudChkYXRlKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmV2ZW50cykpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRzLmluZGV4T2YoZGF0ZSkgPiAtMTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5ldmVudHMgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICByZXR1cm4gdGhpcy5ldmVudHMoZGF0ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICBnZW5UQm9keTogZnVuY3Rpb24gZ2VuVEJvZHkoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcbiAgICAgIHZhciBkYXlzSW5Nb250aCA9IG5ldyBEYXRlKHRoaXMuZGlzcGxheWVkWWVhciwgdGhpcy5kaXNwbGF5ZWRNb250aCArIDEsIDApLmdldERhdGUoKTtcbiAgICAgIHZhciByb3dzID0gW107XG4gICAgICB2YXIgZGF5ID0gdGhpcy53ZWVrRGF5c0JlZm9yZUZpcnN0RGF5T2ZUaGVNb250aCgpO1xuXG4gICAgICB3aGlsZSAoZGF5LS0pIHtcbiAgICAgICAgcm93cy5wdXNoKHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RkJykpO1xuICAgICAgfWZvciAoZGF5ID0gMTsgZGF5IDw9IGRheXNJbk1vbnRoOyBkYXkrKykge1xuICAgICAgICB2YXIgZGF0ZSA9IHRoaXMuZGlzcGxheWVkWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmRpc3BsYXllZE1vbnRoICsgMSkgKyAnLScgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJjXCIgLyogcGFkICovXSkoZGF5KTtcblxuICAgICAgICByb3dzLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudCgndGQnLCBbdGhpcy5nZW5CdXR0b24oZGF0ZSwgdHJ1ZSksIHRoaXMuaXNFdmVudChkYXRlKSA/IHRoaXMuZ2VuRXZlbnQoZGF0ZSkgOiBudWxsXSkpO1xuXG4gICAgICAgIGlmIChyb3dzLmxlbmd0aCAlIDcgPT09IDApIHtcbiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuVFIocm93cykpO1xuICAgICAgICAgIHJvd3MgPSBbXTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAocm93cy5sZW5ndGgpIHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRSKHJvd3MpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3Rib2R5JywgY2hpbGRyZW4pO1xuICAgIH0sXG4gICAgZ2VuVFI6IGZ1bmN0aW9uIGdlblRSKGNoaWxkcmVuKSB7XG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyJywgY2hpbGRyZW4pXTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblRhYmxlKCdkYXRlLXBpY2tlci10YWJsZSBkYXRlLXBpY2tlci10YWJsZS0tZGF0ZScsIFt0aGlzLmdlblRIZWFkKCksIHRoaXMuZ2VuVEJvZHkoKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA2MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RhYmxlX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGVfcGlja2VyX3RhYmxlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfdGFibGVfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2lzRGF0ZUFsbG93ZWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjIpO1xuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG4vLyBVdGlsc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBkaXJlY3RpdmVzOiB7IFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpc1JldmVyc2luZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBhbGxvd2VkRGF0ZXM6IEZ1bmN0aW9uLFxuICAgIGN1cnJlbnQ6IFN0cmluZyxcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBmb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtaW46IFN0cmluZyxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHRhYmxlRGF0ZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzUmV2ZXJzaW5nID8gJ3RhYi1yZXZlcnNlLXRyYW5zaXRpb24nIDogJ3RhYi10cmFuc2l0aW9uJztcbiAgICB9LFxuICAgIGRpc3BsYXllZE1vbnRoOiBmdW5jdGlvbiBkaXNwbGF5ZWRNb250aCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRhYmxlRGF0ZS5zcGxpdCgnLScpWzFdIC0gMTtcbiAgICB9LFxuICAgIGRpc3BsYXllZFllYXI6IGZ1bmN0aW9uIGRpc3BsYXllZFllYXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy50YWJsZURhdGUuc3BsaXQoJy0nKVswXSAqIDE7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdGFibGVEYXRlOiBmdW5jdGlvbiB0YWJsZURhdGUobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgIHRoaXMuaXNSZXZlcnNpbmcgPSBuZXdWYWwgPCBvbGRWYWw7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5CdXR0b25DbGFzc2VzOiBmdW5jdGlvbiBnZW5CdXR0b25DbGFzc2VzKHZhbHVlLCBpc0Rpc2FibGVkLCBpc0Zsb2F0aW5nKSB7XG4gICAgICB2YXIgaXNTZWxlY3RlZCA9IHZhbHVlID09PSB0aGlzLnZhbHVlO1xuICAgICAgdmFyIGlzQ3VycmVudCA9IHZhbHVlID09PSB0aGlzLmN1cnJlbnQ7XG5cbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnYnRuLS1hY3RpdmUnOiBpc1NlbGVjdGVkLFxuICAgICAgICAnYnRuLS1mbGF0JzogIWlzU2VsZWN0ZWQsXG4gICAgICAgICdidG4tLWljb24nOiBpc1NlbGVjdGVkICYmICFpc0Rpc2FibGVkICYmIGlzRmxvYXRpbmcsXG4gICAgICAgICdidG4tLWZsb2F0aW5nJzogaXNGbG9hdGluZyxcbiAgICAgICAgJ2J0bi0tZGVwcmVzc2VkJzogIWlzRmxvYXRpbmcgJiYgaXNTZWxlY3RlZCxcbiAgICAgICAgJ2J0bi0tZGlzYWJsZWQnOiBpc0Rpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQgJiYgaXNTZWxlY3RlZCxcbiAgICAgICAgJ2J0bi0tb3V0bGluZSc6IGlzQ3VycmVudCAmJiAhaXNTZWxlY3RlZFxuICAgICAgfTtcblxuICAgICAgaWYgKGlzU2VsZWN0ZWQpIHJldHVybiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMpO1xuICAgICAgaWYgKGlzQ3VycmVudCkgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICByZXR1cm4gY2xhc3NlcztcbiAgICB9LFxuICAgIGdlbkJ1dHRvbjogZnVuY3Rpb24gZ2VuQnV0dG9uKHZhbHVlLCBpc0Zsb2F0aW5nKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgaXNEaXNhYmxlZCA9ICFPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2lzRGF0ZUFsbG93ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSkodmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCwgdGhpcy5hbGxvd2VkRGF0ZXMpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnYnV0dG9uJywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2J0bicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuZ2VuQnV0dG9uQ2xhc3Nlcyh2YWx1ZSwgaXNEaXNhYmxlZCwgaXNGbG9hdGluZyksXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgdHlwZTogJ2J1dHRvbidcbiAgICAgICAgfSxcbiAgICAgICAgZG9tUHJvcHM6IHtcbiAgICAgICAgICBkaXNhYmxlZDogaXNEaXNhYmxlZCxcbiAgICAgICAgICBpbm5lckhUTUw6ICc8ZGl2IGNsYXNzPVwiYnRuX19jb250ZW50XCI+JyArIHRoaXMuZm9ybWF0dGVyKHZhbHVlKSArICc8L2Rpdj4nXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiBpc0Rpc2FibGVkID8ge30gOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgd2hlZWw6IGZ1bmN0aW9uIHdoZWVsKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ3RhYmxlRGF0ZScsIHRoaXMuY2FsY3VsYXRlVGFibGVEYXRlKGUuZGVsdGFZKSk7XG4gICAgfSxcbiAgICB0b3VjaDogZnVuY3Rpb24gdG91Y2godmFsdWUpIHtcbiAgICAgIHRoaXMuJGVtaXQoJ3RhYmxlRGF0ZScsIHRoaXMuY2FsY3VsYXRlVGFibGVEYXRlKHZhbHVlKSk7XG4gICAgfSxcbiAgICBnZW5UYWJsZTogZnVuY3Rpb24gZ2VuVGFibGUoc3RhdGljQ2xhc3MsIGNoaWxkcmVuKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIHRyYW5zaXRpb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczogeyBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbiB9XG4gICAgICB9LCBbdGhpcy4kY3JlYXRlRWxlbWVudCgndGFibGUnLCB7IGtleTogdGhpcy50YWJsZURhdGUgfSwgY2hpbGRyZW4pXSk7XG5cbiAgICAgIHZhciB0b3VjaERpcmVjdGl2ZSA9IHtcbiAgICAgICAgbmFtZTogJ3RvdWNoJyxcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICBsZWZ0OiBmdW5jdGlvbiBsZWZ0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLm9mZnNldFggPCAtMTUgJiYgX3RoaXMyLnRvdWNoKDEpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcmlnaHQ6IGZ1bmN0aW9uIHJpZ2h0KGUpIHtcbiAgICAgICAgICAgIHJldHVybiBlLm9mZnNldFggPiAxNSAmJiBfdGhpczIudG91Y2goLTEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IHN0YXRpY0NsYXNzLFxuICAgICAgICBvbjogdGhpcy5zY3JvbGxhYmxlID8geyB3aGVlbDogdGhpcy53aGVlbCB9IDogdW5kZWZpbmVkLFxuICAgICAgICBkaXJlY3RpdmVzOiBbdG91Y2hEaXJlY3RpdmVdXG4gICAgICB9LCBbdHJhbnNpdGlvbl0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGV4cG9ydCAoaW1tdXRhYmxlKSAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IGlzRGF0ZUFsbG93ZWQ7XG5mdW5jdGlvbiBpc0RhdGVBbGxvd2VkKGRhdGUsIG1pbiwgbWF4LCBhbGxvd2VkRm4pIHtcbiAgcmV0dXJuICghYWxsb3dlZEZuIHx8IGFsbG93ZWRGbihkYXRlKSkgJiYgKCFtaW4gfHwgZGF0ZSA+PSBtaW4pICYmICghbWF4IHx8IGRhdGUgPD0gbWF4KTtcbn1cblxuLyoqKi8gfSksXG4vKiA2MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGF0ZV9waWNrZXJfdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNCk7XG4vLyBNaXhpbnNcblxuXG5cbi8vIFV0aWxzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLW1vbnRoLXRhYmxlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGF0ZV9waWNrZXJfdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uIGZvcm1hdHRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdCB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgbW9udGg6ICdzaG9ydCcsIHRpbWVab25lOiAnVVRDJyB9LCB7IHN0YXJ0OiA1LCBsZW5ndGg6IDIgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBjYWxjdWxhdGVUYWJsZURhdGU6IGZ1bmN0aW9uIGNhbGN1bGF0ZVRhYmxlRGF0ZShkZWx0YSkge1xuICAgICAgcmV0dXJuICcnICsgKHBhcnNlSW50KHRoaXMudGFibGVEYXRlLCAxMCkgKyBNYXRoLnNpZ24oZGVsdGEgfHwgMSkpO1xuICAgIH0sXG4gICAgZ2VuVEJvZHk6IGZ1bmN0aW9uIGdlblRCb2R5KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG4gICAgICB2YXIgY29scyA9IEFycmF5KDMpLmZpbGwobnVsbCk7XG4gICAgICB2YXIgcm93cyA9IDEyIC8gY29scy5sZW5ndGg7XG5cbiAgICAgIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKHJvdykge1xuICAgICAgICB2YXIgdGRzID0gY29scy5tYXAoZnVuY3Rpb24gKF8sIGNvbCkge1xuICAgICAgICAgIHZhciBtb250aCA9IHJvdyAqIGNvbHMubGVuZ3RoICsgY29sO1xuICAgICAgICAgIHJldHVybiBfdGhpcy4kY3JlYXRlRWxlbWVudCgndGQnLCB7XG4gICAgICAgICAgICBrZXk6IG1vbnRoXG4gICAgICAgICAgfSwgW190aGlzLmdlbkJ1dHRvbihfdGhpcy5kaXNwbGF5ZWRZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKG1vbnRoICsgMSksIGZhbHNlKV0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjaGlsZHJlbi5wdXNoKF90aGlzLiRjcmVhdGVFbGVtZW50KCd0cicsIHtcbiAgICAgICAgICBrZXk6IHJvd1xuICAgICAgICB9LCB0ZHMpKTtcbiAgICAgIH07XG5cbiAgICAgIGZvciAodmFyIHJvdyA9IDA7IHJvdyA8IHJvd3M7IHJvdysrKSB7XG4gICAgICAgIF9sb29wKHJvdyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0Ym9keScsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblRhYmxlKCdkYXRlLXBpY2tlci10YWJsZSBkYXRlLXBpY2tlci10YWJsZS0tbW9udGgnLCBbdGhpcy5nZW5UQm9keSgpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfeWVhcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0ZV9waWNrZXJfeWVhcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kYXRlX3BpY2tlcl95ZWFyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQpO1xuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGUtcGlja2VyLXllYXJzJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGVmYXVsdENvbG9yOiAncHJpbWFyeSdcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBmb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtaW46IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgbWF4OiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uIGZvcm1hdHRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdCB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHsgeWVhcjogJ251bWVyaWMnLCB0aW1lWm9uZTogJ1VUQycgfSwgeyBsZW5ndGg6IDQgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy4kZWwuc2Nyb2xsVG9wID0gdGhpcy4kZWwuc2Nyb2xsSGVpZ2h0IC8gMiAtIHRoaXMuJGVsLm9mZnNldEhlaWdodCAvIDI7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgZ2VuWWVhckl0ZW06IGZ1bmN0aW9uIGdlblllYXJJdGVtKHllYXIpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBmb3JtYXR0ZWQgPSB0aGlzLmZvcm1hdHRlcignJyArIHllYXIpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnbGknLCB7XG4gICAgICAgIGtleTogeWVhcixcbiAgICAgICAgJ2NsYXNzJzogcGFyc2VJbnQodGhpcy52YWx1ZSwgMTApID09PSB5ZWFyID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyh7IGFjdGl2ZTogdHJ1ZSB9KSA6IHt9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy4kZW1pdCgnaW5wdXQnLCB5ZWFyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGZvcm1hdHRlZCk7XG4gICAgfSxcbiAgICBnZW5ZZWFySXRlbXM6IGZ1bmN0aW9uIGdlblllYXJJdGVtcygpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgdmFyIHNlbGVjdGVkWWVhciA9IHRoaXMudmFsdWUgPyBwYXJzZUludCh0aGlzLnZhbHVlLCAxMCkgOiBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG4gICAgICB2YXIgbWF4WWVhciA9IHRoaXMubWF4ID8gcGFyc2VJbnQodGhpcy5tYXgsIDEwKSA6IHNlbGVjdGVkWWVhciArIDEwMDtcbiAgICAgIHZhciBtaW5ZZWFyID0gTWF0aC5taW4obWF4WWVhciwgdGhpcy5taW4gPyBwYXJzZUludCh0aGlzLm1pbiwgMTApIDogc2VsZWN0ZWRZZWFyIC0gMTAwKTtcblxuICAgICAgZm9yICh2YXIgeWVhciA9IG1heFllYXI7IHllYXIgPj0gbWluWWVhcjsgeWVhci0tKSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5ZZWFySXRlbSh5ZWFyKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd1bCcsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZGF0ZS1waWNrZXIteWVhcnMnLFxuICAgICAgcmVmOiAneWVhcnMnXG4gICAgfSwgdGhpcy5nZW5ZZWFySXRlbXMoKSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8vIENvbXBvbmVudHNcblxuXG4vLyBNaXhpbnNcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAncGlja2VyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGZ1bGxXaWR0aDogQm9vbGVhbixcbiAgICBoZWFkZXJDb2xvcjogU3RyaW5nLFxuICAgIGxhbmRzY2FwZTogQm9vbGVhbixcbiAgICBub1RpdGxlOiBCb29sZWFuLFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjkwLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlSW50KHZhbHVlLCAxMCkgPiAwO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge30sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHt9LFxuICAgIGdlblBpY2tlckFjdGlvbnNTbG90OiBmdW5jdGlvbiBnZW5QaWNrZXJBY3Rpb25zU2xvdCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzY29wZWRTbG90cy5kZWZhdWx0ID8gdGhpcy4kc2NvcGVkU2xvdHMuZGVmYXVsdCh7XG4gICAgICAgIHNhdmU6IHRoaXMuc2F2ZSxcbiAgICAgICAgY2FuY2VsOiB0aGlzLmNhbmNlbFxuICAgICAgfSkgOiB0aGlzLiRzbG90cy5kZWZhdWx0O1xuICAgIH0sXG4gICAgZ2VuUGlja2VyOiBmdW5jdGlvbiBnZW5QaWNrZXIoc3RhdGljQ2xhc3MpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29tcG9uZW50c19WUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IHN0YXRpY0NsYXNzLFxuICAgICAgICBjbGFzczogdGhpcy5mdWxsV2lkdGggPyBbJ3BpY2tlci0tZnVsbC13aWR0aCddIDogW10sXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMuaGVhZGVyQ29sb3IgfHwgdGhpcy5jb2xvcixcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmssXG4gICAgICAgICAgZnVsbFdpZHRoOiB0aGlzLmZ1bGxXaWR0aCxcbiAgICAgICAgICBsYW5kc2NhcGU6IHRoaXMubGFuZHNjYXBlLFxuICAgICAgICAgIGxpZ2h0OiB0aGlzLmxpZ2h0LFxuICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLm5vVGl0bGUgPyBudWxsIDogdGhpcy5nZW5QaWNrZXJUaXRsZSgpLCB0aGlzLmdlblBpY2tlckJvZHkoKSwgdGhpcy4kY3JlYXRlRWxlbWVudCgndGVtcGxhdGUnLCB7IHNsb3Q6ICdhY3Rpb25zJyB9LCBbdGhpcy5nZW5QaWNrZXJBY3Rpb25zU2xvdCgpXSldKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODIpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA2NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOSk7XG4vLyBNaXhpbnNcblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYnMtaXRlbXMnLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgndGFicycpXSxcblxuICBkaXJlY3RpdmVzOiB7IFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIGluamVjdDoge1xuICAgIHJlZ2lzdGVySXRlbXM6IHtcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHRhYlByb3h5OiB7XG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB1bnJlZ2lzdGVySXRlbXM6IHtcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9XG4gIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXRlbXM6IFtdLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgcmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjeWNsZTogQm9vbGVhbixcbiAgICB0b3VjaGxlc3M6IEJvb2xlYW4sXG4gICAgdmFsdWU6IFtOdW1iZXIsIFN0cmluZ11cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGFjdGl2ZUluZGV4OiBmdW5jdGlvbiBhY3RpdmVJbmRleCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmRJbmRleChmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIChpdGVtLmlkIHx8IGluZGV4LnRvU3RyaW5nKCkpID09PSBfdGhpcy5sYXp5VmFsdWU7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGFjdGl2ZUl0ZW06IGZ1bmN0aW9uIGFjdGl2ZUl0ZW0oKSB7XG4gICAgICBpZiAoIXRoaXMuaXRlbXMubGVuZ3RoKSByZXR1cm4gdW5kZWZpbmVkO1xuXG4gICAgICByZXR1cm4gdGhpcy5pdGVtc1t0aGlzLmFjdGl2ZUluZGV4XTtcbiAgICB9LFxuXG4gICAgaW5wdXRWYWx1ZToge1xuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgdmFsID0gdmFsLnRvU3RyaW5nKCk7XG5cbiAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG5cbiAgICAgICAgaWYgKHRoaXMudGFiUHJveHkpIHRoaXMudGFiUHJveHkodmFsKTtlbHNlIHRoaXMuJGVtaXQoJ2lucHV0JywgdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBhY3RpdmVJbmRleDogZnVuY3Rpb24gYWN0aXZlSW5kZXgoY3VycmVudCwgcHJldmlvdXMpIHtcbiAgICAgIHRoaXMucmV2ZXJzZSA9IGN1cnJlbnQgPCBwcmV2aW91cztcbiAgICAgIHRoaXMudXBkYXRlSXRlbXMoKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMucmVnaXN0ZXJJdGVtcyAmJiB0aGlzLnJlZ2lzdGVySXRlbXModGhpcy5jaGFuZ2VNb2RlbCk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy51bnJlZ2lzdGVySXRlbXMgJiYgdGhpcy51bnJlZ2lzdGVySXRlbXMoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjaGFuZ2VNb2RlbDogZnVuY3Rpb24gY2hhbmdlTW9kZWwodmFsKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWw7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KGN5Y2xlKSB7XG4gICAgICB2YXIgbmV4dEluZGV4ID0gdGhpcy5hY3RpdmVJbmRleCArIDE7XG5cbiAgICAgIGlmICghdGhpcy5pdGVtc1tuZXh0SW5kZXhdKSB7XG4gICAgICAgIGlmICghY3ljbGUpIHJldHVybjtcbiAgICAgICAgbmV4dEluZGV4ID0gMDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5pdGVtc1tuZXh0SW5kZXhdLmlkIHx8IG5leHRJbmRleDtcbiAgICB9LFxuICAgIHByZXY6IGZ1bmN0aW9uIHByZXYoY3ljbGUpIHtcbiAgICAgIHZhciBwcmV2SW5kZXggPSB0aGlzLmFjdGl2ZUluZGV4IC0gMTtcblxuICAgICAgaWYgKCF0aGlzLml0ZW1zW3ByZXZJbmRleF0pIHtcbiAgICAgICAgaWYgKCFjeWNsZSkgcmV0dXJuO1xuICAgICAgICBwcmV2SW5kZXggPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuaXRlbXNbcHJldkluZGV4XS5pZCB8fCBwcmV2SW5kZXg7XG4gICAgfSxcbiAgICBvblN3aXBlOiBmdW5jdGlvbiBvblN3aXBlKGFjdGlvbikge1xuICAgICAgdGhpc1thY3Rpb25dKHRoaXMuY3ljbGUpO1xuICAgIH0sXG4gICAgcmVnaXN0ZXI6IGZ1bmN0aW9uIHJlZ2lzdGVyKGl0ZW0pIHtcbiAgICAgIHRoaXMuaXRlbXMucHVzaChpdGVtKTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIoaXRlbSkge1xuICAgICAgdGhpcy5pdGVtcyA9IHRoaXMuaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBpICE9PSBpdGVtO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICB1cGRhdGVJdGVtczogZnVuY3Rpb24gdXBkYXRlSXRlbXMoKSB7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMuaXRlbXMubGVuZ3RoOyAtLWluZGV4ID49IDA7KSB7XG4gICAgICAgIHRoaXMuaXRlbXNbaW5kZXhdLnRvZ2dsZSh0aGlzLmxhenlWYWx1ZSwgdGhpcy5yZXZlcnNlLCB0aGlzLmlzQm9vdGVkLCBpbmRleCk7XG4gICAgICB9XG4gICAgICB0aGlzLmlzQm9vdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2l0ZW1zJyxcbiAgICAgIGRpcmVjdGl2ZXM6IFtdXG4gICAgfTtcblxuICAgICF0aGlzLnRvdWNobGVzcyAmJiBkYXRhLmRpcmVjdGl2ZXMucHVzaCh7XG4gICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgdmFsdWU6IHtcbiAgICAgICAgbGVmdDogZnVuY3Rpb24gbGVmdCgpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMyLm9uU3dpcGUoJ25leHQnKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmlnaHQ6IGZ1bmN0aW9uIHJpZ2h0KCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczIub25Td2lwZSgncHJldicpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDY4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtdGFicy1zbGlkZXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdhY2NlbnQnXG4gICAgfTtcbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFic19fc2xpZGVyJyxcbiAgICAgIGNsYXNzOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKClcbiAgICB9KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190aW1lX3BpY2tlcl90aXRsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190aW1lX3BpY2tlcl90aXRsZV9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX3RpdGxlX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcGlja2VyX2J1dHRvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcblxuXG4vLyBNaXhpbnNcblxuXG4vLyBVdGlsc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10aW1lLXBpY2tlci10aXRsZScsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcGlja2VyX2J1dHRvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGFtcG06IEJvb2xlYW4sXG4gICAgaG91cjogTnVtYmVyLFxuICAgIG1pbnV0ZTogTnVtYmVyLFxuICAgIHBlcmlvZDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IocGVyaW9kKSB7XG4gICAgICAgIHJldHVybiBwZXJpb2QgPT09ICdhbScgfHwgcGVyaW9kID09PSAncG0nO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2VsZWN0aW5nSG91cjogQm9vbGVhblxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UaW1lOiBmdW5jdGlvbiBnZW5UaW1lKCkge1xuICAgICAgdmFyIGhvdXIgPSB0aGlzLmhvdXI7XG4gICAgICBpZiAodGhpcy5hbXBtKSB7XG4gICAgICAgIGhvdXIgPSBob3VyID8gKGhvdXIgLSAxKSAlIDEyICsgMSA6IDEyO1xuICAgICAgfVxuXG4gICAgICB2YXIgZGlzcGxheWVkSG91ciA9IHRoaXMuaG91ciA9PSBudWxsID8gJy0tJyA6IHRoaXMuYW1wbSA/IGhvdXIgOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX19bXCJjXCIgLyogcGFkICovXSkoaG91cik7XG4gICAgICB2YXIgZGlzcGxheWVkTWludXRlID0gdGhpcy5taW51dGUgPT0gbnVsbCA/ICctLScgOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlcl91dGlsX19bXCJjXCIgLyogcGFkICovXSkodGhpcy5taW51dGUpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICAnY2xhc3MnOiAndGltZS1waWNrZXItdGl0bGVfX3RpbWUnXG4gICAgICB9LCBbdGhpcy5nZW5QaWNrZXJCdXR0b24oJ3NlbGVjdGluZ0hvdXInLCB0cnVlLCBkaXNwbGF5ZWRIb3VyKSwgdGhpcy4kY3JlYXRlRWxlbWVudCgnc3BhbicsICc6JyksIHRoaXMuZ2VuUGlja2VyQnV0dG9uKCdzZWxlY3RpbmdIb3VyJywgZmFsc2UsIGRpc3BsYXllZE1pbnV0ZSldKTtcbiAgICB9LFxuICAgIGdlbkFtUG06IGZ1bmN0aW9uIGdlbkFtUG0oKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLXRpdGxlX19hbXBtJ1xuICAgICAgfSwgW3RoaXMuZ2VuUGlja2VyQnV0dG9uKCdwZXJpb2QnLCAnYW0nLCAnYW0nKSwgdGhpcy5nZW5QaWNrZXJCdXR0b24oJ3BlcmlvZCcsICdwbScsICdwbScpXSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICd0aW1lLXBpY2tlci10aXRsZSdcbiAgICB9LCBbdGhpcy5nZW5UaW1lKCksIHRoaXMuYW1wbSA/IHRoaXMuZ2VuQW1QbSgpIDogbnVsbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA3MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX2Nsb2NrX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RpbWVfcGlja2VyX2Nsb2NrX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGltZV9waWNrZXJfY2xvY2tfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRpbWUtcGlja2VyLWNsb2NrJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpbnB1dFZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgaXNEcmFnZ2luZzogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBhbGxvd2VkVmFsdWVzOiBGdW5jdGlvbixcbiAgICBkb3VibGU6IEJvb2xlYW4sXG4gICAgZm9ybWF0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KHZhbCkge1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgfVxuICAgIH0sXG4gICAgbWF4OiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgbWluOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgc2Nyb2xsYWJsZTogQm9vbGVhbixcbiAgICByb3RhdGU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyNzBcbiAgICB9LFxuICAgIHN0ZXA6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDFcbiAgICB9LFxuICAgIHZhbHVlOiBOdW1iZXJcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvdW50OiBmdW5jdGlvbiBjb3VudCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCAtIHRoaXMubWluICsgMTtcbiAgICB9LFxuICAgIGlubmVyUmFkaXVzOiBmdW5jdGlvbiBpbm5lclJhZGl1cygpIHtcbiAgICAgIHJldHVybiB0aGlzLnJhZGl1cyAtIE1hdGgubWF4KHRoaXMucmFkaXVzICogMC40LCA0OCk7XG4gICAgfSxcbiAgICBvdXRlclJhZGl1czogZnVuY3Rpb24gb3V0ZXJSYWRpdXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYWRpdXMgLSA0O1xuICAgIH0sXG4gICAgcm91bmRDb3VudDogZnVuY3Rpb24gcm91bmRDb3VudCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRvdWJsZSA/IHRoaXMuY291bnQgLyAyIDogdGhpcy5jb3VudDtcbiAgICB9LFxuICAgIGRlZ3JlZXNQZXJVbml0OiBmdW5jdGlvbiBkZWdyZWVzUGVyVW5pdCgpIHtcbiAgICAgIHJldHVybiAzNjAgLyB0aGlzLnJvdW5kQ291bnQ7XG4gICAgfSxcbiAgICBkZWdyZWVzOiBmdW5jdGlvbiBkZWdyZWVzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGVncmVlc1BlclVuaXQgKiBNYXRoLlBJIC8gMTgwO1xuICAgIH0sXG4gICAgcmFkaXVzOiBmdW5jdGlvbiByYWRpdXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5zaXplIC8gMjtcbiAgICB9LFxuICAgIGRpc3BsYXllZFZhbHVlOiBmdW5jdGlvbiBkaXNwbGF5ZWRWYWx1ZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlID09IG51bGwgPyB0aGlzLm1pbiA6IHRoaXMudmFsdWU7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKF92YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gX3ZhbHVlO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgd2hlZWw6IGZ1bmN0aW9uIHdoZWVsKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHZhciB2YWx1ZSA9IHRoaXMuZGlzcGxheWVkVmFsdWUgKyBNYXRoLnNpZ24oZS53aGVlbERlbHRhIHx8IDEpO1xuICAgICAgdGhpcy51cGRhdGUoKHZhbHVlIC0gdGhpcy5taW4gKyB0aGlzLmNvdW50KSAlIHRoaXMuY291bnQgKyB0aGlzLm1pbik7XG4gICAgfSxcbiAgICBoYW5kU2NhbGU6IGZ1bmN0aW9uIGhhbmRTY2FsZSh2YWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZG91YmxlICYmIHZhbHVlIC0gdGhpcy5taW4gPj0gdGhpcy5yb3VuZENvdW50ID8gdGhpcy5pbm5lclJhZGl1cyAvIHRoaXMucmFkaXVzIDogdGhpcy5vdXRlclJhZGl1cyAvIHRoaXMucmFkaXVzO1xuICAgIH0sXG4gICAgaXNBbGxvd2VkOiBmdW5jdGlvbiBpc0FsbG93ZWQodmFsdWUpIHtcbiAgICAgIHJldHVybiAhdGhpcy5hbGxvd2VkVmFsdWVzIHx8IHRoaXMuYWxsb3dlZFZhbHVlcyh2YWx1ZSk7XG4gICAgfSxcbiAgICBnZW5WYWx1ZXM6IGZ1bmN0aW9uIGdlblZhbHVlcygpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuXG4gICAgICBmb3IgKHZhciB2YWx1ZSA9IHRoaXMubWluOyB2YWx1ZSA8PSB0aGlzLm1heDsgdmFsdWUgPSB2YWx1ZSArIHRoaXMuc3RlcCkge1xuICAgICAgICB2YXIgY2xhc3NlcyA9IHtcbiAgICAgICAgICBhY3RpdmU6IHZhbHVlID09PSB0aGlzLmRpc3BsYXllZFZhbHVlLFxuICAgICAgICAgIGRpc2FibGVkOiAhdGhpcy5pc0FsbG93ZWQodmFsdWUpXG4gICAgICAgIH07XG5cbiAgICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcywgdmFsdWUgPT09IHRoaXMudmFsdWUgPyB0aGlzLmNvbXB1dGVkQ29sb3IgOiBudWxsKSxcbiAgICAgICAgICBzdHlsZTogdGhpcy5nZXRUcmFuc2Zvcm0odmFsdWUpLFxuICAgICAgICAgIGRvbVByb3BzOiB7IGlubmVySFRNTDogJzxzcGFuPicgKyB0aGlzLmZvcm1hdCh2YWx1ZSkgKyAnPC9zcGFuPicgfVxuICAgICAgICB9KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9LFxuICAgIGdlbkhhbmQ6IGZ1bmN0aW9uIGdlbkhhbmQoKSB7XG4gICAgICB2YXIgc2NhbGUgPSAnc2NhbGVZKCcgKyB0aGlzLmhhbmRTY2FsZSh0aGlzLmRpc3BsYXllZFZhbHVlKSArICcpJztcbiAgICAgIHZhciBhbmdsZSA9IHRoaXMucm90YXRlICsgdGhpcy5kZWdyZWVzUGVyVW5pdCAqICh0aGlzLmRpc3BsYXllZFZhbHVlIC0gdGhpcy5taW4pO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLWNsb2NrX19oYW5kJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy52YWx1ZSA9PSBudWxsID8ge30gOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiAncm90YXRlKCcgKyBhbmdsZSArICdkZWcpICcgKyBzY2FsZVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdldFRyYW5zZm9ybTogZnVuY3Rpb24gZ2V0VHJhbnNmb3JtKGkpIHtcbiAgICAgIHZhciBfZ2V0UG9zaXRpb24gPSB0aGlzLmdldFBvc2l0aW9uKGkpLFxuICAgICAgICAgIHggPSBfZ2V0UG9zaXRpb24ueCxcbiAgICAgICAgICB5ID0gX2dldFBvc2l0aW9uLnk7XG5cbiAgICAgIHJldHVybiB7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZSgnICsgeCArICdweCwgJyArIHkgKyAncHgpJyB9O1xuICAgIH0sXG4gICAgZ2V0UG9zaXRpb246IGZ1bmN0aW9uIGdldFBvc2l0aW9uKHZhbHVlKSB7XG4gICAgICB2YXIgcmFkaXVzID0gKHRoaXMucmFkaXVzIC0gMjQpICogdGhpcy5oYW5kU2NhbGUodmFsdWUpO1xuICAgICAgdmFyIHJvdGF0ZVJhZGlhbnMgPSB0aGlzLnJvdGF0ZSAqIE1hdGguUEkgLyAxODA7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB4OiBNYXRoLnJvdW5kKE1hdGguc2luKCh2YWx1ZSAtIHRoaXMubWluKSAqIHRoaXMuZGVncmVlcyArIHJvdGF0ZVJhZGlhbnMpICogcmFkaXVzKSxcbiAgICAgICAgeTogTWF0aC5yb3VuZCgtTWF0aC5jb3MoKHZhbHVlIC0gdGhpcy5taW4pICogdGhpcy5kZWdyZWVzICsgcm90YXRlUmFkaWFucykgKiByYWRpdXMpXG4gICAgICB9O1xuICAgIH0sXG4gICAgb25Nb3VzZURvd246IGZ1bmN0aW9uIG9uTW91c2VEb3duKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgdGhpcy5pc0RyYWdnaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMub25EcmFnTW92ZShlKTtcbiAgICB9LFxuICAgIG9uTW91c2VVcDogZnVuY3Rpb24gb25Nb3VzZVVwKCkge1xuICAgICAgdGhpcy5pc0RyYWdnaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmlzQWxsb3dlZCh0aGlzLmlucHV0VmFsdWUpICYmIHRoaXMuJGVtaXQoJ2NoYW5nZScsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfSxcbiAgICBvbkRyYWdNb3ZlOiBmdW5jdGlvbiBvbkRyYWdNb3ZlKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGlmICghdGhpcy5pc0RyYWdnaW5nICYmIGUudHlwZSAhPT0gJ2NsaWNrJykgcmV0dXJuO1xuXG4gICAgICB2YXIgXyRyZWZzJGNsb2NrJGdldEJvdW5kID0gdGhpcy4kcmVmcy5jbG9jay5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgICAgICB3aWR0aCA9IF8kcmVmcyRjbG9jayRnZXRCb3VuZC53aWR0aCxcbiAgICAgICAgICB0b3AgPSBfJHJlZnMkY2xvY2skZ2V0Qm91bmQudG9wLFxuICAgICAgICAgIGxlZnQgPSBfJHJlZnMkY2xvY2skZ2V0Qm91bmQubGVmdDtcblxuICAgICAgdmFyIF9yZWYgPSAndG91Y2hlcycgaW4gZSA/IGUudG91Y2hlc1swXSA6IGUsXG4gICAgICAgICAgY2xpZW50WCA9IF9yZWYuY2xpZW50WCxcbiAgICAgICAgICBjbGllbnRZID0gX3JlZi5jbGllbnRZO1xuXG4gICAgICB2YXIgY2VudGVyID0geyB4OiB3aWR0aCAvIDIsIHk6IC13aWR0aCAvIDIgfTtcbiAgICAgIHZhciBjb29yZHMgPSB7IHg6IGNsaWVudFggLSBsZWZ0LCB5OiB0b3AgLSBjbGllbnRZIH07XG4gICAgICB2YXIgaGFuZEFuZ2xlID0gTWF0aC5yb3VuZCh0aGlzLmFuZ2xlKGNlbnRlciwgY29vcmRzKSAtIHRoaXMucm90YXRlICsgMzYwKSAlIDM2MDtcbiAgICAgIHZhciBpbnNpZGVDbGljayA9IHRoaXMuZG91YmxlICYmIHRoaXMuZXVjbGlkZWFuKGNlbnRlciwgY29vcmRzKSA8ICh0aGlzLm91dGVyUmFkaXVzICsgdGhpcy5pbm5lclJhZGl1cykgLyAyIC0gMTY7XG4gICAgICB2YXIgdmFsdWUgPSBNYXRoLnJvdW5kKGhhbmRBbmdsZSAvIHRoaXMuZGVncmVlc1BlclVuaXQpICsgdGhpcy5taW4gKyAoaW5zaWRlQ2xpY2sgPyB0aGlzLnJvdW5kQ291bnQgOiAwKTtcblxuICAgICAgLy8gTmVjZXNzYXJ5IHRvIGZpeCBlZGdlIGNhc2Ugd2hlbiBzZWxlY3RpbmcgbGVmdCBwYXJ0IG9mIG1heCB2YWx1ZVxuICAgICAgaWYgKGhhbmRBbmdsZSA+PSAzNjAgLSB0aGlzLmRlZ3JlZXNQZXJVbml0IC8gMikge1xuICAgICAgICB0aGlzLnVwZGF0ZShpbnNpZGVDbGljayA/IHRoaXMubWF4IDogdGhpcy5taW4pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy51cGRhdGUodmFsdWUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdXBkYXRlOiBmdW5jdGlvbiB1cGRhdGUodmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLmlucHV0VmFsdWUgIT09IHZhbHVlICYmIHRoaXMuaXNBbGxvd2VkKHZhbHVlKSkge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBldWNsaWRlYW46IGZ1bmN0aW9uIGV1Y2xpZGVhbihwMCwgcDEpIHtcbiAgICAgIHZhciBkeCA9IHAxLnggLSBwMC54O1xuICAgICAgdmFyIGR5ID0gcDEueSAtIHAwLnk7XG5cbiAgICAgIHJldHVybiBNYXRoLnNxcnQoZHggKiBkeCArIGR5ICogZHkpO1xuICAgIH0sXG4gICAgYW5nbGU6IGZ1bmN0aW9uIGFuZ2xlKGNlbnRlciwgcDEpIHtcbiAgICAgIHZhciB2YWx1ZSA9IDIgKiBNYXRoLmF0YW4yKHAxLnkgLSBjZW50ZXIueSAtIHRoaXMuZXVjbGlkZWFuKGNlbnRlciwgcDEpLCBwMS54IC0gY2VudGVyLngpO1xuICAgICAgcmV0dXJuIE1hdGguYWJzKHZhbHVlICogMTgwIC8gTWF0aC5QSSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RpbWUtcGlja2VyLWNsb2NrJyxcbiAgICAgIGNsYXNzOiB7XG4gICAgICAgICd0aW1lLXBpY2tlci1jbG9jay0taW5kZXRlcm1pbmF0ZSc6IHRoaXMudmFsdWUgPT0gbnVsbFxuICAgICAgfSxcbiAgICAgIG9uOiB7XG4gICAgICAgIG1vdXNlZG93bjogdGhpcy5vbk1vdXNlRG93bixcbiAgICAgICAgbW91c2V1cDogdGhpcy5vbk1vdXNlVXAsXG4gICAgICAgIG1vdXNlbGVhdmU6IGZ1bmN0aW9uIG1vdXNlbGVhdmUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzRHJhZ2dpbmcgJiYgX3RoaXMub25Nb3VzZVVwKCk7XG4gICAgICAgIH0sXG4gICAgICAgIHRvdWNoc3RhcnQ6IHRoaXMub25Nb3VzZURvd24sXG4gICAgICAgIHRvdWNoZW5kOiB0aGlzLm9uTW91c2VVcCxcbiAgICAgICAgbW91c2Vtb3ZlOiB0aGlzLm9uRHJhZ01vdmUsXG4gICAgICAgIHRvdWNobW92ZTogdGhpcy5vbkRyYWdNb3ZlXG4gICAgICB9LFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLnNpemUgKyAncHgnLFxuICAgICAgICB3aWR0aDogdGhpcy5zaXplICsgJ3B4J1xuICAgICAgfSxcbiAgICAgIHJlZjogJ2Nsb2NrJ1xuICAgIH07XG5cbiAgICB0aGlzLnNjcm9sbGFibGUgJiYgKGRhdGEub24ud2hlZWwgPSB0aGlzLndoZWVsKTtcblxuICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCBkYXRhLCBbdGhpcy5nZW5IYW5kKCksIHRoaXMuZ2VuVmFsdWVzKCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogNzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5mdW5jdGlvbiBpbnNlcnRlZChlbCwgYmluZGluZykge1xuICB2YXIgY2FsbGJhY2sgPSBiaW5kaW5nLnZhbHVlO1xuICB2YXIgb3B0aW9ucyA9IGJpbmRpbmcub3B0aW9ucyB8fCB7IHBhc3NpdmU6IHRydWUgfTtcbiAgdmFyIHRhcmdldCA9IGJpbmRpbmcuYXJnIHx8IHdpbmRvdztcbiAgaWYgKHRhcmdldCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybjtcblxuICBpZiAodGFyZ2V0ICE9PSB3aW5kb3cpIHtcbiAgICB0YXJnZXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7XG4gIH1cblxuICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgY2FsbGJhY2ssIG9wdGlvbnMpO1xuXG4gIGVsLl9vblNjcm9sbCA9IHtcbiAgICBjYWxsYmFjazogY2FsbGJhY2ssXG4gICAgb3B0aW9uczogb3B0aW9ucyxcbiAgICB0YXJnZXQ6IHRhcmdldFxuICB9O1xufVxuXG5mdW5jdGlvbiB1bmJpbmQoZWwsIGJpbmRpbmcpIHtcbiAgaWYgKCFlbC5fb25TY3JvbGwpIHJldHVybjtcblxuICB2YXIgX2VsJF9vblNjcm9sbCA9IGVsLl9vblNjcm9sbCxcbiAgICAgIGNhbGxiYWNrID0gX2VsJF9vblNjcm9sbC5jYWxsYmFjayxcbiAgICAgIG9wdGlvbnMgPSBfZWwkX29uU2Nyb2xsLm9wdGlvbnMsXG4gICAgICB0YXJnZXQgPSBfZWwkX29uU2Nyb2xsLnRhcmdldDtcblxuXG4gIHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBjYWxsYmFjaywgb3B0aW9ucyk7XG4gIGRlbGV0ZSBlbC5fb25TY3JvbGw7XG59XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAnc2Nyb2xsJyxcbiAgaW5zZXJ0ZWQ6IGluc2VydGVkLFxuICB1bmJpbmQ6IHVuYmluZFxufSk7XG5cbi8qKiovIH0pLFxuLyogNzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfYXBwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2FwcF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19hcHBfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fZGlyZWN0aXZlc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTgpO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuXG5cblxuXG5mdW5jdGlvbiBWdWV0aWZ5KFZ1ZSwgYXJncykge1xuICB2YXIgVnVldGlmeSA9IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29tcG9uZW50c19fW1wiVnVldGlmeVwiXTtcblxuICBWdWUudXNlKFZ1ZXRpZnksIF9leHRlbmRzKHtcbiAgICBjb21wb25lbnRzOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfXyxcbiAgICBkaXJlY3RpdmVzOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2RpcmVjdGl2ZXNfX1xuICB9LCBhcmdzKSk7XG59XG5cblZ1ZXRpZnkudmVyc2lvbiA9ICcxLjAuMTcnO1xuXG5pZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LlZ1ZSkge1xuICB3aW5kb3cuVnVlLnVzZShWdWV0aWZ5KTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiZGVmYXVsdFwiXSA9IChWdWV0aWZ5KTtcblxuLyoqKi8gfSksXG4vKiA3MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDc0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KF9fd2VicGFja19leHBvcnRzX18sIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVnVldGlmeV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3NSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWdWV0aWZ5XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WdWV0aWZ5X19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZBcHBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODEpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkFwcFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkFwcF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQWxlcnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkFsZXJ0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQWxlcnRfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkF2YXRhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQXZhdGFyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WQXZhdGFyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZCYWRnZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5Nik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQmFkZ2VcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZCYWRnZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQm90dG9tTmF2X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDk5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZCb3R0b21OYXZcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZCb3R0b21OYXZfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fVkJvdHRvbVNoZWV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQm90dG9tU2hlZXRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX1ZCb3R0b21TaGVldF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19WQnJlYWRjcnVtYnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTA3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZCcmVhZGNydW1ic1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fVkJyZWFkY3J1bWJzX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX1ZCdG5fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkJ0blwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fVkJ0bl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WQnRuVG9nZ2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQnRuVG9nZ2xlXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WQnRuVG9nZ2xlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNyk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWQ2FyZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX1ZDYXJkX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19WQ2Fyb3VzZWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZDYXJvdXNlbFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTFfX1ZDYXJvdXNlbF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMl9fVkNoZWNrYm94X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI4KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZDaGVja2JveFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX1ZDaGVja2JveF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xM19fVkNoaXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkNoaXBcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19WQ2hpcF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fVkRhdGFJdGVyYXRvcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRhdGFJdGVyYXRvclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX1ZEYXRhSXRlcmF0b3JfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX1ZEYXRhVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY0KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZEYXRhVGFibGVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE1X19WRGF0YVRhYmxlX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19WRGF0ZVBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRhdGVQaWNrZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19WRGF0ZVBpY2tlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xN19fVkRpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkRpYWxvZ1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTdfX1ZEaWFsb2dfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMThfX1ZEaXZpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZEaXZpZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xOF9fVkRpdmlkZXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTlfX1ZFeHBhbnNpb25QYW5lbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkV4cGFuc2lvblBhbmVsXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xOV9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzIwX19WRm9vdGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4OSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWRm9vdGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMF9fVkZvb3Rlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMV9fVkZvcm1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZGb3JtXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yMV9fVkZvcm1fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjJfX1ZHcmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5NCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWR3JpZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjJfX1ZHcmlkX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzIzX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZJY29uXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yM19fVkljb25fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjRfX1ZKdW1ib3Ryb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDApO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVkp1bWJvdHJvblwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjRfX1ZKdW1ib3Ryb25fX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjVfX1ZMaXN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU2KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZMaXN0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yNV9fVkxpc3RfX1tcImZcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjZfX1ZNZW51X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMwKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZNZW51XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yNl9fVk1lbnVfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjdfX1ZOYXZpZ2F0aW9uRHJhd2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWTmF2aWdhdGlvbkRyYXdlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMjdfX1ZOYXZpZ2F0aW9uRHJhd2VyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI4X19WUGFnaW5hdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDMpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlBhZ2luYXRpb25cIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI4X19WUGFnaW5hdGlvbl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yOV9fVlBhcmFsbGF4X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwNik7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUGFyYWxsYXhcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzI5X19WUGFyYWxsYXhfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzBfX1ZQaWNrZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjYpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlBpY2tlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzBfX1ZQaWNrZXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzFfX1ZQcm9ncmVzc0NpcmN1bGFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZQcm9ncmVzc0NpcmN1bGFyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zMV9fVlByb2dyZXNzQ2lyY3VsYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzJfX1ZQcm9ncmVzc0xpbmVhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0NCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUHJvZ3Jlc3NMaW5lYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzMyX19WUHJvZ3Jlc3NMaW5lYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzNfX1ZSYWRpb0dyb3VwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxMCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWUmFkaW9Hcm91cFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzNfX1ZSYWRpb0dyb3VwX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM0X19WU2VsZWN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ3KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTZWxlY3RcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM0X19WU2VsZWN0X19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM1X19WU2xpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxNSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU2xpZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zNV9fVlNsaWRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zNl9fVlNuYWNrYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxOCk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU25hY2tiYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM2X19WU25hY2tiYXJfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMzdfX1ZTcGVlZERpYWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIxKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTcGVlZERpYWxcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM3X19WU3BlZWREaWFsX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM4X19WU3RlcHBlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjQpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlN0ZXBwZXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzM4X19WU3RlcHBlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zOV9fVlN1YmhlYWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1NSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWU3ViaGVhZGVyXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zOV9fVlN1YmhlYWRlcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80MF9fVlN3aXRjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjkpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlN3aXRjaFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDBfX1ZTd2l0Y2hfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDFfX1ZTeXN0ZW1CYXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMyKTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZTeXN0ZW1CYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQxX19WU3lzdGVtQmFyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQyX19WVGFic19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRhYnNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQyX19WVGFic19fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80M19fVlRleHRGaWVsZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDUpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRleHRGaWVsZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDNfX1ZUZXh0RmllbGRfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDRfX1ZUaW1lUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Nyk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJWVGltZVBpY2tlclwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDRfX1ZUaW1lUGlja2VyX19bXCJhXCJdOyB9KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ1X19WVG9vbGJhcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTEpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVlRvb2xiYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ1X19WVG9vbGJhcl9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80Nl9fVlRvb2x0aXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjU1KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIlZUb29sdGlwXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80Nl9fVlRvb2x0aXBfX1tcImFcIl07IH0pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNDdfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSByZWV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiVHJhbnNpdGlvbnNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzQ3X190cmFuc2l0aW9uc19fW1wiZ1wiXTsgfSk7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qKiovIH0pLFxuLyogNzUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfYXBwbGljYXRpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDc3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19vcHRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDc4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfZ29Ub19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3OSk7XG5cblxuXG5cblxuXG52YXIgVnVldGlmeSA9IHtcbiAgaW5zdGFsbDogZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgICB2YXIgb3B0cyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge307XG5cbiAgICBpZiAodGhpcy5pbnN0YWxsZWQpIHJldHVybjtcblxuICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcblxuICAgIGNoZWNrVnVlVmVyc2lvbihWdWUpO1xuXG4gICAgVnVlLnByb3RvdHlwZS4kdnVldGlmeSA9IG5ldyBWdWUoe1xuICAgICAgZGF0YToge1xuICAgICAgICBhcHBsaWNhdGlvbjogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19taXhpbnNfYXBwbGljYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICAgICAgYnJlYWtwb2ludDoge30sXG4gICAgICAgIGRhcms6IGZhbHNlLFxuICAgICAgICBvcHRpb25zOiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfb3B0aW9uc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShvcHRzLm9wdGlvbnMpLFxuICAgICAgICB0aGVtZTogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKG9wdHMudGhlbWUpXG4gICAgICB9LFxuICAgICAgbWV0aG9kczoge1xuICAgICAgICBnb1RvOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX3V0aWxfZ29Ub19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAob3B0cy50cmFuc2l0aW9ucykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLnRyYW5zaXRpb25zKS5mb3JFYWNoKGZ1bmN0aW9uICh0cmFuc2l0aW9uKSB7XG4gICAgICAgIGlmICh0cmFuc2l0aW9uLm5hbWUgIT09IHVuZGVmaW5lZCAmJiB0cmFuc2l0aW9uLm5hbWUuc3RhcnRzV2l0aCgndi0nKSkge1xuICAgICAgICAgIFZ1ZS5jb21wb25lbnQodHJhbnNpdGlvbi5uYW1lLCB0cmFuc2l0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdHMuZGlyZWN0aXZlcykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLmRpcmVjdGl2ZXMpLmZvckVhY2goZnVuY3Rpb24gKGRpcmVjdGl2ZSkge1xuICAgICAgICBWdWUuZGlyZWN0aXZlKGRpcmVjdGl2ZS5uYW1lLCBkaXJlY3RpdmUpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdHMuY29tcG9uZW50cykge1xuICAgICAgT2JqZWN0LnZhbHVlcyhvcHRzLmNvbXBvbmVudHMpLmZvckVhY2goZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgICAgICBWdWUudXNlKGNvbXBvbmVudCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn07XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5mdW5jdGlvbiBjaGVja1Z1ZVZlcnNpb24oVnVlKSB7XG4gIHZhciB2dWVEZXAgPSAnXjIuNS4wJztcblxuICB2YXIgcmVxdWlyZWQgPSB2dWVEZXAuc3BsaXQoJy4nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICByZXR1cm4gdi5yZXBsYWNlKC9cXEQvZywgJycpO1xuICB9KTtcbiAgdmFyIGFjdHVhbCA9IFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJyk7XG5cbiAgLy8gU2ltcGxlIHNlbXZlciBjYXJldCByYW5nZSBjb21wYXJpc29uXG4gIHZhciBwYXNzZXMgPSBhY3R1YWxbMF0gPT09IHJlcXVpcmVkWzBdICYmICggLy8gbWFqb3IgbWF0Y2hlc1xuICBhY3R1YWxbMV0gPiByZXF1aXJlZFsxXSB8fCAvLyBtaW5vciBpcyBncmVhdGVyXG4gIGFjdHVhbFsxXSA9PT0gcmVxdWlyZWRbMV0gJiYgYWN0dWFsWzJdID49IHJlcXVpcmVkWzJdIC8vIG9yIG1pbm9yIGlzIGVxIGFuZCBwYXRjaCBpcyA+PVxuICApO1xuXG4gIGlmICghcGFzc2VzKSB7XG4gICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9jb25zb2xlX19bXCJiXCIgLyogY29uc29sZVdhcm4gKi9dKSgnVnVldGlmeSByZXF1aXJlcyBWdWUgdmVyc2lvbiAnICsgdnVlRGVwKTtcbiAgfVxufVxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKFZ1ZXRpZnkpO1xuXG4vKioqLyB9KSxcbi8qIDc2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGJhcjogMCxcbiAgYm90dG9tOiAwLFxuICBmb290ZXI6IDAsXG4gIGxlZnQ6IDAsXG4gIHJpZ2h0OiAwLFxuICB0b3A6IDAsXG4gIGNvbXBvbmVudHM6IHtcbiAgICBiYXI6IHt9LFxuICAgIGJvdHRvbToge30sXG4gICAgZm9vdGVyOiB7fSxcbiAgICBsZWZ0OiB7fSxcbiAgICByaWdodDoge30sXG4gICAgdG9wOiB7fVxuICB9LFxuICBiaW5kOiBmdW5jdGlvbiBiaW5kKHVpZCwgdGFyZ2V0LCB2YWx1ZSkge1xuICAgIGlmICghdGhpcy5jb21wb25lbnRzW3RhcmdldF0pIHJldHVybjtcblxuICAgIHRoaXMuY29tcG9uZW50c1t0YXJnZXRdID0gX2RlZmluZVByb3BlcnR5KHt9LCB1aWQsIHZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZSh0YXJnZXQpO1xuICB9LFxuICB1bmJpbmQ6IGZ1bmN0aW9uIHVuYmluZCh1aWQsIHRhcmdldCkge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudHNbdGFyZ2V0XVt1aWRdID09IG51bGwpIHJldHVybjtcblxuICAgIGRlbGV0ZSB0aGlzLmNvbXBvbmVudHNbdGFyZ2V0XVt1aWRdO1xuICAgIHRoaXMudXBkYXRlKHRhcmdldCk7XG4gIH0sXG4gIHVwZGF0ZTogZnVuY3Rpb24gdXBkYXRlKHRhcmdldCkge1xuICAgIHRoaXNbdGFyZ2V0XSA9IE9iamVjdC52YWx1ZXModGhpcy5jb21wb25lbnRzW3RhcmdldF0pLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBjdXIpIHtcbiAgICAgIHJldHVybiBhY2MgKyBjdXI7XG4gICAgfSwgMCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDc3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSB0aGVtZTtcbi8qIGVzbGludC1kaXNhYmxlIG5vLW11bHRpLXNwYWNlcyAqL1xudmFyIFRIRU1FX0RFRkFVTFRTID0ge1xuICBwcmltYXJ5OiAnIzE5NzZEMicsIC8vIGJsdWUuZGFya2VuMlxuICBzZWNvbmRhcnk6ICcjNDI0MjQyJywgLy8gZ3JleS5kYXJrZW4zXG4gIGFjY2VudDogJyM4MkIxRkYnLCAvLyBibHVlLmFjY2VudDFcbiAgZXJyb3I6ICcjRkY1MjUyJywgLy8gcmVkLmFjY2VudDJcbiAgaW5mbzogJyMyMTk2RjMnLCAvLyBibHVlLmJhc2VcbiAgc3VjY2VzczogJyM0Q0FGNTAnLCAvLyBncmVlbi5iYXNlXG4gIHdhcm5pbmc6ICcjRkZDMTA3JyAvLyBhbWJlci5iYXNlXG59O1xuXG5mdW5jdGlvbiB0aGVtZSgpIHtcbiAgdmFyIHRoZW1lID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB7fTtcblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgVEhFTUVfREVGQVVMVFMsIHRoZW1lKTtcbn1cblxuLyoqKi8gfSksXG4vKiA3OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gb3B0aW9ucztcbnZhciBPUFRJT05TX0RFRkFVTFRTID0ge1xuICB0aGVtZVZhcmlhdGlvbnM6IFsncHJpbWFyeScsICdzZWNvbmRhcnknLCAnYWNjZW50J10sXG4gIG1pbmlmeVRoZW1lOiBudWxsLFxuICB0aGVtZUNhY2hlOiBudWxsXG59O1xuXG5mdW5jdGlvbiBvcHRpb25zKCkge1xuICB2YXIgb3B0aW9ucyA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDoge307XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIE9QVElPTlNfREVGQVVMVFMsIG9wdGlvbnMpO1xufVxuXG4vKioqLyB9KSxcbi8qIDc5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBnb1RvO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9lYXNpbmdfcGF0dGVybnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODApO1xuXG5cblxudmFyIGRlZmF1bHRzID0ge1xuICBkdXJhdGlvbjogNTAwLFxuICBvZmZzZXQ6IDAsXG4gIGVhc2luZzogJ2Vhc2VJbk91dEN1YmljJ1xufTtcblxuZnVuY3Rpb24gZ2V0RG9jdW1lbnRIZWlnaHQoKSB7XG4gIHJldHVybiBNYXRoLm1heChkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdodCwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCwgZG9jdW1lbnQuYm9keS5vZmZzZXRIZWlnaHQsIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRIZWlnaHQsIGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0LCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KTtcbn1cblxuZnVuY3Rpb24gZ2V0V2luZG93SGVpZ2h0KCkge1xuICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IHx8IChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgfHwgZG9jdW1lbnQuYm9keSkuY2xpZW50SGVpZ2h0O1xufVxuXG5mdW5jdGlvbiBpc1Z1ZUNvbXBvbmVudChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPSBudWxsICYmIG9iai5faXNWdWU7XG59XG5cbmZ1bmN0aW9uIGdldFRhcmdldExvY2F0aW9uKHRhcmdldCwgc2V0dGluZ3MpIHtcbiAgdmFyIGxvY2F0aW9uID0gdm9pZCAwO1xuXG4gIGlmIChpc1Z1ZUNvbXBvbmVudCh0YXJnZXQpKSB7XG4gICAgdGFyZ2V0ID0gdGFyZ2V0LiRlbDtcbiAgfVxuXG4gIGlmICh0YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50KSB7XG4gICAgbG9jYXRpb24gPSB0YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgd2luZG93LnNjcm9sbFk7XG4gIH0gZWxzZSBpZiAodHlwZW9mIHRhcmdldCA9PT0gJ3N0cmluZycpIHtcbiAgICBsb2NhdGlvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGFyZ2V0KS5vZmZzZXRUb3A7XG4gIH0gZWxzZSBpZiAodHlwZW9mIHRhcmdldCA9PT0gJ251bWJlcicpIHtcbiAgICBsb2NhdGlvbiA9IHRhcmdldDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIE1hdGgucm91bmQoTWF0aC5taW4oTWF0aC5tYXgobG9jYXRpb24gKyBzZXR0aW5ncy5vZmZzZXQsIDApLCBnZXREb2N1bWVudEhlaWdodCgpIC0gZ2V0V2luZG93SGVpZ2h0KCkpKTtcbn1cblxuZnVuY3Rpb24gZ29Ubyh0YXJnZXQsIG9wdGlvbnMpIHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSByZXR1cm47XG5cbiAgdmFyIHNldHRpbmdzID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdHMsIG9wdGlvbnMpO1xuXG4gIHZhciBzdGFydFRpbWUgPSBwZXJmb3JtYW5jZS5ub3coKTtcbiAgdmFyIHN0YXJ0TG9jYXRpb24gPSB3aW5kb3cucGFnZVlPZmZzZXQ7XG4gIHZhciB0YXJnZXRMb2NhdGlvbiA9IGdldFRhcmdldExvY2F0aW9uKHRhcmdldCwgc2V0dGluZ3MpO1xuICB2YXIgZGlzdGFuY2VUb1Njcm9sbCA9IHRhcmdldExvY2F0aW9uIC0gc3RhcnRMb2NhdGlvbjtcbiAgdmFyIGVhc2luZ0Z1bmN0aW9uID0gdHlwZW9mIHNldHRpbmdzLmVhc2luZyA9PT0gJ2Z1bmN0aW9uJyA/IHNldHRpbmdzLmVhc2luZyA6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9lYXNpbmdfcGF0dGVybnNfX1tzZXR0aW5ncy5lYXNpbmddO1xuXG4gIGlmIChpc05hTih0YXJnZXRMb2NhdGlvbikpIHtcbiAgICB2YXIgdHlwZSA9IHRhcmdldCA9PSBudWxsID8gdGFyZ2V0IDogdGFyZ2V0LmNvbnN0cnVjdG9yLm5hbWU7XG4gICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYVwiIC8qIGNvbnNvbGVFcnJvciAqL10pKCdUYXJnZXQgbXVzdCBiZSBhIFNlbGVjdG9yL051bWJlci9ET01FbGVtZW50L1Z1ZUNvbXBvbmVudCwgcmVjZWl2ZWQgJyArIHR5cGUgKyAnIGluc3RlYWQuJyk7XG4gIH1cbiAgaWYgKCFlYXNpbmdGdW5jdGlvbikgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYVwiIC8qIGNvbnNvbGVFcnJvciAqL10pKCdFYXNpbmcgZnVuY3Rpb24gXFwnJyArIHNldHRpbmdzLmVhc2luZyArICdcXCcgbm90IGZvdW5kLicpO1xuXG4gIGZ1bmN0aW9uIHN0ZXAoY3VycmVudFRpbWUpIHtcbiAgICB2YXIgcHJvZ3Jlc3NQZXJjZW50YWdlID0gTWF0aC5taW4oMSwgKGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1lKSAvIHNldHRpbmdzLmR1cmF0aW9uKTtcbiAgICB2YXIgdGFyZ2V0UG9zaXRpb24gPSBNYXRoLmZsb29yKHN0YXJ0TG9jYXRpb24gKyBkaXN0YW5jZVRvU2Nyb2xsICogZWFzaW5nRnVuY3Rpb24ocHJvZ3Jlc3NQZXJjZW50YWdlKSk7XG5cbiAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgdGFyZ2V0UG9zaXRpb24pO1xuXG4gICAgaWYgKE1hdGgucm91bmQod2luZG93LnBhZ2VZT2Zmc2V0KSA9PT0gdGFyZ2V0TG9jYXRpb24gfHwgcHJvZ3Jlc3NQZXJjZW50YWdlID09PSAxKSByZXR1cm47XG5cbiAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApO1xuICB9XG5cbiAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTtcbn1cblxuLyoqKi8gfSksXG4vKiA4MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJsaW5lYXJcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBsaW5lYXI7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJblF1YWRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5RdWFkOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlT3V0UXVhZFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VPdXRRdWFkOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5PdXRRdWFkXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluT3V0UXVhZDsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZUluQ3ViaWNcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5DdWJpYzsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZU91dEN1YmljXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZU91dEN1YmljOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5PdXRDdWJpY1wiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VJbk91dEN1YmljOyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlSW5RdWFydFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VJblF1YXJ0OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJlYXNlT3V0UXVhcnRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlT3V0UXVhcnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJbk91dFF1YXJ0XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluT3V0UXVhcnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VJblF1aW50XCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZWFzZUluUXVpbnQ7IH0pO1xuLyogaGFybW9ueSBleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcImVhc2VPdXRRdWludFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGVhc2VPdXRRdWludDsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiZWFzZUluT3V0UXVpbnRcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBlYXNlSW5PdXRRdWludDsgfSk7XG4vLyBsaW5lYXJcbnZhciBsaW5lYXIgPSBmdW5jdGlvbiBsaW5lYXIodCkge1xuICByZXR1cm4gdDtcbn07XG4vLyBhY2NlbGVyYXRpbmcgZnJvbSB6ZXJvIHZlbG9jaXR5XG52YXIgZWFzZUluUXVhZCA9IGZ1bmN0aW9uIGVhc2VJblF1YWQodCkge1xuICByZXR1cm4gdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0UXVhZCA9IGZ1bmN0aW9uIGVhc2VPdXRRdWFkKHQpIHtcbiAgcmV0dXJuIHQgKiAoMiAtIHQpO1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dFF1YWQgPSBmdW5jdGlvbiBlYXNlSW5PdXRRdWFkKHQpIHtcbiAgcmV0dXJuIHQgPCAwLjUgPyAyICogdCAqIHQgOiAtMSArICg0IC0gMiAqIHQpICogdDtcbn07XG4vLyBhY2NlbGVyYXRpbmcgZnJvbSB6ZXJvIHZlbG9jaXR5XG52YXIgZWFzZUluQ3ViaWMgPSBmdW5jdGlvbiBlYXNlSW5DdWJpYyh0KSB7XG4gIHJldHVybiB0ICogdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0Q3ViaWMgPSBmdW5jdGlvbiBlYXNlT3V0Q3ViaWModCkge1xuICByZXR1cm4gLS10ICogdCAqIHQgKyAxO1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dEN1YmljID0gZnVuY3Rpb24gZWFzZUluT3V0Q3ViaWModCkge1xuICByZXR1cm4gdCA8IDAuNSA/IDQgKiB0ICogdCAqIHQgOiAodCAtIDEpICogKDIgKiB0IC0gMikgKiAoMiAqIHQgLSAyKSArIDE7XG59O1xuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VJblF1YXJ0ID0gZnVuY3Rpb24gZWFzZUluUXVhcnQodCkge1xuICByZXR1cm4gdCAqIHQgKiB0ICogdDtcbn07XG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VPdXRRdWFydCA9IGZ1bmN0aW9uIGVhc2VPdXRRdWFydCh0KSB7XG4gIHJldHVybiAxIC0gLS10ICogdCAqIHQgKiB0O1xufTtcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxudmFyIGVhc2VJbk91dFF1YXJ0ID0gZnVuY3Rpb24gZWFzZUluT3V0UXVhcnQodCkge1xuICByZXR1cm4gdCA8IDAuNSA/IDggKiB0ICogdCAqIHQgKiB0IDogMSAtIDggKiAtLXQgKiB0ICogdCAqIHQ7XG59O1xuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxudmFyIGVhc2VJblF1aW50ID0gZnVuY3Rpb24gZWFzZUluUXVpbnQodCkge1xuICByZXR1cm4gdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbnZhciBlYXNlT3V0UXVpbnQgPSBmdW5jdGlvbiBlYXNlT3V0UXVpbnQodCkge1xuICByZXR1cm4gMSArIC0tdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG52YXIgZWFzZUluT3V0UXVpbnQgPSBmdW5jdGlvbiBlYXNlSW5PdXRRdWludCh0KSB7XG4gIHJldHVybiB0IDwgMC41ID8gMTYgKiB0ICogdCAqIHQgKiB0ICogdCA6IDEgKyAxNiAqIC0tdCAqIHQgKiB0ICogdCAqIHQ7XG59O1xuXG4vKioqLyB9KSxcbi8qIDgxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4Mik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFwcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQXBwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDgyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXBwX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwX3RoZW1lX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19hcHBfYnJlYWtwb2ludF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gQ29tcG9uZW50IGxldmVsIG1peGluc1xuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1hcHAnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2FwcF9icmVha3BvaW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcF90aGVtZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBwcm9wczoge1xuICAgIGlkOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYXBwJ1xuICAgIH0sXG4gICAgZGFyazogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe30sICd0aGVtZS0tJyArICh0aGlzLmRhcmsgPyAnZGFyaycgOiAnbGlnaHQnKSwgdHJ1ZSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy4kdnVldGlmeS5kYXJrID0gdGhpcy5kYXJrO1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBkYXJrOiBmdW5jdGlvbiBkYXJrKCkge1xuICAgICAgdGhpcy4kdnVldGlmeS5kYXJrID0gdGhpcy5kYXJrO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2FwcGxpY2F0aW9uJyxcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGF0dHJzOiB7ICdkYXRhLWFwcCc6IHRydWUgfSxcbiAgICAgIGRvbVByb3BzOiB7IGlkOiB0aGlzLmlkIH0sXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAncmVzaXplJyxcbiAgICAgICAgdmFsdWU6IHRoaXMub25SZXNpemVcbiAgICAgIH1dXG4gICAgfTtcblxuICAgIHZhciB3cmFwcGVyID0gaCgnZGl2JywgeyBzdGF0aWNDbGFzczogJ2FwcGxpY2F0aW9uLS13cmFwJyB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbd3JhcHBlcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA4MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDg0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb2xvclV0aWxzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODUpO1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0eWxlOiBudWxsXG4gICAgfTtcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIHBhcnNlZFRoZW1lOiBmdW5jdGlvbiBwYXJzZWRUaGVtZSgpIHtcbiAgICAgIHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfX1tcImNcIiAvKiBwYXJzZSAqL10odGhpcy4kdnVldGlmeS50aGVtZSk7XG4gICAgfSxcblxuICAgIC8qKiBAcmV0dXJuIHN0cmluZyAqL1xuICAgIGdlbmVyYXRlZFN0eWxlczogZnVuY3Rpb24gZ2VuZXJhdGVkU3R5bGVzKCkge1xuICAgICAgdmFyIHRoZW1lID0gdGhpcy5wYXJzZWRUaGVtZTtcbiAgICAgIHZhciBjc3MgPSB2b2lkIDA7XG5cbiAgICAgIGlmICh0aGlzLiR2dWV0aWZ5Lm9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICAgIGNzcyA9IHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZUNhY2hlLmdldCh0aGVtZSk7XG4gICAgICAgIGlmIChjc3MgIT0gbnVsbCkgcmV0dXJuIGNzcztcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbG9ycyA9IE9iamVjdC5rZXlzKHRoZW1lKTtcbiAgICAgIGNzcyA9ICdhIHsgY29sb3I6ICcgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbG9yVXRpbHNfX1tcImJcIiAvKiBpbnRUb0hleCAqL10pKHRoZW1lLnByaW1hcnkpICsgJzsgfSc7XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29sb3JzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIHZhciBuYW1lID0gY29sb3JzW2ldO1xuICAgICAgICB2YXIgdmFsdWUgPSB0aGVtZVtuYW1lXTtcbiAgICAgICAgaWYgKHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZVZhcmlhdGlvbnMuaW5jbHVkZXMobmFtZSkpIHtcbiAgICAgICAgICBjc3MgKz0gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX3RoZW1lX19bXCJiXCIgLyogZ2VuVmFyaWF0aW9ucyAqL10obmFtZSwgdmFsdWUpLmpvaW4oJycpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNzcyArPSBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfdGhlbWVfX1tcImFcIiAvKiBnZW5CYXNlQ29sb3IgKi9dKG5hbWUsIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5vcHRpb25zLm1pbmlmeVRoZW1lICE9IG51bGwpIHtcbiAgICAgICAgY3NzID0gdGhpcy4kdnVldGlmeS5vcHRpb25zLm1pbmlmeVRoZW1lKGNzcyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLiR2dWV0aWZ5Lm9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkub3B0aW9ucy50aGVtZUNhY2hlLnNldCh0aGVtZSwgY3NzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNzcztcbiAgICB9LFxuICAgIHZ1ZU1ldGE6IGZ1bmN0aW9uIHZ1ZU1ldGEoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdHlsZTogW3tcbiAgICAgICAgICBjc3NUZXh0OiB0aGlzLmdlbmVyYXRlZFN0eWxlcyxcbiAgICAgICAgICB0eXBlOiAndGV4dC9jc3MnLFxuICAgICAgICAgIGlkOiAndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0J1xuICAgICAgICB9XVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gUmVndWxhciB2dWUtbWV0YVxuICBtZXRhSW5mbzogZnVuY3Rpb24gbWV0YUluZm8oKSB7XG4gICAgcmV0dXJuIHRoaXMudnVlTWV0YTtcbiAgfSxcblxuXG4gIC8vIE51eHRcbiAgaGVhZDogZnVuY3Rpb24gaGVhZCgpIHtcbiAgICByZXR1cm4gdGhpcy52dWVNZXRhO1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICBnZW5lcmF0ZWRTdHlsZXM6IGZ1bmN0aW9uIGdlbmVyYXRlZFN0eWxlcygpIHtcbiAgICAgICF0aGlzLm1ldGEgJiYgdGhpcy5hcHBseVRoZW1lKCk7XG4gICAgfVxuICB9LFxuXG4gIGNyZWF0ZWQ6IGZ1bmN0aW9uIGNyZWF0ZWQoKSB7XG4gICAgaWYgKHRoaXMuJG1ldGEpIHtcbiAgICAgIC8vIFZ1ZS1tZXRhXG4gICAgICAvLyBIYW5kbGVkIGJ5IG1ldGFJbmZvKCkvbnV4dCgpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnICYmIHRoaXMuJHNzckNvbnRleHQpIHtcbiAgICAgIC8vIFNTUlxuICAgICAgdGhpcy4kc3NyQ29udGV4dC5oZWFkID0gdGhpcy4kc3NyQ29udGV4dC5oZWFkIHx8ICcnO1xuICAgICAgdGhpcy4kc3NyQ29udGV4dC5oZWFkICs9ICc8c3R5bGUgdHlwZT1cInRleHQvY3NzXCIgaWQ9XCJ2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXRcIj4nICsgdGhpcy5nZW5lcmF0ZWRTdHlsZXMgKyAnPC9zdHlsZT4nO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgLy8gQ2xpZW50LXNpZGVcbiAgICAgIHRoaXMuZ2VuU3R5bGUoKTtcbiAgICAgIHRoaXMuYXBwbHlUaGVtZSgpO1xuICAgIH1cbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBhcHBseVRoZW1lOiBmdW5jdGlvbiBhcHBseVRoZW1lKCkge1xuICAgICAgaWYgKHRoaXMuc3R5bGUpIHRoaXMuc3R5bGUuaW5uZXJIVE1MID0gdGhpcy5nZW5lcmF0ZWRTdHlsZXM7XG4gICAgfSxcbiAgICBnZW5TdHlsZTogZnVuY3Rpb24gZ2VuU3R5bGUoKSB7XG4gICAgICB2YXIgc3R5bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0Jyk7XG5cbiAgICAgIGlmICghc3R5bGUpIHtcbiAgICAgICAgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcbiAgICAgICAgc3R5bGUuaWQgPSAndnVldGlmeS10aGVtZS1zdHlsZXNoZWV0JztcbiAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3R5bGUgPSBzdHlsZTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDg1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImNcIl0gPSBwYXJzZTtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gZ2VuVmFyaWF0aW9ucztcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJhXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gZ2VuQmFzZUNvbG9yOyB9KTtcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBnZW5WYXJpYW50Q29sb3IgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbG9yVXRpbHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fY29sb3JfdHJhbnNmb3JtU1JHQl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg4Nik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oODcpO1xuXG5cblxuXG4vKipcbiAqIEBwYXJhbSB7b2JqZWN0fSB0aGVtZVxuICogQHJldHVybnMge29iamVjdH1cbiAqL1xuZnVuY3Rpb24gcGFyc2UodGhlbWUpIHtcbiAgdmFyIGNvbG9ycyA9IE9iamVjdC5rZXlzKHRoZW1lKTtcbiAgdmFyIHBhcnNlZFRoZW1lID0ge307XG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICB2YXIgbmFtZSA9IGNvbG9yc1tpXTtcbiAgICB2YXIgdmFsdWUgPSB0aGVtZVtuYW1lXTtcblxuICAgIHBhcnNlZFRoZW1lW25hbWVdID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYVwiIC8qIGNvbG9yVG9JbnQgKi9dKSh2YWx1ZSk7XG4gIH1cblxuICByZXR1cm4gcGFyc2VkVGhlbWU7XG59XG5cbmZ1bmN0aW9uIGdlblZhcmlhdGlvbnMobmFtZSwgdmFsdWUpIHtcbiAgdmFyIHZhbHVlcyA9IEFycmF5KDEwKTtcbiAgdmFsdWVzWzBdID0gZ2VuQmFzZUNvbG9yKG5hbWUsIHZhbHVlKTtcblxuICBmb3IgKHZhciBpID0gMSwgbiA9IDU7IGkgPD0gNTsgKytpLCAtLW4pIHtcbiAgICB2YWx1ZXNbaV0gPSBnZW5WYXJpYW50Q29sb3IobmFtZSwgbGlnaHRlbih2YWx1ZSwgbiksICdsaWdodGVuJywgbik7XG4gIH1cblxuICBmb3IgKHZhciBfaSA9IDE7IF9pIDw9IDQ7ICsrX2kpIHtcbiAgICB2YWx1ZXNbX2kgKyA1XSA9IGdlblZhcmlhbnRDb2xvcihuYW1lLCBkYXJrZW4odmFsdWUsIF9pKSwgJ2RhcmtlbicsIF9pKTtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZXM7XG59XG5cbmZ1bmN0aW9uIGxpZ2h0ZW4odmFsdWUsIGFtb3VudCkge1xuICB2YXIgbGFiID0gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfX1tcImFcIiAvKiBmcm9tWFlaICovXShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yX3RyYW5zZm9ybVNSR0JfX1tcImJcIiAvKiB0b1hZWiAqL10odmFsdWUpKTtcbiAgbGFiWzBdID0gbGFiWzBdICsgYW1vdW50ICogMTA7XG4gIHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbG9yX3RyYW5zZm9ybVNSR0JfX1tcImFcIiAvKiBmcm9tWFlaICovXShfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2NvbG9yX3RyYW5zZm9ybUNJRUxBQl9fW1wiYlwiIC8qIHRvWFlaICovXShsYWIpKTtcbn1cblxuZnVuY3Rpb24gZGFya2VuKHZhbHVlLCBhbW91bnQpIHtcbiAgdmFyIGxhYiA9IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fY29sb3JfdHJhbnNmb3JtQ0lFTEFCX19bXCJhXCIgLyogZnJvbVhZWiAqL10oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb2xvcl90cmFuc2Zvcm1TUkdCX19bXCJiXCIgLyogdG9YWVogKi9dKHZhbHVlKSk7XG4gIGxhYlswXSA9IGxhYlswXSAtIGFtb3VudCAqIDEwO1xuICByZXR1cm4gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb2xvcl90cmFuc2Zvcm1TUkdCX19bXCJhXCIgLyogZnJvbVhZWiAqL10oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19jb2xvcl90cmFuc2Zvcm1DSUVMQUJfX1tcImJcIiAvKiB0b1hZWiAqL10obGFiKSk7XG59XG5cbi8qKlxuICogR2VuZXJhdGUgdGhlIENTUyBmb3IgYSBiYXNlIGNvbG9yICgucHJpbWFyeSlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIFRoZSBjb2xvciBuYW1lXG4gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IHZhbHVlIC0gVGhlIGNvbG9yIHZhbHVlXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG52YXIgZ2VuQmFzZUNvbG9yID0gZnVuY3Rpb24gZ2VuQmFzZUNvbG9yKG5hbWUsIHZhbHVlKSB7XG4gIHZhbHVlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYlwiIC8qIGludFRvSGV4ICovXSkodmFsdWUpO1xuICByZXR1cm4gJ1xcbi4nICsgbmFtZSArICcge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJyArIHZhbHVlICsgJyAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLXRleHQge1xcbiAgY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy0tdGV4dCBpbnB1dCxcXG4uJyArIG5hbWUgKyAnLS10ZXh0IHRleHRhcmVhIHtcXG4gIGNhcmV0LWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLWFmdGVyOjphZnRlciB7XFxuICBiYWNrZ3JvdW5kOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufSc7XG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIHRoZSBDU1MgZm9yIGEgdmFyaWFudCBjb2xvciAoLnByaW1hcnkuZGFya2VuLTIpXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBUaGUgY29sb3IgbmFtZVxuICogQHBhcmFtIHtzdHJpbmd8bnVtYmVyfSB2YWx1ZSAtIFRoZSBjb2xvciB2YWx1ZVxuICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgLSBUaGUgdmFyaWFudCB0eXBlIChkYXJrZW4vbGlnaHRlbilcbiAqIEBwYXJhbSB7bnVtYmVyfSBuIC0gVGhlIGRhcmtlbi9saWdodGVuIHN0ZXAgbnVtYmVyXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG52YXIgZ2VuVmFyaWFudENvbG9yID0gZnVuY3Rpb24gZ2VuVmFyaWFudENvbG9yKG5hbWUsIHZhbHVlLCB0eXBlLCBuKSB7XG4gIHZhbHVlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY29sb3JVdGlsc19fW1wiYlwiIC8qIGludFRvSGV4ICovXSkodmFsdWUpO1xuICByZXR1cm4gJ1xcbi4nICsgbmFtZSArICcuJyArIHR5cGUgKyAnLScgKyBuICsgJyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxuICBib3JkZXItY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy0tdGV4dC50ZXh0LS0nICsgdHlwZSArICctJyArIG4gKyAnIHtcXG4gIGNvbG9yOiAnICsgdmFsdWUgKyAnICFpbXBvcnRhbnQ7XFxufVxcbi4nICsgbmFtZSArICctLXRleHQudGV4dC0tJyArIHR5cGUgKyAnLScgKyBuICsgJyBpbnB1dCxcXG4uJyArIG5hbWUgKyAnLS10ZXh0LnRleHQtLScgKyB0eXBlICsgJy0nICsgbiArICcgdGV4dGFyZWEge1xcbiAgY2FyZXQtY29sb3I6ICcgKyB2YWx1ZSArICcgIWltcG9ydGFudDtcXG59XFxuLicgKyBuYW1lICsgJy4nICsgdHlwZSArICctJyArIG4gKyAnLS1hZnRlcjo6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZDogJyArIHZhbHVlICsgJyAhaW1wb3J0YW50O1xcbn0nO1xufTtcblxuLyoqKi8gfSksXG4vKiA4NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gZnJvbVhZWjtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJiXCJdID0gdG9YWVo7XG4vLyBGb3IgY29udmVydGluZyBYWVogdG8gc1JHQlxudmFyIHNyZ2JGb3J3YXJkTWF0cml4ID0gW1szLjI0MDYsIC0xLjUzNzIsIC0wLjQ5ODZdLCBbLTAuOTY4OSwgMS44NzU4LCAwLjA0MTVdLCBbMC4wNTU3LCAtMC4yMDQwLCAxLjA1NzBdXTtcblxuLy8gRm9yd2FyZCBnYW1tYSBhZGp1c3RcbnZhciBzcmdiRm9yd2FyZFRyYW5zZm9ybSA9IGZ1bmN0aW9uIHNyZ2JGb3J3YXJkVHJhbnNmb3JtKEMpIHtcbiAgcmV0dXJuIEMgPD0gMC4wMDMxMzA4ID8gQyAqIDEyLjkyIDogMS4wNTUgKiBNYXRoLnBvdyhDLCAxIC8gMi40KSAtIDAuMDU1O1xufTtcblxuLy8gRm9yIGNvbnZlcnRpbmcgc1JHQiB0byBYWVpcbnZhciBzcmdiUmV2ZXJzZU1hdHJpeCA9IFtbMC40MTI0LCAwLjM1NzYsIDAuMTgwNV0sIFswLjIxMjYsIDAuNzE1MiwgMC4wNzIyXSwgWzAuMDE5MywgMC4xMTkyLCAwLjk1MDVdXTtcblxuLy8gUmV2ZXJzZSBnYW1tYSBhZGp1c3RcbnZhciBzcmdiUmV2ZXJzZVRyYW5zZm9ybSA9IGZ1bmN0aW9uIHNyZ2JSZXZlcnNlVHJhbnNmb3JtKEMpIHtcbiAgcmV0dXJuIEMgPD0gMC4wNDA0NSA/IEMgLyAxMi45MiA6IE1hdGgucG93KChDICsgMC4wNTUpIC8gMS4wNTUsIDIuNCk7XG59O1xuXG5mdW5jdGlvbiBjbGFtcCh2YWx1ZSkge1xuICByZXR1cm4gTWF0aC5tYXgoMCwgTWF0aC5taW4oMSwgdmFsdWUpKTtcbn1cblxuZnVuY3Rpb24gZnJvbVhZWih4eXopIHtcbiAgdmFyIHJnYiA9IEFycmF5KDMpO1xuICB2YXIgdHJhbnNmb3JtID0gc3JnYkZvcndhcmRUcmFuc2Zvcm07XG4gIHZhciBtYXRyaXggPSBzcmdiRm9yd2FyZE1hdHJpeDtcblxuICAvLyBNYXRyaXggdHJhbnNmb3JtLCB0aGVuIGdhbW1hIGFkanVzdG1lbnRcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICByZ2JbaV0gPSBNYXRoLnJvdW5kKGNsYW1wKHRyYW5zZm9ybShtYXRyaXhbaV1bMF0gKiB4eXpbMF0gKyBtYXRyaXhbaV1bMV0gKiB4eXpbMV0gKyBtYXRyaXhbaV1bMl0gKiB4eXpbMl0pKSAqIDI1NSk7XG4gIH1cblxuICAvLyBSZXNjYWxlIGJhY2sgdG8gWzAsIDI1NV1cbiAgcmV0dXJuIChyZ2JbMF0gPDwgMTYpICsgKHJnYlsxXSA8PCA4KSArIChyZ2JbMl0gPDwgMCk7XG59XG5cbmZ1bmN0aW9uIHRvWFlaKHJnYikge1xuICB2YXIgeHl6ID0gQXJyYXkoMyk7XG4gIHZhciB0cmFuc2Zvcm0gPSBzcmdiUmV2ZXJzZVRyYW5zZm9ybTtcbiAgdmFyIG1hdHJpeCA9IHNyZ2JSZXZlcnNlTWF0cml4O1xuXG4gIC8vIFJlc2NhbGUgZnJvbSBbMCwgMjU1XSB0byBbMCwgMV0gdGhlbiBhZGp1c3Qgc1JHQiBnYW1tYSB0byBsaW5lYXIgUkdCXG4gIHZhciByID0gdHJhbnNmb3JtKChyZ2IgPj4gMTYgJiAweGZmKSAvIDI1NSk7XG4gIHZhciBnID0gdHJhbnNmb3JtKChyZ2IgPj4gOCAmIDB4ZmYpIC8gMjU1KTtcbiAgdmFyIGIgPSB0cmFuc2Zvcm0oKHJnYiA+PiAwICYgMHhmZikgLyAyNTUpO1xuXG4gIC8vIE1hdHJpeCBjb2xvciBzcGFjZSB0cmFuc2Zvcm1cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICB4eXpbaV0gPSBtYXRyaXhbaV1bMF0gKiByICsgbWF0cml4W2ldWzFdICogZyArIG1hdHJpeFtpXVsyXSAqIGI7XG4gIH1cblxuICByZXR1cm4geHl6O1xufVxuXG4vKioqLyB9KSxcbi8qIDg3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSBmcm9tWFlaO1xuLyogaGFybW9ueSBleHBvcnQgKGltbXV0YWJsZSkgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImJcIl0gPSB0b1hZWjtcbnZhciBkZWx0YSA9IDAuMjA2ODk2NTUxNzI0MTM3OTM7IC8vIDbDtzI5XG5cbnZhciBjaWVsYWJGb3J3YXJkVHJhbnNmb3JtID0gZnVuY3Rpb24gY2llbGFiRm9yd2FyZFRyYW5zZm9ybSh0KSB7XG4gIHJldHVybiB0ID4gTWF0aC5wb3coZGVsdGEsIDMpID8gTWF0aC5jYnJ0KHQpIDogdCAvICgzICogTWF0aC5wb3coZGVsdGEsIDIpKSArIDQgLyAyOTtcbn07XG5cbnZhciBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtID0gZnVuY3Rpb24gY2llbGFiUmV2ZXJzZVRyYW5zZm9ybSh0KSB7XG4gIHJldHVybiB0ID4gZGVsdGEgPyBNYXRoLnBvdyh0LCAzKSA6IDMgKiBNYXRoLnBvdyhkZWx0YSwgMikgKiAodCAtIDQgLyAyOSk7XG59O1xuXG5mdW5jdGlvbiBmcm9tWFlaKHh5eikge1xuICB2YXIgdHJhbnNmb3JtID0gY2llbGFiRm9yd2FyZFRyYW5zZm9ybTtcbiAgdmFyIHRyYW5zZm9ybWVkWSA9IHRyYW5zZm9ybSh4eXpbMV0pO1xuXG4gIHJldHVybiBbMTE2ICogdHJhbnNmb3JtZWRZIC0gMTYsIDUwMCAqICh0cmFuc2Zvcm0oeHl6WzBdIC8gMC45NTA0NykgLSB0cmFuc2Zvcm1lZFkpLCAyMDAgKiAodHJhbnNmb3JtZWRZIC0gdHJhbnNmb3JtKHh5elsyXSAvIDEuMDg4ODMpKV07XG59XG5cbmZ1bmN0aW9uIHRvWFlaKGxhYikge1xuICB2YXIgdHJhbnNmb3JtID0gY2llbGFiUmV2ZXJzZVRyYW5zZm9ybTtcbiAgdmFyIExuID0gKGxhYlswXSArIDE2KSAvIDExNjtcbiAgcmV0dXJuIFt0cmFuc2Zvcm0oTG4gKyBsYWJbMV0gLyA1MDApICogMC45NTA0NywgdHJhbnNmb3JtKExuKSwgdHJhbnNmb3JtKExuIC0gbGFiWzJdIC8gMjAwKSAqIDEuMDg4ODNdO1xufVxuXG4vKioqLyB9KSxcbi8qIDg4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBBIG1vZGlmaWVkIHZlcnNpb24gb2YgaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vY2IxMDkvYjA3NGE2NWY3NTk1Y2ZmYzIxY2VhNTljZThkMTVmOWJcbiAqL1xuXG4vKipcbiAqIEEgVnVlIG1peGluIHRvIGdldCB0aGUgY3VycmVudCB3aWR0aC9oZWlnaHQgYW5kIHRoZSBhc3NvY2lhdGVkIGJyZWFrcG9pbnQuXG4gKlxuICogVXNlZnVsIHRvIGUuZy4gYWRhcHQgdGhlIHVzZXIgaW50ZXJmYWNlIGZyb20gaW5zaWRlIGEgVnVlIGNvbXBvbmVudFxuICogYXMgb3Bwb3NlZCB0byB1c2luZyBDU1MgY2xhc3Nlcy4gVGhlIGJyZWFrcG9pbnQgcGl4ZWwgdmFsdWVzIGFuZFxuICogcmFuZ2UgbmFtZXMgYXJlIHRha2VuIGZyb20gVnVldGlmeSAoaHR0cHM6Ly9naXRodWIuY29tL3Z1ZXRpZnlqcykuXG4gKlxuICogVXNlIHdpdGhpbiBhIGNvbXBvbmVudDpcbiAqXG4gKiAgIGltcG9ydCBicmVha3BvaW50IGZyb20gJy4vYnJlYWtwb2ludC5qcydcbiAqXG4gKiAgIGV4cG9ydCBkZWZhdWx0IHtcbiAqICAgICBuYW1lOiAnbXktY29tcG9uZW50JyxcbiAqICAgICBtaXhpbnM6IFticmVha3BvaW50XSxcbiAqICAgICAuLi5cbiAqXG4gKiBUaGVuIGluc2lkZSBhIHRlbXBsYXRlOlxuICpcbiAqICAgPGRpdiB2LWlmPVwiJGJyZWFrcG9pbnQuc21BbmREb3duXCI+Li4uPC9kaXY+XG4gKi9cbnZhciBicmVha3BvaW50ID0ge1xuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjbGllbnRXaWR0aDogY2xpZW50RGltZW5zaW9ucy5nZXRXaWR0aCgpLFxuICAgICAgY2xpZW50SGVpZ2h0OiBjbGllbnREaW1lbnNpb25zLmdldEhlaWdodCgpLFxuICAgICAgcmVzaXplVGltZW91dDogbnVsbFxuICAgIH07XG4gIH0sXG5cblxuICBjb21wdXRlZDoge1xuICAgIGJyZWFrcG9pbnQ6IGZ1bmN0aW9uIGJyZWFrcG9pbnQoKSB7XG4gICAgICB2YXIgeHMgPSB0aGlzLmNsaWVudFdpZHRoIDwgNjAwO1xuICAgICAgdmFyIHNtID0gdGhpcy5jbGllbnRXaWR0aCA8IDk2MCAmJiAheHM7XG4gICAgICB2YXIgbWQgPSB0aGlzLmNsaWVudFdpZHRoIDwgMTI4MCAtIDE2ICYmICEoc20gfHwgeHMpO1xuICAgICAgdmFyIGxnID0gdGhpcy5jbGllbnRXaWR0aCA8IDE5MjAgLSAxNiAmJiAhKG1kIHx8IHNtIHx8IHhzKTtcbiAgICAgIHZhciB4bCA9IHRoaXMuY2xpZW50V2lkdGggPj0gMTkyMCAtIDE2ICYmICEobGcgfHwgbWQgfHwgc20gfHwgeHMpO1xuXG4gICAgICB2YXIgeHNPbmx5ID0geHM7XG4gICAgICB2YXIgc21Pbmx5ID0gc207XG4gICAgICB2YXIgc21BbmREb3duID0gKHhzIHx8IHNtKSAmJiAhKG1kIHx8IGxnIHx8IHhsKTtcbiAgICAgIHZhciBzbUFuZFVwID0gIXhzICYmIChzbSB8fCBtZCB8fCBsZyB8fCB4bCk7XG4gICAgICB2YXIgbWRPbmx5ID0gbWQ7XG4gICAgICB2YXIgbWRBbmREb3duID0gKHhzIHx8IHNtIHx8IG1kKSAmJiAhKGxnIHx8IHhsKTtcbiAgICAgIHZhciBtZEFuZFVwID0gISh4cyB8fCBzbSkgJiYgKG1kIHx8IGxnIHx8IHhsKTtcbiAgICAgIHZhciBsZ09ubHkgPSBsZztcbiAgICAgIHZhciBsZ0FuZERvd24gPSAoeHMgfHwgc20gfHwgbWQgfHwgbGcpICYmICF4bDtcbiAgICAgIHZhciBsZ0FuZFVwID0gISh4cyB8fCBzbSB8fCBtZCkgJiYgKGxnIHx8IHhsKTtcbiAgICAgIHZhciB4bE9ubHkgPSB4bDtcblxuICAgICAgdmFyIG5hbWUgPSB2b2lkIDA7XG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgY2FzZSB4czpcbiAgICAgICAgICBuYW1lID0gJ3hzJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBzbTpcbiAgICAgICAgICBuYW1lID0gJ3NtJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBtZDpcbiAgICAgICAgICBuYW1lID0gJ21kJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBsZzpcbiAgICAgICAgICBuYW1lID0gJ2xnJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBuYW1lID0gJ3hsJztcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgdmFyIHJlc3VsdCA9IHtcbiAgICAgICAgLy8gRGVmaW5pdGUgYnJlYWtwb2ludC5cbiAgICAgICAgeHM6IHhzLFxuICAgICAgICBzbTogc20sXG4gICAgICAgIG1kOiBtZCxcbiAgICAgICAgbGc6IGxnLFxuICAgICAgICB4bDogeGwsXG5cbiAgICAgICAgLy8gVXNlZnVsIGUuZy4gdG8gY29uc3RydWN0IENTUyBjbGFzcyBuYW1lcyBkeW5hbWljYWxseS5cbiAgICAgICAgbmFtZTogbmFtZSxcblxuICAgICAgICAvLyBCcmVha3BvaW50IHJhbmdlcy5cbiAgICAgICAgeHNPbmx5OiB4c09ubHksXG4gICAgICAgIHNtT25seTogc21Pbmx5LFxuICAgICAgICBzbUFuZERvd246IHNtQW5kRG93bixcbiAgICAgICAgc21BbmRVcDogc21BbmRVcCxcbiAgICAgICAgbWRPbmx5OiBtZE9ubHksXG4gICAgICAgIG1kQW5kRG93bjogbWRBbmREb3duLFxuICAgICAgICBtZEFuZFVwOiBtZEFuZFVwLFxuICAgICAgICBsZ09ubHk6IGxnT25seSxcbiAgICAgICAgbGdBbmREb3duOiBsZ0FuZERvd24sXG4gICAgICAgIGxnQW5kVXA6IGxnQW5kVXAsXG4gICAgICAgIHhsT25seTogeGxPbmx5LFxuXG4gICAgICAgIC8vIEZvciBjdXN0b20gYnJlYWtwb2ludCBsb2dpYy5cbiAgICAgICAgd2lkdGg6IHRoaXMuY2xpZW50V2lkdGgsXG4gICAgICAgIGhlaWdodDogdGhpcy5jbGllbnRIZWlnaHRcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgYnJlYWtwb2ludDogZnVuY3Rpb24gYnJlYWtwb2ludCh2YWwpIHtcbiAgICAgIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludCA9IHZhbDtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQgPSB0aGlzLmJyZWFrcG9pbnQ7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgb25SZXNpemU6IGZ1bmN0aW9uIG9uUmVzaXplKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVzaXplVGltZW91dCk7XG5cbiAgICAgIC8vIEFkZGVkIGRlYm91bmNlIHRvIG1hdGNoIHdoYXRcbiAgICAgIC8vIHYtcmVzaXplIHVzZWQgdG8gZG8gYnV0IHdhc1xuICAgICAgLy8gcmVtb3ZlZCBkdWUgdG8gYSBtZW1vcnkgbGVha1xuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3Z1ZXRpZnlqcy92dWV0aWZ5L3B1bGwvMjk5N1xuICAgICAgdGhpcy5yZXNpemVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLmNsaWVudFdpZHRoID0gY2xpZW50RGltZW5zaW9ucy5nZXRXaWR0aCgpO1xuICAgICAgICBfdGhpcy5jbGllbnRIZWlnaHQgPSBjbGllbnREaW1lbnNpb25zLmdldEhlaWdodCgpO1xuICAgICAgfSwgMjAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBDcm9zcy1icm93c2VyIHN1cHBvcnQgYXMgZGVzY3JpYmVkIGluOlxuICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMjQ4MDgxXG59O3ZhciBjbGllbnREaW1lbnNpb25zID0ge1xuICBnZXRXaWR0aDogZnVuY3Rpb24gZ2V0V2lkdGgoKSB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiAwOyAvLyBTU1JcbiAgICByZXR1cm4gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoLCB3aW5kb3cuaW5uZXJXaWR0aCB8fCAwKTtcbiAgfSxcbiAgZ2V0SGVpZ2h0OiBmdW5jdGlvbiBnZXRIZWlnaHQoKSB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiAwOyAvLyBTU1JcbiAgICByZXR1cm4gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCwgd2luZG93LmlubmVySGVpZ2h0IHx8IDApO1xuICB9XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGJyZWFrcG9pbnQpO1xuXG4vKioqLyB9KSxcbi8qIDg5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFsZXJ0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkwKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQWxlcnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBbGVydF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkFsZXJ0X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBbGVydF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiA5MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2FsZXJ0c19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdHJhbnNpdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQpO1xuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1hbGVydCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdHJhbnNpdGlvbmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNtaXNzaWJsZTogQm9vbGVhbixcbiAgICBpY29uOiBTdHJpbmcsXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2YWwpIHtcbiAgICAgICAgcmV0dXJuIFsnaW5mbycsICdlcnJvcicsICdzdWNjZXNzJywgJ3dhcm5pbmcnXS5pbmNsdWRlcyh2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0Q29sb3I6ICdlcnJvcidcbiAgICB9O1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjb2xvciA9IHRoaXMudHlwZSAmJiAhdGhpcy5jb2xvciA/IHRoaXMudHlwZSA6IHRoaXMuY29tcHV0ZWRDb2xvcjtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnYWxlcnQtLWRpc21pc3NpYmxlJzogdGhpcy5kaXNtaXNzaWJsZSxcbiAgICAgICAgJ2FsZXJ0LS1vdXRsaW5lJzogdGhpcy5vdXRsaW5lXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gdGhpcy5vdXRsaW5lID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzLCBjb2xvcikgOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMsIGNvbG9yKTtcbiAgICB9LFxuICAgIGNvbXB1dGVkSWNvbjogZnVuY3Rpb24gY29tcHV0ZWRJY29uKCkge1xuICAgICAgaWYgKHRoaXMuaWNvbiB8fCAhdGhpcy50eXBlKSByZXR1cm4gdGhpcy5pY29uO1xuXG4gICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgICByZXR1cm4gJ2luZm8nO1xuICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgcmV0dXJuICd3YXJuaW5nJztcbiAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgICAgcmV0dXJuICdjaGVja19jaXJjbGUnO1xuICAgICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgICByZXR1cm4gJ3ByaW9yaXR5X2hpZ2gnO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtoKCdkaXYnLCB0aGlzLiRzbG90cy5kZWZhdWx0KV07XG5cbiAgICBpZiAodGhpcy5jb21wdXRlZEljb24pIHtcbiAgICAgIGNoaWxkcmVuLnVuc2hpZnQoaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgJ2NsYXNzJzogJ2FsZXJ0X19pY29uJ1xuICAgICAgfSwgdGhpcy5jb21wdXRlZEljb24pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kaXNtaXNzaWJsZSkge1xuICAgICAgdmFyIGNsb3NlID0gaCgnYScsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2FsZXJ0X19kaXNtaXNzaWJsZScsXG4gICAgICAgIG9uOiB7IGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy4kZW1pdCgnaW5wdXQnLCBmYWxzZSk7XG4gICAgICAgICAgfSB9XG4gICAgICB9LCBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICByaWdodDogdHJ1ZVxuICAgICAgICB9XG4gICAgICB9LCAnY2FuY2VsJyldKTtcblxuICAgICAgY2hpbGRyZW4ucHVzaChjbG9zZSk7XG4gICAgfVxuXG4gICAgdmFyIGFsZXJ0ID0gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdhbGVydCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgIHZhbHVlOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9XSxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9LCBjaGlsZHJlbik7XG5cbiAgICBpZiAoIXRoaXMudHJhbnNpdGlvbikgcmV0dXJuIGFsZXJ0O1xuXG4gICAgcmV0dXJuIGgoJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLnRyYW5zaXRpb24sXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZVxuICAgICAgfVxuICAgIH0sIFthbGVydF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDkyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaWNvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pY29uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2ljb25zX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG5cblxuXG5cbnZhciBTSVpFX01BUCA9IHtcbiAgc21hbGw6ICcxNnB4JyxcbiAgZGVmYXVsdDogJzI0cHgnLFxuICBtZWRpdW06ICcyOHB4JyxcbiAgbGFyZ2U6ICczNnB4JyxcbiAgeExhcmdlOiAnNDBweCdcbn07XG5cbmZ1bmN0aW9uIGlzRm9udEF3ZXNvbWU1KGljb25UeXBlKSB7XG4gIHJldHVybiBbJ2ZhcycsICdmYXInLCAnZmFsJywgJ2ZhYiddLnNvbWUoZnVuY3Rpb24gKHZhbCkge1xuICAgIHJldHVybiBpY29uVHlwZS5pbmNsdWRlcyh2YWwpO1xuICB9KTtcbn1cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWljb24nLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIGxlZnQ6IEJvb2xlYW4sXG4gICAgbWVkaXVtOiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ11cbiAgICB9LFxuICAgIHNtYWxsOiBCb29sZWFuLFxuICAgIHhMYXJnZTogQm9vbGVhblxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBkYXRhID0gX3JlZi5kYXRhLFxuICAgICAgICBfcmVmJGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgY2hpbGRyZW4gPSBfcmVmJGNoaWxkcmVuID09PSB1bmRlZmluZWQgPyBbXSA6IF9yZWYkY2hpbGRyZW47XG4gICAgdmFyIHNtYWxsID0gcHJvcHMuc21hbGwsXG4gICAgICAgIG1lZGl1bSA9IHByb3BzLm1lZGl1bSxcbiAgICAgICAgbGFyZ2UgPSBwcm9wcy5sYXJnZSxcbiAgICAgICAgeExhcmdlID0gcHJvcHMueExhcmdlO1xuXG4gICAgdmFyIHNpemVzID0geyBzbWFsbDogc21hbGwsIG1lZGl1bTogbWVkaXVtLCBsYXJnZTogbGFyZ2UsIHhMYXJnZTogeExhcmdlIH07XG4gICAgdmFyIGV4cGxpY2l0U2l6ZSA9IE9iamVjdC5rZXlzKHNpemVzKS5maW5kKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIHJldHVybiBzaXplc1trZXldICYmIGtleTtcbiAgICB9KTtcbiAgICB2YXIgZm9udFNpemUgPSBleHBsaWNpdFNpemUgJiYgU0laRV9NQVBbZXhwbGljaXRTaXplXSB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfX1tcImJcIiAvKiBjb252ZXJ0VG9Vbml0ICovXSkocHJvcHMuc2l6ZSk7XG5cbiAgICBpZiAoZm9udFNpemUpIGRhdGEuc3R5bGUgPSBfZXh0ZW5kcyh7IGZvbnRTaXplOiBmb250U2l6ZSB9LCBkYXRhLnN0eWxlKTtcblxuICAgIHZhciBpY29uTmFtZSA9ICcnO1xuICAgIGlmIChjaGlsZHJlbi5sZW5ndGgpIGljb25OYW1lID0gY2hpbGRyZW4ucG9wKCkudGV4dDtcbiAgICAvLyBTdXBwb3J0IHVzYWdlIG9mIHYtdGV4dCBhbmQgdi1odG1sXG4gICAgZWxzZSBpZiAoZGF0YS5kb21Qcm9wcykge1xuICAgICAgICBpY29uTmFtZSA9IGRhdGEuZG9tUHJvcHMudGV4dENvbnRlbnQgfHwgZGF0YS5kb21Qcm9wcy5pbm5lckhUTUwgfHwgaWNvbk5hbWU7XG5cbiAgICAgICAgLy8gUmVtb3ZlIG5vZGVzIHNvIGl0IGRvZXNuJ3RcbiAgICAgICAgLy8gb3ZlcndyaXRlIG91ciBjaGFuZ2VzXG4gICAgICAgIGRlbGV0ZSBkYXRhLmRvbVByb3BzLnRleHRDb250ZW50O1xuICAgICAgICBkZWxldGUgZGF0YS5kb21Qcm9wcy5pbm5lckhUTUw7XG4gICAgICB9XG5cbiAgICB2YXIgaWNvblR5cGUgPSAnbWF0ZXJpYWwtaWNvbnMnO1xuICAgIC8vIE1hdGVyaWFsIEljb24gZGVsaW1pdGVyIGlzIF9cbiAgICAvLyBodHRwczovL21hdGVyaWFsLmlvL2ljb25zL1xuICAgIHZhciBkZWxpbWl0ZXJJbmRleCA9IGljb25OYW1lLmluZGV4T2YoJy0nKTtcbiAgICB2YXIgaXNDdXN0b21JY29uID0gZGVsaW1pdGVySW5kZXggPiAtMTtcblxuICAgIGlmIChpc0N1c3RvbUljb24pIHtcbiAgICAgIGljb25UeXBlID0gaWNvbk5hbWUuc2xpY2UoMCwgZGVsaW1pdGVySW5kZXgpO1xuXG4gICAgICBpZiAoaXNGb250QXdlc29tZTUoaWNvblR5cGUpKSBpY29uVHlwZSA9ICcnO1xuICAgICAgLy8gQXNzdW1lIGlmIG5vdCBhIGN1c3RvbSBpY29uXG4gICAgICAvLyBpcyBNYXRlcmlhbCBJY29uIGZvbnRcbiAgICB9IGVsc2UgY2hpbGRyZW4ucHVzaChpY29uTmFtZSk7XG5cbiAgICBkYXRhLmF0dHJzID0gZGF0YS5hdHRycyB8fCB7fTtcbiAgICBpZiAoISgnYXJpYS1oaWRkZW4nIGluIGRhdGEuYXR0cnMpKSB7XG4gICAgICBkYXRhLmF0dHJzWydhcmlhLWhpZGRlbiddID0gdHJ1ZTtcbiAgICB9XG5cbiAgICB2YXIgY2xhc3NlcyA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgJ2ljb24tLWRpc2FibGVkJzogcHJvcHMuZGlzYWJsZWQsXG4gICAgICAnaWNvbi0tbGVmdCc6IHByb3BzLmxlZnQsXG4gICAgICAnaWNvbi0tcmlnaHQnOiBwcm9wcy5yaWdodCxcbiAgICAgICd0aGVtZS0tZGFyayc6IHByb3BzLmRhcmssXG4gICAgICAndGhlbWUtLWxpZ2h0JzogcHJvcHMubGlnaHRcbiAgICB9LCBwcm9wcy5jb2xvciA/IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm1ldGhvZHMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MuY2FsbChwcm9wcywge30sIHByb3BzLmNvbG9yKSA6IHt9KTtcblxuICAgIC8vIE9yZGVyIGNsYXNzZXNcbiAgICAvLyAqIENvbXBvbmVudCBjbGFzc1xuICAgIC8vICogVnVldGlmeSBjbGFzc2VzXG4gICAgLy8gKiBJY29uIENsYXNzZXNcbiAgICBkYXRhLnN0YXRpY0NsYXNzID0gWydpY29uJywgZGF0YS5zdGF0aWNDbGFzcywgT2JqZWN0LmtleXMoY2xhc3NlcykuZmlsdGVyKGZ1bmN0aW9uIChrKSB7XG4gICAgICByZXR1cm4gY2xhc3Nlc1trXTtcbiAgICB9KS5qb2luKCcgJyksIGljb25UeXBlLCBpc0N1c3RvbUljb24gPyBpY29uTmFtZSA6IG51bGxdLnJlZHVjZShmdW5jdGlvbiAocHJldiwgY3Vycikge1xuICAgICAgcmV0dXJuIGN1cnIgPyBwcmV2ICsgJyAnICsgY3VyciA6IHByZXY7XG4gICAgfSkudHJpbSgpO1xuXG4gICAgcmV0dXJuIGgoJ2knLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDkzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogOTQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19hdmF0YXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYXZhdGFyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2F2YXRhcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtYXZhdGFyJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiA0OFxuICAgIH0sXG4gICAgdGlsZTogQm9vbGVhblxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBjaGlsZHJlbiA9IF9yZWYuY2hpbGRyZW47XG5cbiAgICBkYXRhLnN0YXRpY0NsYXNzID0gKCdhdmF0YXIgJyArIChkYXRhLnN0YXRpY0NsYXNzIHx8ICcnKSkudHJpbSgpO1xuICAgIGRhdGEuc3R5bGUgPSBkYXRhLnN0eWxlIHx8IHt9O1xuXG4gICAgaWYgKHByb3BzLnRpbGUpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBhdmF0YXItLXRpbGUnO1xuXG4gICAgdmFyIHNpemUgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX191dGlsX2hlbHBlcnNfX1tcImJcIiAvKiBjb252ZXJ0VG9Vbml0ICovXSkocHJvcHMuc2l6ZSk7XG4gICAgZGF0YS5zdHlsZS5oZWlnaHQgPSBzaXplO1xuICAgIGRhdGEuc3R5bGUud2lkdGggPSBzaXplO1xuICAgIGRhdGEuY2xhc3MgPSBbZGF0YS5jbGFzcywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubWV0aG9kcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcy5jYWxsKHByb3BzLCB7fSwgcHJvcHMuY29sb3IpXTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDk1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogOTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQmFkZ2VfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTcpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCYWRnZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJhZGdlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQmFkZ2VfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJhZGdlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDk3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYmFkZ2VzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190cmFuc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNCk7XG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJhZGdlJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX19bXCJiXCIgLyogZmFjdG9yeSAqL10pKFsnbGVmdCcsICdib3R0b20nXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RyYW5zaXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgb3ZlcmxhcDogQm9vbGVhbixcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZmFiLXRyYW5zaXRpb24nXG4gICAgfSxcbiAgICB2YWx1ZToge1xuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnYmFkZ2UtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAnYmFkZ2UtLWxlZnQnOiB0aGlzLmxlZnQsXG4gICAgICAgICdiYWRnZS0tb3ZlcmxhcCc6IHRoaXMub3ZlcmxhcFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBiYWRnZSA9IHRoaXMuJHNsb3RzLmJhZGdlID8gW2goJ3NwYW4nLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JhZGdlX19iYWRnZScsXG4gICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKCksXG4gICAgICBhdHRyczogdGhpcy5hdHRycyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dXG4gICAgfSwgdGhpcy4kc2xvdHMuYmFkZ2UpXSA6IG51bGw7XG5cbiAgICByZXR1cm4gaCgnc3BhbicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnYmFkZ2UnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHQsIGgoJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLnRyYW5zaXRpb24sXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIG1vZGU6IHRoaXMubW9kZVxuICAgICAgfVxuICAgIH0sIGJhZGdlKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiA5OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDk5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbU5hdl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMDApO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21OYXZfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbU5hdl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fbmF2c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fbmF2c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2JvdHRvbV9uYXZzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19idXR0b25fZ3JvdXBfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8vIFN0eWxlc1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtYm90dG9tLW5hdicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnYm90dG9tJywgWydoZWlnaHQnLCAndmFsdWUnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2J1dHRvbl9ncm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBhY3RpdmU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgaGVpZ2h0OiB7XG4gICAgICBkZWZhdWx0OiA1NixcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hpZnQ6IEJvb2xlYW4sXG4gICAgdmFsdWU6IHsgcmVxdWlyZWQ6IGZhbHNlIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGFjdGl2ZTogZnVuY3Rpb24gYWN0aXZlKCkge1xuICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2JvdHRvbS1uYXYtLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ2JvdHRvbS1uYXYtLWZpeGVkJzogIXRoaXMuYWJzb2x1dGUgJiYgKHRoaXMuYXBwIHx8IHRoaXMuZml4ZWQpLFxuICAgICAgICAnYm90dG9tLW5hdi0tc2hpZnQnOiB0aGlzLnNoaWZ0LFxuICAgICAgICAnYm90dG9tLW5hdi0tYWN0aXZlJzogdGhpcy52YWx1ZVxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkSGVpZ2h0OiBmdW5jdGlvbiBjb21wdXRlZEhlaWdodCgpIHtcbiAgICAgIHJldHVybiBwYXJzZUludCh0aGlzLmhlaWdodCk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBpc1NlbGVjdGVkOiBmdW5jdGlvbiBpc1NlbGVjdGVkKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIHJldHVybiB0aGlzLmFjdGl2ZSA9PT0gaXRlbTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBhcHBsaWNhdGlvbiBsYXlvdXRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICB1cGRhdGVBcHBsaWNhdGlvbjogZnVuY3Rpb24gdXBkYXRlQXBwbGljYXRpb24oKSB7XG4gICAgICByZXR1cm4gIXRoaXMudmFsdWUgPyAwIDogdGhpcy5jb21wdXRlZEhlaWdodDtcbiAgICB9LFxuICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiB1cGRhdGVWYWx1ZShpKSB7XG4gICAgICB2YXIgaXRlbSA9IHRoaXMuZ2V0VmFsdWUoaSk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTphY3RpdmUnLCBpdGVtKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JvdHRvbS1uYXYnLFxuICAgICAgY2xhc3M6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3ModGhpcy5jbGFzc2VzKSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGhlaWdodDogcGFyc2VJbnQodGhpcy5jb21wdXRlZEhlaWdodCkgKyAncHgnXG4gICAgICB9LFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTAxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTAyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbVNoZWV0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwMyk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJvdHRvbVNoZWV0X19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQm90dG9tU2hlZXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCb3R0b21TaGVldF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQm90dG9tU2hlZXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTAzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYm90dG9tX3NoZWV0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ib3R0b21fc2hlZXRzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYm90dG9tX3NoZWV0c19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRpYWxvZ19WRGlhbG9nX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM2KTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJvdHRvbS1zaGVldCcsXG5cbiAgcHJvcHM6IHtcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBmdWxsV2lkdGg6IEJvb2xlYW4sXG4gICAgaGlkZU92ZXJsYXk6IEJvb2xlYW4sXG4gICAgaW5zZXQ6IEJvb2xlYW4sXG4gICAgbGF6eTogQm9vbGVhbixcbiAgICBtYXhXaWR0aDoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgcGVyc2lzdGVudDogQm9vbGVhbixcbiAgICB2YWx1ZTogbnVsbFxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgYWN0aXZhdG9yID0gaCgndGVtcGxhdGUnLCB7XG4gICAgICBzbG90OiAnYWN0aXZhdG9yJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmFjdGl2YXRvcik7XG5cbiAgICB2YXIgY29udGVudENsYXNzID0gWydib3R0b20tc2hlZXQnLCB0aGlzLmluc2V0ID8gJ2JvdHRvbS1zaGVldC0taW5zZXQnIDogJyddLmpvaW4oJyAnKTtcblxuICAgIHJldHVybiBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRpYWxvZ19WRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgIGF0dHJzOiBfZXh0ZW5kcyh7fSwgdGhpcy4kcHJvcHMpLFxuICAgICAgb246IF9leHRlbmRzKHt9LCB0aGlzLiRsaXN0ZW5lcnMpLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgY29udGVudENsYXNzOiBjb250ZW50Q2xhc3MsXG4gICAgICAgIHRyYW5zaXRpb246ICdib3R0b20tc2hlZXQtdHJhbnNpdGlvbicsXG4gICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlXG4gICAgICB9XG4gICAgfSwgW2FjdGl2YXRvciwgdGhpcy4kc2xvdHMuZGVmYXVsdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMDQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMDcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnJlYWRjcnVtYnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTA4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCcmVhZGNydW1ic0l0ZW1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEwKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZCcmVhZGNydW1icyAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkJyZWFkY3J1bWJzSXRlbSAqL1xuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCcmVhZGNydW1ic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkJyZWFkY3J1bWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnJlYWRjcnVtYnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnJlYWRjcnVtYnNJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnJlYWRjcnVtYnNJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCcmVhZGNydW1ic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19icmVhZGNydW1ic19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19icmVhZGNydW1ic19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2JyZWFkY3J1bWJzX3N0eWxfXyk7XG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJyZWFkY3J1bWJzJyxcblxuICBwcm9wczoge1xuICAgIGRpdmlkZXI6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICcvJ1xuICAgIH0sXG4gICAgbGFyZ2U6IEJvb2xlYW4sXG4gICAganVzdGlmeUNlbnRlcjogQm9vbGVhbixcbiAgICBqdXN0aWZ5RW5kOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2JyZWFkY3J1bWJzLS1sYXJnZSc6IHRoaXMubGFyZ2VcbiAgICAgIH07XG4gICAgfSxcbiAgICBjb21wdXRlZERpdmlkZXI6IGZ1bmN0aW9uIGNvbXB1dGVkRGl2aWRlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzbG90cy5kaXZpZGVyID8gdGhpcy4kc2xvdHMuZGl2aWRlciA6IHRoaXMuZGl2aWRlcjtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgdmFyIGp1c3RpZnkgPSB0aGlzLmp1c3RpZnlDZW50ZXIgPyAnY2VudGVyJyA6IHRoaXMuanVzdGlmeUVuZCA/ICdmbGV4LWVuZCcgOiAnZmxleC1zdGFydCc7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgICdqdXN0aWZ5LWNvbnRlbnQnOiBqdXN0aWZ5XG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLyoqXG4gICAgICogQWRkIGRpdmlkZXJzIGJldHdlZW5cbiAgICAgKiB2LWJyZWFkY3J1bWJzLWl0ZW1cbiAgICAgKlxuICAgICAqIEByZXR1cm4ge2FycmF5fVxuICAgICAqL1xuICAgIGdlbkNoaWxkcmVuOiBmdW5jdGlvbiBnZW5DaGlsZHJlbigpIHtcbiAgICAgIGlmICghdGhpcy4kc2xvdHMuZGVmYXVsdCkgcmV0dXJuIG51bGw7XG5cbiAgICAgIHZhciBoID0gdGhpcy4kY3JlYXRlRWxlbWVudDtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgdmFyIGRpdmlkZXJEYXRhID0geyBzdGF0aWNDbGFzczogJ2JyZWFkY3J1bWJzX19kaXZpZGVyJyB9O1xuXG4gICAgICB2YXIgY3JlYXRlRGl2aWRlcnMgPSBmYWxzZTtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy4kc2xvdHMuZGVmYXVsdC5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgZWxtID0gdGhpcy4kc2xvdHMuZGVmYXVsdFtpXTtcblxuICAgICAgICBpZiAoIWVsbS5jb21wb25lbnRPcHRpb25zIHx8IGVsbS5jb21wb25lbnRPcHRpb25zLkN0b3Iub3B0aW9ucy5uYW1lICE9PSAndi1icmVhZGNydW1icy1pdGVtJykge1xuICAgICAgICAgIGNoaWxkcmVuLnB1c2goZWxtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoY3JlYXRlRGl2aWRlcnMpIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goaCgnbGknLCBkaXZpZGVyRGF0YSwgdGhpcy5jb21wdXRlZERpdmlkZXIpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY2hpbGRyZW4ucHVzaChlbG0pO1xuICAgICAgICAgIGNyZWF0ZURpdmlkZXJzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2hpbGRyZW47XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgndWwnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2JyZWFkY3J1bWJzJyxcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlc1xuICAgIH0sIHRoaXMuZ2VuQ2hpbGRyZW4oKSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEwOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19yb3V0YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJyZWFkY3J1bWJzLWl0ZW0nLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgLy8gSW4gYSBicmVhZGNydW1iLCB0aGUgY3VycmVudGx5XG4gICAgLy8gYWN0aXZlIGl0ZW0gc2hvdWxkIGJlIGRpbW1lZFxuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnJlYWRjcnVtYnNfX2l0ZW0tLWRpc2FibGVkJ1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gX2RlZmluZVByb3BlcnR5KHtcbiAgICAgICAgJ2JyZWFkY3J1bWJzX19pdGVtJzogdHJ1ZVxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5kaXNhYmxlZCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICByZXR1cm4gaCgnbGknLCBbaCh0YWcsIGRhdGEsIHRoaXMuJHNsb3RzLmRlZmF1bHQpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2J1dHRvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMTIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2J1dHRvbnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZQcm9ncmVzc0NpcmN1bGFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDM5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcG9zaXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yb3V0YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbi8vIFN0eWxlc1xuXG5cbi8vIENvbXBvbmVudHNcblxuXG4vLyBNaXhpbnNcblxuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJ0bicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImJcIiAvKiBmYWN0b3J5ICovXSkoJ2lucHV0VmFsdWUnKSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ2J1dHRvbkdyb3VwJyldLFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdidG4tLWFjdGl2ZSdcbiAgICB9LFxuICAgIGJsb2NrOiBCb29sZWFuLFxuICAgIGRlcHJlc3NlZDogQm9vbGVhbixcbiAgICBmYWI6IEJvb2xlYW4sXG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBpY29uOiBCb29sZWFuLFxuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIGxvYWRpbmc6IEJvb2xlYW4sXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICByaXBwbGU6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgcm91bmQ6IEJvb2xlYW4sXG4gICAgc21hbGw6IEJvb2xlYW4sXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnV0dG9uJ1xuICAgIH0sXG4gICAgdHlwZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2J1dHRvbidcbiAgICB9LFxuICAgIHZhbHVlOiBudWxsXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIF9leHRlbmRzMjtcblxuICAgICAgdmFyIGNsYXNzZXMgPSBfZXh0ZW5kcygoX2V4dGVuZHMyID0ge1xuICAgICAgICAnYnRuJzogdHJ1ZVxuICAgICAgfSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWFic29sdXRlJywgdGhpcy5hYnNvbHV0ZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWJsb2NrJywgdGhpcy5ibG9jayksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWJvdHRvbScsIHRoaXMuYm90dG9tKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tZmxhdCcsIHRoaXMuZmxhdCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWZsb2F0aW5nJywgdGhpcy5mYWIpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1maXhlZCcsIHRoaXMuZml4ZWQpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1ob3ZlcicsIHRoaXMuaG92ZXIpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1pY29uJywgdGhpcy5pY29uKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tbGFyZ2UnLCB0aGlzLmxhcmdlKSwgX2RlZmluZVByb3BlcnR5KF9leHRlbmRzMiwgJ2J0bi0tbGVmdCcsIHRoaXMubGVmdCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLWxvYWRlcicsIHRoaXMubG9hZGluZyksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLW91dGxpbmUnLCB0aGlzLm91dGxpbmUpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1kZXByZXNzZWQnLCB0aGlzLmRlcHJlc3NlZCAmJiAhdGhpcy5mbGF0IHx8IHRoaXMub3V0bGluZSksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJpZ2h0JywgdGhpcy5yaWdodCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJvdW5kJywgdGhpcy5yb3VuZCksIF9kZWZpbmVQcm9wZXJ0eShfZXh0ZW5kczIsICdidG4tLXJvdXRlcicsIHRoaXMudG8pLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS1zbWFsbCcsIHRoaXMuc21hbGwpLCBfZGVmaW5lUHJvcGVydHkoX2V4dGVuZHMyLCAnYnRuLS10b3AnLCB0aGlzLnRvcCksIF9leHRlbmRzMiksIHRoaXMudGhlbWVDbGFzc2VzKTtcblxuICAgICAgcmV0dXJuICF0aGlzLm91dGxpbmUgJiYgIXRoaXMuZmxhdCA/IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcykgOiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKGNsYXNzZXMpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgLy8gUHJldmVudCBmb2N1cyB0byBtYXRjaCBtZCBzcGVjXG4gICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICF0aGlzLmZhYiAmJiBlLmRldGFpbCAmJiB0aGlzLiRlbC5ibHVyKCk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2NsaWNrJywgZSk7XG4gICAgfSxcbiAgICBnZW5Db250ZW50OiBmdW5jdGlvbiBnZW5Db250ZW50KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHsgJ2NsYXNzJzogJ2J0bl9fY29udGVudCcgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgICB9LFxuICAgIGdlbkxvYWRlcjogZnVuY3Rpb24gZ2VuTG9hZGVyKCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGlmICghdGhpcy4kc2xvdHMubG9hZGVyKSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZQcm9ncmVzc0NpcmN1bGFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaW5kZXRlcm1pbmF0ZTogdHJ1ZSxcbiAgICAgICAgICAgIHNpemU6IDIzLFxuICAgICAgICAgICAgd2lkdGg6IDJcbiAgICAgICAgICB9XG4gICAgICAgIH0pKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2godGhpcy4kc2xvdHMubG9hZGVyKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3NwYW4nLCB7ICdjbGFzcyc6ICdidG5fX2xvYWRpbmcnIH0sIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICBpZiAodGhpcy5idXR0b25Hcm91cCkge1xuICAgICAgdGhpcy5idXR0b25Hcm91cC5yZWdpc3Rlcih0aGlzKTtcbiAgICB9XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuYnV0dG9uR3JvdXApIHtcbiAgICAgIHRoaXMuYnV0dG9uR3JvdXAudW5yZWdpc3Rlcih0aGlzKTtcbiAgICB9XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbdGhpcy5nZW5Db250ZW50KCldO1xuXG4gICAgdGFnID09PSAnYnV0dG9uJyAmJiAoZGF0YS5hdHRycy50eXBlID0gdGhpcy50eXBlKTtcbiAgICB0aGlzLmxvYWRpbmcgJiYgY2hpbGRyZW4ucHVzaCh0aGlzLmdlbkxvYWRlcigpKTtcblxuICAgIGRhdGEuYXR0cnMudmFsdWUgPSBbJ3N0cmluZycsICdudW1iZXInXS5pbmNsdWRlcyhfdHlwZW9mKHRoaXMudmFsdWUpKSA/IHRoaXMudmFsdWUgOiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKTtcblxuICAgIHJldHVybiBoKHRhZywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMTIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19jaXJjdWxhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19jaXJjdWxhcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3Byb2dyZXNzX2NpcmN1bGFyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcHJvZ3Jlc3MtY2lyY3VsYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGJ1dHRvbjogQm9vbGVhbixcblxuICAgIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW4sXG5cbiAgICByb3RhdGU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuXG4gICAgc2l6ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDMyXG4gICAgfSxcblxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiA0XG4gICAgfSxcblxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZFNpemU6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRTaXplKCkge1xuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLnNpemUpICsgKHRoaXMuYnV0dG9uID8gOCA6IDApO1xuICAgIH0sXG4gICAgY2lyY3VtZmVyZW5jZTogZnVuY3Rpb24gY2lyY3VtZmVyZW5jZSgpIHtcbiAgICAgIHJldHVybiAyICogTWF0aC5QSSAqIHRoaXMucmFkaXVzO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmFkZFRleHRDb2xvckNsYXNzQ2hlY2tzKHtcbiAgICAgICAgJ3Byb2dyZXNzLWNpcmN1bGFyJzogdHJ1ZSxcbiAgICAgICAgJ3Byb2dyZXNzLWNpcmN1bGFyLS1pbmRldGVybWluYXRlJzogdGhpcy5pbmRldGVybWluYXRlLFxuICAgICAgICAncHJvZ3Jlc3MtY2lyY3VsYXItLWJ1dHRvbic6IHRoaXMuYnV0dG9uXG4gICAgICB9KTtcbiAgICB9LFxuICAgIG5vcm1hbGl6ZWRWYWx1ZTogZnVuY3Rpb24gbm9ybWFsaXplZFZhbHVlKCkge1xuICAgICAgaWYgKHRoaXMudmFsdWUgPCAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy52YWx1ZSA+IDEwMCkge1xuICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgICB9LFxuICAgIHJhZGl1czogZnVuY3Rpb24gcmFkaXVzKCkge1xuICAgICAgcmV0dXJuIDIwO1xuICAgIH0sXG4gICAgc3Ryb2tlRGFzaEFycmF5OiBmdW5jdGlvbiBzdHJva2VEYXNoQXJyYXkoKSB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLmNpcmN1bWZlcmVuY2UgKiAxMDAwKSAvIDEwMDA7XG4gICAgfSxcbiAgICBzdHJva2VEYXNoT2Zmc2V0OiBmdW5jdGlvbiBzdHJva2VEYXNoT2Zmc2V0KCkge1xuICAgICAgcmV0dXJuICgxMDAgLSB0aGlzLm5vcm1hbGl6ZWRWYWx1ZSkgLyAxMDAgKiB0aGlzLmNpcmN1bWZlcmVuY2UgKyAncHgnO1xuICAgIH0sXG4gICAgc3Ryb2tlV2lkdGg6IGZ1bmN0aW9uIHN0cm9rZVdpZHRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMud2lkdGggLyB0aGlzLnNpemUgKiB0aGlzLnZpZXdCb3hTaXplICogMjtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmNhbGN1bGF0ZWRTaXplICsgJ3B4JyxcbiAgICAgICAgd2lkdGg6IHRoaXMuY2FsY3VsYXRlZFNpemUgKyAncHgnXG4gICAgICB9O1xuICAgIH0sXG4gICAgc3ZnU3R5bGVzOiBmdW5jdGlvbiBzdmdTdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2Zvcm06ICdyb3RhdGUoJyArIHRoaXMucm90YXRlICsgJ2RlZyknXG4gICAgICB9O1xuICAgIH0sXG4gICAgdmlld0JveFNpemU6IGZ1bmN0aW9uIHZpZXdCb3hTaXplKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmFkaXVzIC8gKDEgLSB0aGlzLndpZHRoIC8gdGhpcy5zaXplKTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkNpcmNsZTogZnVuY3Rpb24gZ2VuQ2lyY2xlKGgsIG5hbWUsIG9mZnNldCkge1xuICAgICAgcmV0dXJuIGgoJ2NpcmNsZScsIHtcbiAgICAgICAgY2xhc3M6ICdwcm9ncmVzcy1jaXJjdWxhcl9fJyArIG5hbWUsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcbiAgICAgICAgICBjeDogMiAqIHRoaXMudmlld0JveFNpemUsXG4gICAgICAgICAgY3k6IDIgKiB0aGlzLnZpZXdCb3hTaXplLFxuICAgICAgICAgIHI6IHRoaXMucmFkaXVzLFxuICAgICAgICAgICdzdHJva2Utd2lkdGgnOiB0aGlzLnN0cm9rZVdpZHRoLFxuICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogdGhpcy5zdHJva2VEYXNoQXJyYXksXG4gICAgICAgICAgJ3N0cm9rZS1kYXNob2Zmc2V0Jzogb2Zmc2V0XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuU3ZnOiBmdW5jdGlvbiBnZW5TdmcoaCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW3RoaXMuaW5kZXRlcm1pbmF0ZSB8fCB0aGlzLmdlbkNpcmNsZShoLCAndW5kZXJsYXknLCAwKSwgdGhpcy5nZW5DaXJjbGUoaCwgJ292ZXJsYXknLCB0aGlzLnN0cm9rZURhc2hPZmZzZXQpXTtcblxuICAgICAgcmV0dXJuIGgoJ3N2ZycsIHtcbiAgICAgICAgc3R5bGU6IHRoaXMuc3ZnU3R5bGVzLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHhtbG5zOiAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnLFxuICAgICAgICAgIHZpZXdCb3g6IHRoaXMudmlld0JveFNpemUgKyAnICcgKyB0aGlzLnZpZXdCb3hTaXplICsgJyAnICsgMiAqIHRoaXMudmlld0JveFNpemUgKyAnICcgKyAyICogdGhpcy52aWV3Qm94U2l6ZVxuICAgICAgICB9XG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgaW5mbyA9IGgoJ2RpdicsIHsgY2xhc3M6ICdwcm9ncmVzcy1jaXJjdWxhcl9faW5mbycgfSwgW3RoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgICB2YXIgc3ZnID0gdGhpcy5nZW5TdmcoaCk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9LCBbc3ZnLCBpbmZvXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCdG5Ub2dnbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTE2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQnRuVG9nZ2xlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZCdG5Ub2dnbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTE2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uX3RvZ2dsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19idXR0b25fdG9nZ2xlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfYnV0dG9uX3RvZ2dsZV9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2J1dHRvbl9ncm91cF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWJ0bi10b2dnbGUnLFxuXG4gIG1vZGVsOiB7XG4gICAgcHJvcDogJ2lucHV0VmFsdWUnLFxuICAgIGV2ZW50OiAnY2hhbmdlJ1xuICB9LFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2J1dHRvbl9ncm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBpbnB1dFZhbHVlOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9LFxuICAgIG1hbmRhdG9yeTogQm9vbGVhbixcbiAgICBtdWx0aXBsZTogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdidG4tdG9nZ2xlJzogdHJ1ZSxcbiAgICAgICAgJ2J0bi10b2dnbGUtLXNlbGVjdGVkJzogdGhpcy5oYXNWYWx1ZSxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFya1xuICAgICAgfTtcbiAgICB9LFxuICAgIGhhc1ZhbHVlOiBmdW5jdGlvbiBoYXNWYWx1ZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGxlICYmIHRoaXMuaW5wdXRWYWx1ZS5sZW5ndGggfHwgIXRoaXMubXVsdGlwbGUgJiYgdGhpcy5pbnB1dFZhbHVlICE9PSBudWxsICYmIHR5cGVvZiB0aGlzLmlucHV0VmFsdWUgIT09ICd1bmRlZmluZWQnO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlucHV0VmFsdWU6IHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uIGhhbmRsZXIoKSB7XG4gICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICB9LFxuXG4gICAgICBkZWVwOiB0cnVlXG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBpc1NlbGVjdGVkOiBmdW5jdGlvbiBpc1NlbGVjdGVkKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlID09PSBpdGVtO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dFZhbHVlLmluY2x1ZGVzKGl0ZW0pO1xuICAgIH0sXG4gICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIHVwZGF0ZVZhbHVlKGkpIHtcbiAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgICBpZiAodGhpcy5tYW5kYXRvcnkgJiYgdGhpcy5pbnB1dFZhbHVlID09PSBpdGVtKSByZXR1cm47XG4gICAgICAgIHJldHVybiB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLmlucHV0VmFsdWUgPT09IGl0ZW0gPyBudWxsIDogaXRlbSk7XG4gICAgICB9XG5cbiAgICAgIHZhciBpdGVtcyA9IHRoaXMuaW5wdXRWYWx1ZS5zbGljZSgpO1xuXG4gICAgICB2YXIgaW5kZXggPSBpdGVtcy5pbmRleE9mKGl0ZW0pO1xuICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgaWYgKHRoaXMubWFuZGF0b3J5ICYmIGl0ZW1zLmxlbmd0aCA9PT0gMSkgcmV0dXJuO1xuICAgICAgICBpdGVtcy5sZW5ndGggPj0gMSAmJiBpdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgaXRlbXMpO1xuICAgIH0sXG4gICAgdXBkYXRlQWxsVmFsdWVzOiBmdW5jdGlvbiB1cGRhdGVBbGxWYWx1ZXMoKSB7XG4gICAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHJldHVybjtcblxuICAgICAgdmFyIGl0ZW1zID0gW107XG5cbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5idXR0b25zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIHZhciBpdGVtID0gdGhpcy5nZXRWYWx1ZShpKTtcbiAgICAgICAgdmFyIGluZGV4ID0gdGhpcy5pbnB1dFZhbHVlLmluZGV4T2YoaXRlbSk7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIGl0ZW1zKTtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSAmJiAhQXJyYXkuaXNBcnJheSh0aGlzLmlucHV0VmFsdWUpKSB7XG4gICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdNb2RlbCBtdXN0IGJlIGJvdW5kIHRvIGFuIGFycmF5IGlmIHRoZSBtdWx0aXBsZSBwcm9wZXJ0eSBpcyB0cnVlLicsIHRoaXMpO1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7IGNsYXNzOiB0aGlzLmNsYXNzZXMgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDExNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDExOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NhcmRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTE5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NhcmRzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2FyZHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJkJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBoZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgaG92ZXI6IEJvb2xlYW4sXG4gICAgaW1nOiBTdHJpbmcsXG4gICAgcmFpc2VkOiBCb29sZWFuLFxuICAgIHRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2RpdidcbiAgICB9LFxuICAgIHRpbGU6IEJvb2xlYW4sXG4gICAgd2lkdGg6IFtTdHJpbmcsIE51bWJlcl1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICdjYXJkJzogdHJ1ZSxcbiAgICAgICAgJ2NhcmQtLWZsYXQnOiB0aGlzLmZsYXQsXG4gICAgICAgICdjYXJkLS1ob3Jpem9udGFsJzogdGhpcy5ob3Jpem9udGFsLFxuICAgICAgICAnY2FyZC0taG92ZXInOiB0aGlzLmhvdmVyLFxuICAgICAgICAnY2FyZC0tcmFpc2VkJzogdGhpcy5yYWlzZWQsXG4gICAgICAgICdjYXJkLS10aWxlJzogdGhpcy50aWxlLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrXG4gICAgICB9KTtcbiAgICB9LFxuICAgIHN0eWxlczogZnVuY3Rpb24gc3R5bGVzKCkge1xuICAgICAgdmFyIHN0eWxlID0ge1xuICAgICAgICBoZWlnaHQ6IGlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0IDogdGhpcy5oZWlnaHQgKyAncHgnXG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5pbWcpIHtcbiAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9ICd1cmwoXCInICsgdGhpcy5pbWcgKyAnXCIpIGNlbnRlciBjZW50ZXIgLyBjb3ZlciBuby1yZXBlYXQnO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy53aWR0aCkge1xuICAgICAgICBzdHlsZS53aWR0aCA9IGlzTmFOKHRoaXMud2lkdGgpID8gdGhpcy53aWR0aCA6IHRoaXMud2lkdGggKyAncHgnO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gc3R5bGU7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2dlbmVyYXRlUm91dGVMaW5rID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpLFxuICAgICAgICB0YWcgPSBfZ2VuZXJhdGVSb3V0ZUxpbmsudGFnLFxuICAgICAgICBkYXRhID0gX2dlbmVyYXRlUm91dGVMaW5rLmRhdGE7XG5cbiAgICBkYXRhLnN0eWxlID0gdGhpcy5zdHlsZXM7XG5cbiAgICByZXR1cm4gaCh0YWcsIGRhdGEsIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMTkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtY2FyZC1tZWRpYScsXG5cbiAgcHJvcHM6IHtcbiAgICBjb250YWluOiBCb29sZWFuLFxuICAgIGhlaWdodDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdhdXRvJ1xuICAgIH0sXG4gICAgc3JjOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgJ2NsYXNzJzogJ2NhcmRfX21lZGlhJyxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGhlaWdodDogIWlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0ICsgJ3B4JyA6IHRoaXMuaGVpZ2h0XG4gICAgICB9LFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIGlmICh0aGlzLnNyYykge1xuICAgICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdjYXJkX19tZWRpYV9fYmFja2dyb3VuZCcsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJ3VybChcIicgKyB0aGlzLnNyYyArICdcIikgY2VudGVyIGNlbnRlciAvICcgKyAodGhpcy5jb250YWluID8gJ2NvbnRhaW4nIDogJ2NvdmVyJykgKyAnIG5vLXJlcGVhdCdcbiAgICAgICAgfVxuICAgICAgfSkpO1xuICAgIH1cblxuICAgIGNoaWxkcmVuLnB1c2goaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogJ2NhcmRfX21lZGlhX19jb250ZW50J1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyMSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJkLXRpdGxlJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIHByb3BzOiB7XG4gICAgcHJpbWFyeVRpdGxlOiBCb29sZWFuXG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgX3JlZikge1xuICAgIHZhciBkYXRhID0gX3JlZi5kYXRhLFxuICAgICAgICBwcm9wcyA9IF9yZWYucHJvcHMsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbjtcblxuICAgIGRhdGEuc3RhdGljQ2xhc3MgPSAoJ2NhcmRfX3RpdGxlICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIGlmIChwcm9wcy5wcmltYXJ5VGl0bGUpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBjYXJkX190aXRsZS0tcHJpbWFyeSc7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMjIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2Fyb3VzZWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTIzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDYXJvdXNlbEl0ZW1fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTI1KTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZDYXJvdXNlbCAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNhcm91c2VsSXRlbSAqL1xuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDYXJvdXNlbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkNhcm91c2VsX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WQ2Fyb3VzZWxfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2Fyb3VzZWxJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2Fyb3VzZWxJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZDYXJvdXNlbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxMjMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jYXJvdXNlbF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEyNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jYXJvdXNlbF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Nhcm91c2VsX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jYXJvdXNlbCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgnY2Fyb3VzZWwnKV0sXG5cbiAgZGlyZWN0aXZlczogeyBUb3VjaDogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpbnB1dFZhbHVlOiBudWxsLFxuICAgICAgaXRlbXM6IFtdLFxuICAgICAgc2xpZGVUaW1lb3V0OiBudWxsLFxuICAgICAgcmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjeWNsZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGRlbGltaXRlckljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdmaWJlcl9tYW51YWxfcmVjb3JkJ1xuICAgIH0sXG4gICAgaGlkZUNvbnRyb2xzOiBCb29sZWFuLFxuICAgIGhpZGVEZWxpbWl0ZXJzOiBCb29sZWFuLFxuICAgIGludGVydmFsOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNjAwMCxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA+IDA7XG4gICAgICB9XG4gICAgfSxcbiAgICBuZXh0SWNvbjoge1xuICAgICAgdHlwZTogW0Jvb2xlYW4sIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICB2YWx1ZTogTnVtYmVyXG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXMoKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dFZhbHVlID49IHRoaXMuaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGlucHV0VmFsdWU6IGZ1bmN0aW9uIGlucHV0VmFsdWUoKSB7XG4gICAgICAvLyBFdmFsdWF0ZXMgaXRlbXMgd2hlbiBpbnB1dFZhbHVlIGNoYW5nZXMgdG9cbiAgICAgIC8vIGFjY291bnQgZm9yIGR5bmFtaWMgY2hhbmdpbmcgb2YgY2hpbGRyZW5cblxuICAgICAgdmFyIHVpZCA9ICh0aGlzLml0ZW1zW3RoaXMuaW5wdXRWYWx1ZV0gfHwge30pLnVpZDtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5pdGVtcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5pdGVtc1tpbmRleF0ub3Blbih1aWQsIHRoaXMucmV2ZXJzZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMucmVzdGFydFRpbWVvdXQoKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHZhbDtcbiAgICB9LFxuICAgIGludGVydmFsOiBmdW5jdGlvbiBpbnRlcnZhbCgpIHtcbiAgICAgIHRoaXMucmVzdGFydFRpbWVvdXQoKTtcbiAgICB9LFxuICAgIGN5Y2xlOiBmdW5jdGlvbiBjeWNsZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgdGhpcy5yZXN0YXJ0VGltZW91dCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuc2xpZGVUaW1lb3V0KTtcbiAgICAgICAgdGhpcy5zbGlkZVRpbWVvdXQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkRlbGltaXRlcnM6IGZ1bmN0aW9uIGdlbkRlbGltaXRlcnMoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2Nhcm91c2VsX19jb250cm9scydcbiAgICAgIH0sIHRoaXMuZ2VuSXRlbXMoKSk7XG4gICAgfSxcbiAgICBnZW5JY29uOiBmdW5jdGlvbiBnZW5JY29uKGRpcmVjdGlvbiwgaWNvbiwgZm4pIHtcbiAgICAgIGlmICghaWNvbikgcmV0dXJuIG51bGw7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnY2Fyb3VzZWxfXycgKyBkaXJlY3Rpb25cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmsgfHwgIXRoaXMubGlnaHQsXG4gICAgICAgICAgbGlnaHQ6IHRoaXMubGlnaHRcbiAgICAgICAgfSxcbiAgICAgICAgb246IHsgY2xpY2s6IGZuIH1cbiAgICAgIH0sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczogeyAnc2l6ZSc6ICc0NnB4JyB9XG4gICAgICB9LCBpY29uKV0pXSk7XG4gICAgfSxcbiAgICBnZW5JdGVtczogZnVuY3Rpb24gZ2VuSXRlbXMoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7XG4gICAgICAgIHJldHVybiBfdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAnY2Fyb3VzZWxfX2NvbnRyb2xzX19pdGVtJzogdHJ1ZSxcbiAgICAgICAgICAgICdjYXJvdXNlbF9fY29udHJvbHNfX2l0ZW0tLWFjdGl2ZSc6IGluZGV4ID09PSBfdGhpcy5pbnB1dFZhbHVlXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaWNvbjogdHJ1ZSxcbiAgICAgICAgICAgIHNtYWxsOiB0cnVlLFxuICAgICAgICAgICAgZGFyazogX3RoaXMuZGFyayB8fCAhX3RoaXMubGlnaHQsXG4gICAgICAgICAgICBsaWdodDogX3RoaXMubGlnaHRcbiAgICAgICAgICB9LFxuICAgICAgICAgIGtleTogaW5kZXgsXG4gICAgICAgICAgb246IHsgY2xpY2s6IF90aGlzLnNlbGVjdC5iaW5kKF90aGlzLCBpbmRleCkgfVxuICAgICAgICB9LCBbX3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgICAgcHJvcHM6IHsgc2l6ZTogJzE4cHgnIH1cbiAgICAgICAgfSwgX3RoaXMuZGVsaW1pdGVySWNvbildKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgcmVzdGFydFRpbWVvdXQ6IGZ1bmN0aW9uIHJlc3RhcnRUaW1lb3V0KCkge1xuICAgICAgdGhpcy5zbGlkZVRpbWVvdXQgJiYgY2xlYXJUaW1lb3V0KHRoaXMuc2xpZGVUaW1lb3V0KTtcbiAgICAgIHRoaXMuc2xpZGVUaW1lb3V0ID0gbnVsbDtcblxuICAgICAgdmFyIHJhZiA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSB8fCBzZXRUaW1lb3V0O1xuICAgICAgcmFmKHRoaXMuc3RhcnRUaW1lb3V0KTtcbiAgICB9LFxuICAgIGluaXQ6IGZ1bmN0aW9uIGluaXQoKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnZhbHVlIHx8IDA7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgdGhpcy5yZXZlcnNlID0gZmFsc2U7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSAodGhpcy5pbnB1dFZhbHVlICsgMSkgJSB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIHByZXY6IGZ1bmN0aW9uIHByZXYoKSB7XG4gICAgICB0aGlzLnJldmVyc2UgPSB0cnVlO1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gKHRoaXMuaW5wdXRWYWx1ZSArIHRoaXMuaXRlbXMubGVuZ3RoIC0gMSkgJSB0aGlzLml0ZW1zLmxlbmd0aDtcbiAgICB9LFxuICAgIHNlbGVjdDogZnVuY3Rpb24gc2VsZWN0KGluZGV4KSB7XG4gICAgICB0aGlzLnJldmVyc2UgPSBpbmRleCA8IHRoaXMuaW5wdXRWYWx1ZTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGluZGV4O1xuICAgIH0sXG4gICAgc3RhcnRUaW1lb3V0OiBmdW5jdGlvbiBzdGFydFRpbWVvdXQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmN5Y2xlKSByZXR1cm47XG5cbiAgICAgIHRoaXMuc2xpZGVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIubmV4dCgpO1xuICAgICAgfSwgdGhpcy5pbnRlcnZhbCA+IDAgPyB0aGlzLmludGVydmFsIDogNjAwMCk7XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCBvcGVuKSB7XG4gICAgICB0aGlzLml0ZW1zLnB1c2goeyB1aWQ6IHVpZCwgb3Blbjogb3BlbiB9KTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodWlkKSB7XG4gICAgICB0aGlzLml0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIGkudWlkICE9PSB1aWQ7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2Nhcm91c2VsJyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICd0b3VjaCcsXG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgbGVmdDogdGhpcy5uZXh0LFxuICAgICAgICAgIHJpZ2h0OiB0aGlzLnByZXZcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9LCBbdGhpcy5oaWRlQ29udHJvbHMgPyBudWxsIDogdGhpcy5nZW5JY29uKCdsZWZ0JywgdGhpcy5wcmV2SWNvbiwgdGhpcy5wcmV2KSwgdGhpcy5oaWRlQ29udHJvbHMgPyBudWxsIDogdGhpcy5nZW5JY29uKCdyaWdodCcsIHRoaXMubmV4dEljb24sIHRoaXMubmV4dCksIHRoaXMuaGlkZURlbGltaXRlcnMgPyBudWxsIDogdGhpcy5nZW5EZWxpbWl0ZXJzKCksIHRoaXMuJHNsb3RzLmRlZmF1bHRdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTI0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTI1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWNhcm91c2VsLWl0ZW0nLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCdjYXJvdXNlbCcsICd2LWNhcm91c2VsLWl0ZW0nLCAndi1jYXJvdXNlbCcpXSxcblxuICBpbmhlcml0QXR0cnM6IGZhbHNlLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGl2ZTogZmFsc2UsXG4gICAgICByZXZlcnNlOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICd0YWItdHJhbnNpdGlvbidcbiAgICB9LFxuICAgIHJldmVyc2VUcmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGFiLXJldmVyc2UtdHJhbnNpdGlvbidcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZFRyYW5zaXRpb246IGZ1bmN0aW9uIGNvbXB1dGVkVHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLnJldmVyc2UgPyB0aGlzLnJldmVyc2VUcmFuc2l0aW9uIDogdGhpcy50cmFuc2l0aW9uO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgb3BlbjogZnVuY3Rpb24gb3BlbihpZCwgcmV2ZXJzZSkge1xuICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLl91aWQgPT09IGlkO1xuICAgICAgdGhpcy5yZXZlcnNlID0gcmV2ZXJzZTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmNhcm91c2VsLnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy5vcGVuKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLmNhcm91c2VsLnVucmVnaXN0ZXIodGhpcy5fdWlkLCB0aGlzLm9wZW4pO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGl0ZW0gPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkp1bWJvdHJvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICBwcm9wczogX2V4dGVuZHMoe30sIHRoaXMuJGF0dHJzLCB7XG4gICAgICAgIGhlaWdodDogJzEwMCUnXG4gICAgICB9KSxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnMsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgIHZhbHVlOiB0aGlzLmFjdGl2ZVxuICAgICAgfV1cbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywgeyBwcm9wczogeyBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbiB9IH0sIFtpdGVtXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2p1bWJvdHJvbnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMjcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfanVtYm90cm9uc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2p1bWJvdHJvbnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG4vLyBNaXhpbnNcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWp1bWJvdHJvbicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGdyYWRpZW50OiBTdHJpbmcsXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogJzQwMHB4J1xuICAgIH0sXG4gICAgc3JjOiBTdHJpbmcsXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZGl2J1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGJhY2tncm91bmRTdHlsZXM6IGZ1bmN0aW9uIGJhY2tncm91bmRTdHlsZXMoKSB7XG4gICAgICB2YXIgc3R5bGVzID0ge307XG5cbiAgICAgIGlmICh0aGlzLmdyYWRpZW50KSB7XG4gICAgICAgIHN0eWxlcy5iYWNrZ3JvdW5kID0gJ2xpbmVhci1ncmFkaWVudCgnICsgdGhpcy5ncmFkaWVudCArICcpJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9LFxuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndGhlbWUtLWRhcmsnOiB0aGlzLmRhcmssXG4gICAgICAgICd0aGVtZS0tbGlnaHQnOiB0aGlzLmxpZ2h0XG4gICAgICB9O1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0XG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQmFja2dyb3VuZDogZnVuY3Rpb24gZ2VuQmFja2dyb3VuZCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnanVtYm90cm9uX19iYWNrZ3JvdW5kJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpLFxuICAgICAgICBzdHlsZTogdGhpcy5iYWNrZ3JvdW5kU3R5bGVzXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2p1bWJvdHJvbl9fY29udGVudCdcbiAgICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICAgIH0sXG4gICAgZ2VuSW1hZ2U6IGZ1bmN0aW9uIGdlbkltYWdlKCkge1xuICAgICAgaWYgKCF0aGlzLnNyYykgcmV0dXJuIG51bGw7XG4gICAgICBpZiAodGhpcy4kc2xvdHMuaW1nKSByZXR1cm4gdGhpcy4kc2xvdHMuaW1nKHsgc3JjOiB0aGlzLnNyYyB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2ltZycsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdqdW1ib3Ryb25fX2ltYWdlJyxcbiAgICAgICAgYXR0cnM6IHsgc3JjOiB0aGlzLnNyYyB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbldyYXBwZXI6IGZ1bmN0aW9uIGdlbldyYXBwZXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2p1bWJvdHJvbl9fd3JhcHBlcidcbiAgICAgIH0sIFt0aGlzLmdlbkltYWdlKCksIHRoaXMuZ2VuQmFja2dyb3VuZCgpLCB0aGlzLmdlbkNvbnRlbnQoKV0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF9nZW5lcmF0ZVJvdXRlTGluayA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKSxcbiAgICAgICAgdGFnID0gX2dlbmVyYXRlUm91dGVMaW5rLnRhZyxcbiAgICAgICAgZGF0YSA9IF9nZW5lcmF0ZVJvdXRlTGluay5kYXRhO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICdqdW1ib3Ryb24nO1xuICAgIGRhdGEuc3R5bGUgPSB0aGlzLnN0eWxlcztcblxuICAgIHJldHVybiBoKHRhZywgZGF0YSwgW3RoaXMuZ2VuV3JhcHBlcigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDEyOCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2lucHV0X2dyb3Vwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0aW9uX2NvbnRyb2xzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3JpcHBsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3NlbGVjdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDIpO1xuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1jaGVja2JveCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zZWxlY3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0SW5kZXRlcm1pbmF0ZTogdGhpcy5pbmRldGVybWluYXRlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgaW5kZXRlcm1pbmF0ZTogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnY2hlY2tib3gnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcbiAgICAgICAgY2xhc3Nlc1snZXJyb3ItLXRleHQnXSA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBpY29uOiBmdW5jdGlvbiBpY29uKCkge1xuICAgICAgaWYgKHRoaXMuaW5wdXRJbmRldGVybWluYXRlKSB7XG4gICAgICAgIHJldHVybiAnaW5kZXRlcm1pbmF0ZV9jaGVja19ib3gnO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgIHJldHVybiAnY2hlY2tfYm94JztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAnY2hlY2tfYm94X291dGxpbmVfYmxhbmsnO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ3JvdXBGb2N1czogZnVuY3Rpb24gZ3JvdXBGb2N1cyhlKSB7XG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gICAgICB0aGlzLiRlbWl0KCdmb2N1cycsIGUpO1xuICAgIH0sXG4gICAgZ3JvdXBCbHVyOiBmdW5jdGlvbiBncm91cEJsdXIoZSkge1xuICAgICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMudGFiRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy4kZW1pdCgnYmx1cicsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgdHJhbnNpdGlvbiA9IGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX190cmFuc2l0aW9uc19fW1wiYlwiIC8qIFZGYWRlVHJhbnNpdGlvbiAqL10sIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdpY29uLS1zZWxlY3Rpb24tY29udHJvbCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdpY29uLS1jaGVja2JveCc6IHRoaXMuaWNvbiA9PT0gJ2NoZWNrX2JveCdcbiAgICAgIH0sXG4gICAgICBrZXk6IHRoaXMuaWNvbixcbiAgICAgIG9uOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgY2xpY2s6IHRoaXMudG9nZ2xlXG4gICAgICB9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgdGhpcy5pY29uKV0pO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBhdHRyczoge1xuICAgICAgICB0YWJpbmRleDogdGhpcy5kaXNhYmxlZCA/IC0xIDogdGhpcy5pbnRlcm5hbFRhYkluZGV4IHx8IHRoaXMudGFiaW5kZXgsXG4gICAgICAgIHJvbGU6ICdjaGVja2JveCcsXG4gICAgICAgICdhcmlhLWNoZWNrZWQnOiB0aGlzLmlucHV0SW5kZXRlcm1pbmF0ZSA/ICdtaXhlZCcgOiB0aGlzLmlzQWN0aXZlID8gJ3RydWUnIDogJ2ZhbHNlJyxcbiAgICAgICAgJ2FyaWEtbGFiZWwnOiB0aGlzLmxhYmVsXG4gICAgICB9XG4gICAgfTtcblxuICAgIHZhciByaXBwbGUgPSB0aGlzLnJpcHBsZSA/IHRoaXMuZ2VuUmlwcGxlKCkgOiBudWxsO1xuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbdHJhbnNpdGlvbiwgcmlwcGxlXSwgZGF0YSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEyOSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3Byb2dyZXNzX2xpbmVhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19saW5lYXJfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wcm9ncmVzc19saW5lYXJfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1wcm9ncmVzcy1saW5lYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGJhY2tncm91bmRDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgYmFja2dyb3VuZE9wYWNpdHk6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBidWZmZXJWYWx1ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDEwMFxuICAgIH0sXG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogN1xuICAgIH0sXG4gICAgaW5kZXRlcm1pbmF0ZTogQm9vbGVhbixcbiAgICBxdWVyeTogQm9vbGVhbixcbiAgICB2YWx1ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7fTtcblxuICAgICAgaWYgKCF0aGlzLmFjdGl2ZSkge1xuICAgICAgICBzdHlsZXMuaGVpZ2h0ID0gMDtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmluZGV0ZXJtaW5hdGUgJiYgcGFyc2VJbnQodGhpcy5idWZmZXJWYWx1ZSwgMTApICE9PSAxMDApIHtcbiAgICAgICAgc3R5bGVzLndpZHRoID0gdGhpcy5idWZmZXJWYWx1ZSArICclJztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9LFxuICAgIGVmZmVjdGl2ZVdpZHRoOiBmdW5jdGlvbiBlZmZlY3RpdmVXaWR0aCgpIHtcbiAgICAgIGlmICghdGhpcy5idWZmZXJWYWx1ZSkge1xuICAgICAgICByZXR1cm4gMDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMudmFsdWUgKiAxMDAgLyB0aGlzLmJ1ZmZlclZhbHVlO1xuICAgIH0sXG4gICAgYmFja2dyb3VuZFN0eWxlOiBmdW5jdGlvbiBiYWNrZ3JvdW5kU3R5bGUoKSB7XG4gICAgICB2YXIgYmFja2dyb3VuZE9wYWNpdHkgPSB0aGlzLmJhY2tncm91bmRPcGFjaXR5ID09IG51bGwgPyB0aGlzLmJhY2tncm91bmRDb2xvciA/IDEgOiAwLjMgOiBwYXJzZUZsb2F0KHRoaXMuYmFja2dyb3VuZE9wYWNpdHkpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHRoaXMuYWN0aXZlID8gdGhpcy5oZWlnaHQgKyAncHgnIDogMCxcbiAgICAgICAgb3BhY2l0eTogYmFja2dyb3VuZE9wYWNpdHksXG4gICAgICAgIHdpZHRoOiB0aGlzLmJ1ZmZlclZhbHVlICsgJyUnXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuRGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGdlbkRldGVybWluYXRlKGgpIHtcbiAgICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICAgIHJlZjogJ2Zyb250JyxcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXJfX2Jhcl9fZGV0ZXJtaW5hdGUnLFxuICAgICAgICBjbGFzczogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIHdpZHRoOiB0aGlzLmVmZmVjdGl2ZVdpZHRoICsgJyUnXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuQmFyOiBmdW5jdGlvbiBnZW5CYXIoaCwgbmFtZSkge1xuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXJfX2Jhcl9faW5kZXRlcm1pbmF0ZScsXG4gICAgICAgIGNsYXNzOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKF9kZWZpbmVQcm9wZXJ0eSh7fSwgbmFtZSwgdHJ1ZSkpXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkluZGV0ZXJtaW5hdGU6IGZ1bmN0aW9uIGdlbkluZGV0ZXJtaW5hdGUoaCkge1xuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgcmVmOiAnZnJvbnQnLFxuICAgICAgICBzdGF0aWNDbGFzczogJ3Byb2dyZXNzLWxpbmVhcl9fYmFyX19pbmRldGVybWluYXRlJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAncHJvZ3Jlc3MtbGluZWFyX19iYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSc6IHRoaXMuYWN0aXZlXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLmdlbkJhcihoLCAnbG9uZycpLCB0aGlzLmdlbkJhcihoLCAnc2hvcnQnKV0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGZhZGUgPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fdHJhbnNpdGlvbnNfX1tcImJcIiAvKiBWRmFkZVRyYW5zaXRpb24gKi9dLCBbdGhpcy5pbmRldGVybWluYXRlICYmIHRoaXMuZ2VuSW5kZXRlcm1pbmF0ZShoKV0pO1xuICAgIHZhciBzbGlkZSA9IGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX190cmFuc2l0aW9uc19fW1wiZFwiIC8qIFZTbGlkZVhUcmFuc2l0aW9uICovXSwgWyF0aGlzLmluZGV0ZXJtaW5hdGUgJiYgdGhpcy5nZW5EZXRlcm1pbmF0ZShoKV0pO1xuXG4gICAgdmFyIGJhciA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncHJvZ3Jlc3MtbGluZWFyX19iYXInLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzXG4gICAgfSwgW2ZhZGUsIHNsaWRlXSk7XG4gICAgdmFyIGJhY2tncm91bmQgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3Byb2dyZXNzLWxpbmVhcl9fYmFja2dyb3VuZCcsXG4gICAgICBjbGFzczogW3RoaXMuYmFja2dyb3VuZENvbG9yIHx8IHRoaXMuY29sb3JdLFxuICAgICAgc3R5bGU6IHRoaXMuYmFja2dyb3VuZFN0eWxlXG4gICAgfSk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwcm9ncmVzcy1saW5lYXInLFxuICAgICAgY2xhc3M6IHtcbiAgICAgICAgJ3Byb2dyZXNzLWxpbmVhci0tcXVlcnknOiB0aGlzLnF1ZXJ5XG4gICAgICB9LFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmhlaWdodCArICdweCdcbiAgICAgIH0sXG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2JhY2tncm91bmQsIGJhcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxMzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG52YXIgX3R5cGVvZiA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiID8gZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gdHlwZW9mIG9iajsgfSA6IGZ1bmN0aW9uIChvYmopIHsgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7IH07XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3ZhbGlkYXRhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBlcnJvckJ1Y2tldDogW10sXG4gICAgICBoYXNGb2N1c2VkOiBmYWxzZSxcbiAgICAgIGhhc0lucHV0OiBmYWxzZSxcbiAgICAgIHNob3VsZFZhbGlkYXRlOiBmYWxzZSxcbiAgICAgIHZhbGlkOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGVycm9yOiB7XG4gICAgICB0eXBlOiBCb29sZWFuXG4gICAgfSxcbiAgICBlcnJvck1lc3NhZ2VzOiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBBcnJheV0sXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdCgpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfVxuICAgIH0sXG4gICAgcnVsZXM6IHtcbiAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbGlkYXRlT25CbHVyOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICB2YWxpZGF0aW9uczogZnVuY3Rpb24gdmFsaWRhdGlvbnMoKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodGhpcy5lcnJvck1lc3NhZ2VzKSkge1xuICAgICAgICByZXR1cm4gW3RoaXMuZXJyb3JNZXNzYWdlc107XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZXJyb3JNZXNzYWdlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yTWVzc2FnZXM7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2hvdWxkVmFsaWRhdGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JCdWNrZXQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBoYXNFcnJvcjogZnVuY3Rpb24gaGFzRXJyb3IoKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWxpZGF0aW9ucy5sZW5ndGggPiAwIHx8IHRoaXMuZXJyb3JNZXNzYWdlcy5sZW5ndGggPiAwIHx8IHRoaXMuZXJyb3I7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgcnVsZXM6IHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uIGhhbmRsZXIobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgICAgLy8gVE9ETzogVGhpcyBoYW5kbGVyIHNlZW1zIHRvIHRyaWdnZXIgd2hlbiBpbnB1dCBjaGFuZ2VzLCBldmVuIHRob3VnaFxuICAgICAgICAvLyBydWxlcyBhcnJheSBzdGF5cyB0aGUgc2FtZT8gU29sdmVkIGl0IGxpa2UgdGhpcyBmb3Igbm93XG4gICAgICAgIGlmIChuZXdWYWwubGVuZ3RoID09PSBvbGRWYWwubGVuZ3RoKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgICAgfSxcblxuICAgICAgZGVlcDogdHJ1ZVxuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIC8vIElmIGl0J3MgdGhlIGZpcnN0IHRpbWUgd2UncmUgc2V0dGluZyBpbnB1dCxcbiAgICAgIC8vIG1hcmsgaXQgd2l0aCBoYXNJbnB1dFxuICAgICAgaWYgKCEhdmFsICYmICF0aGlzLmhhc0lucHV0KSB0aGlzLmhhc0lucHV0ID0gdHJ1ZTtcblxuICAgICAgaWYgKHRoaXMuaGFzSW5wdXQgJiYgIXRoaXMudmFsaWRhdGVPbkJsdXIpIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuICAgIH0sXG4gICAgaXNGb2N1c2VkOiBmdW5jdGlvbiBpc0ZvY3VzZWQodmFsKSB7XG4gICAgICAvLyBJZiB3ZSdyZSBub3QgZm9jdXNlZCwgYW5kIGl0J3MgdGhlIGZpcnN0IHRpbWVcbiAgICAgIC8vIHdlJ3JlIGRlZm9jdXNpbmcsIHNldCBzaG91bGRWYWxpZGF0ZSB0byB0cnVlXG4gICAgICBpZiAoIXZhbCAmJiAhdGhpcy5oYXNGb2N1c2VkKSB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXNlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTplcnJvcicsIHRoaXMuZXJyb3JCdWNrZXQubGVuZ3RoID4gMCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBoYXNFcnJvcjogZnVuY3Rpb24gaGFzRXJyb3IodmFsKSB7XG4gICAgICBpZiAodGhpcy5zaG91bGRWYWxpZGF0ZSkge1xuICAgICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6ZXJyb3InLCB2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZXJyb3I6IGZ1bmN0aW9uIGVycm9yKHZhbCkge1xuICAgICAgdGhpcy5zaG91bGRWYWxpZGF0ZSA9ICEhdmFsO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSAhIXRoaXMuZXJyb3I7XG4gICAgdGhpcy52YWxpZGF0ZSgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIC8vIFRPRE86IERvIHRoaXMgYW5vdGhlciB3YXkhXG4gICAgICAvLyBUaGlzIGlzIHNvIHRoYXQgd2UgY2FuIHJlc2V0IGFsbCB0eXBlcyBvZiBpbnB1dHNcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pc011bHRpcGxlID8gW10gOiBudWxsKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIG51bGwpO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzLnNob3VsZFZhbGlkYXRlID0gZmFsc2U7XG4gICAgICAgIF90aGlzLmhhc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgX3RoaXMudmFsaWRhdGUoKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgdmFsaWRhdGU6IGZ1bmN0aW9uIHZhbGlkYXRlKCkge1xuICAgICAgdmFyIGZvcmNlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBmYWxzZTtcbiAgICAgIHZhciB2YWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogdGhpcy5pbnB1dFZhbHVlO1xuXG4gICAgICBpZiAoZm9yY2UpIHRoaXMuc2hvdWxkVmFsaWRhdGUgPSB0cnVlO1xuXG4gICAgICB0aGlzLmVycm9yQnVja2V0ID0gW107XG5cbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLnJ1bGVzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgcnVsZSA9IHRoaXMucnVsZXNbaW5kZXhdO1xuICAgICAgICB2YXIgdmFsaWQgPSB0eXBlb2YgcnVsZSA9PT0gJ2Z1bmN0aW9uJyA/IHJ1bGUodmFsdWUpIDogcnVsZTtcblxuICAgICAgICBpZiAodmFsaWQgPT09IGZhbHNlIHx8IHR5cGVvZiB2YWxpZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICB0aGlzLmVycm9yQnVja2V0LnB1c2godmFsaWQpO1xuICAgICAgICB9IGVsc2UgaWYgKHZhbGlkICE9PSB0cnVlKSB7XG4gICAgICAgICAgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX19bXCJhXCIgLyogY29uc29sZUVycm9yICovXSkoJ1J1bGVzIHNob3VsZCByZXR1cm4gYSBzdHJpbmcgb3IgYm9vbGVhbiwgcmVjZWl2ZWQgXFwnJyArICh0eXBlb2YgdmFsaWQgPT09ICd1bmRlZmluZWQnID8gJ3VuZGVmaW5lZCcgOiBfdHlwZW9mKHZhbGlkKSkgKyAnXFwnIGluc3RlYWQnLCB0aGlzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLnZhbGlkID0gdGhpcy5lcnJvckJ1Y2tldC5sZW5ndGggPT09IDA7XG5cbiAgICAgIHJldHVybiB0aGlzLnZhbGlkO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTMyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2hpcHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY2hpcHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19jaGlwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtY2hpcCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgY2xvc2U6IEJvb2xlYW4sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgbGFiZWw6IEJvb2xlYW4sXG4gICAgb3V0bGluZTogQm9vbGVhbixcbiAgICAvLyBVc2VkIGZvciBzZWxlY3RzL3RhZ2dpbmdcbiAgICBzZWxlY3RlZDogQm9vbGVhbixcbiAgICBzbWFsbDogQm9vbGVhbixcbiAgICB0ZXh0Q29sb3I6IFN0cmluZyxcbiAgICB2YWx1ZToge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHtcbiAgICAgICAgJ2NoaXAtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgJ2NoaXAtLXNlbGVjdGVkJzogdGhpcy5zZWxlY3RlZCxcbiAgICAgICAgJ2NoaXAtLWxhYmVsJzogdGhpcy5sYWJlbCxcbiAgICAgICAgJ2NoaXAtLW91dGxpbmUnOiB0aGlzLm91dGxpbmUsXG4gICAgICAgICdjaGlwLS1zbWFsbCc6IHRoaXMuc21hbGwsXG4gICAgICAgICdjaGlwLS1yZW1vdmFibGUnOiB0aGlzLmNsb3NlLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHRoaXMudGV4dENvbG9yIHx8IHRoaXMub3V0bGluZSA/IHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3NlcywgdGhpcy50ZXh0Q29sb3IgfHwgdGhpcy5jb2xvcikgOiBjbGFzc2VzO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQ2xvc2U6IGZ1bmN0aW9uIGdlbkNsb3NlKGgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2NoaXBfX2Nsb3NlJyxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2lucHV0JywgZmFsc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIGgoJ2RpdicsIGRhdGEsIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgJ2NhbmNlbCcpXSk7XG4gICAgfSxcbiAgICBnZW5Db250ZW50OiBmdW5jdGlvbiBnZW5Db250ZW50KGgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFt0aGlzLiRzbG90cy5kZWZhdWx0XTtcblxuICAgICAgdGhpcy5jbG9zZSAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuQ2xvc2UoaCkpO1xuXG4gICAgICByZXR1cm4gaCgnc3BhbicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdjaGlwX19jb250ZW50J1xuICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2NoaXAnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgYXR0cnM6IHsgdGFiaW5kZXg6IHRoaXMuZGlzYWJsZWQgPyAtMSA6IDAgfSxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dLFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICByZXR1cm4gaCgnc3BhbicsIGRhdGEsIFt0aGlzLmdlbkNvbnRlbnQoaCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTMzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTM0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzUpO1xuXG5cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGFJdGVyYXRvcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0YUl0ZXJhdG9yX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDEzNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGFfaXRlcmF0b3Jfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV9pdGVyYXRvcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2RhdGFfaXRlcmF0b3Jfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kYXRhX2l0ZXJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQ2KTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGEtaXRlcmF0b3InLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2RhdGFfaXRlcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBwcm9wczoge1xuICAgIGNvbnRlbnRUYWc6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdkaXYnXG4gICAgfSxcbiAgICBjb250ZW50UHJvcHM6IHtcbiAgICAgIHR5cGU6IE9iamVjdCxcbiAgICAgIHJlcXVpcmVkOiBmYWxzZVxuICAgIH0sXG4gICAgY29udGVudENsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICByZXF1aXJlZDogZmFsc2VcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2RhdGEtaXRlcmF0b3InOiB0cnVlLFxuICAgICAgICAnZGF0YS1pdGVyYXRvci0tc2VsZWN0LWFsbCc6IHRoaXMuc2VsZWN0QWxsICE9PSBmYWxzZSxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLmdlbkl0ZW1zKCk7XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICAnY2xhc3MnOiB0aGlzLmNvbnRlbnRDbGFzcyxcbiAgICAgICAgYXR0cnM6IHRoaXMuJGF0dHJzLFxuICAgICAgICBvbjogdGhpcy4kbGlzdGVuZXJzLFxuICAgICAgICBwcm9wczogdGhpcy5jb250ZW50UHJvcHNcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KHRoaXMuY29udGVudFRhZywgZGF0YSwgY2hpbGRyZW4pO1xuICAgIH0sXG4gICAgZ2VuRW1wdHlJdGVtczogZnVuY3Rpb24gZ2VuRW1wdHlJdGVtcyhjb250ZW50KSB7XG4gICAgICByZXR1cm4gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ3RleHQteHMtY2VudGVyJyxcbiAgICAgICAgc3R5bGU6ICd3aWR0aDogMTAwJSdcbiAgICAgIH0sIGNvbnRlbnQpXTtcbiAgICB9LFxuICAgIGdlbkZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGdlbkZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNjb3BlZFNsb3RzLml0ZW0pIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciBpdGVtcyA9IFtdO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwLCBsZW4gPSB0aGlzLmZpbHRlcmVkSXRlbXMubGVuZ3RoOyBpbmRleCA8IGxlbjsgKytpbmRleCkge1xuICAgICAgICB2YXIgaXRlbSA9IHRoaXMuZmlsdGVyZWRJdGVtc1tpbmRleF07XG4gICAgICAgIHZhciBwcm9wcyA9IHRoaXMuY3JlYXRlUHJvcHMoaXRlbSwgaW5kZXgpO1xuICAgICAgICBpdGVtcy5wdXNoKHRoaXMuJHNjb3BlZFNsb3RzLml0ZW0ocHJvcHMpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH0sXG4gICAgZ2VuRm9vdGVyOiBmdW5jdGlvbiBnZW5Gb290ZXIoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgICAgaWYgKHRoaXMuJHNsb3RzLmZvb3Rlcikge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuJHNsb3RzLmZvb3Rlcik7XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5oaWRlQWN0aW9ucykge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuQWN0aW9ucygpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFjaGlsZHJlbi5sZW5ndGgpIHJldHVybiBudWxsO1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIGNoaWxkcmVuKTtcbiAgICB9XG4gIH0sXG5cbiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHtcbiAgICB0aGlzLmluaXRQYWdpbmF0aW9uKCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW3RoaXMuZ2VuQ29udGVudCgpLCB0aGlzLmdlbkZvb3RlcigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDEzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDEzNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RleHRfZmllbGRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGV4dF9maWVsZHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190ZXh0X2ZpZWxkc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMzgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0X3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc2VsZWN0X3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX2RlcGVuZGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfZmlsdGVyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfaW5wdXRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21hc2thYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX21peGluc19zb2xvYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfc2VsZWN0X2F1dG9jb21wbGV0ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX21peGluc19zZWxlY3RfY29tcHV0ZWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTQxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19taXhpbnNfc2VsZWN0X2V2ZW50c19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX21peGluc19zZWxlY3RfZ2VuZXJhdG9yc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTNfX21peGluc19zZWxlY3RfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTRfX21peGluc19zZWxlY3RfbWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX21peGluc19zZWxlY3RfcHJvcHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTYyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE2X19taXhpbnNfc2VsZWN0X3dhdGNoZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xN19fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuLy8gU3R5bGVzXG5cblxuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cblxuXG4vLyBDb21wb25lbnQgbGV2ZWwgbWl4aW5zXG5cblxuXG5cblxuXG5cblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXNlbGVjdCcsXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzE3X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fbWl4aW5zX3NlbGVjdF9hdXRvY29tcGxldGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19taXhpbnNfc2VsZWN0X2V2ZW50c19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19maWx0ZXJhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX21peGluc19zZWxlY3RfZ2VuZXJhdG9yc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEzX19taXhpbnNfc2VsZWN0X2hlbHBlcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfaW5wdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfbWFza2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNF9fbWl4aW5zX3NlbGVjdF9tZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTVfX21peGluc19zZWxlY3RfcHJvcHNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfc29sb2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xNl9fbWl4aW5zX3NlbGVjdF93YXRjaGVyc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLFxuICAvLyBJbnB1dCBhbmQgQ29tcHV0ZWQgYm90aFxuICAvLyBjb250YWluIGlzRGlydHkgcHJvcHNcbiAgLy8gbGFzdCBnZXRzIG1lcmdlZCBpblxuICBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19taXhpbnNfc2VsZWN0X2NvbXB1dGVkX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNhY2hlZEl0ZW1zOiB0aGlzLmNhY2hlSXRlbXMgPyB0aGlzLml0ZW1zIDogW10sXG4gICAgICBjb250ZW50OiB7fSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknLFxuICAgICAgaW5wdXRWYWx1ZTogKHRoaXMubXVsdGlwbGUgfHwgdGhpcy50YWdzKSAmJiAhdGhpcy52YWx1ZSA/IFtdIDogdGhpcy52YWx1ZSxcbiAgICAgIGlzQm9vdGVkOiBmYWxzZSxcbiAgICAgIGxhc3RJdGVtOiAyMCxcbiAgICAgIGxhenlTZWFyY2g6IG51bGwsXG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICBtZW51SXNBY3RpdmU6IGZhbHNlLFxuICAgICAgc2VsZWN0ZWRJbmRleDogLTEsXG4gICAgICBzZWxlY3RlZEl0ZW1zOiBbXSxcbiAgICAgIHNob3VsZEJyZWFrOiBmYWxzZVxuICAgIH07XG4gIH0sXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgLy8gSWYgaW5zdGFuY2UgaXMgYmVpbmcgZGVzdHJveWVkXG4gICAgLy8gZG8gbm90IHJ1biBtb3VudGVkIGZ1bmN0aW9uc1xuICAgIGlmICh0aGlzLl9pc0Rlc3Ryb3llZCkgcmV0dXJuO1xuXG4gICAgLy8gRXZhbHVhdGUgdGhlIHNlbGVjdGVkIGl0ZW1zIGltbWVkaWF0ZWx5XG4gICAgLy8gdG8gYXZvaWQgYSB1bm5lY2Vzc2FyeSBsYWJlbCB0cmFuc2l0aW9uXG4gICAgdGhpcy5nZW5TZWxlY3RlZEl0ZW1zKCk7XG5cbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLiRyZWZzLm1lbnUuJHJlZnMuY29udGVudDtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5pc0Jvb3RlZCkge1xuICAgICAgaWYgKHRoaXMuY29udGVudCkge1xuICAgICAgICB0aGlzLmNvbnRlbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5vblNjcm9sbCwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBuZWVkc1RpbGU6IGZ1bmN0aW9uIG5lZWRzVGlsZSh0aWxlKSB7XG4gICAgICAvLyBUT0RPOiB1c2UgdGhlIGNvbXBvbmVudCBuYW1lIGluc3RlYWQgb2YgdGFnXG4gICAgICByZXR1cm4gdGlsZS5jb21wb25lbnRPcHRpb25zID09IG51bGwgfHwgdGlsZS5jb21wb25lbnRPcHRpb25zLnRhZyAhPT0gJ3YtbGlzdC10aWxlJztcbiAgICB9LFxuICAgIGNoYW5nZVNlbGVjdGVkSW5kZXg6IGZ1bmN0aW9uIGNoYW5nZVNlbGVjdGVkSW5kZXgoa2V5Q29kZSkge1xuICAgICAgLy8gYmFja3NwYWNlLCBsZWZ0LCByaWdodCwgZGVsZXRlXG4gICAgICBpZiAoIVs4LCAzNywgMzksIDQ2XS5pbmNsdWRlcyhrZXlDb2RlKSkgcmV0dXJuO1xuXG4gICAgICB2YXIgaW5kZXhlcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggLSAxO1xuXG4gICAgICBpZiAoa2V5Q29kZSA9PT0gMzcpIHtcbiAgICAgICAgLy8gTGVmdCBhcnJvd1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSB0aGlzLnNlbGVjdGVkSW5kZXggPT09IC0xID8gaW5kZXhlcyA6IHRoaXMuc2VsZWN0ZWRJbmRleCAtIDE7XG4gICAgICB9IGVsc2UgaWYgKGtleUNvZGUgPT09IDM5KSB7XG4gICAgICAgIC8vIFJpZ2h0IGFycm93XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuc2VsZWN0ZWRJbmRleCA+PSBpbmRleGVzID8gLTEgOiB0aGlzLnNlbGVjdGVkSW5kZXggKyAxO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPT09IC0xKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IGluZGV4ZXM7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gYmFja3NwYWNlL2RlbGV0ZVxuICAgICAgaWYgKFs4LCA0Nl0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcbiAgICAgICAgdmFyIG5ld0luZGV4ID0gdGhpcy5zZWxlY3RlZEluZGV4ID09PSBpbmRleGVzID8gdGhpcy5zZWxlY3RlZEluZGV4IC0gMSA6IHRoaXMuc2VsZWN0ZWRJdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXggKyAxXSA/IHRoaXMuc2VsZWN0ZWRJbmRleCA6IC0xO1xuXG4gICAgICAgIHRoaXMuY29tYm9ib3ggPyB0aGlzLmlucHV0VmFsdWUgPSBudWxsIDogdGhpcy5zZWxlY3RJdGVtKHRoaXMuc2VsZWN0ZWRJdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gbmV3SW5kZXg7XG4gICAgICB9XG4gICAgfSxcbiAgICBjbG9zZUNvbmRpdGlvbmFsOiBmdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQWN0aXZlICYmICEhdGhpcy5jb250ZW50ICYmICF0aGlzLmNvbnRlbnQuY29udGFpbnMoZS50YXJnZXQpICYmICEhdGhpcy4kZWwgJiYgIXRoaXMuJGVsLmNvbnRhaW5zKGUudGFyZ2V0KTtcbiAgICB9LFxuICAgIGZpbHRlckR1cGxpY2F0ZXM6IGZ1bmN0aW9uIGZpbHRlckR1cGxpY2F0ZXMoYXJyKSB7XG4gICAgICB2YXIgdW5pcXVlVmFsdWVzID0gbmV3IE1hcCgpO1xuICAgICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IGFyci5sZW5ndGg7ICsraW5kZXgpIHtcbiAgICAgICAgdmFyIGl0ZW0gPSBhcnJbaW5kZXhdO1xuICAgICAgICB2YXIgdmFsID0gdGhpcy5nZXRWYWx1ZShpdGVtKTtcblxuICAgICAgICAhdW5pcXVlVmFsdWVzLmhhcyh2YWwpICYmIHVuaXF1ZVZhbHVlcy5zZXQodmFsLCBpdGVtKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBBcnJheS5mcm9tKHVuaXF1ZVZhbHVlcy52YWx1ZXMoKSk7XG4gICAgfSxcbiAgICBnZW5EaXJlY3RpdmVzOiBmdW5jdGlvbiBnZW5EaXJlY3RpdmVzKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgY2xvc2VDb25kaXRpb25hbDogdGhpcy5jbG9zZUNvbmRpdGlvbmFsXG4gICAgICAgIH1cbiAgICAgIH1dO1xuICAgIH0sXG4gICAgZ2VuU2VsZWN0ZWRJdGVtczogZnVuY3Rpb24gZ2VuU2VsZWN0ZWRJdGVtcygpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB2YXIgdmFsID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB0aGlzLmlucHV0VmFsdWU7XG5cbiAgICAgIC8vIElmIHdlIGFyZSB1c2luZyB0YWdzLCBkb24ndCBmaWx0ZXIgcmVzdWx0c1xuICAgICAgaWYgKHRoaXMudGFncykgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHZhbDtcblxuICAgICAgLy8gQ29tYm9ib3ggaXMgdGhlIHNpbmdsZSB2ZXJzaW9uXG4gICAgICAvLyBvZiBhIHRhZ2dhYmxlIHNlbGVjdCBlbGVtZW50XG4gICAgICBpZiAodGhpcy5jb21ib2JveCkgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHZhbCAhPSBudWxsID8gW3ZhbF0gOiBbXTtcblxuICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSB0aGlzLmNvbXB1dGVkSXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIGlmICghX3RoaXMyLmlzTXVsdGlwbGUpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMyLmdldFZhbHVlKGkpID09PSBfdGhpczIuZ2V0VmFsdWUodmFsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBBbHdheXMgcmV0dXJuIEJvb2xlYW5cbiAgICAgICAgICByZXR1cm4gX3RoaXMyLmZpbmRFeGlzdGluZ0luZGV4KGkpID4gLTE7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIXNlbGVjdGVkSXRlbXMubGVuZ3RoICYmIHZhbCAhPSBudWxsICYmIHRoaXMudGFncykge1xuICAgICAgICBzZWxlY3RlZEl0ZW1zID0gQXJyYXkuaXNBcnJheSh2YWwpID8gdmFsIDogW3ZhbF07XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHNlbGVjdGVkSXRlbXM7XG4gICAgfSxcbiAgICBjbGVhcmFibGVDYWxsYmFjazogZnVuY3Rpb24gY2xlYXJhYmxlQ2FsbGJhY2soKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgdmFyIGlucHV0VmFsdWUgPSB0aGlzLmlzTXVsdGlwbGUgPyBbXSA6IG51bGw7XG5cbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWU7XG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCBpbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMuZ2VuU2VsZWN0ZWRJdGVtcygpO1xuXG4gICAgICAvLyBXaGVuIGlucHV0IGlzIGNsZWFyZWRcbiAgICAgIC8vIHJlc2V0IHNlYXJjaCB2YWx1ZSBhbmRcbiAgICAgIC8vIHJlLWZvY3VzIHRoZSBpbnB1dFxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMy5zZWFyY2hWYWx1ZSA9IG51bGw7XG4gICAgICAgIF90aGlzMy5mb2N1c0lucHV0KCk7XG4gICAgICB9LCAwKTtcblxuICAgICAgaWYgKHRoaXMub3Blbk9uQ2xlYXIpIHtcbiAgICAgICAgc2V0VGltZW91dCh0aGlzLnNob3dNZW51LCA1MCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBvblNjcm9sbDogZnVuY3Rpb24gb25TY3JvbGwoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzNC5jb250ZW50LnNjcm9sbFRvcCA9IDA7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMubGFzdEl0ZW0gPj0gdGhpcy5jb21wdXRlZEl0ZW1zLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgICAgIHZhciBzaG93TW9yZUl0ZW1zID0gdGhpcy5jb250ZW50LnNjcm9sbEhlaWdodCAtICh0aGlzLmNvbnRlbnQuc2Nyb2xsVG9wICsgdGhpcy5jb250ZW50LmNsaWVudEhlaWdodCkgPCAyMDA7XG5cbiAgICAgICAgaWYgKHNob3dNb3JlSXRlbXMpIHtcbiAgICAgICAgICB0aGlzLmxhc3RJdGVtICs9IDIwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBmaW5kRXhpc3RpbmdJdGVtOiBmdW5jdGlvbiBmaW5kRXhpc3RpbmdJdGVtKHZhbCkge1xuICAgICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICAgIHZhciBpdGVtVmFsdWUgPSB0aGlzLmdldFZhbHVlKHZhbCk7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczUudmFsdWVDb21wYXJhdG9yKF90aGlzNS5nZXRWYWx1ZShpKSwgaXRlbVZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZmluZEV4aXN0aW5nSW5kZXg6IGZ1bmN0aW9uIGZpbmRFeGlzdGluZ0luZGV4KGl0ZW0pIHtcbiAgICAgIHZhciBfdGhpczYgPSB0aGlzO1xuXG4gICAgICB2YXIgaXRlbVZhbHVlID0gdGhpcy5nZXRWYWx1ZShpdGVtKTtcbiAgICAgIHJldHVybiB0aGlzLmlucHV0VmFsdWUuZmluZEluZGV4KGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczYudmFsdWVDb21wYXJhdG9yKF90aGlzNi5nZXRWYWx1ZShpKSwgaXRlbVZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgc2VsZWN0SXRlbTogZnVuY3Rpb24gc2VsZWN0SXRlbShpdGVtKSB7XG4gICAgICB2YXIgX3RoaXM3ID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLmlzTXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5yZXR1cm5PYmplY3QgPyBpdGVtIDogdGhpcy5nZXRWYWx1ZShpdGVtKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1dO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdmFyIGlucHV0VmFsdWUgPSB0aGlzLmlucHV0VmFsdWUuc2xpY2UoKTtcbiAgICAgICAgdmFyIGkgPSB0aGlzLmZpbmRFeGlzdGluZ0luZGV4KGl0ZW0pO1xuXG4gICAgICAgIGkgIT09IC0xID8gaW5wdXRWYWx1ZS5zcGxpY2UoaSwgMSkgOiBpbnB1dFZhbHVlLnB1c2goaXRlbSk7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGlucHV0VmFsdWUubWFwKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKGkpO1xuICAgICAgICAgIHJldHVybiBfdGhpczcucmV0dXJuT2JqZWN0ID8gaSA6IF90aGlzNy5nZXRWYWx1ZShpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gc2VsZWN0ZWRJdGVtcztcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gLTE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VhcmNoVmFsdWUgPSAhdGhpcy5pc011bHRpcGxlICYmICF0aGlzLmNoaXBzICYmICF0aGlzLiRzY29wZWRTbG90cy5zZWxlY3Rpb24gPyB0aGlzLmdldFRleHQodGhpcy5zZWxlY3RlZEl0ZW0pIDogbnVsbDtcblxuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5pbnB1dFZhbHVlKTtcblxuICAgICAgLy8gTGlzdCB0aWxlIHdpbGwgcmUtcmVuZGVyLCByZXNldCBpbmRleCB0b1xuICAgICAgLy8gbWFpbnRhaW4gaGlnaGxpZ2h0aW5nXG4gICAgICB2YXIgc2F2ZWRJbmRleCA9IHRoaXMuZ2V0TWVudUluZGV4KCk7XG4gICAgICB0aGlzLnJlc2V0TWVudUluZGV4KCk7XG5cbiAgICAgIC8vIEFmdGVyIHNlbGVjdGluZyBhbiBpdGVtXG4gICAgICAvLyByZWZvY3VzIHRoZSBpbnB1dCBhbmRcbiAgICAgIC8vIHJlc2V0IHRoZSBjYXJldCBwb3NcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM3LmZvY3VzSW5wdXQoKTtcbiAgICAgICAgX3RoaXM3LnNldENhcmV0UG9zaXRpb24oX3RoaXM3LmN1cnJlbnRSYW5nZSk7XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBpZiAoc2F2ZWRJbmRleCA+IC0xKSB7XG4gICAgICAgICAgICBfdGhpczcuc2V0TWVudUluZGV4KHNhdmVkSW5kZXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczggPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBhdHRyczogX2V4dGVuZHMoe1xuICAgICAgICB0YWJpbmRleDogdGhpcy5pc0F1dG9jb21wbGV0ZSB8fCB0aGlzLmRpc2FibGVkID8gLTEgOiB0aGlzLnRhYmluZGV4LFxuICAgICAgICAnZGF0YS11aWQnOiB0aGlzLl91aWRcbiAgICAgIH0sIHRoaXMuaXNBdXRvY29tcGxldGUgPyBudWxsIDogdGhpcy4kYXR0cnMsIHtcbiAgICAgICAgcm9sZTogdGhpcy5pc0F1dG9jb21wbGV0ZSA/IG51bGwgOiAnY29tYm9ib3gnXG4gICAgICB9KVxuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUpIHtcbiAgICAgIGRhdGEub24gPSB0aGlzLmdlbkxpc3RlbmVycygpO1xuICAgICAgZGF0YS5kaXJlY3RpdmVzID0gdGhpcy5nZW5EaXJlY3RpdmVzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGEub24gPSB7XG4gICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICBpZiAoX3RoaXM4LmRpc2FibGVkIHx8IF90aGlzOC5yZWFkb25seSB8fCBfdGhpczguaXNGb2N1c2VkKSByZXR1cm47XG5cbiAgICAgICAgICAvLyBJZiB0aGUgaW5wdXQgaXMgZGlydHksXG4gICAgICAgICAgLy8gdGhlIGlucHV0IGlzIG5vdCB0YXJnZXRhYmxlXG4gICAgICAgICAgLy8gc28gd2UgbXVzdCBtYW51YWxseSBmb2N1c1xuICAgICAgICAgIGlmIChfdGhpczguaXNEaXJ0eSkge1xuICAgICAgICAgICAgX3RoaXM4LmZvY3VzKCk7XG4gICAgICAgICAgICBfdGhpczguJG5leHRUaWNrKF90aGlzOC5mb2N1c0lucHV0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbdGhpcy5nZW5TZWxlY3Rpb25zQW5kU2VhcmNoKCksIHRoaXMuZ2VuTWVudSgpXSwgZGF0YSwgdGhpcy50b2dnbGVNZW51KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTM4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTM5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IGRlZmF1bHREZWxpbWl0ZXJzICovXG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIGlzTWFza0RlbGltaXRlcjsgfSk7XG4vKiBoYXJtb255IGV4cG9ydCAoYmluZGluZykgKi8gX193ZWJwYWNrX3JlcXVpcmVfXy5kKF9fd2VicGFja19leHBvcnRzX18sIFwiYlwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIG1hc2tUZXh0OyB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJjXCIsIGZ1bmN0aW9uKCkgeyByZXR1cm4gdW5tYXNrVGV4dDsgfSk7XG4vKipcbiAqIERlZmF1bHQgZGVsaW1pdGVyIFJlZ0V4cFxuICpcbiAqIEB0eXBlIHtSZWdFeHB9XG4gKi9cbnZhciBkZWZhdWx0RGVsaW1pdGVycyA9IC9bLSEkJV4mKigpXyt8fj1ge31bXFxdOlwiOyc8Pj8sLi9cXFxcIF0vO1xuXG4vKipcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gY2hhclxuICpcbiAqIEByZXR1cm4ge0Jvb2xlYW59XG4gKi9cbnZhciBpc01hc2tEZWxpbWl0ZXIgPSBmdW5jdGlvbiBpc01hc2tEZWxpbWl0ZXIoY2hhcikge1xuICByZXR1cm4gY2hhciAmJiBkZWZhdWx0RGVsaW1pdGVycy50ZXN0KGNoYXIpO1xufTtcblxuLyoqXG4gKiBNYXNrIGtleXNcbiAqXG4gKiBAdHlwZSB7T2JqZWN0fVxuICovXG52YXIgYWxsb3dlZE1hc2tzID0ge1xuICAnIyc6IHtcbiAgICB0ZXN0OiBmdW5jdGlvbiB0ZXN0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLm1hdGNoKC9bMC05XS8pO1xuICAgIH1cbiAgfSxcbiAgJ0EnOiB7XG4gICAgdGVzdDogZnVuY3Rpb24gdGVzdChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci5tYXRjaCgvW0EtWl0vaSk7XG4gICAgfSxcbiAgICBjb252ZXJ0OiBmdW5jdGlvbiBjb252ZXJ0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuICB9LFxuICAnYSc6IHtcbiAgICB0ZXN0OiBmdW5jdGlvbiB0ZXN0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLm1hdGNoKC9bYS16XS9pKTtcbiAgICB9LFxuICAgIGNvbnZlcnQ6IGZ1bmN0aW9uIGNvbnZlcnQoY2hhcikge1xuICAgICAgcmV0dXJuIGNoYXIudG9Mb3dlckNhc2UoKTtcbiAgICB9XG4gIH0sXG4gICdOJzoge1xuICAgIHRlc3Q6IGZ1bmN0aW9uIHRlc3QoY2hhcikge1xuICAgICAgcmV0dXJuIGNoYXIubWF0Y2goL1swLTlBLVpdL2kpO1xuICAgIH0sXG4gICAgY29udmVydDogZnVuY3Rpb24gY29udmVydChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci50b1VwcGVyQ2FzZSgpO1xuICAgIH1cbiAgfSxcbiAgJ24nOiB7XG4gICAgdGVzdDogZnVuY3Rpb24gdGVzdChjaGFyKSB7XG4gICAgICByZXR1cm4gY2hhci5tYXRjaCgvWzAtOWEtel0vaSk7XG4gICAgfSxcbiAgICBjb252ZXJ0OiBmdW5jdGlvbiBjb252ZXJ0KGNoYXIpIHtcbiAgICAgIHJldHVybiBjaGFyLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxuICB9LFxuICAnWCc6IHtcbiAgICB0ZXN0OiBpc01hc2tEZWxpbWl0ZXJcbiAgfVxuXG4gIC8qKlxuICAgKiBJcyBDaGFyYWN0ZXIgbWFza1xuICAgKlxuICAgKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAgICpcbiAgICogQHJldHVybiB7Qm9vbGVhbn1cbiAgICovXG59O3ZhciBpc01hc2sgPSBmdW5jdGlvbiBpc01hc2soY2hhcikge1xuICByZXR1cm4gYWxsb3dlZE1hc2tzLmhhc093blByb3BlcnR5KGNoYXIpO1xufTtcblxuLyoqXG4gKiBBdXRvbWF0aWNhbGx5IGNvbnZlcnQgY2hhciBjYXNlXG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSBtYXNrXG4gKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAqXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKi9cbnZhciBjb252ZXJ0ID0gZnVuY3Rpb24gY29udmVydChtYXNrLCBjaGFyKSB7XG4gIHJldHVybiBhbGxvd2VkTWFza3NbbWFza10uY29udmVydCA/IGFsbG93ZWRNYXNrc1ttYXNrXS5jb252ZXJ0KGNoYXIpIDogY2hhcjtcbn07XG5cbi8qKlxuICogTWFzayBWYWxpZGF0aW9uXG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSBtYXNrXG4gKiBAcGFyYW0gIHtTdHJpbmd9IGNoYXJcbiAqXG4gKiBAcmV0dXJuIHtCb29sZWFufVxuICovXG52YXIgbWFza1ZhbGlkYXRlcyA9IGZ1bmN0aW9uIG1hc2tWYWxpZGF0ZXMobWFzaywgY2hhcikge1xuICBpZiAoY2hhciA9PSBudWxsIHx8ICFpc01hc2sobWFzaykpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIGFsbG93ZWRNYXNrc1ttYXNrXS50ZXN0KGNoYXIpO1xufTtcblxuLyoqXG4gKiBNYXNrIFRleHRcbiAqXG4gKiBUYWtlcyBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBjaGFyYWN0ZXJzXG4gKiBhbmQgcmV0dXJucyBhIG1hc2tlZCBzdHJpbmdcbiAqXG4gKiBAcGFyYW0geyp9IHRleHRcbiAqIEBwYXJhbSB7QXJyYXl8U3RyaW5nfSBtYXNrZWRcbiAqIEBwYXJhbSB7Qm9vbGVhbn0gW2RvbnRGaWxsTWFza0JsYW5rc11cbiAqXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKi9cbnZhciBtYXNrVGV4dCA9IGZ1bmN0aW9uIG1hc2tUZXh0KHRleHQsIG1hc2tlZCwgZG9udEZpbGxNYXNrQmxhbmtzKSB7XG4gIGlmICh0ZXh0ID09IG51bGwpIHJldHVybiAnJztcbiAgdGV4dCA9IFN0cmluZyh0ZXh0KTtcbiAgaWYgKCFtYXNrZWQubGVuZ3RoIHx8ICF0ZXh0Lmxlbmd0aCkgcmV0dXJuIHRleHQ7XG4gIGlmICghQXJyYXkuaXNBcnJheShtYXNrZWQpKSBtYXNrZWQgPSBtYXNrZWQuc3BsaXQoJycpO1xuXG4gIHZhciB0ZXh0SW5kZXggPSAwO1xuICB2YXIgbWFza0luZGV4ID0gMDtcbiAgdmFyIG5ld1RleHQgPSAnJztcblxuICB3aGlsZSAobWFza0luZGV4IDwgbWFza2VkLmxlbmd0aCkge1xuICAgIHZhciBtYXNrID0gbWFza2VkW21hc2tJbmRleF07XG5cbiAgICAvLyBBc3NpZ24gdGhlIG5leHQgY2hhcmFjdGVyXG4gICAgdmFyIGNoYXIgPSB0ZXh0W3RleHRJbmRleF07XG5cbiAgICAvLyBDaGVjayBpZiBtYXNrIGlzIGRlbGltaXRlclxuICAgIC8vIGFuZCBjdXJyZW50IGNoYXIgbWF0Y2hlc1xuICAgIGlmICghaXNNYXNrKG1hc2spICYmIGNoYXIgPT09IG1hc2spIHtcbiAgICAgIG5ld1RleHQgKz0gbWFzaztcbiAgICAgIHRleHRJbmRleCsrO1xuICAgICAgLy8gQ2hlY2sgaWYgbm90IG1hc2tcbiAgICB9IGVsc2UgaWYgKCFpc01hc2sobWFzaykgJiYgIWRvbnRGaWxsTWFza0JsYW5rcykge1xuICAgICAgbmV3VGV4dCArPSBtYXNrO1xuICAgICAgLy8gQ2hlY2sgaWYgaXMgbWFzayBhbmQgdmFsaWRhdGVzXG4gICAgfSBlbHNlIGlmIChtYXNrVmFsaWRhdGVzKG1hc2ssIGNoYXIpKSB7XG4gICAgICBuZXdUZXh0ICs9IGNvbnZlcnQobWFzaywgY2hhcik7XG4gICAgICB0ZXh0SW5kZXgrKztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ld1RleHQ7XG4gICAgfVxuXG4gICAgbWFza0luZGV4Kys7XG4gIH1cblxuICByZXR1cm4gbmV3VGV4dDtcbn07XG5cbi8qKlxuICogVW5tYXNrIFRleHRcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdGV4dFxuICpcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqL1xudmFyIHVubWFza1RleHQgPSBmdW5jdGlvbiB1bm1hc2tUZXh0KHRleHQpIHtcbiAgcmV0dXJuIHRleHQgPyBTdHJpbmcodGV4dCkucmVwbGFjZShuZXcgUmVnRXhwKGRlZmF1bHREZWxpbWl0ZXJzLCAnZycpLCAnJykgOiB0ZXh0O1xufTtcblxuLyoqKi8gfSksXG4vKiAxNDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuLyoqXG4gKiBTZWxlY3QgYXV0b2NvbXBsZXRlXG4gKlxuICogQG1peGluXG4gKlxuICogSGFuZGxlcyBsb2dpYyB3aGVuIHVzaW5nIHRoZSBcImF1dG9jb21wbGV0ZVwiIHByb3BcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgZmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW0sIHF1ZXJ5VGV4dCwgaXRlbVRleHQpIHtcbiAgICAgICAgdmFyIGhhc1ZhbHVlID0gZnVuY3Rpb24gaGFzVmFsdWUodmFsKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbCAhPSBudWxsID8gdmFsIDogJyc7XG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHRleHQgPSBoYXNWYWx1ZShpdGVtVGV4dCk7XG4gICAgICAgIHZhciBxdWVyeSA9IGhhc1ZhbHVlKHF1ZXJ5VGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHRleHQudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YocXVlcnkudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpKSA+IC0xO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZmlsdGVyU2VhcmNoOiBmdW5jdGlvbiBmaWx0ZXJTZWFyY2goKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUpIHJldHVybiB0aGlzLmNvbXB1dGVkSXRlbXM7XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkSXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy5maWx0ZXIoaSwgX3RoaXMuc2VhcmNoVmFsdWUsIF90aGlzLmdldFRleHQoaSkpO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5GaWx0ZXJlZDogZnVuY3Rpb24gZ2VuRmlsdGVyZWQodGV4dCkge1xuICAgICAgdGV4dCA9ICh0ZXh0IHx8ICcnKS50b1N0cmluZygpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUgfHwgIXRoaXMuc2VhcmNoVmFsdWUgfHwgdGhpcy5maWx0ZXJlZEl0ZW1zLmxlbmd0aCA8IDEpIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImdcIiAvKiBlc2NhcGVIVE1MICovXSkodGV4dCk7XG5cbiAgICAgIHZhciBfZ2V0TWFza2VkQ2hhcmFjdGVycyA9IHRoaXMuZ2V0TWFza2VkQ2hhcmFjdGVycyh0ZXh0KSxcbiAgICAgICAgICBzdGFydCA9IF9nZXRNYXNrZWRDaGFyYWN0ZXJzLnN0YXJ0LFxuICAgICAgICAgIG1pZGRsZSA9IF9nZXRNYXNrZWRDaGFyYWN0ZXJzLm1pZGRsZSxcbiAgICAgICAgICBlbmQgPSBfZ2V0TWFza2VkQ2hhcmFjdGVycy5lbmQ7XG5cbiAgICAgIHJldHVybiAnJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZ1wiIC8qIGVzY2FwZUhUTUwgKi9dKShzdGFydCkgKyB0aGlzLmdlbkhpZ2hsaWdodChtaWRkbGUpICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJnXCIgLyogZXNjYXBlSFRNTCAqL10pKGVuZCk7XG4gICAgfSxcbiAgICBnZW5IaWdobGlnaHQ6IGZ1bmN0aW9uIGdlbkhpZ2hsaWdodCh0ZXh0KSB7XG4gICAgICBpZiAodGhpcy5pc05vdEZpbHRlcmluZykgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZ1wiIC8qIGVzY2FwZUhUTUwgKi9dKSh0ZXh0KTtcblxuICAgICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cImxpc3RfX3RpbGVfX21hc2tcIj4nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJnXCIgLyogZXNjYXBlSFRNTCAqL10pKHRleHQpICsgJzwvc3Bhbj4nO1xuICAgIH0sXG4gICAgZ2V0TWFza2VkQ2hhcmFjdGVyczogZnVuY3Rpb24gZ2V0TWFza2VkQ2hhcmFjdGVycyh0ZXh0KSB7XG4gICAgICB2YXIgc2VhcmNoVmFsdWUgPSAodGhpcy5zZWFyY2hWYWx1ZSB8fCAnJykudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgdmFyIGluZGV4ID0gdGV4dC50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc2VhcmNoVmFsdWUpO1xuXG4gICAgICBpZiAoaW5kZXggPCAwKSByZXR1cm4geyBzdGFydDogJycsIG1pZGRsZTogdGV4dCwgZW5kOiAnJyB9O1xuXG4gICAgICB2YXIgc3RhcnQgPSB0ZXh0LnNsaWNlKDAsIGluZGV4KTtcbiAgICAgIHZhciBtaWRkbGUgPSB0ZXh0LnNsaWNlKGluZGV4LCBpbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aCk7XG4gICAgICB2YXIgZW5kID0gdGV4dC5zbGljZShpbmRleCArIHNlYXJjaFZhbHVlLmxlbmd0aCk7XG4gICAgICByZXR1cm4geyBzdGFydDogc3RhcnQsIG1pZGRsZTogbWlkZGxlLCBlbmQ6IGVuZCB9O1xuICAgIH0sXG4gICAgZ2V0Q3VycmVudFRhZzogZnVuY3Rpb24gZ2V0Q3VycmVudFRhZygpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzTWVudUl0ZW1TZWxlY3RlZCgpID8gdGhpcy5maWx0ZXJlZEl0ZW1zW3RoaXMuZ2V0TWVudUluZGV4KCldIDogdGhpcy5pc0FueVZhbHVlQWxsb3dlZCA/IHRoaXMuc2VhcmNoVmFsdWUgOiBudWxsO1xuICAgIH0sXG4gICAgdGFiT3V0OiBmdW5jdGlvbiB0YWJPdXQoKSB7XG4gICAgICB0aGlzLmJsdXIoKTtcbiAgICB9LFxuICAgIG9uVGFiRG93bjogZnVuY3Rpb24gb25UYWJEb3duKGUpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICAvLyBJZiB0YWJiaW5nIHRocm91Z2ggaW5wdXRzIGFuZFxuICAgICAgLy8gYW5kIHRoZXJlIGlzIG5vIG5lZWQgZm9yIGFuXG4gICAgICAvLyB1cGRhdGUsIGJsdXIgdGhlIHYtc2VsZWN0XG4gICAgICBpZiAoIXRoaXMuaXNBdXRvY29tcGxldGUgfHwgIXRoaXMuZ2V0Q3VycmVudFRhZygpIHx8IHRoaXMuY29tYm9ib3gpIHJldHVybiB0aGlzLnRhYk91dCgpO1xuXG4gICAgICB2YXIgbWVudUluZGV4ID0gdGhpcy5nZXRNZW51SW5kZXgoKTtcblxuICAgICAgLy8gV2hlbiBhZGRpbmcgdGFncywgaWYgc2VhcmNoaW5nIGFuZFxuICAgICAgLy8gdGhlcmUgaXMgbm90IGEgZmlsdGVyZWQgb3B0aW9ucyxcbiAgICAgIC8vIGFkZCB0aGUgdmFsdWUgdG8gdGhlIHRhZ3MgbGlzdFxuICAgICAgaWYgKHRoaXMudGFncyAmJiB0aGlzLnNlYXJjaFZhbHVlICYmIG1lbnVJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZVRhZ3ModGhpcy5zZWFyY2hWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEFuIGl0ZW0gdGhhdCBpcyBzZWxlY3RlZCBieVxuICAgICAgLy8gbWVudS1pbmRleCBzaG91bGQgdG9nZ2xlZFxuICAgICAgaWYgKHRoaXMubWVudUlzQWN0aXZlKSB7XG4gICAgICAgIC8vIFJlc2V0IHRoZSBsaXN0IGluZGV4IGlmIHNlYXJjaGluZ1xuICAgICAgICB0aGlzLnNlYXJjaFZhbHVlICYmIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gc2V0VGltZW91dChfdGhpczIucmVzZXRNZW51SW5kZXgsIDApO1xuICAgICAgICB9KTtcblxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuc2VsZWN0TGlzdFRpbGUobWVudUluZGV4KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uRW50ZXJEb3duOiBmdW5jdGlvbiBvbkVudGVyRG93bigpIHtcbiAgICAgIHRoaXMudXBkYXRlVGFncyh0aGlzLmdldEN1cnJlbnRUYWcoKSk7XG4gICAgfSxcbiAgICBvbkVzY0Rvd246IGZ1bmN0aW9uIG9uRXNjRG93bihlKSB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH0sXG4gICAgb25LZXlEb3duOiBmdW5jdGlvbiBvbktleURvd24oZSkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIC8vIElmIGVudGVyLCBzcGFjZSwgdXAsIG9yIGRvd24gaXMgcHJlc3NlZCwgb3BlbiBtZW51XG4gICAgICBpZiAoIXRoaXMubWVudUlzQWN0aXZlICYmIFsxMywgMzIsIDM4LCA0MF0uaW5jbHVkZXMoZS5rZXlDb2RlKSkge1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dNZW51KCk7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIGVzY2FwZSBkZWFjdGl2YXRlIHRoZSBtZW51XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAyNykgcmV0dXJuIHRoaXMub25Fc2NEb3duKGUpO1xuXG4gICAgICAvLyBJZiB0YWIgLSBzZWxlY3QgaXRlbSBvciBjbG9zZSBtZW51XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSA5KSByZXR1cm4gdGhpcy5vblRhYkRvd24oZSk7XG5cbiAgICAgIGlmICghdGhpcy5pc0F1dG9jb21wbGV0ZSB8fCAhWzMyXS5pbmNsdWRlcyhlLmtleUNvZGUpIC8vIHNwYWNlXG4gICAgICApIHRoaXMuJHJlZnMubWVudS5jaGFuZ2VMaXN0SW5kZXgoZSk7XG5cbiAgICAgIC8vIFVwIG9yIGRvd25cbiAgICAgIGlmIChbMzgsIDQwXS5pbmNsdWRlcyhlLmtleUNvZGUpKSB0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcblxuICAgICAgaWYgKHRoaXMuaXNBdXRvY29tcGxldGUgJiYgIXRoaXMuaGlkZVNlbGVjdGlvbnMgJiYgIXRoaXMuc2VhcmNoVmFsdWUpIHRoaXMuY2hhbmdlU2VsZWN0ZWRJbmRleChlLmtleUNvZGUpO1xuXG4gICAgICBpZiAoIXRoaXMuaXNBbnlWYWx1ZUFsbG93ZWQgfHwgIXRoaXMuc2VhcmNoVmFsdWUpIHJldHVybjtcblxuICAgICAgLy8gRW50ZXJcbiAgICAgIGlmIChlLmtleUNvZGUgPT09IDEzKSByZXR1cm4gdGhpcy5vbkVudGVyRG93bigpO1xuXG4gICAgICAvLyBMZWZ0IGFycm93XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzNyAmJiB0aGlzLiRyZWZzLmlucHV0LnNlbGVjdGlvblN0YXJ0ID09PSAwICYmIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVUYWdzKHRoaXMuc2VhcmNoVmFsdWUpO1xuICAgICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMzLnNlbGVjdGVkSW5kZXggPSBNYXRoLm1heChfdGhpczMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggLSAyLCAwKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJpZ2h0IGFycm93XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzOSAmJiB0aGlzLiRyZWZzLmlucHV0LnNlbGVjdGlvbkVuZCA9PT0gdGhpcy5zZWFyY2hWYWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5yZXNldE1lbnVJbmRleCgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2VsZWN0TGlzdFRpbGU6IGZ1bmN0aW9uIHNlbGVjdExpc3RUaWxlKGluZGV4KSB7XG4gICAgICBpZiAoIXRoaXMuJHJlZnMubWVudS50aWxlc1tpbmRleF0pIHJldHVybjtcblxuICAgICAgdGhpcy4kcmVmcy5tZW51LnRpbGVzW2luZGV4XS5jbGljaygpO1xuICAgIH0sXG4gICAgdXBkYXRlVGFnczogZnVuY3Rpb24gdXBkYXRlVGFncyhjb250ZW50KSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgLy8gQXZvaWQgZGlyZWN0IG11dGF0aW9uXG4gICAgICAvLyBmb3IgdnVleCBzdHJpY3QgbW9kZVxuICAgICAgdmFyIHNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuc2xpY2UoKTtcblxuICAgICAgLy8gSWYgYSBkdXBsaWNhdGUgaXRlbVxuICAgICAgLy8gZXhpc3RzLCByZW1vdmUgaXRcbiAgICAgIGlmIChzZWxlY3RlZEl0ZW1zLmluY2x1ZGVzKGNvbnRlbnQpKSB7XG4gICAgICAgIHRoaXMuJGRlbGV0ZShzZWxlY3RlZEl0ZW1zLCBzZWxlY3RlZEl0ZW1zLmluZGV4T2YoY29udGVudCkpO1xuICAgICAgfVxuXG4gICAgICAvLyBXaGVuIHVwZGF0aW5nIHRhZ3MgZW5zdXJlXG4gICAgICAvLyB0aGF0IHRoYXQgdGhlIHNlYXJjaCB0ZXh0XG4gICAgICAvLyBpcyBwb3B1bGF0ZWQgaWYgbmVlZGVkXG4gICAgICB2YXIgc2VhcmNoVmFsdWUgPSBudWxsO1xuICAgICAgaWYgKHRoaXMuY29tYm9ib3gpIHtcbiAgICAgICAgc2VsZWN0ZWRJdGVtcyA9IFtjb250ZW50XTtcbiAgICAgICAgc2VhcmNoVmFsdWUgPSB0aGlzLmNoaXBzID8gbnVsbCA6IGNvbnRlbnQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZWxlY3RlZEl0ZW1zLnB1c2goY29udGVudCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHNlbGVjdGVkSXRlbXM7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX3RoaXM0LnNlYXJjaFZhbHVlID0gc2VhcmNoVmFsdWU7XG4gICAgICAgIF90aGlzNC4kZW1pdCgnaW5wdXQnLCBfdGhpczQuY29tYm9ib3ggPyBjb250ZW50IDogX3RoaXM0LnNlbGVjdGVkSXRlbXMpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG4vKipcbiAqIFNlbGVjdCBjb21wdXRlZCBwcm9wZXJ0aWVzXG4gKlxuICogQG1peGluXG4gKlxuICogQ29tcHV0ZWQgcHJvcGVydGllcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0gX2V4dGVuZHMoe30sIHRoaXMuZ2VuU29sb0NsYXNzZXMoKSwge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXRleHQtZmllbGQgaW5wdXQtZ3JvdXAtLXNlbGVjdCc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYXV0byc6IHRoaXMuYXV0byxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1vdmVyZmxvdyc6IHRoaXMub3ZlcmZsb3csXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VnbWVudGVkJzogdGhpcy5zZWdtZW50ZWQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZWRpdGFibGUnOiB0aGlzLmVkaXRhYmxlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWF1dG9jb21wbGV0ZSc6IHRoaXMuaXNBdXRvY29tcGxldGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2luZ2xlLWxpbmUnOiB0aGlzLnNpbmdsZUxpbmUgfHwgdGhpcy5pc0Ryb3Bkb3duLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW11bHRpLWxpbmUnOiB0aGlzLm11bHRpTGluZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1jaGlwcyc6IHRoaXMuY2hpcHMsXG4gICAgICAgICdpbnB1dC1ncm91cC0tbXVsdGlwbGUnOiB0aGlzLm11bHRpcGxlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW9wZW4nOiB0aGlzLm1lbnVJc1Zpc2libGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0LS1zZWxlY3RpbmctaW5kZXgnOiB0aGlzLnNlbGVjdGVkSW5kZXggPiAtMVxuICAgICAgfSk7XG5cbiAgICAgIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICAgIGNsYXNzZXNbJ2Vycm9yLS10ZXh0J10gPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgY29tcHV0ZWRDb250ZW50Q2xhc3M6IGZ1bmN0aW9uIGNvbXB1dGVkQ29udGVudENsYXNzKCkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gWydtZW51X19jb250ZW50LS1zZWxlY3QnLCB0aGlzLmF1dG8gPyAnbWVudV9fY29udGVudC0tYXV0bycgOiAnJywgdGhpcy5pc0Ryb3Bkb3duID8gJ21lbnVfX2NvbnRlbnQtLWRyb3Bkb3duJyA6ICcnLCB0aGlzLmlzQXV0b2NvbXBsZXRlID8gJ21lbnVfX2NvbnRlbnQtLWF1dG9jb21wbGV0ZScgOiAnJywgdGhpcy5jb250ZW50Q2xhc3MgfHwgJyddO1xuXG4gICAgICByZXR1cm4gY2hpbGRyZW4uam9pbignICcpO1xuICAgIH0sXG4gICAgY29tcHV0ZWRJdGVtczogZnVuY3Rpb24gY29tcHV0ZWRJdGVtcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlckR1cGxpY2F0ZXModGhpcy5jYWNoZWRJdGVtcy5jb25jYXQodGhpcy5pdGVtcykpO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBUaGUgcmFuZ2Ugb2YgdGhlIGN1cnJlbnQgaW5wdXQgdGV4dFxuICAgICAqXG4gICAgICogQHJldHVybiB7TnVtYmVyfVxuICAgICAqL1xuICAgIGN1cnJlbnRSYW5nZTogZnVuY3Rpb24gY3VycmVudFJhbmdlKCkge1xuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtID09IG51bGwpIHJldHVybiAwO1xuXG4gICAgICByZXR1cm4gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKS50b1N0cmluZygpLmxlbmd0aDtcbiAgICB9LFxuICAgIGZpbHRlcmVkSXRlbXM6IGZ1bmN0aW9uIGZpbHRlcmVkSXRlbXMoKSB7XG4gICAgICAvLyBJZiB3ZSBhcmUgbm90IGFjdGl2ZWx5IGZpbHRlcmluZ1xuICAgICAgLy8gU2hvdyBhbGwgYXZhaWxhYmxlIGl0ZW1zXG4gICAgICB2YXIgaXRlbXMgPSB0aGlzLmlzTm90RmlsdGVyaW5nID8gdGhpcy5jb21wdXRlZEl0ZW1zIDogdGhpcy5maWx0ZXJTZWFyY2goKTtcblxuICAgICAgcmV0dXJuICF0aGlzLmF1dG8gPyBpdGVtcy5zbGljZSgwLCB0aGlzLmxhc3RJdGVtKSA6IGl0ZW1zO1xuICAgIH0sXG4gICAgaGlkZVNlbGVjdGlvbnM6IGZ1bmN0aW9uIGhpZGVTZWxlY3Rpb25zKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgIXRoaXMuaXNNdWx0aXBsZSAmJiB0aGlzLmlzRm9jdXNlZCAmJiAhdGhpcy5jaGlwcyAmJiAhdGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uO1xuICAgIH0sXG4gICAgaXNOb3RGaWx0ZXJpbmc6IGZ1bmN0aW9uIGlzTm90RmlsdGVyaW5nKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5pc0RpcnR5ICYmIHRoaXMuc2VhcmNoVmFsdWUgPT09IHRoaXMuZ2V0VGV4dCh0aGlzLnNlbGVjdGVkSXRlbSk7XG4gICAgfSxcbiAgICBpc0hpZGluZ1NlbGVjdGVkOiBmdW5jdGlvbiBpc0hpZGluZ1NlbGVjdGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaGlkZVNlbGVjdGVkICYmIHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5pc011bHRpcGxlO1xuICAgIH0sXG4gICAgaXNBdXRvY29tcGxldGU6IGZ1bmN0aW9uIGlzQXV0b2NvbXBsZXRlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYXV0b2NvbXBsZXRlIHx8IHRoaXMuZWRpdGFibGUgfHwgdGhpcy50YWdzIHx8IHRoaXMuY29tYm9ib3g7XG4gICAgfSxcbiAgICBpc0RpcnR5OiBmdW5jdGlvbiBpc0RpcnR5KCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwIHx8IHRoaXMuaXNBdXRvY29tcGxldGUgJiYgdGhpcy5zZWFyY2hWYWx1ZTtcbiAgICB9LFxuICAgIGlzRHJvcGRvd246IGZ1bmN0aW9uIGlzRHJvcGRvd24oKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZWdtZW50ZWQgfHwgdGhpcy5vdmVyZmxvdyB8fCB0aGlzLmVkaXRhYmxlIHx8IHRoaXMuaXNTb2xvO1xuICAgIH0sXG4gICAgaXNNdWx0aXBsZTogZnVuY3Rpb24gaXNNdWx0aXBsZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLm11bHRpcGxlIHx8IHRoaXMudGFncztcbiAgICB9LFxuICAgIGlzQW55VmFsdWVBbGxvd2VkOiBmdW5jdGlvbiBpc0FueVZhbHVlQWxsb3dlZCgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRhZ3MgfHwgdGhpcy5jb21ib2JveDtcbiAgICB9LFxuICAgIG1lbnVJc1Zpc2libGU6IGZ1bmN0aW9uIG1lbnVJc1Zpc2libGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZW51SXNBY3RpdmUgJiYgdGhpcy5jb21wdXRlZEl0ZW1zLmxlbmd0aCA+IDAgJiYgKCF0aGlzLmlzQW55VmFsdWVBbGxvd2VkIHx8IHRoaXMuZmlsdGVyZWRJdGVtcy5sZW5ndGggPiAwKTtcbiAgICB9LFxuICAgIG1lbnVJdGVtczogZnVuY3Rpb24gbWVudUl0ZW1zKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuaXNIaWRpbmdTZWxlY3RlZCA/IHRoaXMuZmlsdGVyZWRJdGVtcy5maWx0ZXIoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgcmV0dXJuIChfdGhpcy5zZWxlY3RlZEl0ZW1zIHx8IFtdKS5pbmRleE9mKG8pID09PSAtMTtcbiAgICAgIH0pIDogdGhpcy5maWx0ZXJlZEl0ZW1zO1xuICAgIH0sXG4gICAgbnVkZ2VUb3A6IGZ1bmN0aW9uIG51ZGdlVG9wKCkge1xuICAgICAgdmFyIG51ZGdlVG9wID0gLTE4O1xuXG4gICAgICBpZiAodGhpcy5pc1NvbG8pIG51ZGdlVG9wID0gMDtlbHNlIGlmICh0aGlzLnNob3VsZE9mZnNldCkge1xuICAgICAgICBudWRnZVRvcCArPSA0NDtcblxuICAgICAgICBudWRnZVRvcCArPSB0aGlzLmhpZGVEZXRhaWxzID8gLTI0IDogMDtcbiAgICAgICAgbnVkZ2VUb3AgKz0gdGhpcy5pc0F1dG9jb21wbGV0ZSAmJiAhdGhpcy5pc0Ryb3Bkb3duID8gLTIgOiAwO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVkZ2VUb3A7XG4gICAgfSxcblxuICAgIHNlYXJjaFZhbHVlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGF6eVNlYXJjaDtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzQXV0b2NvbXBsZXRlIHx8ICF0aGlzLm11bHRpcGxlICYmIHRoaXMuc2VsZWN0ZWRJbmRleCA+IC0xKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5sYXp5U2VhcmNoID0gdmFsO1xuXG4gICAgICAgIHRoaXMuJGVtaXQoJ3VwZGF0ZTpzZWFyY2hJbnB1dCcsIHZhbCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBzZWxlY3RlZEl0ZW06IGZ1bmN0aW9uIHNlbGVjdGVkSXRlbSgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICBpZiAodGhpcy5pc011bHRpcGxlKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIuZ2V0VmFsdWUoaSkgPT09IF90aGlzMi5nZXRWYWx1ZShfdGhpczIuaW5wdXRWYWx1ZSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHNob3VsZE9mZnNldDogZnVuY3Rpb24gc2hvdWxkT2Zmc2V0KCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBdXRvY29tcGxldGUgfHwgdGhpcy5pc0Ryb3Bkb3duO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTQyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xudmFyIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiAodGFyZ2V0KSB7IGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7IHZhciBzb3VyY2UgPSBhcmd1bWVudHNbaV07IGZvciAodmFyIGtleSBpbiBzb3VyY2UpIHsgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsgfSB9IH0gcmV0dXJuIHRhcmdldDsgfTtcblxuLyoqXG4gKiBTZWxlY3QgZXZlbnRzXG4gKlxuICogQG1peGluXG4gKlxuICogRXZlbnQgYmFzZWQgbWV0aG9kcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBibHVyOiBmdW5jdGlvbiBibHVyKCkge1xuICAgICAgdGhpcy5kZWFjdGl2YXRlSW5wdXQoKTtcbiAgICAgIHRoaXMubWVudUlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLiRlbWl0KCdibHVyJyk7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoKSB7XG4gICAgICB0aGlzLnNob3dNZW51KCk7XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2ZvY3VzJyk7XG4gICAgfSxcbiAgICBmb2N1c0lucHV0OiBmdW5jdGlvbiBmb2N1c0lucHV0KCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuJHJlZnMuaW5wdXQgJiYgdGhpcy5pc0F1dG9jb21wbGV0ZSkge1xuICAgICAgICB0aGlzLiRyZWZzLmlucHV0LmZvY3VzKCk7XG5cbiAgICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLiRyZWZzLmlucHV0LnNlbGVjdCgpO1xuICAgICAgICAgIF90aGlzLnNob3VsZEJyZWFrICYmIChfdGhpcy4kcmVmcy5pbnB1dC5zY3JvbGxMZWZ0ID0gX3RoaXMuJHJlZnMuaW5wdXQuc2Nyb2xsV2lkdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgICF0aGlzLmlzRm9jdXNlZCAmJiB0aGlzLiRlbC5mb2N1cygpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2VuTGlzdGVuZXJzOiBmdW5jdGlvbiBnZW5MaXN0ZW5lcnMoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGxpc3RlbmVycyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuJGxpc3RlbmVycyk7XG4gICAgICBkZWxldGUgbGlzdGVuZXJzLmlucHV0O1xuXG4gICAgICByZXR1cm4gX2V4dGVuZHMoe30sIGxpc3RlbmVycywge1xuICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgaWYgKF90aGlzMi5kaXNhYmxlZCB8fCBfdGhpczIucmVhZG9ubHkpIHJldHVybjtcblxuICAgICAgICAgIGlmIChfdGhpczIuaXNGb2N1c2VkICYmICFfdGhpczIubWVudUlzVmlzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMi5zaG93TWVudUl0ZW1zKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgX3RoaXMyLnNlbGVjdGVkSW5kZXggPiAtMSA/IF90aGlzMi5zZWxlY3RlZEluZGV4ID0gLTEgOiBfdGhpczIuZm9jdXMoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZm9jdXM6IGZ1bmN0aW9uIGZvY3VzKGUpIHtcbiAgICAgICAgICBpZiAoX3RoaXMyLmRpc2FibGVkIHx8IF90aGlzMi5yZWFkb25seSB8fCBfdGhpczIuaXNGb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgX3RoaXMyLmFjdGl2YXRlSW5wdXQoKTtcbiAgICAgICAgICBfdGhpczIuJG5leHRUaWNrKF90aGlzMi5mb2N1c0lucHV0KTtcbiAgICAgICAgfSxcbiAgICAgICAga2V5ZG93bjogdGhpcy5vbktleURvd24gLy8gTG9jYXRlZCBpbiBtaXhpbnMvc2VsZWN0LWF1dG9jb21wbGV0ZS5qc1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2NvbnNvbGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQnRuX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZDaGVja2JveF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQ2hpcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19WRGl2aWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19WTWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19WU3ViaGVhZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX1ZMaXN0X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU2KTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbmZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyBmb3IgKHZhciBpID0gMCwgYXJyMiA9IEFycmF5KGFyci5sZW5ndGgpOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7IGFycjJbaV0gPSBhcnJbaV07IH0gcmV0dXJuIGFycjI7IH0gZWxzZSB7IHJldHVybiBBcnJheS5mcm9tKGFycik7IH0gfVxuXG5cblxuXG4vLyBDb21wb25lbnRzXG5cblxuXG5cblxuXG5cblxuXG4vKipcbiAqIFNlbGVjdCBnZW5lcmF0b3JzXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCBmb3IgY3JlYXRpbmcgdGhlIERPTSBlbGVtZW50cyBmb3IgVlNlbGVjdFxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGdlbk1lbnU6IGZ1bmN0aW9uIGdlbk1lbnUoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgcmVmOiAnbWVudScsXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYWN0aXZhdG9yOiB0aGlzLiRlbCxcbiAgICAgICAgICBhdXRvOiB0aGlzLmF1dG8sXG4gICAgICAgICAgYXR0YWNoOiB0aGlzLmF0dGFjaCAmJiAnW2RhdGEtdWlkPVwiJyArIHRoaXMuX3VpZCArICdcIl0nLFxuICAgICAgICAgIGNsb3NlT25DbGljazogZmFsc2UsXG4gICAgICAgICAgY2xvc2VPbkNvbnRlbnRDbGljazogIXRoaXMuaXNNdWx0aXBsZSxcbiAgICAgICAgICBjb250ZW50Q2xhc3M6IHRoaXMuY29tcHV0ZWRDb250ZW50Q2xhc3MsXG4gICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAgIGxpZ2h0OiB0aGlzLmxpZ2h0LFxuICAgICAgICAgIG1heEhlaWdodDogdGhpcy5tYXhIZWlnaHQsXG4gICAgICAgICAgbnVkZ2VUb3A6IHRoaXMubnVkZ2VUb3AsXG4gICAgICAgICAgb2Zmc2V0WTogdGhpcy5zaG91bGRPZmZzZXQsXG4gICAgICAgICAgb2Zmc2V0T3ZlcmZsb3c6IHRoaXMuaXNBdXRvY29tcGxldGUsXG4gICAgICAgICAgb3Blbk9uQ2xpY2s6IGZhbHNlLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLm1lbnVJc1Zpc2libGUsXG4gICAgICAgICAgekluZGV4OiB0aGlzLm1lbnVaSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gaW5wdXQodmFsKSB7XG4gICAgICAgICAgICBpZiAoIXZhbCkge1xuICAgICAgICAgICAgICBfdGhpcy5tZW51SXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSBkYXRhLnByb3BzLnRyYW5zaXRpb24gPSBmYWxzZTtcblxuICAgICAgdGhpcy5taW5XaWR0aCAmJiAoZGF0YS5wcm9wcy5taW5XaWR0aCA9IHRoaXMubWluV2lkdGgpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIGRhdGEsIFt0aGlzLmdlbkxpc3QoKV0pO1xuICAgIH0sXG4gICAgZ2V0TWVudUluZGV4OiBmdW5jdGlvbiBnZXRNZW51SW5kZXgoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kcmVmcy5tZW51ID8gdGhpcy4kcmVmcy5tZW51Lmxpc3RJbmRleCA6IC0xO1xuICAgIH0sXG4gICAgc2V0TWVudUluZGV4OiBmdW5jdGlvbiBzZXRNZW51SW5kZXgoaW5kZXgpIHtcbiAgICAgIHRoaXMuJHJlZnMubWVudSAmJiAodGhpcy4kcmVmcy5tZW51Lmxpc3RJbmRleCA9IGluZGV4KTtcbiAgICB9LFxuICAgIHJlc2V0TWVudUluZGV4OiBmdW5jdGlvbiByZXNldE1lbnVJbmRleCgpIHtcbiAgICAgIHRoaXMuc2V0TWVudUluZGV4KC0xKTtcbiAgICB9LFxuICAgIGlzTWVudUl0ZW1TZWxlY3RlZDogZnVuY3Rpb24gaXNNZW51SXRlbVNlbGVjdGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVudUlzQWN0aXZlICYmIHRoaXMubWVudUl0ZW1zLmxlbmd0aCAmJiB0aGlzLmdldE1lbnVJbmRleCgpID4gLTE7XG4gICAgfSxcbiAgICBnZW5TZWxlY3Rpb25zQW5kU2VhcmNoOiBmdW5jdGlvbiBnZW5TZWxlY3Rpb25zQW5kU2VhcmNoKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzogJ2lucHV0LWdyb3VwX19zZWxlY3Rpb25zJyxcbiAgICAgICAgc3R5bGU6IHsgJ292ZXJmbG93JzogJ2hpZGRlbicgfSxcbiAgICAgICAgcmVmOiAnYWN0aXZhdG9yJ1xuICAgICAgfSwgW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdlblNlbGVjdGlvbnMoKSksIFt0aGlzLmdlblNlYXJjaCgpXSkpO1xuICAgIH0sXG4gICAgZ2VuU2VsZWN0aW9uczogZnVuY3Rpb24gZ2VuU2VsZWN0aW9ucygpIHtcbiAgICAgIGlmICh0aGlzLmhpZGVTZWxlY3Rpb25zKSByZXR1cm4gW107XG5cbiAgICAgIHZhciBsZW5ndGggPSB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoO1xuICAgICAgdmFyIGNoaWxkcmVuID0gbmV3IEFycmF5KGxlbmd0aCk7XG5cbiAgICAgIHZhciBnZW5TZWxlY3Rpb24gPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uKSB7XG4gICAgICAgIGdlblNlbGVjdGlvbiA9IHRoaXMuZ2VuU2xvdFNlbGVjdGlvbjtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5jaGlwcykge1xuICAgICAgICBnZW5TZWxlY3Rpb24gPSB0aGlzLmdlbkNoaXBTZWxlY3Rpb247XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2VnbWVudGVkKSB7XG4gICAgICAgIGdlblNlbGVjdGlvbiA9IHRoaXMuZ2VuU2VnbWVudGVkQnRuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZ2VuU2VsZWN0aW9uID0gdGhpcy5nZW5Db21tYVNlbGVjdGlvbjtcbiAgICAgIH1cblxuICAgICAgd2hpbGUgKGxlbmd0aC0tKSB7XG4gICAgICAgIGNoaWxkcmVuW2xlbmd0aF0gPSBnZW5TZWxlY3Rpb24odGhpcy5zZWxlY3RlZEl0ZW1zW2xlbmd0aF0sIGxlbmd0aCwgbGVuZ3RoID09PSBjaGlsZHJlbi5sZW5ndGggLSAxKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNoaWxkcmVuO1xuICAgIH0sXG4gICAgZ2VuU2VhcmNoOiBmdW5jdGlvbiBnZW5TZWFyY2goKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGRhdGEgPSB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaW5wdXQtZ3JvdXAtLXNlbGVjdF9fYXV0b2NvbXBsZXRlJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0X19hdXRvY29tcGxldGUtLWluZGV4JzogdGhpcy5zZWxlY3RlZEluZGV4ID4gLTFcbiAgICAgICAgfSxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICBmbGV4OiB0aGlzLnNob3VsZEJyZWFrID8gJzEgMCAxMDAlJyA6IG51bGxcbiAgICAgICAgfSxcbiAgICAgICAgYXR0cnM6IF9leHRlbmRzKHt9LCB0aGlzLiRhdHRycywge1xuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmlzQXV0b2NvbXBsZXRlLFxuICAgICAgICAgIHJlYWRvbmx5OiB0aGlzLnJlYWRvbmx5LFxuICAgICAgICAgIHRhYmluZGV4OiB0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmlzQXV0b2NvbXBsZXRlID8gLTEgOiB0aGlzLnRhYmluZGV4XG4gICAgICAgIH0pLFxuICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgIHZhbHVlOiB0aGlzLm1hc2tUZXh0KHRoaXMubGF6eVNlYXJjaCB8fCAnJylcbiAgICAgICAgfSxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBdXRvY29tcGxldGUgfHwgdGhpcy5wbGFjZWhvbGRlciAmJiAhdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aFxuICAgICAgICB9XSxcbiAgICAgICAgcmVmOiAnaW5wdXQnLFxuICAgICAgICBrZXk6ICdpbnB1dCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSB7XG4gICAgICAgIGRhdGEuYXR0cnMucm9sZSA9ICdjb21ib2JveCc7XG4gICAgICAgIGRhdGEuZG9tUHJvcHMuYXV0b2NvbXBsZXRlID0gdGhpcy5icm93c2VyQXV0b2NvbXBsZXRlO1xuXG4gICAgICAgIGRhdGEub24gPSBfZXh0ZW5kcyh7fSwgdGhpcy5nZW5MaXN0ZW5lcnMoKSwge1xuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dChlKSB7XG4gICAgICAgICAgICBpZiAoX3RoaXMyLnNlbGVjdGVkSW5kZXggPiAtMSkgcmV0dXJuO1xuXG4gICAgICAgICAgICBfdGhpczIuc2VhcmNoVmFsdWUgPSBfdGhpczIudW5tYXNrVGV4dChlLnRhcmdldC52YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBkYXRhLmRpcmVjdGl2ZXMgPSBkYXRhLmRpcmVjdGl2ZXMuY29uY2F0KHRoaXMuZ2VuRGlyZWN0aXZlcygpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIGRhdGEuZG9tUHJvcHMucGxhY2Vob2xkZXIgPSB0aGlzLnBsYWNlaG9sZGVyO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnaW5wdXQnLCBkYXRhKTtcbiAgICB9LFxuICAgIGdlblNlZ21lbnRlZEJ0bjogZnVuY3Rpb24gZ2VuU2VnbWVudGVkQnRuKGl0ZW0pIHtcbiAgICAgIGlmICghaXRlbS50ZXh0IHx8ICFpdGVtLmNhbGxiYWNrKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ1doZW4gdXNpbmcgXFwnc2VnbWVudGVkXFwnIHByb3Agd2l0aG91dCBhIHNlbGVjdGlvbiBzbG90LCBpdGVtcyBtdXN0IGNvbnRhaW4gYm90aCBhIHRleHQgYW5kIGNhbGxiYWNrIHByb3BlcnR5JywgdGhpcyk7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZCdG5fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGZsYXQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGl0ZW0uY2FsbGJhY2soZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCBbaXRlbS50ZXh0XSk7XG4gICAgfSxcbiAgICBnZW5TbG90U2VsZWN0aW9uOiBmdW5jdGlvbiBnZW5TbG90U2VsZWN0aW9uKGl0ZW0sIGluZGV4KSB7XG4gICAgICByZXR1cm4gdGhpcy4kc2NvcGVkU2xvdHMuc2VsZWN0aW9uKHtcbiAgICAgICAgcGFyZW50OiB0aGlzLFxuICAgICAgICBpdGVtOiBpdGVtLFxuICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgIHNlbGVjdGVkOiBpbmRleCA9PT0gdGhpcy5zZWxlY3RlZEluZGV4LFxuICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGdlbkNoaXBTZWxlY3Rpb246IGZ1bmN0aW9uIGdlbkNoaXBTZWxlY3Rpb24oaXRlbSwgaW5kZXgpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB2YXIgaXNEaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seTtcbiAgICAgIHZhciBjbGljayA9IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgaWYgKGlzRGlzYWJsZWQpIHJldHVybjtcblxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBfdGhpczMuZm9jdXNJbnB1dCgpO1xuICAgICAgICBfdGhpczMuc2VsZWN0ZWRJbmRleCA9IGluZGV4O1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WQ2hpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnY2hpcC0tc2VsZWN0LW11bHRpJyxcbiAgICAgICAgYXR0cnM6IHsgdGFiaW5kZXg6ICctMScgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBjbG9zZTogdGhpcy5kZWxldGFibGVDaGlwcyAmJiAhaXNEaXNhYmxlZCxcbiAgICAgICAgICBkYXJrOiB0aGlzLmRhcmssXG4gICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQsXG4gICAgICAgICAgc2VsZWN0ZWQ6IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogY2xpY2ssXG4gICAgICAgICAgZm9jdXM6IGNsaWNrLFxuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCgpIHtcbiAgICAgICAgICAgIGlmIChfdGhpczMuaXNNdWx0aXBsZSkgX3RoaXMzLnNlbGVjdEl0ZW0oaXRlbSk7ZWxzZSBfdGhpczMuaW5wdXRWYWx1ZSA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBrZXk6IHRoaXMuZ2V0VmFsdWUoaXRlbSlcbiAgICAgIH0sIHRoaXMuZ2V0VGV4dChpdGVtKSk7XG4gICAgfSxcbiAgICBnZW5Db21tYVNlbGVjdGlvbjogZnVuY3Rpb24gZ2VuQ29tbWFTZWxlY3Rpb24oaXRlbSwgaW5kZXgsIGxhc3QpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaW5wdXQtZ3JvdXBfX3NlbGVjdGlvbnNfX2NvbW1hJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cF9fc2VsZWN0aW9uc19fY29tbWEtLWFjdGl2ZSc6IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICAgICAgfSxcbiAgICAgICAga2V5OiBKU09OLnN0cmluZ2lmeSh0aGlzLmdldFZhbHVlKGl0ZW0pKSAvLyBJdGVtIG1heSBiZSBhbiBvYmplY3RcbiAgICAgIH0sICcnICsgdGhpcy5nZXRUZXh0KGl0ZW0pICsgKGxhc3QgPyAnJyA6ICcsICcpKTtcbiAgICB9LFxuICAgIGdlbkxpc3Q6IGZ1bmN0aW9uIGdlbkxpc3QoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5tZW51SXRlbXMubWFwKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgIGlmIChvLmhlYWRlcikgcmV0dXJuIF90aGlzNC5nZW5IZWFkZXIobyk7XG4gICAgICAgIGlmIChvLmRpdmlkZXIpIHJldHVybiBfdGhpczQuZ2VuRGl2aWRlcihvKTtlbHNlIHJldHVybiBfdGhpczQuZ2VuVGlsZShvKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIWNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICB2YXIgbm9EYXRhID0gdGhpcy4kc2xvdHNbJ25vLWRhdGEnXTtcbiAgICAgICAgaWYgKG5vRGF0YSkge1xuICAgICAgICAgIGNoaWxkcmVuLnB1c2gobm9EYXRhKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuVGlsZSh0aGlzLm5vRGF0YVRleHQsIHRydWUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZDYXJkX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImFcIiAvKiBWTGlzdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBkZW5zZTogdGhpcy5kZW5zZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICdsaXN0J1xuICAgICAgfSwgY2hpbGRyZW4pXSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXI6IGZ1bmN0aW9uIGdlbkhlYWRlcihpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX1ZTdWJoZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczogaXRlbVxuICAgICAgfSwgaXRlbS5oZWFkZXIpO1xuICAgIH0sXG4gICAgZ2VuRGl2aWRlcjogZnVuY3Rpb24gZ2VuRGl2aWRlcihpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX1ZEaXZpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IGl0ZW1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuTGFiZWw6IGZ1bmN0aW9uIGdlbkxhYmVsKCkge1xuICAgICAgdmFyIHNpbmdsZUxpbmUgPSB0aGlzLnNpbmdsZUxpbmUgfHwgdGhpcy5pc0Ryb3Bkb3duO1xuXG4gICAgICBpZiAoc2luZ2xlTGluZSAmJiAodGhpcy5pc0RpcnR5IHx8IHRoaXMuaXNGb2N1c2VkICYmIHRoaXMuc2VhcmNoVmFsdWUpKSByZXR1cm4gbnVsbDtcblxuICAgICAgdmFyIGRhdGEgPSB7fTtcblxuICAgICAgaWYgKHRoaXMuaWQpIGRhdGEuYXR0cnMgPSB7IGZvcjogdGhpcy5pZCB9O1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnbGFiZWwnLCBkYXRhLCB0aGlzLiRzbG90cy5sYWJlbCB8fCB0aGlzLmxhYmVsKTtcbiAgICB9LFxuICAgIGdlblRpbGU6IGZ1bmN0aW9uIGdlblRpbGUoaXRlbSwgZGlzYWJsZWQpIHtcbiAgICAgIHZhciBfdGhpczUgPSB0aGlzO1xuXG4gICAgICB2YXIgYWN0aXZlID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmluZGV4T2YoaXRlbSkgIT09IC0xO1xuXG4gICAgICBpZiAodHlwZW9mIGRpc2FibGVkID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBkaXNhYmxlZCA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoaXRlbSwgdGhpcy5pdGVtRGlzYWJsZWQpO1xuICAgICAgfVxuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgICAgICAgaWYgKGRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgICAgICAgIF90aGlzNS5zZWxlY3RJdGVtKGl0ZW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhdmF0YXI6IGl0ZW0gPT09IE9iamVjdChpdGVtKSAmJiB0aGlzLml0ZW1BdmF0YXIgaW4gaXRlbSxcbiAgICAgICAgICByaXBwbGU6IHRydWUsXG4gICAgICAgICAgdmFsdWU6IGFjdGl2ZVxuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgZGF0YS5wcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuICAgICAgfVxuXG4gICAgICBkYXRhLnByb3BzLmFjdGl2ZUNsYXNzID0gT2JqZWN0LmtleXModGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcygpKS5qb2luKCcgJyk7XG5cbiAgICAgIGlmICh0aGlzLiRzY29wZWRTbG90cy5pdGVtKSB7XG4gICAgICAgIHZhciB0aWxlID0gdGhpcy4kc2NvcGVkU2xvdHMuaXRlbSh7IHBhcmVudDogdGhpcywgaXRlbTogaXRlbSwgdGlsZTogZGF0YSB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMubmVlZHNUaWxlKHRpbGUpID8gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX1ZMaXN0X19bXCJiXCIgLyogVkxpc3RUaWxlICovXSwgZGF0YSwgW3RpbGVdKSA6IHRpbGU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImJcIiAvKiBWTGlzdFRpbGUgKi9dLCBkYXRhLCBbdGhpcy5nZW5BY3Rpb24oaXRlbSwgYWN0aXZlKSwgdGhpcy5nZW5Db250ZW50KGl0ZW0pXSk7XG4gICAgfSxcbiAgICBnZW5BY3Rpb246IGZ1bmN0aW9uIGdlbkFjdGlvbihpdGVtLCBhY3RpdmUpIHtcbiAgICAgIHZhciBfdGhpczYgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuaXNNdWx0aXBsZSB8fCB0aGlzLmlzSGlkaW5nU2VsZWN0ZWQpIHJldHVybiBudWxsO1xuXG4gICAgICB2YXIgZGF0YSA9IHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X190aWxlX19hY3Rpb24tLXNlbGVjdC1tdWx0aScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBfdGhpczYuc2VsZWN0SXRlbShpdGVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImNcIiAvKiBWTGlzdFRpbGVBY3Rpb24gKi9dLCBkYXRhLCBbdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZDaGVja2JveF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgY29sb3I6IHRoaXMuY29tcHV0ZWRDb2xvcixcbiAgICAgICAgICBpbnB1dFZhbHVlOiBhY3RpdmVcbiAgICAgICAgfVxuICAgICAgfSldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoaXRlbSkge1xuICAgICAgdmFyIHRleHQgPSB0aGlzLmdldFRleHQoaXRlbSk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fVkxpc3RfX1tcImRcIiAvKiBWTGlzdFRpbGVDb250ZW50ICovXSwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19WTGlzdF9fW1wiZVwiIC8qIFZMaXN0VGlsZVRpdGxlICovXSwge1xuICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgIGlubmVySFRNTDogdGhpcy5nZW5GaWx0ZXJlZCh0ZXh0KVxuICAgICAgICB9XG4gICAgICB9KV0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTQ0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGl2aWRlcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZGl2aWRlcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19kaXZpZGVyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRpdmlkZXInLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaW5zZXQ6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIHByb3BzID0gX3JlZi5wcm9wcyxcbiAgICAgICAgZGF0YSA9IF9yZWYuZGF0YSxcbiAgICAgICAgY2hpbGRyZW4gPSBfcmVmLmNoaWxkcmVuO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnZGl2aWRlciAnICsgKGRhdGEuc3RhdGljQ2xhc3MgfHwgJycpKS50cmltKCk7XG5cbiAgICBpZiAocHJvcHMuaW5zZXQpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBkaXZpZGVyLS1pbnNldCc7XG4gICAgaWYgKHByb3BzLmxpZ2h0KSBkYXRhLnN0YXRpY0NsYXNzICs9ICcgdGhlbWUtLWxpZ2h0JztcbiAgICBpZiAocHJvcHMuZGFyaykgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHRoZW1lLS1kYXJrJztcblxuICAgIHJldHVybiBoKCdocicsIGRhdGEpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNDUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19tZW51c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19tZW51c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX21lbnVzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfZGVsYXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19kZXBlbmRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RldGFjaGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX21lbnVhYmxlX2pzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDU0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19yZXR1cm5hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21lbnVfYWN0aXZhdG9yX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfbWVudV9nZW5lcmF0b3JzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfbWVudV9rZXlhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMF9fbWl4aW5zX21lbnVfcG9zaXRpb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xMl9fZGlyZWN0aXZlc19yZXNpemVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cblxuXG4vLyBDb21wb25lbnQgbGV2ZWwgbWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LW1lbnUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX21lbnVfYWN0aXZhdG9yX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19kZWxheWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfZGV0YWNoYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzhfX21peGluc19tZW51X2dlbmVyYXRvcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV85X19taXhpbnNfbWVudV9rZXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX21lbnVhYmxlX2pzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX21peGluc19tZW51X3Bvc2l0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3JldHVybmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBSZXNpemU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTJfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkZWZhdWx0T2Zmc2V0OiA4LFxuICAgICAgbWF4SGVpZ2h0QXV0b0RlZmF1bHQ6ICcyMDBweCcsXG4gICAgICBzdGFydEluZGV4OiAzLFxuICAgICAgc3RvcEluZGV4OiAwLFxuICAgICAgaGFzSnVzdEZvY3VzZWQ6IGZhbHNlLFxuICAgICAgcmVzaXplVGltZW91dDogbnVsbFxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGF1dG86IEJvb2xlYW4sXG4gICAgY2xvc2VPbkNsaWNrOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgY2xvc2VPbkNvbnRlbnRDbGljazoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZ1bGxXaWR0aDogQm9vbGVhbixcbiAgICBtYXhIZWlnaHQ6IHsgZGVmYXVsdDogJ2F1dG8nIH0sXG4gICAgb2Zmc2V0WDogQm9vbGVhbixcbiAgICBvZmZzZXRZOiBCb29sZWFuLFxuICAgIG9wZW5PbkNsaWNrOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgb3Blbk9uSG92ZXI6IEJvb2xlYW4sXG4gICAgb3JpZ2luOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndG9wIGxlZnQnXG4gICAgfSxcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICdtZW51LXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZExlZnQ6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRMZWZ0KCkge1xuICAgICAgaWYgKCF0aGlzLmF1dG8pIHJldHVybiB0aGlzLmNhbGNMZWZ0KCk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNYT3ZlcmZsb3codGhpcy5jYWxjTGVmdEF1dG8oKSkgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZE1heEhlaWdodDogZnVuY3Rpb24gY2FsY3VsYXRlZE1heEhlaWdodCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmF1dG8gPyAnMjAwcHgnIDogaXNOYU4odGhpcy5tYXhIZWlnaHQpID8gdGhpcy5tYXhIZWlnaHQgOiB0aGlzLm1heEhlaWdodCArICdweCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkTWF4V2lkdGg6IGZ1bmN0aW9uIGNhbGN1bGF0ZWRNYXhXaWR0aCgpIHtcbiAgICAgIHJldHVybiBpc05hTih0aGlzLm1heFdpZHRoKSA/IHRoaXMubWF4V2lkdGggOiB0aGlzLm1heFdpZHRoICsgJ3B4JztcbiAgICB9LFxuICAgIGNhbGN1bGF0ZWRNaW5XaWR0aDogZnVuY3Rpb24gY2FsY3VsYXRlZE1pbldpZHRoKCkge1xuICAgICAgaWYgKHRoaXMubWluV2lkdGgpIHtcbiAgICAgICAgcmV0dXJuIGlzTmFOKHRoaXMubWluV2lkdGgpID8gdGhpcy5taW5XaWR0aCA6IHRoaXMubWluV2lkdGggKyAncHgnO1xuICAgICAgfVxuXG4gICAgICB2YXIgbWluV2lkdGggPSB0aGlzLmRpbWVuc2lvbnMuYWN0aXZhdG9yLndpZHRoICsgdGhpcy5udWRnZVdpZHRoICsgKHRoaXMuYXV0byA/IDE2IDogMCk7XG5cbiAgICAgIHZhciBjYWxjdWxhdGVkTWF4V2lkdGggPSBpc05hTihwYXJzZUludCh0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCkpID8gbWluV2lkdGggOiBwYXJzZUludCh0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCk7XG5cbiAgICAgIHJldHVybiBNYXRoLm1pbihjYWxjdWxhdGVkTWF4V2lkdGgsIG1pbldpZHRoKSArICdweCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkVG9wOiBmdW5jdGlvbiBjYWxjdWxhdGVkVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmF1dG8gfHwgdGhpcy5pc0F0dGFjaGVkKSByZXR1cm4gdGhpcy5jYWxjVG9wKCk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNZT3ZlcmZsb3codGhpcy5jYWxjVG9wQXV0bygpKSArICdweCc7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1heEhlaWdodDogdGhpcy5jYWxjdWxhdGVkTWF4SGVpZ2h0LFxuICAgICAgICBtaW5XaWR0aDogdGhpcy5jYWxjdWxhdGVkTWluV2lkdGgsXG4gICAgICAgIG1heFdpZHRoOiB0aGlzLmNhbGN1bGF0ZWRNYXhXaWR0aCxcbiAgICAgICAgdG9wOiB0aGlzLmNhbGN1bGF0ZWRUb3AsXG4gICAgICAgIGxlZnQ6IHRoaXMuY2FsY3VsYXRlZExlZnQsXG4gICAgICAgIHRyYW5zZm9ybU9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIHpJbmRleDogdGhpcy56SW5kZXggfHwgdGhpcy5hY3RpdmVaSW5kZXhcbiAgICAgIH07XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgYWN0aXZhdG9yOiBmdW5jdGlvbiBhY3RpdmF0b3IobmV3QWN0aXZhdG9yLCBvbGRBY3RpdmF0b3IpIHtcbiAgICAgIHRoaXMucmVtb3ZlQWN0aXZhdG9yRXZlbnRzKG9sZEFjdGl2YXRvcik7XG4gICAgICB0aGlzLmFkZEFjdGl2YXRvckV2ZW50cyhuZXdBY3RpdmF0b3IpO1xuICAgIH0sXG4gICAgaXNDb250ZW50QWN0aXZlOiBmdW5jdGlvbiBpc0NvbnRlbnRBY3RpdmUodmFsKSB7XG4gICAgICB0aGlzLmhhc0p1c3RGb2N1c2VkID0gdmFsO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgYWN0aXZhdGU6IGZ1bmN0aW9uIGFjdGl2YXRlKCkge1xuICAgICAgLy8gVGhpcyBleGlzdHMgcHJpbWFyaWx5IGZvciB2LXNlbGVjdFxuICAgICAgLy8gaGVscHMgZGV0ZXJtaW5lIHdoaWNoIHRpbGVzIHRvIGFjdGl2YXRlXG4gICAgICB0aGlzLmdldFRpbGVzKCk7XG4gICAgICAvLyBVcGRhdGUgY29vcmRpbmF0ZXMgYW5kIGRpbWVuc2lvbnMgb2YgbWVudVxuICAgICAgLy8gYW5kIGl0cyBhY3RpdmF0b3JcbiAgICAgIHRoaXMudXBkYXRlRGltZW5zaW9ucygpO1xuICAgICAgLy8gU3RhcnQgdGhlIHRyYW5zaXRpb25cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSh0aGlzLnN0YXJ0VHJhbnNpdGlvbik7XG4gICAgICAvLyBPbmNlIHRyYW5zaXRpb25pbmcsIGNhbGN1bGF0ZSBzY3JvbGwgcG9zaXRpb25cbiAgICAgIHNldFRpbWVvdXQodGhpcy5jYWxjdWxhdGVTY3JvbGwsIDUwKTtcbiAgICB9LFxuICAgIGNsb3NlQ29uZGl0aW9uYWw6IGZ1bmN0aW9uIGNsb3NlQ29uZGl0aW9uYWwoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiB0aGlzLmNsb3NlT25DbGljaztcbiAgICB9LFxuICAgIG9uUmVzaXplOiBmdW5jdGlvbiBvblJlc2l6ZSgpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSkgcmV0dXJuO1xuXG4gICAgICAvLyBBY2NvdW50IGZvciBzY3JlZW4gcmVzaXplXG4gICAgICAvLyBhbmQgb3JpZW50YXRpb24gY2hhbmdlXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgICB0aGlzLiRyZWZzLmNvbnRlbnQub2Zmc2V0V2lkdGg7XG4gICAgICB0aGlzLnVwZGF0ZURpbWVuc2lvbnMoKTtcblxuICAgICAgLy8gV2hlbiByZXNpemluZyB0byBhIHNtYWxsZXIgd2lkdGhcbiAgICAgIC8vIGNvbnRlbnQgd2lkdGggaXMgZXZhbHVhdGVkIGJlZm9yZVxuICAgICAgLy8gdGhlIG5ldyBhY3RpdmF0b3Igd2lkdGggaGFzIGJlZW5cbiAgICAgIC8vIHNldCwgY2F1c2luZyBpdCB0byBub3Qgc2l6ZSBwcm9wZXJseVxuICAgICAgLy8gaGFja3kgYnV0IHdpbGwgcmV2aXNpdCBpbiB0aGUgZnV0dXJlXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lb3V0KTtcbiAgICAgIHRoaXMucmVzaXplVGltZW91dCA9IHNldFRpbWVvdXQodGhpcy51cGRhdGVEaW1lbnNpb25zLCAxMDApO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ21lbnUnLFxuICAgICAgY2xhc3M6IHtcbiAgICAgICAgJ21lbnUtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIGRpc3BsYXk6IHRoaXMuZnVsbFdpZHRoID8gJ2Jsb2NrJyA6ICdpbmxpbmUtYmxvY2snXG4gICAgICB9LFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgYXJnOiA1MDAsXG4gICAgICAgIG5hbWU6ICdyZXNpemUnLFxuICAgICAgICB2YWx1ZTogdGhpcy5vblJlc2l6ZVxuICAgICAgfV0sXG4gICAgICBvbjoge1xuICAgICAgICBrZXlkb3duOiB0aGlzLmNoYW5nZUxpc3RJbmRleFxuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgW3RoaXMuZ2VuQWN0aXZhdG9yKCksIHRoaXMuZ2VuVHJhbnNpdGlvbigpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE0OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogTWVudSBhY3RpdmF0b3JcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBIYW5kbGVzIHRoZSBjbGljayBhbmQgaG92ZXIgYWN0aXZhdGlvblxuICogU3VwcG9ydHMgc2xvdHRlZCBhbmQgZGV0YWNoZWQgYWN0aXZhdG9yc1xuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGFjdGl2YXRvckNsaWNrSGFuZGxlcjogZnVuY3Rpb24gYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKGUpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgICBpZiAodGhpcy5vcGVuT25DbGljayAmJiAhdGhpcy5pc0FjdGl2ZSkge1xuICAgICAgICB0aGlzLmdldEFjdGl2YXRvcigpLmZvY3VzKCk7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmFic29sdXRlWCA9IGUuY2xpZW50WDtcbiAgICAgICAgdGhpcy5hYnNvbHV0ZVkgPSBlLmNsaWVudFk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuY2xvc2VPbkNsaWNrICYmIHRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgdGhpcy5nZXRBY3RpdmF0b3IoKS5ibHVyKCk7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG1vdXNlRW50ZXJIYW5kbGVyOiBmdW5jdGlvbiBtb3VzZUVudGVySGFuZGxlcihlKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB0aGlzLnJ1bkRlbGF5KCdvcGVuJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoX3RoaXMuaGFzSnVzdEZvY3VzZWQpIHJldHVybjtcblxuICAgICAgICBfdGhpcy5oYXNKdXN0Rm9jdXNlZCA9IHRydWU7XG4gICAgICAgIF90aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgbW91c2VMZWF2ZUhhbmRsZXI6IGZ1bmN0aW9uIG1vdXNlTGVhdmVIYW5kbGVyKGUpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICAvLyBQcmV2ZW50IGFjY2lkZW50YWwgcmUtYWN0aXZhdGlvblxuICAgICAgdGhpcy5ydW5EZWxheSgnY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpczIuJHJlZnMuY29udGVudC5jb250YWlucyhlLnJlbGF0ZWRUYXJnZXQpKSByZXR1cm47XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBfdGhpczIuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICBfdGhpczIuY2FsbERlYWN0aXZhdGUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGFkZEFjdGl2YXRvckV2ZW50czogZnVuY3Rpb24gYWRkQWN0aXZhdG9yRXZlbnRzKCkge1xuICAgICAgdmFyIGFjdGl2YXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblxuICAgICAgaWYgKCFhY3RpdmF0b3IpIHJldHVybjtcbiAgICAgIGFjdGl2YXRvci5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKTtcbiAgICB9LFxuICAgIHJlbW92ZUFjdGl2YXRvckV2ZW50czogZnVuY3Rpb24gcmVtb3ZlQWN0aXZhdG9yRXZlbnRzKCkge1xuICAgICAgdmFyIGFjdGl2YXRvciA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblxuICAgICAgaWYgKCFhY3RpdmF0b3IpIHJldHVybjtcbiAgICAgIGFjdGl2YXRvci5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuYWN0aXZhdG9yQ2xpY2tIYW5kbGVyKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE0OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbmZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyBmb3IgKHZhciBpID0gMCwgYXJyMiA9IEFycmF5KGFyci5sZW5ndGgpOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7IGFycjJbaV0gPSBhcnJbaV07IH0gcmV0dXJuIGFycjI7IH0gZWxzZSB7IHJldHVybiBBcnJheS5mcm9tKGFycik7IH0gfVxuXG4vKipcbiAqIE1lbnUgZ2VuZXJhdG9yc1xuICpcbiAqIEBtaXhpblxuICpcbiAqIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBET00gZWxlbWVudHMgZm9yIFZNZW51XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgZ2VuQWN0aXZhdG9yOiBmdW5jdGlvbiBnZW5BY3RpdmF0b3IoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNsb3RzLmFjdGl2YXRvcikgcmV0dXJuIG51bGw7XG5cbiAgICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ21lbnVfX2FjdGl2YXRvcicsXG4gICAgICAgICdjbGFzcyc6IHtcbiAgICAgICAgICAnbWVudV9fYWN0aXZhdG9yLS1hY3RpdmUnOiB0aGlzLmhhc0p1c3RGb2N1c2VkIHx8IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAnYWN0aXZhdG9yJyxcbiAgICAgICAgb246IHt9XG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5vcGVuT25Ib3Zlcikge1xuICAgICAgICBvcHRpb25zLm9uWydtb3VzZWVudGVyJ10gPSB0aGlzLm1vdXNlRW50ZXJIYW5kbGVyO1xuICAgICAgICBvcHRpb25zLm9uWydtb3VzZWxlYXZlJ10gPSB0aGlzLm1vdXNlTGVhdmVIYW5kbGVyO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLm9wZW5PbkNsaWNrKSB7XG4gICAgICAgIG9wdGlvbnMub25bJ2NsaWNrJ10gPSB0aGlzLmFjdGl2YXRvckNsaWNrSGFuZGxlcjtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIG9wdGlvbnMsIHRoaXMuJHNsb3RzLmFjdGl2YXRvcik7XG4gICAgfSxcbiAgICBnZW5UcmFuc2l0aW9uOiBmdW5jdGlvbiBnZW5UcmFuc2l0aW9uKCkge1xuICAgICAgaWYgKCF0aGlzLnRyYW5zaXRpb24pIHJldHVybiB0aGlzLmdlbkNvbnRlbnQoKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyYW5zaXRpb24nLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmFtZTogdGhpcy50cmFuc2l0aW9uXG4gICAgICAgIH1cbiAgICAgIH0sIFt0aGlzLmdlbkNvbnRlbnQoKV0pO1xuICAgIH0sXG4gICAgZ2VuRGlyZWN0aXZlczogZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIC8vIERvIG5vdCBhZGQgY2xpY2sgb3V0c2lkZSBmb3IgaG92ZXIgbWVudVxuICAgICAgdmFyIGRpcmVjdGl2ZXMgPSAhdGhpcy5vcGVuT25Ib3ZlciA/IFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiB7XG4gICAgICAgICAgY2xvc2VDb25kaXRpb25hbDogdGhpcy5jbG9zZUNvbmRpdGlvbmFsLFxuICAgICAgICAgIGluY2x1ZGU6IGZ1bmN0aW9uIGluY2x1ZGUoKSB7XG4gICAgICAgICAgICByZXR1cm4gW190aGlzLiRlbF0uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheShfdGhpcy5nZXRPcGVuRGVwZW5kZW50RWxlbWVudHMoKSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfV0gOiBbXTtcblxuICAgICAgZGlyZWN0aXZlcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0NvbnRlbnRBY3RpdmVcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZGlyZWN0aXZlcztcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgX2NsYXNzLFxuICAgICAgICAgIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgICBzdGF0aWNDbGFzczogJ21lbnVfX2NvbnRlbnQnLFxuICAgICAgICAnY2xhc3MnOiAoX2NsYXNzID0ge30sIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsIHRoaXMuY29udGVudENsYXNzLnRyaW0oKSwgdHJ1ZSksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICdtZW51YWJsZV9fY29udGVudF9fYWN0aXZlJywgdGhpcy5pc0FjdGl2ZSksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICd0aGVtZS0tZGFyaycsIHRoaXMuZGFyayksIF9kZWZpbmVQcm9wZXJ0eShfY2xhc3MsICd0aGVtZS0tbGlnaHQnLCB0aGlzLmxpZ2h0KSwgX2NsYXNzKSxcbiAgICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgICBkaXJlY3RpdmVzOiB0aGlzLmdlbkRpcmVjdGl2ZXMoKSxcbiAgICAgICAgcmVmOiAnY29udGVudCcsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKGUpIHtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBpZiAoZS50YXJnZXQuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpKSByZXR1cm47XG4gICAgICAgICAgICBpZiAoX3RoaXMyLmNsb3NlT25Db250ZW50Q2xpY2spIF90aGlzMi5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5vcGVuT25Ib3ZlciAmJiAob3B0aW9ucy5vbi5tb3VzZWVudGVyID0gdGhpcy5tb3VzZUVudGVySGFuZGxlcik7XG4gICAgICB0aGlzLm9wZW5PbkhvdmVyICYmIChvcHRpb25zLm9uLm1vdXNlbGVhdmUgPSB0aGlzLm1vdXNlTGVhdmVIYW5kbGVyKTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIG9wdGlvbnMsIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogTWVudSBrZXlhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogUHJpbWFyaWx5IHVzZWQgdG8gc3VwcG9ydCBWU2VsZWN0XG4gKiBIYW5kbGVzIG9wZW5pbmcgYW5kIGNsb3Npbmcgb2YgVk1lbnUgZnJvbSBrZXlzdHJva2VzXG4gKiBXaWxsIGNvbmRpdGlvbmFsbHkgaGlnaGxpZ2h0IFZMaXN0VGlsZXMgZm9yIFZTZWxlY3RcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxpc3RJbmRleDogLTEsXG4gICAgICB0aWxlczogW11cbiAgICB9O1xuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmU6IGZ1bmN0aW9uIGlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKCF2YWwpIHRoaXMubGlzdEluZGV4ID0gLTE7XG4gICAgfSxcbiAgICBsaXN0SW5kZXg6IGZ1bmN0aW9uIGxpc3RJbmRleChuZXh0LCBwcmV2KSB7XG4gICAgICAvLyBGb3IgaW5maW5pdGUgc2Nyb2xsIGFuZCBhdXRvY29tcGxldGUsIHJlLWV2YWx1YXRlIGNoaWxkcmVuXG4gICAgICB0aGlzLmdldFRpbGVzKCk7XG5cbiAgICAgIGlmIChuZXh0IGluIHRoaXMudGlsZXMpIHtcbiAgICAgICAgdmFyIHRpbGUgPSB0aGlzLnRpbGVzW25leHRdO1xuICAgICAgICB0aWxlLmNsYXNzTGlzdC5hZGQoJ2xpc3RfX3RpbGUtLWhpZ2hsaWdodGVkJyk7XG4gICAgICAgIHRoaXMuJHJlZnMuY29udGVudC5zY3JvbGxUb3AgPSB0aWxlLm9mZnNldFRvcCAtIHRpbGUuY2xpZW50SGVpZ2h0O1xuICAgICAgfVxuXG4gICAgICBwcmV2IGluIHRoaXMudGlsZXMgJiYgdGhpcy50aWxlc1twcmV2XS5jbGFzc0xpc3QucmVtb3ZlKCdsaXN0X190aWxlLS1oaWdobGlnaHRlZCcpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2hhbmdlTGlzdEluZGV4OiBmdW5jdGlvbiBjaGFuZ2VMaXN0SW5kZXgoZSkge1xuICAgICAgLy8gVXAsIERvd24sIEVudGVyLCBTcGFjZVxuICAgICAgaWYgKFs0MCwgMzgsIDEzXS5pbmNsdWRlcyhlLmtleUNvZGUpIHx8IGUua2V5Q29kZSA9PT0gMzIgJiYgIXRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuXG4gICAgICAvLyBFc2MsIFRhYlxuICAgICAgaWYgKFsyNywgOV0uaW5jbHVkZXMoZS5rZXlDb2RlKSkgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtlbHNlIGlmICghdGhpcy5pc0FjdGl2ZSAmJlxuICAgICAgLy8gRW50ZXIsIFNwYWNlXG4gICAgICBbMTMsIDMyXS5pbmNsdWRlcyhlLmtleUNvZGUpICYmIHRoaXMub3Blbk9uQ2xpY2spIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBEb3duXG4gICAgICBpZiAoZS5rZXlDb2RlID09PSA0MCAmJiB0aGlzLmxpc3RJbmRleCA8IHRoaXMudGlsZXMubGVuZ3RoIC0gMSkge1xuICAgICAgICB0aGlzLmxpc3RJbmRleCsrO1xuICAgICAgICAvLyBVcFxuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDM4ICYmIHRoaXMubGlzdEluZGV4ID4gMCkge1xuICAgICAgICB0aGlzLmxpc3RJbmRleC0tO1xuICAgICAgICAvLyBFbnRlclxuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDEzICYmIHRoaXMubGlzdEluZGV4ICE9PSAtMSkge1xuICAgICAgICB0aGlzLnRpbGVzW3RoaXMubGlzdEluZGV4XS5jbGljaygpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2V0VGlsZXM6IGZ1bmN0aW9uIGdldFRpbGVzKCkge1xuICAgICAgdGhpcy50aWxlcyA9IHRoaXMuJHJlZnMuY29udGVudC5xdWVyeVNlbGVjdG9yQWxsKCcubGlzdF9fdGlsZScpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTUxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBNZW51IHBvc2l0aW9uXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCBmb3IgY2FsY3VsYXRpbmcgYW4gYXV0b21hdGljIHBvc2l0aW9uICh1c2VkIGZvciBWU2VsZWN0KVxuICogV2lsbCBwb3NpdGlvbiB0aGUgVk1lbnUgY29udGVudCBwcm9wZXJseSBvdmVyIHRoZSBWU2VsZWN0XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgLy8gUmV2aXNpdCB0aGlzXG4gICAgY2FsY3VsYXRlU2Nyb2xsOiBmdW5jdGlvbiBjYWxjdWxhdGVTY3JvbGwoKSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSBudWxsKSByZXR1cm47XG5cbiAgICAgIHZhciBzY3JvbGxUb3AgPSAwO1xuXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID49IHRoaXMuc3RvcEluZGV4KSB7XG4gICAgICAgIHNjcm9sbFRvcCA9IHRoaXMuJHJlZnMuY29udGVudC5zY3JvbGxIZWlnaHQ7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWRJbmRleCA+IHRoaXMuc3RhcnRJbmRleCkge1xuICAgICAgICBzY3JvbGxUb3AgPSB0aGlzLnNlbGVjdGVkSW5kZXggKiAodGhpcy5kZWZhdWx0T2Zmc2V0ICogNikgLSB0aGlzLmRlZmF1bHRPZmZzZXQgKiA3O1xuICAgICAgfVxuXG4gICAgICB0aGlzLiRyZWZzLmNvbnRlbnQuc2Nyb2xsVG9wID0gc2Nyb2xsVG9wO1xuICAgIH0sXG4gICAgY2FsY0xlZnRBdXRvOiBmdW5jdGlvbiBjYWxjTGVmdEF1dG8oKSB7XG4gICAgICBpZiAodGhpcy5pc0F0dGFjaGVkKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHBhcnNlSW50KHRoaXMuZGltZW5zaW9ucy5hY3RpdmF0b3IubGVmdCAtIHRoaXMuZGVmYXVsdE9mZnNldCAqIDIpO1xuICAgIH0sXG4gICAgY2FsY1RvcEF1dG86IGZ1bmN0aW9uIGNhbGNUb3BBdXRvKCkge1xuICAgICAgdmFyIHNlbGVjdGVkSW5kZXggPSBBcnJheS5mcm9tKHRoaXMudGlsZXMpLmZpbmRJbmRleChmdW5jdGlvbiAobikge1xuICAgICAgICByZXR1cm4gbi5jbGFzc0xpc3QuY29udGFpbnMoJ2xpc3RfX3RpbGUtLWFjdGl2ZScpO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChzZWxlY3RlZEluZGV4ID09PSAtMSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkVG9wO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBzZWxlY3RlZEluZGV4O1xuICAgICAgdmFyIGFjdGluZ0luZGV4ID0gc2VsZWN0ZWRJbmRleDtcblxuICAgICAgdmFyIG9mZnNldFBhZGRpbmcgPSAtKHRoaXMuZGVmYXVsdE9mZnNldCAqIDIpO1xuICAgICAgLy8gIzcwOCBTdG9wIGluZGV4IHNob3VsZCB2YXJ5IGJ5IHRpbGUgbGVuZ3RoXG4gICAgICB0aGlzLnN0b3BJbmRleCA9IHRoaXMudGlsZXMubGVuZ3RoID4gNCA/IHRoaXMudGlsZXMubGVuZ3RoIC0gNCA6IHRoaXMudGlsZXMubGVuZ3RoO1xuXG4gICAgICBpZiAoc2VsZWN0ZWRJbmRleCA+IHRoaXMuc3RhcnRJbmRleCAmJiBzZWxlY3RlZEluZGV4IDwgdGhpcy5zdG9wSW5kZXgpIHtcbiAgICAgICAgYWN0aW5nSW5kZXggPSAyO1xuICAgICAgICBvZmZzZXRQYWRkaW5nID0gdGhpcy5kZWZhdWx0T2Zmc2V0ICogMztcbiAgICAgIH0gZWxzZSBpZiAoc2VsZWN0ZWRJbmRleCA+PSB0aGlzLnN0b3BJbmRleCkge1xuICAgICAgICBvZmZzZXRQYWRkaW5nID0gLXRoaXMuZGVmYXVsdE9mZnNldDtcbiAgICAgICAgYWN0aW5nSW5kZXggPSBzZWxlY3RlZEluZGV4IC0gdGhpcy5zdG9wSW5kZXg7XG4gICAgICB9XG5cbiAgICAgIC8vIElzIGFsd2F5cyBvZmYgYnkgMSBwaXhlbCwgc2VuZCBoZWxwICjilJvgsqBf4LKgKeKUm+W9oeKUu+KUgeKUu1xuICAgICAgb2Zmc2V0UGFkZGluZy0tO1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZFRvcCArIG9mZnNldFBhZGRpbmcgLSBhY3RpbmdJbmRleCAqICh0aGlzLmRlZmF1bHRPZmZzZXQgKiA2KTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N1YmhlYWRlcnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3ViaGVhZGVyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N1YmhlYWRlcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdWJoZWFkZXInLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaW5zZXQ6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnc3ViaGVhZGVyICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIGlmIChwcm9wcy5pbnNldCkgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHN1YmhlYWRlci0taW5zZXQnO1xuICAgIGlmIChwcm9wcy5saWdodCkgZGF0YS5zdGF0aWNDbGFzcyArPSAnIHRoZW1lLS1saWdodCc7XG4gICAgaWYgKHByb3BzLmRhcmspIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyB0aGVtZS0tZGFyayc7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNTQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19saXN0c19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19saXN0c19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2xpc3RzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtbGlzdCcsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJiXCIgLyogcHJvdmlkZSAqL10pKCdsaXN0JyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm92aWRlOiBmdW5jdGlvbiBwcm92aWRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICAnbGlzdENsaWNrJzogdGhpcy5saXN0Q2xpY2tcbiAgICB9O1xuICB9LFxuXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZ3JvdXBzOiBbXVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBleHBhbmQ6IEJvb2xlYW4sXG4gICAgc3ViaGVhZGVyOiBCb29sZWFuLFxuICAgIHRocmVlTGluZTogQm9vbGVhbixcbiAgICB0d29MaW5lOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2xpc3QtLWRlbnNlJzogdGhpcy5kZW5zZSxcbiAgICAgICAgJ2xpc3QtLXN1YmhlYWRlcic6IHRoaXMuc3ViaGVhZGVyLFxuICAgICAgICAnbGlzdC0tdHdvLWxpbmUnOiB0aGlzLnR3b0xpbmUsXG4gICAgICAgICdsaXN0LS10aHJlZS1saW5lJzogdGhpcy50aHJlZUxpbmUsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH07XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCBjYikge1xuICAgICAgdGhpcy5ncm91cHMucHVzaCh7IHVpZDogdWlkLCBjYjogY2IgfSk7XG4gICAgfSxcbiAgICB1bnJlZ2lzdGVyOiBmdW5jdGlvbiB1bnJlZ2lzdGVyKHVpZCkge1xuICAgICAgdmFyIGluZGV4ID0gdGhpcy5ncm91cHMuZmluZEluZGV4KGZ1bmN0aW9uIChnKSB7XG4gICAgICAgIHJldHVybiBnLnVpZCA9PT0gdWlkO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBsaXN0Q2xpY2s6IGZ1bmN0aW9uIGxpc3RDbGljayh1aWQsIGlzQm9vdGVkKSB7XG4gICAgICBpZiAodGhpcy5leHBhbmQpIHJldHVybjtcblxuICAgICAgZm9yICh2YXIgaSA9IHRoaXMuZ3JvdXBzLmxlbmd0aDsgaS0tOykge1xuICAgICAgICB0aGlzLmdyb3Vwc1tpXS5jYih1aWQpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2xpc3QnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbdGhpcy4kc2xvdHMuZGVmYXVsdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNTYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdHJhbnNpdGlvbnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cbi8vIFRyYW5zaXRpb25zXG5cblxuLyoqXG4gKiBMaXN0IGdyb3VwXG4gKlxuICogQGNvbXBvbmVudFxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtbGlzdC1ncm91cCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ2xpc3QnLCAndi1saXN0LWdyb3VwJywgJ3YtbGlzdCcpLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGluamVjdDogWydsaXN0Q2xpY2snXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBncm91cHM6IFtdXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAncHJpbWFyeS0tdGV4dCdcbiAgICB9LFxuICAgIGFwcGVuZEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdrZXlib2FyZF9hcnJvd19kb3duJ1xuICAgIH0sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgZ3JvdXA6IFN0cmluZyxcbiAgICBub0FjdGlvbjogQm9vbGVhbixcbiAgICBwcmVwZW5kSWNvbjogU3RyaW5nLFxuICAgIHN1Ykdyb3VwOiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBncm91cENsYXNzZXM6IGZ1bmN0aW9uIGdyb3VwQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdsaXN0X19ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ2xpc3RfX2dyb3VwLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgIH07XG4gICAgfSxcbiAgICBoZWFkZXJDbGFzc2VzOiBmdW5jdGlvbiBoZWFkZXJDbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ2xpc3RfX2dyb3VwX19oZWFkZXItLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdsaXN0X19ncm91cF9faGVhZGVyLS1zdWItZ3JvdXAnOiB0aGlzLnN1Ykdyb3VwXG4gICAgICB9O1xuICAgIH0sXG4gICAgaXRlbXNDbGFzc2VzOiBmdW5jdGlvbiBpdGVtc0NsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnbGlzdF9fZ3JvdXBfX2l0ZW1zLS1uby1hY3Rpb24nOiB0aGlzLm5vQWN0aW9uXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIGlmICghdGhpcy5zdWJHcm91cCAmJiB2YWwpIHtcbiAgICAgICAgdGhpcy5saXN0Q2xpY2sodGhpcy5fdWlkKTtcbiAgICAgIH1cbiAgICB9LFxuICAgICRyb3V0ZTogZnVuY3Rpb24gJHJvdXRlKHRvKSB7XG4gICAgICB2YXIgaXNBY3RpdmUgPSB0aGlzLm1hdGNoUm91dGUodG8ucGF0aCk7XG5cbiAgICAgIGlmICh0aGlzLmdyb3VwKSB7XG4gICAgICAgIGlmIChpc0FjdGl2ZSAmJiB0aGlzLmlzQWN0aXZlICE9PSBpc0FjdGl2ZSkge1xuICAgICAgICAgIHRoaXMubGlzdENsaWNrKHRoaXMuX3VpZCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzQWN0aXZlID0gaXNBY3RpdmU7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5saXN0LnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy50b2dnbGUpO1xuXG4gICAgaWYgKHRoaXMuZ3JvdXAgJiYgdGhpcy4kcm91dGUgJiYgdGhpcy52YWx1ZSA9PSBudWxsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gdGhpcy5tYXRjaFJvdXRlKHRoaXMuJHJvdXRlLnBhdGgpO1xuICAgIH1cbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLmxpc3QudW5yZWdpc3Rlcih0aGlzLl91aWQpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaWNvbikge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19jb21wb25lbnRzX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIGljb24pO1xuICAgIH0sXG4gICAgZ2VuQXBwZW5kSWNvbjogZnVuY3Rpb24gZ2VuQXBwZW5kSWNvbigpIHtcbiAgICAgIHZhciBpY29uID0gIXRoaXMuc3ViR3JvdXAgPyB0aGlzLmFwcGVuZEljb24gOiBmYWxzZTtcblxuICAgICAgaWYgKCFpY29uICYmICF0aGlzLiRzbG90cy5hcHBlbmRJY29uKSByZXR1cm4gbnVsbDtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cF9faGVhZGVyX19hcHBlbmQtaWNvbidcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5hcHBlbmRJY29uIHx8IHRoaXMuZ2VuSWNvbihpY29uKV0pO1xuICAgIH0sXG4gICAgZ2VuR3JvdXA6IGZ1bmN0aW9uIGdlbkdyb3VwKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cF9faGVhZGVyJyxcbiAgICAgICAgJ2NsYXNzJzogdGhpcy5oZWFkZXJDbGFzc2VzLFxuICAgICAgICBvbjogT2JqZWN0LmFzc2lnbih7fSwge1xuICAgICAgICAgIGNsaWNrOiB0aGlzLmNsaWNrXG4gICAgICAgIH0sIHRoaXMuJGxpc3RlbmVycyksXG4gICAgICAgIHJlZjogJ2l0ZW0nXG4gICAgICB9LCBbdGhpcy5nZW5QcmVwZW5kSWNvbigpLCB0aGlzLiRzbG90cy5hY3RpdmF0b3IsIHRoaXMuZ2VuQXBwZW5kSWNvbigpXSk7XG4gICAgfSxcbiAgICBnZW5JdGVtczogZnVuY3Rpb24gZ2VuSXRlbXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2xpc3RfX2dyb3VwX19pdGVtcycsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuaXRlbXNDbGFzc2VzLFxuICAgICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgICB2YWx1ZTogdGhpcy5pc0FjdGl2ZVxuICAgICAgICB9XSxcbiAgICAgICAgcmVmOiAnZ3JvdXAnXG4gICAgICB9LCB0aGlzLnNob3dMYXp5Q29udGVudCh0aGlzLiRzbG90cy5kZWZhdWx0KSk7XG4gICAgfSxcbiAgICBnZW5QcmVwZW5kSWNvbjogZnVuY3Rpb24gZ2VuUHJlcGVuZEljb24oKSB7XG4gICAgICB2YXIgaWNvbiA9IHRoaXMucHJlcGVuZEljb24gPyB0aGlzLnByZXBlbmRJY29uIDogdGhpcy5zdWJHcm91cCA/ICdhcnJvd19kcm9wX2Rvd24nIDogZmFsc2U7XG5cbiAgICAgIGlmICghaWNvbiAmJiAhdGhpcy4kc2xvdHMucHJlcGVuZEljb24pIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ2xpc3RfX2dyb3VwX19oZWFkZXJfX3ByZXBlbmQtaWNvbicsXG4gICAgICAgICdjbGFzcyc6IF9kZWZpbmVQcm9wZXJ0eSh7fSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSlcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5wcmVwZW5kSWNvbiB8fCB0aGlzLmdlbkljb24oaWNvbildKTtcbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHVpZCkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMuX3VpZCA9PT0gdWlkO1xuICAgIH0sXG4gICAgbWF0Y2hSb3V0ZTogZnVuY3Rpb24gbWF0Y2hSb3V0ZSh0bykge1xuICAgICAgaWYgKCF0aGlzLmdyb3VwKSByZXR1cm4gZmFsc2U7XG4gICAgICByZXR1cm4gdG8ubWF0Y2godGhpcy5ncm91cCkgIT09IG51bGw7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdsaXN0X19ncm91cCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmdyb3VwQ2xhc3Nlc1xuICAgIH0sIFt0aGlzLmdlbkdyb3VwKCksIGgoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190cmFuc2l0aW9uc19fW1wiYVwiIC8qIFZFeHBhbmRUcmFuc2l0aW9uICovXSwgW3RoaXMuZ2VuSXRlbXMoKV0pXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfcm91dGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19kaXJlY3RpdmVzX3JpcHBsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNyk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG4vLyBNaXhpbnNcblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1saXN0LXRpbGUnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yb3V0YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHtcbiAgICBSaXBwbGU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZGlyZWN0aXZlc19yaXBwbGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIGluaGVyaXRBdHRyczogZmFsc2UsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHJveHlDbGFzczogJ2xpc3RfX3RpbGUtLWFjdGl2ZSdcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5LS10ZXh0J1xuICAgIH0sXG4gICAgYXZhdGFyOiBCb29sZWFuLFxuICAgIGluYWN0aXZlOiBCb29sZWFuLFxuICAgIHRhZzogU3RyaW5nXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBsaXN0Q2xhc3NlczogZnVuY3Rpb24gbGlzdENsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCA/ICd0ZXh0LS1kaXNhYmxlZCcgOiB0aGlzLmNvbG9yID8gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcygpIDogdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfSxcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIF9kZWZpbmVQcm9wZXJ0eSh7XG4gICAgICAgICdsaXN0X190aWxlJzogdHJ1ZSxcbiAgICAgICAgJ2xpc3RfX3RpbGUtLWxpbmsnOiB0aGlzLmlzTGluayAmJiAhdGhpcy5pbmFjdGl2ZSxcbiAgICAgICAgJ2xpc3RfX3RpbGUtLWF2YXRhcic6IHRoaXMuYXZhdGFyLFxuICAgICAgICAnbGlzdF9fdGlsZS0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnbGlzdF9fdGlsZS0tYWN0aXZlJzogIXRoaXMudG8gJiYgdGhpcy5pc0FjdGl2ZVxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgdGhpcy5pc0FjdGl2ZSk7XG4gICAgfSxcbiAgICBpc0xpbms6IGZ1bmN0aW9uIGlzTGluaygpIHtcbiAgICAgIHJldHVybiB0aGlzLmhyZWYgfHwgdGhpcy50byB8fCB0aGlzLiRsaXN0ZW5lcnMgJiYgKHRoaXMuJGxpc3RlbmVycy5jbGljayB8fCB0aGlzLiRsaXN0ZW5lcnNbJyFjbGljayddKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBpc1JvdXRlTGluayA9ICF0aGlzLmluYWN0aXZlICYmIHRoaXMuaXNMaW5rO1xuXG4gICAgdmFyIF9yZWYyID0gaXNSb3V0ZUxpbmsgPyB0aGlzLmdlbmVyYXRlUm91dGVMaW5rKCkgOiB7XG4gICAgICB0YWc6IHRoaXMudGFnIHx8ICdkaXYnLFxuICAgICAgZGF0YToge1xuICAgICAgICBjbGFzczogdGhpcy5jbGFzc2VzXG4gICAgICB9XG4gICAgfSxcbiAgICAgICAgdGFnID0gX3JlZjIudGFnLFxuICAgICAgICBkYXRhID0gX3JlZjIuZGF0YTtcblxuICAgIGRhdGEuYXR0cnMgPSBPYmplY3QuYXNzaWduKHt9LCBkYXRhLmF0dHJzLCB0aGlzLiRhdHRycyk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5saXN0Q2xhc3NlcyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkXG4gICAgICB9LFxuICAgICAgb246IF9leHRlbmRzKHt9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgW2godGFnLCBkYXRhLCB0aGlzLiRzbG90cy5kZWZhdWx0KV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNTggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgZnVuY3Rpb25hbDogdHJ1ZSxcblxuICBuYW1lOiAndi1saXN0LXRpbGUtYWN0aW9uJyxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbjtcblxuICAgIGRhdGEuc3RhdGljQ2xhc3MgPSBkYXRhLnN0YXRpY0NsYXNzID8gJ2xpc3RfX3RpbGVfX2FjdGlvbiAnICsgZGF0YS5zdGF0aWNDbGFzcyA6ICdsaXN0X190aWxlX19hY3Rpb24nO1xuICAgIGlmICgoY2hpbGRyZW4gfHwgW10pLmxlbmd0aCA+IDEpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyBsaXN0X190aWxlX19hY3Rpb24tLXN0YWNrJztcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE1OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZBdmF0YXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMzQpO1xuLy8gQ29tcG9uZW50c1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIG5hbWU6ICd2LWxpc3QtdGlsZS1hdmF0YXInLFxuXG4gIHByb3BzOiB7XG4gICAgY29sb3I6IFN0cmluZyxcbiAgICBzaXplOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNDBcbiAgICB9LFxuICAgIHRpbGU6IEJvb2xlYW5cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoLCBfcmVmKSB7XG4gICAgdmFyIGRhdGEgPSBfcmVmLmRhdGEsXG4gICAgICAgIGNoaWxkcmVuID0gX3JlZi5jaGlsZHJlbixcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzO1xuXG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9ICgnbGlzdF9fdGlsZV9fYXZhdGFyICcgKyAoZGF0YS5zdGF0aWNDbGFzcyB8fCAnJykpLnRyaW0oKTtcblxuICAgIHZhciBhdmF0YXIgPSBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkF2YXRhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBjb2xvcjogcHJvcHMuY29sb3IsXG4gICAgICAgIHNpemU6IHByb3BzLnNpemUsXG4gICAgICAgIHRpbGU6IHByb3BzLnRpbGVcbiAgICAgIH1cbiAgICB9LCBbY2hpbGRyZW5dKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbYXZhdGFyXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2MCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8vIEhlbHBlcnNcblxuXG4vKipcbiAqIFNlbGVjdCBoZWxwZXJzXG4gKlxuICogQG1peGluXG4gKlxuICogSGVscGVyIG1ldGhvZHMgZm9yIHRoZVxuICogdi1zZWxlY3QgY29tcG9uZW50XG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBtZXRob2RzOiB7XG4gICAgZ2V0VGV4dDogZnVuY3Rpb24gZ2V0VGV4dChpdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQcm9wZXJ0eUZyb21JdGVtKGl0ZW0sIHRoaXMuaXRlbVRleHQpO1xuICAgIH0sXG4gICAgZ2V0VmFsdWU6IGZ1bmN0aW9uIGdldFZhbHVlKGl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFByb3BlcnR5RnJvbUl0ZW0oaXRlbSwgdGhpcy5pdGVtVmFsdWUpO1xuICAgIH0sXG4gICAgZ2V0UHJvcGVydHlGcm9tSXRlbTogZnVuY3Rpb24gZ2V0UHJvcGVydHlGcm9tSXRlbShpdGVtLCBmaWVsZCkge1xuICAgICAgaWYgKGl0ZW0gIT09IE9iamVjdChpdGVtKSkgcmV0dXJuIGl0ZW07XG5cbiAgICAgIHZhciB2YWx1ZSA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoaXRlbSwgZmllbGQpO1xuXG4gICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyA/IGl0ZW0gOiB2YWx1ZTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogU2VsZWN0IG1lbnUgbWV0aG9kc1xuICpcbiAqIEBtaXhpblxuICpcbiAqIE1lbnUgYmFzZWQgbWV0aG9kcyBmb3JcbiAqIHRoZSB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBhY3RpdmF0ZUlucHV0OiBmdW5jdGlvbiBhY3RpdmF0ZUlucHV0KCkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRydWU7XG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gICAgfSxcbiAgICBkZWFjdGl2YXRlSW5wdXQ6IGZ1bmN0aW9uIGRlYWN0aXZhdGVJbnB1dCgpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcbiAgICB9LFxuICAgIGhpZGVNZW51OiBmdW5jdGlvbiBoaWRlTWVudSgpIHtcbiAgICAgIHRoaXMubWVudUlzQWN0aXZlID0gZmFsc2U7XG4gICAgfSxcbiAgICBzaG93TWVudTogZnVuY3Rpb24gc2hvd01lbnUoKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlSW5wdXQoKTtcbiAgICAgIHRoaXMuc2hvd01lbnVJdGVtcygpO1xuICAgICAgdGhpcy5pc011bHRpcGxlICYmIHRoaXMucmVzZXRNZW51SW5kZXgoKTtcbiAgICB9LFxuICAgIHNob3dNZW51SXRlbXM6IGZ1bmN0aW9uIHNob3dNZW51SXRlbXMoKSB7XG4gICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IHRydWU7XG4gICAgfSxcbiAgICB0b2dnbGVNZW51OiBmdW5jdGlvbiB0b2dnbGVNZW51KCkge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSB8fCB0aGlzLm1lbnVJc1Zpc2libGUpIHJldHVybiB0aGlzLmhpZGVNZW51KCk7XG5cbiAgICAgIHRoaXMuc2hvd01lbnUoKTtcbiAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTYyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgYXBwZW5kSWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2Fycm93X2Ryb3BfZG93bidcbiAgICB9LFxuICAgIGFwcGVuZEljb25DYjogRnVuY3Rpb24sXG4gICAgYXR0YWNoOiBCb29sZWFuLFxuICAgIGF1dG86IEJvb2xlYW4sXG4gICAgYXV0b2NvbXBsZXRlOiBCb29sZWFuLFxuICAgIGJyb3dzZXJBdXRvY29tcGxldGU6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdvZmYnXG4gICAgfSxcbiAgICBjYWNoZUl0ZW1zOiBCb29sZWFuLFxuICAgIGNoaXBzOiBCb29sZWFuLFxuICAgIGNsZWFyYWJsZTogQm9vbGVhbixcbiAgICBjb21ib2JveDogQm9vbGVhbixcbiAgICBjb250ZW50Q2xhc3M6IFN0cmluZyxcbiAgICBkZWxldGFibGVDaGlwczogQm9vbGVhbixcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBlZGl0YWJsZTogQm9vbGVhbixcbiAgICBoaWRlU2VsZWN0ZWQ6IEJvb2xlYW4sXG4gICAgaXRlbXM6IHtcbiAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGl0ZW1BdmF0YXI6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdhdmF0YXInXG4gICAgfSxcbiAgICBpdGVtRGlzYWJsZWQ6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdkaXNhYmxlZCdcbiAgICB9LFxuICAgIGl0ZW1UZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9LFxuICAgIGl0ZW1WYWx1ZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3ZhbHVlJ1xuICAgIH0sXG4gICAgbWF4SGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMzAwXG4gICAgfSxcbiAgICBtaW5XaWR0aDoge1xuICAgICAgdHlwZTogW0Jvb2xlYW4sIE51bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfSxcbiAgICBtdWx0aXBsZTogQm9vbGVhbixcbiAgICBtdWx0aUxpbmU6IEJvb2xlYW4sXG4gICAgb3Blbk9uQ2xlYXI6IEJvb2xlYW4sXG4gICAgb3ZlcmZsb3c6IEJvb2xlYW4sXG4gICAgcmV0dXJuT2JqZWN0OiBCb29sZWFuLFxuICAgIHNlYXJjaElucHV0OiB7XG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBzZWdtZW50ZWQ6IEJvb2xlYW4sXG4gICAgc2luZ2xlTGluZTogQm9vbGVhbixcbiAgICB0YWdzOiBCb29sZWFuLFxuICAgIHZhbHVlQ29tcGFyYXRvcjoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdChhLCBiKSB7XG4gICAgICAgIGlmIChhICE9PSBPYmplY3QoYSkpIHJldHVybiBhID09PSBiO1xuICAgICAgICB2YXIgYVByb3BzID0gT2JqZWN0LmtleXMoYSk7XG4gICAgICAgIHZhciBiUHJvcHMgPSBPYmplY3Qua2V5cyhiKTtcbiAgICAgICAgcmV0dXJuIGFQcm9wcy5sZW5ndGggPT09IGJQcm9wcy5sZW5ndGggJiYgYVByb3BzLmV2ZXJ5KGZ1bmN0aW9uIChwcm9wTmFtZSkge1xuICAgICAgICAgIHJldHVybiBhW3Byb3BOYW1lXSA9PT0gYltwcm9wTmFtZV07XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTYzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBTZWxlY3Qgd2F0Y2hlcnNcbiAqXG4gKiBAbWl4aW5cbiAqXG4gKiBXYXRjaGVycyBmb3IgdGhlXG4gKiB2LXNlbGVjdCBjb21wb25lbnRcbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHdhdGNoOiB7XG4gICAgZmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIHRoaXMuJHJlZnMubWVudSAmJiB0aGlzLiRyZWZzLm1lbnUudXBkYXRlRGltZW5zaW9ucygpO1xuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIC8vIFNlYXJjaCBmb3IgYW4gZXhpc3RpbmcgaXRlbSB3aGVuIGFcbiAgICAgIC8vIHZhbHVlIHdhcyBzZWxlY3RlZCBmcm9tIHRoZSBtZW51XG4gICAgICBpZiAodGhpcy5jb21ib2JveCAmJiB0aGlzLmlzTm90RmlsdGVyaW5nKSB7XG4gICAgICAgIHZhbCA9IHRoaXMuZmluZEV4aXN0aW5nSXRlbSh2YWwpO1xuICAgICAgfVxuXG4gICAgICAvLyBQb3B1bGF0ZSBzZWxlY3RlZCBpdGVtc1xuICAgICAgdGhpcy5nZW5TZWxlY3RlZEl0ZW1zKHZhbCk7XG5cbiAgICAgIC8vIE9ubHkgZmlyZSBhbiB1cGRhdGVcbiAgICAgIC8vIGlmIHZhbHVlcyBkbyBub3RcbiAgICAgIC8vIG1hdGNoXG4gICAgICB2YWwgIT09IHRoaXMudmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWwpO1xuXG4gICAgICAvLyBXaGVuIGlucHV0VmFsdWUgaXMgY2hhbmdlZFxuICAgICAgLy8gYW5kIGNvbWJvYm94IGlzIHRydWUgc2V0XG4gICAgICAvLyBtZW51IHByb3BlcnR5IHRvIGZhbHNlXG4gICAgICBpZiAodGhpcy5jb21ib2JveCkgdGhpcy5tZW51SXNBY3RpdmUgPSBmYWxzZTtcbiAgICB9LFxuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNoaXBzICYmICF0aGlzLiRzY29wZWRTbG90cy5zZWxlY3Rpb24pIHtcbiAgICAgICAgICB0aGlzLnNlYXJjaFZhbHVlID0gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuYmx1cigpO1xuXG4gICAgICBpZiAodGhpcy50YWdzICYmIHRoaXMuc2VhcmNoVmFsdWUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVUYWdzKHRoaXMuc2VhcmNoVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jb21ib2JveCAmJiB0aGlzLmxhenlTZWFyY2ggJiYgIXRoaXMuaXNOb3RGaWx0ZXJpbmcpIHtcbiAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5sYXp5U2VhcmNoO1xuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IHNldCBzZWFyY2ggdmFsdWUgaWZcbiAgICAgIC8vIHRoZXJlIGlzIGEgdmFsdWUgdG8gc2V0XG4gICAgICB0aGlzLnNlYXJjaFZhbHVlICYmICh0aGlzLnNlYXJjaFZhbHVlID0gbnVsbCk7XG4gICAgfSxcbiAgICBpc0Jvb3RlZDogZnVuY3Rpb24gaXNCb290ZWQoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpcy5jb250ZW50ICYmIF90aGlzLmNvbnRlbnQuYWRkRXZlbnRMaXN0ZW5lcikge1xuICAgICAgICAgIF90aGlzLmNvbnRlbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgX3RoaXMub25TY3JvbGwsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXModmFsKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuY2FjaGVJdGVtcykge1xuICAgICAgICB0aGlzLmNhY2hlZEl0ZW1zID0gdGhpcy5maWx0ZXJEdXBsaWNhdGVzKHRoaXMuY2FjaGVkSXRlbXMuY29uY2F0KHZhbCkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnJlc2V0TWVudUluZGV4KCk7XG5cbiAgICAgIC8vIFRhZ3MgYW5kIGNvbWJvYm94IHNob3VsZCBub3RcbiAgICAgIC8vIHByZS1zZWxlY3QgdGhlIGZpcnN0IGVudHJ5XG4gICAgICBpZiAodGhpcy5zZWFyY2hWYWx1ZSAmJiAhdGhpcy5pc0FueVZhbHVlQWxsb3dlZCkge1xuICAgICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMi5zZXRNZW51SW5kZXgoMCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmdlblNlbGVjdGVkSXRlbXMoKTtcbiAgICB9LFxuICAgIG1lbnVJc0FjdGl2ZTogZnVuY3Rpb24gbWVudUlzQWN0aXZlKHZhbCkge1xuICAgICAgaWYgKCF2YWwpIHJldHVybjtcblxuICAgICAgdGhpcy5pc0Jvb3RlZCA9IHRydWU7XG4gICAgfSxcbiAgICBpc011bHRpcGxlOiBmdW5jdGlvbiBpc011bHRpcGxlKHZhbCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdmFsID8gW10gOiBudWxsO1xuICAgIH0sXG4gICAgc2VhcmNoSW5wdXQ6IGZ1bmN0aW9uIHNlYXJjaElucHV0KHZhbCkge1xuICAgICAgdGhpcy5zZWFyY2hWYWx1ZSA9IHZhbDtcbiAgICB9LFxuICAgIHNlYXJjaFZhbHVlOiBmdW5jdGlvbiBzZWFyY2hWYWx1ZSh2YWwsIHByZXYpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICAvLyBXcmFwIGlucHV0IHRvIG5leHQgbGluZSBpZiBvdmVyZmxvd2luZ1xuICAgICAgaWYgKHRoaXMuJHJlZnMuaW5wdXQuc2Nyb2xsV2lkdGggPiB0aGlzLiRyZWZzLmlucHV0LmNsaWVudFdpZHRoKSB7XG4gICAgICAgIHRoaXMuc2hvdWxkQnJlYWsgPSB0cnVlO1xuICAgICAgICB0aGlzLiRuZXh0VGljayh0aGlzLiRyZWZzLm1lbnUudXBkYXRlRGltZW5zaW9ucyk7XG4gICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICB0aGlzLnNob3VsZEJyZWFrID0gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIC8vIEFjdGl2YXRlIG1lbnUgaWYgaW5hY3RpdmUgYW5kIHNlYXJjaGluZ1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUgJiYgIXRoaXMubWVudUlzQWN0aXZlICYmIHZhbCAhPT0gdGhpcy5nZXRUZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKSkge1xuICAgICAgICB0aGlzLm1lbnVJc0FjdGl2ZSA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgcmVzZXQgbGlzdCBpbmRleFxuICAgICAgLy8gaWYgdHlwaW5nIGluIHNlYXJjaFxuICAgICAgIXZhbCAmJiBwcmV2ICYmIHRoaXMucmVzZXRNZW51SW5kZXgoKTtcblxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAodmFsICYmICFfdGhpczMuaXNBbnlWYWx1ZUFsbG93ZWQpIHtcbiAgICAgICAgICBfdGhpczMuc2V0TWVudUluZGV4KDApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWwgIT09IG51bGwgJiYgX3RoaXMzLnNlbGVjdGVkSW5kZXggPiAtMSkge1xuICAgICAgICAgIF90aGlzMy5zZWxlY3RlZEluZGV4ID0gLTE7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgc2VsZWN0ZWRJdGVtczogZnVuY3Rpb24gc2VsZWN0ZWRJdGVtcygpIHtcbiAgICAgIGlmICh0aGlzLmlzQXV0b2NvbXBsZXRlKSB7XG4gICAgICAgIHRoaXMuJG5leHRUaWNrKHRoaXMuJHJlZnMubWVudS51cGRhdGVEaW1lbnNpb25zKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSh2YWwpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHZhbDtcbiAgICAgIHRoaXMudmFsaWRhdGUoKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE2NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWVGFibGVPdmVyZmxvdyAqL1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGFUYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkVkaXREaWFsb2dfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTcyKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRhVGFibGUgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZFZGl0RGlhbG9nICovXG5cblxuXG5cblxudmFyIFZUYWJsZU92ZXJmbG93ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0YWJsZV9fb3ZlcmZsb3cnKTtcblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRWRpdERpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkVkaXREaWFsb2dfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVlRhYmxlT3ZlcmZsb3cubmFtZSwgVlRhYmxlT3ZlcmZsb3cpO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZEYXRhVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTY1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGFibGVzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYmxlc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYmxlc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV90YWJsZV9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19kYXRhX3RhYmxlX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfZGF0YV90YWJsZV9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RhdGFfaXRlcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2hlYWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTY4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19ib2R5X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfZm9vdF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3Byb2dyZXNzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBJbXBvcnRpbmcgZG9lcyBub3Qgd29yayBwcm9wZXJseVxudmFyIFZUYWJsZU92ZXJmbG93ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0YWJsZV9fb3ZlcmZsb3cnKTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWRhdGEtdGFibGUnLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGlvbnNDbGFzc2VzOiAnZGF0YXRhYmxlX19hY3Rpb25zJyxcbiAgICAgIGFjdGlvbnNSYW5nZUNvbnRyb2xzQ2xhc3NlczogJ2RhdGF0YWJsZV9fYWN0aW9uc19fcmFuZ2UtY29udHJvbHMnLFxuICAgICAgYWN0aW9uc1NlbGVjdENsYXNzZXM6ICdkYXRhdGFibGVfX2FjdGlvbnNfX3NlbGVjdCcsXG4gICAgICBhY3Rpb25zUGFnaW5hdGlvbkNsYXNzZXM6ICdkYXRhdGFibGVfX2FjdGlvbnNfX3BhZ2luYXRpb24nXG4gICAgfTtcbiAgfSxcblxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2RhdGFfaXRlcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfaGVhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19ib2R5X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX2Zvb3RfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfcHJvZ3Jlc3NfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvcHM6IHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBoZWFkZXJUZXh0OiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9LFxuICAgIGhpZGVIZWFkZXJzOiBCb29sZWFuLFxuICAgIHJvd3NQZXJQYWdlVGV4dDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ1Jvd3MgcGVyIHBhZ2U6J1xuICAgIH0sXG4gICAgY3VzdG9tRmlsdGVyOiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KGl0ZW1zLCBzZWFyY2gsIGZpbHRlciwgaGVhZGVycykge1xuICAgICAgICBzZWFyY2ggPSBzZWFyY2gudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBpZiAoc2VhcmNoLnRyaW0oKSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgICAgICB2YXIgcHJvcHMgPSBoZWFkZXJzLm1hcChmdW5jdGlvbiAoaCkge1xuICAgICAgICAgIHJldHVybiBoLnZhbHVlO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgcmV0dXJuIHByb3BzLnNvbWUoZnVuY3Rpb24gKHByb3ApIHtcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXIoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fdXRpbF9oZWxwZXJzX19bXCJpXCIgLyogZ2V0T2JqZWN0VmFsdWVCeVBhdGggKi9dKShpdGVtLCBwcm9wKSwgc2VhcmNoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdkYXRhdGFibGUgdGFibGUnOiB0cnVlLFxuICAgICAgICAnZGF0YXRhYmxlLS1zZWxlY3QtYWxsJzogdGhpcy5zZWxlY3RBbGwgIT09IGZhbHNlLFxuICAgICAgICAndGhlbWUtLWRhcmsnOiB0aGlzLmRhcmssXG4gICAgICAgICd0aGVtZS0tbGlnaHQnOiB0aGlzLmxpZ2h0XG4gICAgICB9O1xuICAgIH0sXG4gICAgZmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlcmVkSXRlbXNJbXBsKHRoaXMuaGVhZGVycyk7XG4gICAgfSxcbiAgICBoZWFkZXJDb2x1bW5zOiBmdW5jdGlvbiBoZWFkZXJDb2x1bW5zKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaGVhZGVycy5sZW5ndGggKyAodGhpcy5zZWxlY3RBbGwgIT09IGZhbHNlKTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGhhc1RhZzogZnVuY3Rpb24gaGFzVGFnKGVsZW1lbnRzLCB0YWcpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGVsZW1lbnRzKSAmJiBlbGVtZW50cy5maW5kKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIHJldHVybiBlLnRhZyA9PT0gdGFnO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5UUjogZnVuY3Rpb24gZ2VuVFIoY2hpbGRyZW4pIHtcbiAgICAgIHZhciBkYXRhID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiB7fTtcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RyJywgZGF0YSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgfSxcblxuICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgIHZhciBmaXJzdFNvcnRhYmxlID0gdGhpcy5oZWFkZXJzLmZpbmQoZnVuY3Rpb24gKGgpIHtcbiAgICAgIHJldHVybiAhKCdzb3J0YWJsZScgaW4gaCkgfHwgaC5zb3J0YWJsZTtcbiAgICB9KTtcblxuICAgIHRoaXMuZGVmYXVsdFBhZ2luYXRpb24uc29ydEJ5ID0gIXRoaXMuZGlzYWJsZUluaXRpYWxTb3J0ICYmIGZpcnN0U29ydGFibGUgPyBmaXJzdFNvcnRhYmxlLnZhbHVlIDogbnVsbDtcblxuICAgIHRoaXMuaW5pdFBhZ2luYXRpb24oKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciB0YWJsZU92ZXJmbG93ID0gaChWVGFibGVPdmVyZmxvdywge30sIFtoKCd0YWJsZScsIHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgIH0sIFt0aGlzLmdlblRIZWFkKCksIHRoaXMuZ2VuVEJvZHkoKSwgdGhpcy5nZW5URm9vdCgpXSldKTtcblxuICAgIHJldHVybiBoKCdkaXYnLCBbdGFibGVPdmVyZmxvdywgdGhpcy5nZW5BY3Rpb25zRm9vdGVyKCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTY2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTY3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTY4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9jb25zb2xlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNoZWNrYm94X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgcHJvcHM6IHtcbiAgICBzb3J0SWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2Fycm93X3Vwd2FyZCdcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblRIZWFkOiBmdW5jdGlvbiBnZW5USGVhZCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICh0aGlzLmhpZGVIZWFkZXJzKSByZXR1cm47IC8vIEV4aXQgRWFybHkgc2luY2Ugbm8gaGVhZGVycyBhcmUgbmVlZGVkLlxuXG4gICAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgICAgaWYgKHRoaXMuJHNjb3BlZFNsb3RzLmhlYWRlcnMpIHtcbiAgICAgICAgdmFyIHJvdyA9IHRoaXMuJHNjb3BlZFNsb3RzLmhlYWRlcnMoe1xuICAgICAgICAgIGhlYWRlcnM6IHRoaXMuaGVhZGVycyxcbiAgICAgICAgICBpbmRldGVybWluYXRlOiB0aGlzLmluZGV0ZXJtaW5hdGUsXG4gICAgICAgICAgYWxsOiB0aGlzLmV2ZXJ5SXRlbVxuICAgICAgICB9KTtcblxuICAgICAgICBjaGlsZHJlbiA9IFt0aGlzLmhhc1RhZyhyb3csICd0aCcpID8gdGhpcy5nZW5UUihyb3cpIDogcm93LCB0aGlzLmdlblRQcm9ncmVzcygpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBfcm93ID0gdGhpcy5oZWFkZXJzLm1hcChmdW5jdGlvbiAobykge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5nZW5IZWFkZXIobyk7XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgY2hlY2tib3ggPSB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNoZWNrYm94X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgICAgbGlnaHQ6IHRoaXMubGlnaHQsXG4gICAgICAgICAgICBjb2xvcjogdGhpcy5zZWxlY3RBbGwgPT09IHRydWUgPyAnJyA6IHRoaXMuc2VsZWN0QWxsLFxuICAgICAgICAgICAgaGlkZURldGFpbHM6IHRydWUsXG4gICAgICAgICAgICBpbnB1dFZhbHVlOiB0aGlzLmV2ZXJ5SXRlbSxcbiAgICAgICAgICAgIGluZGV0ZXJtaW5hdGU6IHRoaXMuaW5kZXRlcm1pbmF0ZVxuICAgICAgICAgIH0sXG4gICAgICAgICAgb246IHsgY2hhbmdlOiB0aGlzLnRvZ2dsZSB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaGFzU2VsZWN0QWxsICYmIF9yb3cudW5zaGlmdCh0aGlzLiRjcmVhdGVFbGVtZW50KCd0aCcsIFtjaGVja2JveF0pKTtcblxuICAgICAgICBjaGlsZHJlbiA9IFt0aGlzLmdlblRSKF9yb3cpLCB0aGlzLmdlblRQcm9ncmVzcygpXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3RoZWFkJywgW2NoaWxkcmVuXSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXI6IGZ1bmN0aW9uIGdlbkhlYWRlcihoZWFkZXIpIHtcbiAgICAgIHZhciBhcnJheSA9IFt0aGlzLiRzY29wZWRTbG90cy5oZWFkZXJDZWxsID8gdGhpcy4kc2NvcGVkU2xvdHMuaGVhZGVyQ2VsbCh7IGhlYWRlcjogaGVhZGVyIH0pIDogaGVhZGVyW3RoaXMuaGVhZGVyVGV4dF1dO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudC5hcHBseSh0aGlzLCBbJ3RoJ10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0aGlzLmdlbkhlYWRlckRhdGEoaGVhZGVyLCBhcnJheSkpKSk7XG4gICAgfSxcbiAgICBnZW5IZWFkZXJEYXRhOiBmdW5jdGlvbiBnZW5IZWFkZXJEYXRhKGhlYWRlciwgY2hpbGRyZW4pIHtcbiAgICAgIHZhciBjbGFzc2VzID0gWydjb2x1bW4nXTtcbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBrZXk6IGhlYWRlclt0aGlzLmhlYWRlclRleHRdLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHJvbGU6ICdjb2x1bW5oZWFkZXInLFxuICAgICAgICAgIHNjb3BlOiAnY29sJyxcbiAgICAgICAgICB3aWR0aDogaGVhZGVyLndpZHRoIHx8IG51bGwsXG4gICAgICAgICAgJ2FyaWEtbGFiZWwnOiBoZWFkZXJbdGhpcy5oZWFkZXJUZXh0XSB8fCAnJyxcbiAgICAgICAgICAnYXJpYS1zb3J0JzogJ25vbmUnXG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGlmIChoZWFkZXIuc29ydGFibGUgPT0gbnVsbCB8fCBoZWFkZXIuc29ydGFibGUpIHtcbiAgICAgICAgdGhpcy5nZW5IZWFkZXJTb3J0aW5nRGF0YShoZWFkZXIsIGNoaWxkcmVuLCBkYXRhLCBjbGFzc2VzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRhdGEuYXR0cnNbJ2FyaWEtbGFiZWwnXSArPSAnOiBOb3Qgc29ydGVkLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgfVxuXG4gICAgICBjbGFzc2VzLnB1c2goJ3RleHQteHMtJyArIChoZWFkZXIuYWxpZ24gfHwgJ2xlZnQnKSk7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXIuY2xhc3MpKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaC5hcHBseShjbGFzc2VzLCBfdG9Db25zdW1hYmxlQXJyYXkoaGVhZGVyLmNsYXNzKSk7XG4gICAgICB9IGVsc2UgaWYgKGhlYWRlci5jbGFzcykge1xuICAgICAgICBjbGFzc2VzLnB1c2goaGVhZGVyLmNsYXNzKTtcbiAgICAgIH1cbiAgICAgIGRhdGEuY2xhc3MgPSBjbGFzc2VzO1xuXG4gICAgICByZXR1cm4gW2RhdGEsIGNoaWxkcmVuXTtcbiAgICB9LFxuICAgIGdlbkhlYWRlclNvcnRpbmdEYXRhOiBmdW5jdGlvbiBnZW5IZWFkZXJTb3J0aW5nRGF0YShoZWFkZXIsIGNoaWxkcmVuLCBkYXRhLCBjbGFzc2VzKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKCEoJ3ZhbHVlJyBpbiBoZWFkZXIpKSB7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfY29uc29sZV9fW1wiYlwiIC8qIGNvbnNvbGVXYXJuICovXSkoJ0hlYWRlcnMgbXVzdCBoYXZlIGEgdmFsdWUgcHJvcGVydHkgdGhhdCBjb3JyZXNwb25kcyB0byBhIHZhbHVlIGluIHRoZSB2LW1vZGVsIGFycmF5JywgdGhpcyk7XG4gICAgICB9XG5cbiAgICAgIGRhdGEuYXR0cnMudGFiSW5kZXggPSAwO1xuICAgICAgZGF0YS5vbiA9IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgIF90aGlzMi5leHBhbmRlZCA9IHt9O1xuICAgICAgICAgIF90aGlzMi5zb3J0KGhlYWRlci52YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIGtleWRvd246IGZ1bmN0aW9uIGtleWRvd24oZSkge1xuICAgICAgICAgIC8vIGNoZWNrIGZvciBzcGFjZVxuICAgICAgICAgIGlmIChlLmtleUNvZGUgPT09IDMyKSB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBfdGhpczIuc29ydChoZWFkZXIudmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY2xhc3Nlcy5wdXNoKCdzb3J0YWJsZScpO1xuICAgICAgdmFyIGljb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIHNtYWxsOiB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0sIHRoaXMuc29ydEljb24pO1xuICAgICAgaWYgKCFoZWFkZXIuYWxpZ24gfHwgaGVhZGVyLmFsaWduID09PSAnbGVmdCcpIHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaChpY29uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnVuc2hpZnQoaWNvbik7XG4gICAgICB9XG5cbiAgICAgIHZhciBwYWdpbmF0aW9uID0gdGhpcy5jb21wdXRlZFBhZ2luYXRpb247XG4gICAgICB2YXIgYmVpbmdTb3J0ZWQgPSBwYWdpbmF0aW9uLnNvcnRCeSA9PT0gaGVhZGVyLnZhbHVlO1xuICAgICAgaWYgKGJlaW5nU29ydGVkKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaCgnYWN0aXZlJyk7XG4gICAgICAgIGlmIChwYWdpbmF0aW9uLmRlc2NlbmRpbmcpIHtcbiAgICAgICAgICBjbGFzc2VzLnB1c2goJ2Rlc2MnKTtcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLXNvcnQnXSA9ICdkZXNjZW5kaW5nJztcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogU29ydGVkIGRlc2NlbmRpbmcuIEFjdGl2YXRlIHRvIHJlbW92ZSBzb3J0aW5nLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNsYXNzZXMucHVzaCgnYXNjJyk7XG4gICAgICAgICAgZGF0YS5hdHRyc1snYXJpYS1zb3J0J10gPSAnYXNjZW5kaW5nJztcbiAgICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogU29ydGVkIGFzY2VuZGluZy4gQWN0aXZhdGUgdG8gc29ydCBkZXNjZW5kaW5nLic7IC8vIFRPRE86IExvY2FsaXphdGlvblxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhLmF0dHJzWydhcmlhLWxhYmVsJ10gKz0gJzogTm90IHNvcnRlZC4gQWN0aXZhdGUgdG8gc29ydCBhc2NlbmRpbmcuJzsgLy8gVE9ETzogTG9jYWxpemF0aW9uXG4gICAgICB9XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNjkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19leHBhbmRfdHJhbnNpdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0MSk7XG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UQm9keTogZnVuY3Rpb24gZ2VuVEJvZHkoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSB0aGlzLmdlbkl0ZW1zKCk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0Ym9keScsIGNoaWxkcmVuKTtcbiAgICB9LFxuICAgIGdlbkV4cGFuZGVkUm93OiBmdW5jdGlvbiBnZW5FeHBhbmRlZFJvdyhwcm9wcykge1xuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGlmICh0aGlzLmlzRXhwYW5kZWQocHJvcHMuaXRlbSkpIHtcbiAgICAgICAgdmFyIGV4cGFuZCA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgICBjbGFzczogJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbnRlbnQnLFxuICAgICAgICAgIGtleTogcHJvcHMuaXRlbVt0aGlzLml0ZW1LZXldXG4gICAgICAgIH0sIHRoaXMuJHNjb3BlZFNsb3RzLmV4cGFuZChwcm9wcykpO1xuXG4gICAgICAgIGNoaWxkcmVuLnB1c2goZXhwYW5kKTtcbiAgICAgIH1cblxuICAgICAgdmFyIHRyYW5zaXRpb24gPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uLWdyb3VwJywge1xuICAgICAgICBjbGFzczogJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbCcsXG4gICAgICAgIGF0dHJzOiB7IGNvbHNwYW46IHRoaXMuaGVhZGVyQ29sdW1ucyB9LFxuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIHRhZzogJ3RkJ1xuICAgICAgICB9LFxuICAgICAgICBvbjogT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdHJhbnNpdGlvbnNfZXhwYW5kX3RyYW5zaXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSkoJ2RhdGF0YWJsZV9fZXhwYW5kLWNvbC0tZXhwYW5kZWQnKVxuICAgICAgfSwgY2hpbGRyZW4pO1xuXG4gICAgICByZXR1cm4gdGhpcy5nZW5UUihbdHJhbnNpdGlvbl0sIHsgY2xhc3M6ICdkYXRhdGFibGVfX2V4cGFuZC1yb3cnIH0pO1xuICAgIH0sXG4gICAgZ2VuRmlsdGVyZWRJdGVtczogZnVuY3Rpb24gZ2VuRmlsdGVyZWRJdGVtcygpIHtcbiAgICAgIGlmICghdGhpcy4kc2NvcGVkU2xvdHMuaXRlbXMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciByb3dzID0gW107XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDAsIGxlbiA9IHRoaXMuZmlsdGVyZWRJdGVtcy5sZW5ndGg7IGluZGV4IDwgbGVuOyArK2luZGV4KSB7XG4gICAgICAgIHZhciBpdGVtID0gdGhpcy5maWx0ZXJlZEl0ZW1zW2luZGV4XTtcbiAgICAgICAgdmFyIHByb3BzID0gdGhpcy5jcmVhdGVQcm9wcyhpdGVtLCBpbmRleCk7XG4gICAgICAgIHZhciByb3cgPSB0aGlzLiRzY29wZWRTbG90cy5pdGVtcyhwcm9wcyk7XG5cbiAgICAgICAgcm93cy5wdXNoKHRoaXMuaGFzVGFnKHJvdywgJ3RkJykgPyB0aGlzLmdlblRSKHJvdywge1xuICAgICAgICAgIGtleTogaW5kZXgsXG4gICAgICAgICAgYXR0cnM6IHsgYWN0aXZlOiB0aGlzLmlzU2VsZWN0ZWQoaXRlbSkgfVxuICAgICAgICB9KSA6IHJvdyk7XG5cbiAgICAgICAgaWYgKHRoaXMuJHNjb3BlZFNsb3RzLmV4cGFuZCkge1xuICAgICAgICAgIHZhciBleHBhbmRSb3cgPSB0aGlzLmdlbkV4cGFuZGVkUm93KHByb3BzKTtcbiAgICAgICAgICByb3dzLnB1c2goZXhwYW5kUm93KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcm93cztcbiAgICB9LFxuICAgIGdlbkVtcHR5SXRlbXM6IGZ1bmN0aW9uIGdlbkVtcHR5SXRlbXMoY29udGVudCkge1xuICAgICAgaWYgKHRoaXMuaGFzVGFnKGNvbnRlbnQsICd0cicpKSB7XG4gICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmhhc1RhZyhjb250ZW50LCAndGQnKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZW5UUihjb250ZW50KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdlblRSKFt0aGlzLiRjcmVhdGVFbGVtZW50KCd0ZCcsIHtcbiAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgJ3RleHQteHMtY2VudGVyJzogdHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBhdHRyczogeyBjb2xzcGFuOiB0aGlzLmhlYWRlckNvbHVtbnMgfVxuICAgICAgICB9LCBjb250ZW50KV0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5URm9vdDogZnVuY3Rpb24gZ2VuVEZvb3QoKSB7XG4gICAgICBpZiAoIXRoaXMuJHNsb3RzLmZvb3Rlcikge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgdmFyIGZvb3RlciA9IHRoaXMuJHNsb3RzLmZvb3RlcjtcbiAgICAgIHZhciByb3cgPSB0aGlzLmhhc1RhZyhmb290ZXIsICd0ZCcpID8gdGhpcy5nZW5UUihmb290ZXIpIDogZm9vdGVyO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgndGZvb3QnLCBbcm93XSk7XG4gICAgfSxcbiAgICBnZW5BY3Rpb25zRm9vdGVyOiBmdW5jdGlvbiBnZW5BY3Rpb25zRm9vdGVyKCkge1xuICAgICAgaWYgKHRoaXMuaGlkZUFjdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgICAgfSwgdGhpcy5nZW5BY3Rpb25zKCkpO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcxICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG1ldGhvZHM6IHtcbiAgICBnZW5UUHJvZ3Jlc3M6IGZ1bmN0aW9uIGdlblRQcm9ncmVzcygpIHtcbiAgICAgIHZhciBjb2wgPSB0aGlzLiRjcmVhdGVFbGVtZW50KCd0aCcsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdjb2x1bW4nLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIGNvbHNwYW46IHRoaXMuaGVhZGVyQ29sdW1uc1xuICAgICAgICB9XG4gICAgICB9LCBbdGhpcy5nZW5Qcm9ncmVzcygpXSk7XG5cbiAgICAgIHJldHVybiB0aGlzLmdlblRSKFtjb2xdLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnZGF0YXRhYmxlX19wcm9ncmVzcydcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTcyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc21hbGxfZGlhbG9nX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTczKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NtYWxsX2RpYWxvZ19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NtYWxsX2RpYWxvZ19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3JldHVybmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkJ0bl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WTWVudV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMCk7XG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWVkaXQtZGlhbG9nJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZXR1cm5hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZSxcbiAgICAgIGlzU2F2aW5nOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGNhbmNlbFRleHQ6IHtcbiAgICAgIGRlZmF1bHQ6ICdDYW5jZWwnXG4gICAgfSxcbiAgICBsYXJnZTogQm9vbGVhbixcbiAgICBsYXp5OiBCb29sZWFuLFxuICAgIHBlcnNpc3RlbnQ6IEJvb2xlYW4sXG4gICAgc2F2ZVRleHQ6IHtcbiAgICAgIGRlZmF1bHQ6ICdTYXZlJ1xuICAgIH0sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3NsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uJ1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIHZhbCAmJiBzZXRUaW1lb3V0KHRoaXMuZm9jdXMsIDUwKTsgLy8gR2l2ZSBET00gdGltZSB0byBwYWludFxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgY2FuY2VsOiBmdW5jdGlvbiBjYW5jZWwoKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoKSB7XG4gICAgICB2YXIgaW5wdXQgPSB0aGlzLiRyZWZzLmNvbnRlbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICAgIGlucHV0ICYmIGlucHV0LmZvY3VzKCk7XG4gICAgfSxcbiAgICBnZW5CdXR0b246IGZ1bmN0aW9uIGdlbkJ1dHRvbihmbiwgdGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQnRuX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBmbGF0OiB0cnVlLFxuICAgICAgICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgICAgICAgbGlnaHQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHsgY2xpY2s6IGZuIH1cbiAgICAgIH0sIHRleHQpO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgICdjbGFzcyc6ICdzbWFsbC1kaWFsb2dfX2FjdGlvbnMnXG4gICAgICB9LCBbdGhpcy5nZW5CdXR0b24odGhpcy5jYW5jZWwsIHRoaXMuY2FuY2VsVGV4dCksIHRoaXMuZ2VuQnV0dG9uKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLnNhdmUoX3RoaXMucmV0dXJuVmFsdWUpO1xuICAgICAgfSwgdGhpcy5zYXZlVGV4dCldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQ6IGZ1bmN0aW9uIGdlbkNvbnRlbnQoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAgIHZhciBpbnB1dCA9IF90aGlzMi4kcmVmcy5jb250ZW50LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XG4gICAgICAgICAgICBlLmtleUNvZGUgPT09IDI3ICYmIF90aGlzMi5jYW5jZWwoKTtcbiAgICAgICAgICAgIGUua2V5Q29kZSA9PT0gMTMgJiYgaW5wdXQgJiYgX3RoaXMyLnNhdmUoaW5wdXQudmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAnY29udGVudCdcbiAgICAgIH0sIFt0aGlzLiRzbG90cy5pbnB1dF0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZNZW51X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICdjbGFzcyc6ICdzbWFsbC1kaWFsb2cnLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgY29udGVudENsYXNzOiAnc21hbGwtZGlhbG9nX19jb250ZW50JyxcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy50cmFuc2l0aW9uLFxuICAgICAgICBvcmlnaW46ICd0b3AgcmlnaHQnLFxuICAgICAgICByaWdodDogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgIGNsb3NlT25DbGljazogIXRoaXMucGVyc2lzdGVudCxcbiAgICAgICAgY2xvc2VPbkNvbnRlbnRDbGljazogZmFsc2UsXG4gICAgICAgIGxhenk6IHRoaXMubGF6eVxuICAgICAgfSxcbiAgICAgIG9uOiB7XG4gICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCh2YWwpIHtcbiAgICAgICAgICByZXR1cm4gX3RoaXMzLmlzQWN0aXZlID0gdmFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgW2goJ2EnLCB7XG4gICAgICBzbG90OiAnYWN0aXZhdG9yJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpLCB0aGlzLmdlbkNvbnRlbnQoKSwgdGhpcy5sYXJnZSA/IHRoaXMuZ2VuQWN0aW9ucygpIDogbnVsbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNzMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxNzQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0ZVBpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNzUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGVQaWNrZXJUaXRsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlckhlYWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1OSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRGF0ZVBpY2tlckRhdGVUYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2MCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlck1vbnRoVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fVkRhdGVQaWNrZXJZZWFyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRGF0ZVBpY2tlciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkRhdGVQaWNrZXJUaXRsZSAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkRhdGVQaWNrZXJIZWFkZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRlUGlja2VyRGF0ZVRhYmxlICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRGF0ZVBpY2tlck1vbnRoVGFibGUgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZEYXRlUGlja2VyWWVhcnMgKi9cblxuXG5cblxuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGF0ZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGVQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlclRpdGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlclRpdGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkRhdGVQaWNrZXJIZWFkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZEYXRlUGlja2VySGVhZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJEYXRlVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZEYXRlUGlja2VyRGF0ZVRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkRhdGVQaWNrZXJNb250aFRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlck1vbnRoVGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE3NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZEYXRlUGlja2VyVGl0bGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkRhdGVQaWNrZXJIZWFkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTkpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkRhdGVQaWNrZXJEYXRlVGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJNb250aFRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZEYXRlUGlja2VyWWVhcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3BpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzdfX3V0aWxfaXNEYXRlQWxsb3dlZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2Mik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8vIENvbXBvbmVudHNcblxuXG5cblxuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZGF0ZS1waWNrZXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3BpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgbm93ID0gbmV3IERhdGUoKTtcbiAgICByZXR1cm4ge1xuICAgICAgYWN0aXZlUGlja2VyOiB0aGlzLnR5cGUudG9VcHBlckNhc2UoKSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpbnB1dERheTogbnVsbCxcbiAgICAgIGlucHV0TW9udGg6IG51bGwsXG4gICAgICBpbnB1dFllYXI6IG51bGwsXG4gICAgICBpc1JldmVyc2luZzogZmFsc2UsXG4gICAgICBub3c6IG5vdyxcbiAgICAgIC8vIHRhYmxlRGF0ZSBpcyBhIHN0cmluZyBpbiAnWVlZWScgLyAnWVlZWS1NJyBmb3JtYXQgKGxlYWRpbmcgemVybyBmb3IgbW9udGggaXMgbm90IHJlcXVpcmVkKVxuICAgICAgdGFibGVEYXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChfdGhpcy5waWNrZXJEYXRlKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLnBpY2tlckRhdGU7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZGF0ZSA9IF90aGlzLnZhbHVlIHx8IG5vdy5nZXRGdWxsWWVhcigpICsgJy0nICsgKG5vdy5nZXRNb250aCgpICsgMSk7XG4gICAgICAgIHZhciB0eXBlID0gX3RoaXMudHlwZSA9PT0gJ2RhdGUnID8gJ21vbnRoJyA6ICd5ZWFyJztcbiAgICAgICAgcmV0dXJuIF90aGlzLnNhbml0aXplRGF0ZVN0cmluZyhkYXRlLCB0eXBlKTtcbiAgICAgIH0oKVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFsbG93ZWREYXRlczogRnVuY3Rpb24sXG4gICAgLy8gRnVuY3Rpb24gZm9ybWF0dGluZyB0aGUgZGF5IGluIGRhdGUgcGlja2VyIHRhYmxlXG4gICAgZGF5Rm9ybWF0OiB7XG4gICAgICB0eXBlOiBGdW5jdGlvbixcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIGV2ZW50czoge1xuICAgICAgdHlwZTogW0FycmF5LCBPYmplY3QsIEZ1bmN0aW9uXSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9LFxuICAgIGV2ZW50Q29sb3I6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIEZ1bmN0aW9uLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogJ3dhcm5pbmcnXG4gICAgfSxcbiAgICBmaXJzdERheU9mV2Vlazoge1xuICAgICAgdHlwZTogW1N0cmluZywgTnVtYmVyXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIC8vIEZ1bmN0aW9uIGZvcm1hdHRpbmcgdGhlIHRhYmxlRGF0ZSBpbiB0aGUgZGF5L21vbnRoIHRhYmxlIGhlYWRlclxuICAgIGhlYWRlckRhdGVGb3JtYXQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZW4tdXMnXG4gICAgfSxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBtaW46IFN0cmluZyxcbiAgICAvLyBGdW5jdGlvbiBmb3JtYXR0aW5nIG1vbnRoIGluIHRoZSBtb250aHMgdGFibGVcbiAgICBtb250aEZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICBuZXh0SWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2NoZXZyb25fcmlnaHQnXG4gICAgfSxcbiAgICBwaWNrZXJEYXRlOiBTdHJpbmcsXG4gICAgcHJldkljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdjaGV2cm9uX2xlZnQnXG4gICAgfSxcbiAgICByZWFjdGl2ZTogQm9vbGVhbixcbiAgICByZWFkb25seTogQm9vbGVhbixcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHNob3dDdXJyZW50OiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIC8vIEZ1bmN0aW9uIGZvcm1hdHRpbmcgY3VycmVudGx5IHNlbGVjdGVkIGRhdGUgaW4gdGhlIHBpY2tlciB0aXRsZVxuICAgIHRpdGxlRGF0ZUZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZGF0ZScsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih0eXBlKSB7XG4gICAgICAgIHJldHVybiBbJ2RhdGUnLCAnbW9udGgnXS5pbmNsdWRlcyh0eXBlKTtcbiAgICAgIH0gLy8gVE9ETzogeWVhclxuICAgIH0sXG4gICAgdmFsdWU6IFN0cmluZyxcbiAgICAvLyBGdW5jdGlvbiBmb3JtYXR0aW5nIHRoZSB5ZWFyIGluIHRhYmxlIGhlYWRlciBhbmQgcGlja3VwIHRpdGxlXG4gICAgeWVhckZvcm1hdDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiBudWxsXG4gICAgfSxcbiAgICB5ZWFySWNvbjogU3RyaW5nXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjdXJyZW50OiBmdW5jdGlvbiBjdXJyZW50KCkge1xuICAgICAgaWYgKHRoaXMuc2hvd0N1cnJlbnQgPT09IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubm93LmdldEZ1bGxZZWFyKCkgKyAnLScgKyAodGhpcy5ub3cuZ2V0TW9udGgoKSArIDEpICsgJy0nICsgdGhpcy5ub3cuZ2V0RGF0ZSgpLCB0aGlzLnR5cGUpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5zaG93Q3VycmVudCB8fCBudWxsO1xuICAgIH0sXG4gICAgaW5wdXREYXRlOiBmdW5jdGlvbiBpbnB1dERhdGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy50eXBlID09PSAnZGF0ZScgPyB0aGlzLmlucHV0WWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmlucHV0TW9udGggKyAxKSArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLmlucHV0RGF5KSA6IHRoaXMuaW5wdXRZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKHRoaXMuaW5wdXRNb250aCArIDEpO1xuICAgIH0sXG4gICAgdGFibGVNb250aDogZnVuY3Rpb24gdGFibGVNb250aCgpIHtcbiAgICAgIHJldHVybiAodGhpcy5waWNrZXJEYXRlIHx8IHRoaXMudGFibGVEYXRlKS5zcGxpdCgnLScpWzFdIC0gMTtcbiAgICB9LFxuICAgIHRhYmxlWWVhcjogZnVuY3Rpb24gdGFibGVZZWFyKCkge1xuICAgICAgcmV0dXJuICh0aGlzLnBpY2tlckRhdGUgfHwgdGhpcy50YWJsZURhdGUpLnNwbGl0KCctJylbMF0gKiAxO1xuICAgIH0sXG4gICAgbWluTW9udGg6IGZ1bmN0aW9uIG1pbk1vbnRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluID8gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy5taW4sICdtb250aCcpIDogbnVsbDtcbiAgICB9LFxuICAgIG1heE1vbnRoOiBmdW5jdGlvbiBtYXhNb250aCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCA/IHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubWF4LCAnbW9udGgnKSA6IG51bGw7XG4gICAgfSxcbiAgICBtaW5ZZWFyOiBmdW5jdGlvbiBtaW5ZZWFyKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluID8gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy5taW4sICd5ZWFyJykgOiBudWxsO1xuICAgIH0sXG4gICAgbWF4WWVhcjogZnVuY3Rpb24gbWF4WWVhcigpIHtcbiAgICAgIHJldHVybiB0aGlzLm1heCA/IHRoaXMuc2FuaXRpemVEYXRlU3RyaW5nKHRoaXMubWF4LCAneWVhcicpIDogbnVsbDtcbiAgICB9LFxuICAgIGZvcm1hdHRlcnM6IGZ1bmN0aW9uIGZvcm1hdHRlcnMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB5ZWFyOiB0aGlzLnllYXJGb3JtYXQgfHwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiYVwiIC8qIGNyZWF0ZU5hdGl2ZUxvY2FsZUZvcm1hdHRlciAqL10pKHRoaXMubG9jYWxlLCB7IHllYXI6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sIHsgbGVuZ3RoOiA0IH0pLFxuICAgICAgICB0aXRsZURhdGU6IHRoaXMudGl0bGVEYXRlRm9ybWF0IHx8IHRoaXMuZGVmYXVsdFRpdGxlRGF0ZUZvcm1hdHRlclxuICAgICAgfTtcbiAgICB9LFxuICAgIGRlZmF1bHRUaXRsZURhdGVGb3JtYXR0ZXI6IGZ1bmN0aW9uIGRlZmF1bHRUaXRsZURhdGVGb3JtYXR0ZXIoKSB7XG4gICAgICB2YXIgdGl0bGVGb3JtYXRzID0ge1xuICAgICAgICB5ZWFyOiB7IHllYXI6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH0sXG4gICAgICAgIG1vbnRoOiB7IG1vbnRoOiAnbG9uZycsIHRpbWVab25lOiAnVVRDJyB9LFxuICAgICAgICBkYXRlOiB7IHdlZWtkYXk6ICdzaG9ydCcsIG1vbnRoOiAnc2hvcnQnLCBkYXk6ICdudW1lcmljJywgdGltZVpvbmU6ICdVVEMnIH1cbiAgICAgIH07XG5cbiAgICAgIHZhciB0aXRsZURhdGVGb3JtYXR0ZXIgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX19bXCJhXCIgLyogY3JlYXRlTmF0aXZlTG9jYWxlRm9ybWF0dGVyICovXSkodGhpcy5sb2NhbGUsIHRpdGxlRm9ybWF0c1t0aGlzLnR5cGVdLCB7XG4gICAgICAgIHN0YXJ0OiAwLFxuICAgICAgICBsZW5ndGg6IHsgZGF0ZTogMTAsIG1vbnRoOiA3LCB5ZWFyOiA0IH1bdGhpcy50eXBlXVxuICAgICAgfSk7XG5cbiAgICAgIHZhciBsYW5kc2NhcGVGb3JtYXR0ZXIgPSBmdW5jdGlvbiBsYW5kc2NhcGVGb3JtYXR0ZXIoZGF0ZSkge1xuICAgICAgICByZXR1cm4gdGl0bGVEYXRlRm9ybWF0dGVyKGRhdGUpLnJlcGxhY2UoLyhbXlxcZFxcc10pKFtcXGRdKS9nLCBmdW5jdGlvbiAobWF0Y2gsIG5vbkRpZ2l0LCBkaWdpdCkge1xuICAgICAgICAgIHJldHVybiBub25EaWdpdCArICcgJyArIGRpZ2l0O1xuICAgICAgICB9KS5yZXBsYWNlKCcsICcsICcsPGJyPicpO1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHRoaXMubGFuZHNjYXBlID8gbGFuZHNjYXBlRm9ybWF0dGVyIDogdGl0bGVEYXRlRm9ybWF0dGVyO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIHRhYmxlRGF0ZTogZnVuY3Rpb24gdGFibGVEYXRlKHZhbCwgcHJldikge1xuICAgICAgLy8gTWFrZSBhIElTTyA4NjAxIHN0cmluZ3MgZnJvbSB2YWwgYW5kIHByZXYgZm9yIGNvbXBhcmlzaW9uLCBvdGhlcndpc2UgaXQgd2lsbCBpbmNvcnJlY3RseVxuICAgICAgLy8gY29tcGFyZSBmb3IgZXhhbXBsZSAnMjAwMC05JyBhbmQgJzIwMDAtMTAnXG4gICAgICB2YXIgc2FuaXRpemVUeXBlID0gdGhpcy50eXBlID09PSAnbW9udGgnID8gJ3llYXInIDogJ21vbnRoJztcbiAgICAgIHRoaXMuaXNSZXZlcnNpbmcgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh2YWwsIHNhbml0aXplVHlwZSkgPCB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyhwcmV2LCBzYW5pdGl6ZVR5cGUpO1xuICAgICAgdGhpcy4kZW1pdCgndXBkYXRlOnBpY2tlckRhdGUnLCB2YWwpO1xuICAgIH0sXG4gICAgcGlja2VyRGF0ZTogZnVuY3Rpb24gcGlja2VyRGF0ZSh2YWwpIHtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB2YWw7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLnZhbHVlLCAnbW9udGgnKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLnR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLnZhbHVlLCAneWVhcicpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgdGhpcy5zZXRJbnB1dERhdGUoKTtcbiAgICAgIGlmICh0aGlzLnZhbHVlICYmICF0aGlzLnBpY2tlckRhdGUpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLmlucHV0RGF0ZSwgdGhpcy50eXBlID09PSAnbW9udGgnID8gJ3llYXInIDogJ21vbnRoJyk7XG4gICAgICB9XG4gICAgfSxcbiAgICB0eXBlOiBmdW5jdGlvbiB0eXBlKF90eXBlKSB7XG4gICAgICB0aGlzLmFjdGl2ZVBpY2tlciA9IF90eXBlLnRvVXBwZXJDYXNlKCk7XG5cbiAgICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICAgIHZhciBkYXRlID0gdGhpcy5zYW5pdGl6ZURhdGVTdHJpbmcodGhpcy52YWx1ZSwgX3R5cGUpO1xuICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuaXNEYXRlQWxsb3dlZChkYXRlKSA/IGRhdGUgOiBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGlzRGF0ZUFsbG93ZWQ6IGZ1bmN0aW9uIGlzRGF0ZUFsbG93ZWQodmFsdWUpIHtcbiAgICAgIHJldHVybiBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X191dGlsX2lzRGF0ZUFsbG93ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSkodmFsdWUsIHRoaXMubWluLCB0aGlzLm1heCwgdGhpcy5hbGxvd2VkRGF0ZXMpO1xuICAgIH0sXG4gICAgeWVhckNsaWNrOiBmdW5jdGlvbiB5ZWFyQ2xpY2sodmFsdWUpIHtcbiAgICAgIHRoaXMuaW5wdXRZZWFyID0gdmFsdWU7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAnbW9udGgnKSB7XG4gICAgICAgIHRoaXMudGFibGVEYXRlID0gJycgKyB2YWx1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudGFibGVEYXRlID0gdmFsdWUgKyAnLScgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX19bXCJjXCIgLyogcGFkICovXSkodGhpcy50YWJsZU1vbnRoICsgMSk7XG4gICAgICB9XG4gICAgICB0aGlzLmFjdGl2ZVBpY2tlciA9ICdNT05USCc7XG4gICAgICB0aGlzLnJlYWN0aXZlICYmIHRoaXMuaXNEYXRlQWxsb3dlZCh0aGlzLmlucHV0RGF0ZSkgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmlucHV0RGF0ZSk7XG4gICAgfSxcbiAgICBtb250aENsaWNrOiBmdW5jdGlvbiBtb250aENsaWNrKHZhbHVlKSB7XG4gICAgICB0aGlzLmlucHV0WWVhciA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMF0sIDEwKTtcbiAgICAgIHRoaXMuaW5wdXRNb250aCA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMV0sIDEwKSAtIDE7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5hY3RpdmVQaWNrZXIgPSAnREFURSc7XG4gICAgICAgIHRoaXMucmVhY3RpdmUgJiYgdGhpcy5pc0RhdGVBbGxvd2VkKHRoaXMuaW5wdXREYXRlKSAmJiB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuaW5wdXREYXRlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dERhdGUpO1xuICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLmlucHV0RGF0ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBkYXRlQ2xpY2s6IGZ1bmN0aW9uIGRhdGVDbGljayh2YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dFllYXIgPSBwYXJzZUludCh2YWx1ZS5zcGxpdCgnLScpWzBdLCAxMCk7XG4gICAgICB0aGlzLmlucHV0TW9udGggPSBwYXJzZUludCh2YWx1ZS5zcGxpdCgnLScpWzFdLCAxMCkgLSAxO1xuICAgICAgdGhpcy5pbnB1dERheSA9IHBhcnNlSW50KHZhbHVlLnNwbGl0KCctJylbMl0sIDEwKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dERhdGUpO1xuICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5pbnB1dERhdGUpO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRhdGVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGF0ZTogdGhpcy52YWx1ZSA/IHRoaXMuZm9ybWF0dGVycy50aXRsZURhdGUodGhpcy52YWx1ZSkgOiAnJyxcbiAgICAgICAgICBzZWxlY3RpbmdZZWFyOiB0aGlzLmFjdGl2ZVBpY2tlciA9PT0gJ1lFQVInLFxuICAgICAgICAgIHllYXI6IHRoaXMuZm9ybWF0dGVycy55ZWFyKCcnICsgdGhpcy5pbnB1dFllYXIpLFxuICAgICAgICAgIHllYXJJY29uOiB0aGlzLnllYXJJY29uLFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlXG4gICAgICAgIH0sXG4gICAgICAgIHNsb3Q6ICd0aXRsZScsXG4gICAgICAgIHN0eWxlOiB0aGlzLnJlYWRvbmx5ID8ge1xuICAgICAgICAgICdwb2ludGVyLWV2ZW50cyc6ICdub25lJ1xuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICBvbjoge1xuICAgICAgICAgICd1cGRhdGU6c2VsZWN0aW5nWWVhcic6IGZ1bmN0aW9uIHVwZGF0ZVNlbGVjdGluZ1llYXIodmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczIuYWN0aXZlUGlja2VyID0gdmFsdWUgPyAnWUVBUicgOiBfdGhpczIudHlwZS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5UYWJsZUhlYWRlcjogZnVuY3Rpb24gZ2VuVGFibGVIZWFkZXIoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WRGF0ZVBpY2tlckhlYWRlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgbmV4dEljb246IHRoaXMubmV4dEljb24sXG4gICAgICAgICAgY29sb3I6IHRoaXMuY29sb3IsXG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgZm9ybWF0OiB0aGlzLmhlYWRlckRhdGVGb3JtYXQsXG4gICAgICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgICAgICBtaW46IHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLm1pbk1vbnRoIDogdGhpcy5taW5ZZWFyLFxuICAgICAgICAgIG1heDogdGhpcy5hY3RpdmVQaWNrZXIgPT09ICdEQVRFJyA/IHRoaXMubWF4TW9udGggOiB0aGlzLm1heFllYXIsXG4gICAgICAgICAgcHJldkljb246IHRoaXMucHJldkljb24sXG4gICAgICAgICAgdmFsdWU6IHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLnRhYmxlWWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKSh0aGlzLnRhYmxlTW9udGggKyAxKSA6ICcnICsgdGhpcy50YWJsZVllYXJcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSgpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpczMuYWN0aXZlUGlja2VyID0gX3RoaXMzLmFjdGl2ZVBpY2tlciA9PT0gJ0RBVEUnID8gJ01PTlRIJyA6ICdZRUFSJztcbiAgICAgICAgICB9LFxuICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiBpbnB1dCh2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMy50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuRGF0ZVRhYmxlOiBmdW5jdGlvbiBnZW5EYXRlVGFibGUoKSB7XG4gICAgICB2YXIgX3RoaXM0ID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WRGF0ZVBpY2tlckRhdGVUYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYWxsb3dlZERhdGVzOiB0aGlzLmFsbG93ZWREYXRlcyxcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBjdXJyZW50OiB0aGlzLmN1cnJlbnQsXG4gICAgICAgICAgZGlzYWJsZWQ6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgZXZlbnRzOiB0aGlzLmV2ZW50cyxcbiAgICAgICAgICBldmVudENvbG9yOiB0aGlzLmV2ZW50Q29sb3IsXG4gICAgICAgICAgZmlyc3REYXlPZldlZWs6IHRoaXMuZmlyc3REYXlPZldlZWssXG4gICAgICAgICAgZm9ybWF0OiB0aGlzLmRheUZvcm1hdCxcbiAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgIG1pbjogdGhpcy5taW4sXG4gICAgICAgICAgbWF4OiB0aGlzLm1heCxcbiAgICAgICAgICB0YWJsZURhdGU6IHRoaXMudGFibGVZZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKHRoaXMudGFibGVNb250aCArIDEpLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICd0YWJsZScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMuZGF0ZUNsaWNrLFxuICAgICAgICAgIHRhYmxlRGF0ZTogZnVuY3Rpb24gdGFibGVEYXRlKHZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXM0LnRhYmxlRGF0ZSA9IHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBnZW5Nb250aFRhYmxlOiBmdW5jdGlvbiBnZW5Nb250aFRhYmxlKCkge1xuICAgICAgdmFyIF90aGlzNSA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVkRhdGVQaWNrZXJNb250aFRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhbGxvd2VkRGF0ZXM6IHRoaXMudHlwZSA9PT0gJ21vbnRoJyA/IHRoaXMuYWxsb3dlZERhdGVzIDogbnVsbCxcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBjdXJyZW50OiB0aGlzLmN1cnJlbnQgPyB0aGlzLnNhbml0aXplRGF0ZVN0cmluZyh0aGlzLmN1cnJlbnQsICdtb250aCcpIDogbnVsbCxcbiAgICAgICAgICBkaXNhYmxlZDogdGhpcy5yZWFkb25seSxcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMubW9udGhGb3JtYXQsXG4gICAgICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgICAgICBtaW46IHRoaXMubWluTW9udGgsXG4gICAgICAgICAgbWF4OiB0aGlzLm1heE1vbnRoLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICB2YWx1ZTogIXRoaXMudmFsdWUgfHwgdGhpcy50eXBlID09PSAnbW9udGgnID8gdGhpcy52YWx1ZSA6IHRoaXMudmFsdWUuc3Vic3RyKDAsIDcpLFxuICAgICAgICAgIHRhYmxlRGF0ZTogJycgKyB0aGlzLnRhYmxlWWVhclxuICAgICAgICB9LFxuICAgICAgICByZWY6ICd0YWJsZScsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMubW9udGhDbGljayxcbiAgICAgICAgICB0YWJsZURhdGU6IGZ1bmN0aW9uIHRhYmxlRGF0ZSh2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzNS50YWJsZURhdGUgPSB2YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuWWVhcnM6IGZ1bmN0aW9uIGdlblllYXJzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlclllYXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBjb2xvcjogdGhpcy5jb2xvcixcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMueWVhckZvcm1hdCxcbiAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgIG1pbjogdGhpcy5taW5ZZWFyLFxuICAgICAgICAgIG1heDogdGhpcy5tYXhZZWFyLFxuICAgICAgICAgIHZhbHVlOiAnJyArIHRoaXMudGFibGVZZWFyXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgaW5wdXQ6IHRoaXMueWVhckNsaWNrXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IHRoaXMuYWN0aXZlUGlja2VyID09PSAnWUVBUicgPyBbdGhpcy5nZW5ZZWFycygpXSA6IFt0aGlzLmdlblRhYmxlSGVhZGVyKCksIHRoaXMuYWN0aXZlUGlja2VyID09PSAnREFURScgPyB0aGlzLmdlbkRhdGVUYWJsZSgpIDogdGhpcy5nZW5Nb250aFRhYmxlKCldO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBrZXk6IHRoaXMuYWN0aXZlUGlja2VyLFxuICAgICAgICBzdHlsZTogdGhpcy5yZWFkb25seSA/IHtcbiAgICAgICAgICAncG9pbnRlci1ldmVudHMnOiAnbm9uZSdcbiAgICAgICAgfSA6IHVuZGVmaW5lZFxuICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH0sXG5cbiAgICAvLyBBZGRzIGxlYWRpbmcgemVybyB0byBtb250aC9kYXkgaWYgbmVjZXNzYXJ5LCByZXR1cm5zICdZWVlZJyBpZiB0eXBlID0gJ3llYXInLFxuICAgIC8vICdZWVlZLU1NJyBpZiAnbW9udGgnIGFuZCAnWVlZWS1NTS1ERCcgaWYgJ2RhdGUnXG4gICAgc2FuaXRpemVEYXRlU3RyaW5nOiBmdW5jdGlvbiBzYW5pdGl6ZURhdGVTdHJpbmcoZGF0ZVN0cmluZywgdHlwZSkge1xuICAgICAgdmFyIF9kYXRlU3RyaW5nJHNwbGl0ID0gZGF0ZVN0cmluZy5zcGxpdCgnLScpLFxuICAgICAgICAgIF9kYXRlU3RyaW5nJHNwbGl0MiA9IF9zbGljZWRUb0FycmF5KF9kYXRlU3RyaW5nJHNwbGl0LCAzKSxcbiAgICAgICAgICB5ZWFyID0gX2RhdGVTdHJpbmckc3BsaXQyWzBdLFxuICAgICAgICAgIF9kYXRlU3RyaW5nJHNwbGl0MiQgPSBfZGF0ZVN0cmluZyRzcGxpdDJbMV0sXG4gICAgICAgICAgbW9udGggPSBfZGF0ZVN0cmluZyRzcGxpdDIkID09PSB1bmRlZmluZWQgPyAxIDogX2RhdGVTdHJpbmckc3BsaXQyJCxcbiAgICAgICAgICBfZGF0ZVN0cmluZyRzcGxpdDIkMiA9IF9kYXRlU3RyaW5nJHNwbGl0MlsyXSxcbiAgICAgICAgICBkYXRlID0gX2RhdGVTdHJpbmckc3BsaXQyJDIgPT09IHVuZGVmaW5lZCA/IDEgOiBfZGF0ZVN0cmluZyRzcGxpdDIkMjtcblxuICAgICAgcmV0dXJuICh5ZWFyICsgJy0nICsgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fdXRpbF9fW1wiY1wiIC8qIHBhZCAqL10pKG1vbnRoKSArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfX1tcImNcIiAvKiBwYWQgKi9dKShkYXRlKSkuc3Vic3RyKDAsIHsgZGF0ZTogMTAsIG1vbnRoOiA3LCB5ZWFyOiA0IH1bdHlwZV0pO1xuICAgIH0sXG4gICAgc2V0SW5wdXREYXRlOiBmdW5jdGlvbiBzZXRJbnB1dERhdGUoKSB7XG4gICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICB2YXIgYXJyYXkgPSB0aGlzLnZhbHVlLnNwbGl0KCctJyk7XG4gICAgICAgIHRoaXMuaW5wdXRZZWFyID0gcGFyc2VJbnQoYXJyYXlbMF0sIDEwKTtcbiAgICAgICAgdGhpcy5pbnB1dE1vbnRoID0gcGFyc2VJbnQoYXJyYXlbMV0sIDEwKSAtIDE7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgICAgIHRoaXMuaW5wdXREYXkgPSBwYXJzZUludChhcnJheVsyXSwgMTApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlucHV0WWVhciA9IHRoaXMuaW5wdXRZZWFyIHx8IHRoaXMubm93LmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMuaW5wdXRNb250aCA9IHRoaXMuaW5wdXRNb250aCA9PSBudWxsID8gdGhpcy5pbnB1dE1vbnRoIDogdGhpcy5ub3cuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5pbnB1dERheSA9IHRoaXMuaW5wdXREYXkgfHwgdGhpcy5ub3cuZ2V0RGF0ZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkge1xuICAgIGlmICh0aGlzLnBpY2tlckRhdGUgIT09IHRoaXMudGFibGVEYXRlKSB7XG4gICAgICB0aGlzLiRlbWl0KCd1cGRhdGU6cGlja2VyRGF0ZScsIHRoaXMudGFibGVEYXRlKTtcbiAgICB9XG4gICAgdGhpcy5zZXRJbnB1dERhdGUoKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiB0aGlzLmdlblBpY2tlcigncGlja2VyLS1kYXRlJyk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE3NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE3NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE3OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKGZ1bmN0aW9uIChsb2NhbGUsIG9wdGlvbnMpIHtcbiAgdmFyIF9yZWYgPSBhcmd1bWVudHMubGVuZ3RoID4gMiAmJiBhcmd1bWVudHNbMl0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1syXSA6IHsgc3RhcnQ6IDAsIGxlbmd0aDogMCB9LFxuICAgICAgc3RhcnQgPSBfcmVmLnN0YXJ0LFxuICAgICAgbGVuZ3RoID0gX3JlZi5sZW5ndGg7XG5cbiAgdmFyIG1ha2VJc29TdHJpbmcgPSBmdW5jdGlvbiBtYWtlSXNvU3RyaW5nKGRhdGVTdHJpbmcpIHtcbiAgICB2YXIgX2RhdGVTdHJpbmckdHJpbSRzcGxpID0gZGF0ZVN0cmluZy50cmltKCkuc3BsaXQoJyAnKVswXS5zcGxpdCgnLScpLFxuICAgICAgICBfZGF0ZVN0cmluZyR0cmltJHNwbGkyID0gX3NsaWNlZFRvQXJyYXkoX2RhdGVTdHJpbmckdHJpbSRzcGxpLCAzKSxcbiAgICAgICAgeWVhciA9IF9kYXRlU3RyaW5nJHRyaW0kc3BsaTJbMF0sXG4gICAgICAgIG1vbnRoID0gX2RhdGVTdHJpbmckdHJpbSRzcGxpMlsxXSxcbiAgICAgICAgZGF0ZSA9IF9kYXRlU3RyaW5nJHRyaW0kc3BsaTJbMl07XG5cbiAgICByZXR1cm4gW3llYXIsIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShtb250aCB8fCAxKSwgT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fcGFkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKGRhdGUgfHwgMSldLmpvaW4oJy0nKTtcbiAgfTtcblxuICB0cnkge1xuICAgIHZhciBpbnRsRm9ybWF0dGVyID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQobG9jYWxlIHx8IHVuZGVmaW5lZCwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChkYXRlU3RyaW5nKSB7XG4gICAgICByZXR1cm4gaW50bEZvcm1hdHRlci5mb3JtYXQobmV3IERhdGUobWFrZUlzb1N0cmluZyhkYXRlU3RyaW5nKSArICdUMDA6MDA6MDArMDA6MDAnKSk7XG4gICAgfTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBzdGFydCB8fCBsZW5ndGggPyBmdW5jdGlvbiAoZGF0ZVN0cmluZykge1xuICAgICAgcmV0dXJuIG1ha2VJc29TdHJpbmcoZGF0ZVN0cmluZykuc3Vic3RyKHN0YXJ0LCBsZW5ndGgpO1xuICAgIH0gOiBudWxsO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxNzkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19wYWRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIpO1xudmFyIF9zbGljZWRUb0FycmF5ID0gZnVuY3Rpb24gKCkgeyBmdW5jdGlvbiBzbGljZUl0ZXJhdG9yKGFyciwgaSkgeyB2YXIgX2FyciA9IFtdOyB2YXIgX24gPSB0cnVlOyB2YXIgX2QgPSBmYWxzZTsgdmFyIF9lID0gdW5kZWZpbmVkOyB0cnkgeyBmb3IgKHZhciBfaSA9IGFycltTeW1ib2wuaXRlcmF0b3JdKCksIF9zOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7IF9hcnIucHVzaChfcy52YWx1ZSk7IGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsgfSB9IGNhdGNoIChlcnIpIHsgX2QgPSB0cnVlOyBfZSA9IGVycjsgfSBmaW5hbGx5IHsgdHJ5IHsgaWYgKCFfbiAmJiBfaVtcInJldHVyblwiXSkgX2lbXCJyZXR1cm5cIl0oKTsgfSBmaW5hbGx5IHsgaWYgKF9kKSB0aHJvdyBfZTsgfSB9IHJldHVybiBfYXJyOyB9IHJldHVybiBmdW5jdGlvbiAoYXJyLCBpKSB7IGlmIChBcnJheS5pc0FycmF5KGFycikpIHsgcmV0dXJuIGFycjsgfSBlbHNlIGlmIChTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGFycikpIHsgcmV0dXJuIHNsaWNlSXRlcmF0b3IoYXJyLCBpKTsgfSBlbHNlIHsgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2VcIik7IH0gfTsgfSgpO1xuXG5cblxuLyoqXG4gKiBAcGFyYW0ge1N0cmluZ30gdmFsdWUgWVlZWS1NTSBmb3JtYXRcbiAqIEBwYXJhbSB7TnVtYmVyfSBzaWduIC0xIG9yICsxXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoZnVuY3Rpb24gKHZhbHVlLCBzaWduKSB7XG4gIHZhciBfdmFsdWUkc3BsaXQkbWFwID0gdmFsdWUuc3BsaXQoJy0nKS5tYXAoZnVuY3Rpb24gKHYpIHtcbiAgICByZXR1cm4gMSAqIHY7XG4gIH0pLFxuICAgICAgX3ZhbHVlJHNwbGl0JG1hcDIgPSBfc2xpY2VkVG9BcnJheShfdmFsdWUkc3BsaXQkbWFwLCAyKSxcbiAgICAgIHllYXIgPSBfdmFsdWUkc3BsaXQkbWFwMlswXSxcbiAgICAgIG1vbnRoID0gX3ZhbHVlJHNwbGl0JG1hcDJbMV07XG5cbiAgaWYgKG1vbnRoICsgc2lnbiA9PT0gMCkge1xuICAgIHJldHVybiB5ZWFyIC0gMSArICctMTInO1xuICB9IGVsc2UgaWYgKG1vbnRoICsgc2lnbiA9PT0gMTMpIHtcbiAgICByZXR1cm4geWVhciArIDEgKyAnLTAxJztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4geWVhciArICctJyArIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKShtb250aCArIHNpZ24pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxODAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19waWNrZXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BpY2tlcnNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19waWNrZXJzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WQ2FyZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cblxuXG4vLyBDb21wb25lbnRzXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcGlja2VyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgZnVsbFdpZHRoOiBCb29sZWFuLFxuICAgIGxhbmRzY2FwZTogQm9vbGVhbixcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZmFkZS10cmFuc2l0aW9uJ1xuICAgIH0sXG4gICAgd2lkdGg6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyOTAsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2YWx1ZSkge1xuICAgICAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKSA+IDA7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRUaXRsZUNvbG9yOiBmdW5jdGlvbiBjb21wdXRlZFRpdGxlQ29sb3IoKSB7XG4gICAgICB2YXIgZGFya1RoZW1lID0gdGhpcy5kYXJrIHx8ICF0aGlzLmxpZ2h0ICYmIHRoaXMuJHZ1ZXRpZnkuZGFyaztcbiAgICAgIHZhciBkZWZhdWx0VGl0bGVDb2xvciA9IGRhcmtUaGVtZSA/IG51bGwgOiB0aGlzLmNvbXB1dGVkQ29sb3I7XG4gICAgICByZXR1cm4gdGhpcy5jb2xvciB8fCBkZWZhdWx0VGl0bGVDb2xvcjtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblRpdGxlOiBmdW5jdGlvbiBnZW5UaXRsZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGlja2VyX190aXRsZScsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe1xuICAgICAgICAgICdwaWNrZXJfX3RpdGxlLS1sYW5kc2NhcGUnOiB0aGlzLmxhbmRzY2FwZVxuICAgICAgICB9LCB0aGlzLmNvbXB1dGVkVGl0bGVDb2xvcilcbiAgICAgIH0sIHRoaXMuJHNsb3RzLnRpdGxlKTtcbiAgICB9LFxuICAgIGdlbkJvZHlUcmFuc2l0aW9uOiBmdW5jdGlvbiBnZW5Cb2R5VHJhbnNpdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCd0cmFuc2l0aW9uJywge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIG5hbWU6IHRoaXMudHJhbnNpdGlvblxuICAgICAgICB9XG4gICAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgICB9LFxuICAgIGdlbkJvZHk6IGZ1bmN0aW9uIGdlbkJvZHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3BpY2tlcl9fYm9keScsXG4gICAgICAgIHN0eWxlOiB0aGlzLmZ1bGxXaWR0aCA/IHVuZGVmaW5lZCA6IHtcbiAgICAgICAgICB3aWR0aDogdGhpcy53aWR0aCArICdweCdcbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuZ2VuQm9keVRyYW5zaXRpb24oKV0pO1xuICAgIH0sXG4gICAgZ2VuQWN0aW9uczogZnVuY3Rpb24gZ2VuQWN0aW9ucygpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGlja2VyX19hY3Rpb25zIGNhcmRfX2FjdGlvbnMnXG4gICAgICB9LCB0aGlzLiRzbG90cy5hY3Rpb25zKTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNhcmRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwaWNrZXInLFxuICAgICAgJ2NsYXNzJzogX2V4dGVuZHMoe1xuICAgICAgICAncGlja2VyLS1sYW5kc2NhcGUnOiB0aGlzLmxhbmRzY2FwZVxuICAgICAgfSwgdGhpcy50aGVtZUNsYXNzZXMpXG4gICAgfSwgW3RoaXMuJHNsb3RzLnRpdGxlID8gdGhpcy5nZW5UaXRsZSgpIDogbnVsbCwgdGhpcy5nZW5Cb2R5KCksIHRoaXMuJHNsb3RzLmFjdGlvbnMgPyB0aGlzLmdlbkFjdGlvbnMoKSA6IG51bGxdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTgzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTg0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkRpYWxvZ19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRGlhbG9nX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE4NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZFeHBhbnNpb25QYW5lbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkV4cGFuc2lvblBhbmVsQ29udGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxODgpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkV4cGFuc2lvblBhbmVsICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWRXhwYW5zaW9uUGFuZWxDb250ZW50ICovXG5cblxuXG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRXhwYW5zaW9uUGFuZWxfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZFeHBhbnNpb25QYW5lbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZFeHBhbnNpb25QYW5lbENvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZFeHBhbnNpb25QYW5lbENvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkV4cGFuc2lvblBhbmVsX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDE4NiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2V4cGFuc2lvbl9wYW5lbF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE4Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19leHBhbnNpb25fcGFuZWxfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19leHBhbnNpb25fcGFuZWxfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG52YXIgX2V4dGVuZHMgPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uICh0YXJnZXQpIHsgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgeyBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgeyB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOyB9IH0gfSByZXR1cm4gdGFyZ2V0OyB9O1xuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWV4cGFuc2lvbi1wYW5lbCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgnZXhwYW5zaW9uUGFuZWwnKV0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGFuZWxDbGljazogdGhpcy5wYW5lbENsaWNrLFxuICAgICAgZm9jdXNhYmxlOiB0aGlzLmZvY3VzYWJsZVxuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGl0ZW1zOiBbXVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGV4cGFuZDogQm9vbGVhbixcbiAgICBmb2N1c2FibGU6IEJvb2xlYW4sXG4gICAgaW5zZXQ6IEJvb2xlYW4sXG4gICAgcG9wb3V0OiBCb29sZWFuXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHBhbmVsQ2xpY2s6IGZ1bmN0aW9uIHBhbmVsQ2xpY2sodWlkKSB7XG4gICAgICBpZiAoIXRoaXMuZXhwYW5kKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIHRoaXMuaXRlbXNbaV0udG9nZ2xlKHVpZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgdGhpcy5pdGVtcy5sZW5ndGg7IF9pKyspIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXNbX2ldLnVpZCA9PT0gdWlkKSB7XG4gICAgICAgICAgdGhpcy5pdGVtc1tfaV0udG9nZ2xlKHVpZCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIodWlkLCB0b2dnbGUpIHtcbiAgICAgIHRoaXMuaXRlbXMucHVzaCh7IHVpZDogdWlkLCB0b2dnbGU6IHRvZ2dsZSB9KTtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodWlkKSB7XG4gICAgICB0aGlzLml0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgcmV0dXJuIGkudWlkICE9PSB1aWQ7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHJldHVybiBoKCd1bCcsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnZXhwYW5zaW9uLXBhbmVsJyxcbiAgICAgICdjbGFzcyc6IF9leHRlbmRzKHtcbiAgICAgICAgJ2V4cGFuc2lvbi1wYW5lbC0tZm9jdXNhYmxlJzogdGhpcy5mb2N1c2FibGUsXG4gICAgICAgICdleHBhbnNpb24tcGFuZWwtLXBvcG91dCc6IHRoaXMucG9wb3V0LFxuICAgICAgICAnZXhwYW5zaW9uLXBhbmVsLS1pbnNldCc6IHRoaXMuaW5zZXRcbiAgICAgIH0sIHRoaXMudGhlbWVDbGFzc2VzKVxuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAxODcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAxODggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19ib290YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19yaXBwbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1leHBhbnNpb24tcGFuZWwtY29udGVudCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19yaXBwbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCdleHBhbnNpb25QYW5lbCcsICd2LWV4cGFuc2lvbi1wYW5lbCcsICd2LWV4cGFuc2lvbi1wYW5lbC1jb250ZW50JyldLFxuXG4gIGRpcmVjdGl2ZXM6IHtcbiAgICBDbGlja091dHNpZGU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBpbmplY3Q6IFsnZm9jdXNhYmxlJywgJ3BhbmVsQ2xpY2snXSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWlnaHQ6ICdhdXRvJ1xuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGV4cGFuZEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdrZXlib2FyZF9hcnJvd19kb3duJ1xuICAgIH0sXG4gICAgaGlkZUFjdGlvbnM6IEJvb2xlYW4sXG4gICAgcmlwcGxlOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Cb2R5OiBmdW5jdGlvbiBnZW5Cb2R5KCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgcmVmOiAnYm9keScsXG4gICAgICAgIGNsYXNzOiAnZXhwYW5zaW9uLXBhbmVsX19ib2R5JyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfV1cbiAgICAgIH0sIHRoaXMuc2hvd0xhenlDb250ZW50KHRoaXMuJHNsb3RzLmRlZmF1bHQpKTtcbiAgICB9LFxuICAgIGdlbkhlYWRlcjogZnVuY3Rpb24gZ2VuSGVhZGVyKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdleHBhbnNpb24tcGFuZWxfX2hlYWRlcicsXG4gICAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgICAgbmFtZTogJ3JpcHBsZScsXG4gICAgICAgICAgdmFsdWU6IHRoaXMucmlwcGxlXG4gICAgICAgIH1dLFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICAgIHJldHVybiBfdGhpcy5wYW5lbENsaWNrKF90aGlzLl91aWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW3RoaXMuJHNsb3RzLmhlYWRlciwgdGhpcy5nZW5JY29uKCldKTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaCkge1xuICAgICAgaWYgKHRoaXMuaGlkZUFjdGlvbnMpIHJldHVybiBudWxsO1xuXG4gICAgICB2YXIgaWNvbiA9IHRoaXMuJHNsb3RzLmFjdGlvbnMgfHwgdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHRoaXMuZXhwYW5kSWNvbik7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnaGVhZGVyX19pY29uJ1xuICAgICAgfSwgW2ljb25dKTtcbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHVpZCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBpc0FjdGl2ZSA9IHRoaXMuX3VpZCA9PT0gdWlkICYmICF0aGlzLmlzQWN0aXZlO1xuXG4gICAgICBpZiAoaXNBY3RpdmUpIHRoaXMuaXNCb290ZWQgPSB0cnVlO1xuXG4gICAgICAvLyBXZSB0cmVhdCBib290YWJsZSBkaWZmZXJlbnRseVxuICAgICAgLy8gTmVlZHMgdGltZSB0byBjYWxjIGhlaWdodFxuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMyLmlzQWN0aXZlID0gaXNBY3RpdmU7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmV4cGFuc2lvblBhbmVsLnJlZ2lzdGVyKHRoaXMuX3VpZCwgdGhpcy50b2dnbGUpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMuZXhwYW5zaW9uUGFuZWwudW5yZWdpc3Rlcih0aGlzLl91aWQpO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIHRoaXMuJHNsb3RzLmhlYWRlciAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuSGVhZGVyKCkpO1xuICAgIGNoaWxkcmVuLnB1c2goaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJhXCIgLyogVkV4cGFuZFRyYW5zaXRpb24gKi9dLCBbdGhpcy5nZW5Cb2R5KCldKSk7XG5cbiAgICByZXR1cm4gaCgnbGknLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ2V4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyJyxcbiAgICAgICdjbGFzcyc6IHtcbiAgICAgICAgJ2V4cGFuc2lvbi1wYW5lbF9fY29udGFpbmVyLS1hY3RpdmUnOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9LFxuICAgICAgYXR0cnM6IHtcbiAgICAgICAgdGFiaW5kZXg6IDBcbiAgICAgIH0sXG4gICAgICBvbjoge1xuICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiBrZXlkb3duKGUpIHtcbiAgICAgICAgICAvLyBFbnN1cmUgZWxlbWVudCBpcyBmb2N1c2FibGUgYW5kIHRoZSBhY3RpdmVFbGVtZW50XG4gICAgICAgICAgaWYgKF90aGlzMy5mb2N1c2FibGUgJiYgX3RoaXMzLiRlbCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiBlLmtleUNvZGUgPT09IDEzKSBfdGhpczMucGFuZWxDbGljayhfdGhpczMuX3VpZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE4OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb290ZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkwKTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9vdGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb290ZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMTkwICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZm9vdGVyX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTkxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Zvb3Rlcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2Zvb3Rlcl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8vIFN0eWxlc1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZm9vdGVyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdmb290ZXInLCBbJ2hlaWdodCddKSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIGhlaWdodDoge1xuICAgICAgZGVmYXVsdDogMzIsXG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddXG4gICAgfSxcbiAgICBpbnNldDogQm9vbGVhblxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY29tcHV0ZWRNYXJnaW5Cb3R0b206IGZ1bmN0aW9uIGNvbXB1dGVkTWFyZ2luQm90dG9tKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuO1xuXG4gICAgICByZXR1cm4gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5ib3R0b207XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdMZWZ0OiBmdW5jdGlvbiBjb21wdXRlZFBhZGRpbmdMZWZ0KCkge1xuICAgICAgcmV0dXJuICF0aGlzLmFwcCB8fCAhdGhpcy5pbnNldCA/IDAgOiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmxlZnQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdSaWdodDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nUmlnaHQoKSB7XG4gICAgICByZXR1cm4gIXRoaXMuYXBwID8gMCA6IHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQ7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7XG4gICAgICAgIGhlaWdodDogaXNOYU4odGhpcy5oZWlnaHQpID8gdGhpcy5oZWlnaHQgOiB0aGlzLmhlaWdodCArICdweCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmNvbXB1dGVkUGFkZGluZ0xlZnQpIHtcbiAgICAgICAgc3R5bGVzLnBhZGRpbmdMZWZ0ID0gdGhpcy5jb21wdXRlZFBhZGRpbmdMZWZ0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQpIHtcbiAgICAgICAgc3R5bGVzLnBhZGRpbmdSaWdodCA9IHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQgKyAncHgnO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5jb21wdXRlZE1hcmdpbkJvdHRvbSkge1xuICAgICAgICBzdHlsZXMubWFyZ2luQm90dG9tID0gdGhpcy5jb21wdXRlZE1hcmdpbkJvdHRvbSArICdweCc7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdHlsZXM7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIGFwcGxpY2F0aW9uIGxheW91dFxuICAgICAqXG4gICAgICogQHJldHVybiB7bnVtYmVyfVxuICAgICAqL1xuICAgIHVwZGF0ZUFwcGxpY2F0aW9uOiBmdW5jdGlvbiB1cGRhdGVBcHBsaWNhdGlvbigpIHtcbiAgICAgIHJldHVybiBpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLiRlbCA/IHRoaXMuJGVsLmNsaWVudEhlaWdodCA6IDAgOiB0aGlzLmhlaWdodDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICdmb290ZXInLFxuICAgICAgJ2NsYXNzJzogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICdmb290ZXItLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ2Zvb3Rlci0tZml4ZWQnOiAhdGhpcy5hYnNvbHV0ZSAmJiAodGhpcy5hcHAgfHwgdGhpcy5maXhlZCksXG4gICAgICAgICdmb290ZXItLWluc2V0JzogdGhpcy5pbnNldCxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfSksXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICByZWY6ICdjb250ZW50J1xuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZm9vdGVyJywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDE5MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDE5MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb3JtX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5Myk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkZvcm1fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZGb3JtX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9ybV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WRm9ybV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAxOTMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtZm9ybScsXG5cbiAgaW5oZXJpdEF0dHJzOiBmYWxzZSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpbnB1dHM6IFtdLFxuICAgICAgZXJyb3JCYWc6IHt9XG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgdmFsdWU6IEJvb2xlYW4sXG4gICAgbGF6eVZhbGlkYXRpb246IEJvb2xlYW5cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGVycm9yQmFnOiB7XG4gICAgICBoYW5kbGVyOiBmdW5jdGlvbiBoYW5kbGVyKCkge1xuICAgICAgICB2YXIgZXJyb3JzID0gT2JqZWN0LnZhbHVlcyh0aGlzLmVycm9yQmFnKS5pbmNsdWRlcyh0cnVlKTtcblxuICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsICFlcnJvcnMpO1xuXG4gICAgICAgIHJldHVybiAhZXJyb3JzO1xuICAgICAgfSxcblxuICAgICAgZGVlcDogdHJ1ZVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2V0SW5wdXRzOiBmdW5jdGlvbiBnZXRJbnB1dHMoKSB7XG4gICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuXG4gICAgICB2YXIgc2VhcmNoID0gZnVuY3Rpb24gc2VhcmNoKGNoaWxkcmVuKSB7XG4gICAgICAgIHZhciBkZXB0aCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogMDtcblxuICAgICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgY2hpbGRyZW4ubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgdmFyIGNoaWxkID0gY2hpbGRyZW5baW5kZXhdO1xuICAgICAgICAgIGlmIChjaGlsZC5lcnJvckJ1Y2tldCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXN1bHRzLnB1c2goY2hpbGQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZWFyY2goY2hpbGQuJGNoaWxkcmVuLCBkZXB0aCArIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoZGVwdGggPT09IDApIHJldHVybiByZXN1bHRzO1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHNlYXJjaCh0aGlzLiRjaGlsZHJlbik7XG4gICAgfSxcbiAgICB3YXRjaElucHV0czogZnVuY3Rpb24gd2F0Y2hJbnB1dHMoKSB7XG4gICAgICB2YXIgaW5wdXRzID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB0aGlzLmdldElucHV0cygpO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgaW5wdXRzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgY2hpbGQgPSBpbnB1dHNbaW5kZXhdO1xuICAgICAgICBpZiAodGhpcy5pbnB1dHMuaW5jbHVkZXMoY2hpbGQpKSB7XG4gICAgICAgICAgY29udGludWU7IC8vIFdlIGFscmVhZHkga25vdyBhYm91dCB0aGlzIGlucHV0XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlucHV0cy5wdXNoKGNoaWxkKTtcbiAgICAgICAgdGhpcy53YXRjaENoaWxkKGNoaWxkKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHdhdGNoQ2hpbGQ6IGZ1bmN0aW9uIHdhdGNoQ2hpbGQoY2hpbGQpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciB3YXRjaGVyID0gZnVuY3Rpb24gd2F0Y2hlcihjaGlsZCkge1xuICAgICAgICBjaGlsZC4kd2F0Y2goJ3ZhbGlkJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgIF90aGlzLiRzZXQoX3RoaXMuZXJyb3JCYWcsIGNoaWxkLl91aWQsICF2YWwpO1xuICAgICAgICB9LCB7IGltbWVkaWF0ZTogdHJ1ZSB9KTtcbiAgICAgIH07XG5cbiAgICAgIGlmICghdGhpcy5sYXp5VmFsaWRhdGlvbikgcmV0dXJuIHdhdGNoZXIoY2hpbGQpO1xuXG4gICAgICAvLyBPbmx5IHN0YXJ0IHdhdGNoaW5nIGlucHV0cyBpZiB3ZSBuZWVkIHRvXG4gICAgICBjaGlsZC4kd2F0Y2goJ3Nob3VsZFZhbGlkYXRlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICBpZiAoIXZhbCkgcmV0dXJuO1xuXG4gICAgICAgIC8vIE9ubHkgd2F0Y2ggaWYgd2UncmUgbm90IGFscmVhZHkgZG9pbmcgaXRcbiAgICAgICAgaWYgKF90aGlzLmVycm9yQmFnLmhhc093blByb3BlcnR5KGNoaWxkLl91aWQpKSByZXR1cm47XG5cbiAgICAgICAgd2F0Y2hlcihjaGlsZCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHZhbGlkYXRlOiBmdW5jdGlvbiB2YWxpZGF0ZSgpIHtcbiAgICAgIHZhciBlcnJvcnMgPSB0aGlzLmlucHV0cy5maWx0ZXIoZnVuY3Rpb24gKGlucHV0KSB7XG4gICAgICAgIHJldHVybiAhaW5wdXQudmFsaWRhdGUodHJ1ZSk7XG4gICAgICB9KS5sZW5ndGg7XG4gICAgICByZXR1cm4gIWVycm9ycztcbiAgICB9LFxuICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLmlucHV0cy5sZW5ndGg7IGktLTspIHtcbiAgICAgICAgdGhpcy5pbnB1dHNbaV0ucmVzZXQoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmxhenlWYWxpZGF0aW9uKSB0aGlzLmVycm9yQmFnID0ge307XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy53YXRjaElucHV0cygpO1xuICB9LFxuICB1cGRhdGVkOiBmdW5jdGlvbiB1cGRhdGVkKCkge1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmdldElucHV0cygpO1xuXG4gICAgaWYgKGlucHV0cy5sZW5ndGggPCB0aGlzLmlucHV0cy5sZW5ndGgpIHtcbiAgICAgIC8vIFNvbWV0aGluZyB3YXMgcmVtb3ZlZCwgd2UgZG9uJ3Qgd2FudCBpdCBpbiB0aGUgZXJyb3JCYWcgYW55IG1vcmVcbiAgICAgIHZhciByZW1vdmVkID0gdGhpcy5pbnB1dHMuZmlsdGVyKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHJldHVybiAhaW5wdXRzLmluY2x1ZGVzKGkpO1xuICAgICAgfSk7XG5cbiAgICAgIGZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPCByZW1vdmVkLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICB2YXIgaW5wdXQgPSByZW1vdmVkW2luZGV4XTtcbiAgICAgICAgdGhpcy4kZGVsZXRlKHRoaXMuZXJyb3JCYWcsIGlucHV0Ll91aWQpO1xuICAgICAgICB0aGlzLiRkZWxldGUodGhpcy5pbnB1dHMsIHRoaXMuaW5wdXRzLmluZGV4T2YoaW5wdXQpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLndhdGNoSW5wdXRzKGlucHV0cyk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHJldHVybiBoKCdmb3JtJywge1xuICAgICAgYXR0cnM6IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICBub3ZhbGlkYXRlOiB0cnVlXG4gICAgICB9LCB0aGlzLiRhdHRycyksXG4gICAgICBvbjoge1xuICAgICAgICBzdWJtaXQ6IGZ1bmN0aW9uIHN1Ym1pdChlKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzMi4kZW1pdCgnc3VibWl0JywgZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTk0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZTcGFjZXIgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDb250ZW50X18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WQ29udGFpbmVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE5Nyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRmxleF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVkxheW91dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTkpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNvbnRhaW5lciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVkNvbnRlbnQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZGbGV4ICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWTGF5b3V0ICovXG5cblxuXG5cblxuXG52YXIgVlNwYWNlciA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3BhY2VyJyk7XG5cblxuXG52YXIgVkdyaWQgPSB7fTtcblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblZHcmlkLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkNvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZDb250ZW50X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNvbnRhaW5lcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVkNvbnRhaW5lcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZGbGV4X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WRmxleF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMYXlvdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZMYXlvdXRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoVlNwYWNlci5uYW1lLCBWU3BhY2VyKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoVkdyaWQpO1xuXG4vKioqLyB9KSxcbi8qIDE5NSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NvbnRlbnRfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOTYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfY29udGVudF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2NvbnRlbnRfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19zc3JfYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LWNvbnRlbnQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3Nzcl9ib290YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBwcm9wczoge1xuICAgIHRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ21haW4nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICB2YXIgXyR2dWV0aWZ5JGFwcGxpY2F0aW9uID0gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbixcbiAgICAgICAgICBiYXIgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24uYmFyLFxuICAgICAgICAgIHRvcCA9IF8kdnVldGlmeSRhcHBsaWNhdGlvbi50b3AsXG4gICAgICAgICAgcmlnaHQgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24ucmlnaHQsXG4gICAgICAgICAgZm9vdGVyID0gXyR2dWV0aWZ5JGFwcGxpY2F0aW9uLmZvb3RlcixcbiAgICAgICAgICBib3R0b20gPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24uYm90dG9tLFxuICAgICAgICAgIGxlZnQgPSBfJHZ1ZXRpZnkkYXBwbGljYXRpb24ubGVmdDtcblxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWRkaW5nVG9wOiB0b3AgKyBiYXIgKyAncHgnLFxuICAgICAgICBwYWRkaW5nUmlnaHQ6IHJpZ2h0ICsgJ3B4JyxcbiAgICAgICAgcGFkZGluZ0JvdHRvbTogZm9vdGVyICsgYm90dG9tICsgJ3B4JyxcbiAgICAgICAgcGFkZGluZ0xlZnQ6IGxlZnQgKyAncHgnXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ2NvbnRlbnQnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGgodGhpcy50YWcsIGRhdGEsIFtoKCdkaXYnLCB7IHN0YXRpY0NsYXNzOiAnY29udGVudC0td3JhcCcgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMTk2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMTk3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMyKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdjb250YWluZXInKSk7XG5cbi8qKiovIH0pLFxuLyogMTk4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMyKTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19ncmlkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCdmbGV4JykpO1xuXG4vKioqLyB9KSxcbi8qIDE5OSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX2dyaWRfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19ncmlkX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfZ3JpZF9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZ3JpZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzMik7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fZ3JpZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnbGF5b3V0JykpO1xuXG4vKioqLyB9KSxcbi8qIDIwMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZOYXZpZ2F0aW9uRHJhd2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVk5hdmlnYXRpb25EcmF3ZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZOYXZpZ2F0aW9uRHJhd2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTmF2aWdhdGlvbkRyYXdlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WTmF2aWdhdGlvbkRyYXdlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyMDEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19uYXZpZ2F0aW9uX2RyYXdlcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19uYXZpZ2F0aW9uX2RyYXdlcl9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX25hdmlnYXRpb25fZHJhd2VyX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE1KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19vdmVybGF5YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfc3NyX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuXG5cbi8vIE1peGluc1xuXG5cblxuXG5cbi8vIERpcmVjdGl2ZXNcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LW5hdmlnYXRpb24tZHJhd2VyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKG51bGwsIFsnbWluaVZhcmlhbnQnLCAncmlnaHQnLCAnd2lkdGgnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX292ZXJsYXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Nzcl9ib290YWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIENsaWNrT3V0c2lkZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBSZXNpemU6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fZGlyZWN0aXZlc19yZXNpemVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSxcbiAgICBUb3VjaDogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICB0b3VjaEFyZWE6IHtcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgcmlnaHQ6IDBcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgY2xpcHBlZDogQm9vbGVhbixcbiAgICBkaXNhYmxlUm91dGVXYXRjaGVyOiBCb29sZWFuLFxuICAgIGRpc2FibGVSZXNpemVXYXRjaGVyOiBCb29sZWFuLFxuICAgIGhlaWdodDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICcxMDAlJ1xuICAgIH0sXG4gICAgZmxvYXRpbmc6IEJvb2xlYW4sXG4gICAgbWluaVZhcmlhbnQ6IEJvb2xlYW4sXG4gICAgbWluaVZhcmlhbnRXaWR0aDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDgwXG4gICAgfSxcbiAgICBtb2JpbGVCcmVha1BvaW50OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMTI2NFxuICAgIH0sXG4gICAgcGVybWFuZW50OiBCb29sZWFuLFxuICAgIHJpZ2h0OiBCb29sZWFuLFxuICAgIHN0YXRlbGVzczogQm9vbGVhbixcbiAgICB0ZW1wb3Jhcnk6IEJvb2xlYW4sXG4gICAgdG91Y2hsZXNzOiBCb29sZWFuLFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMzAwXG4gICAgfSxcbiAgICB2YWx1ZTogeyByZXF1aXJlZDogZmFsc2UgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgLyoqXG4gICAgICogVXNlZCBmb3Igc2V0dGluZyBhbiBhcHBcbiAgICAgKiB2YWx1ZSBmcm9tIGEgZHluYW1pY1xuICAgICAqIHByb3BlcnR5LiBDYWxsZWQgZnJvbVxuICAgICAqIGFwcGxpY2F0aW9uYWJsZS5qc1xuICAgICAqXG4gICAgICogQHJldHVybiB7c3RyaW5nfVxuICAgICAqL1xuICAgIGFwcGxpY2F0aW9uUHJvcGVydHk6IGZ1bmN0aW9uIGFwcGxpY2F0aW9uUHJvcGVydHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yaWdodCA/ICdyaWdodCcgOiAnbGVmdCc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGVkSGVpZ2h0OiBmdW5jdGlvbiBjYWxjdWxhdGVkSGVpZ2h0KCkge1xuICAgICAgcmV0dXJuIGlzTmFOKHRoaXMuaGVpZ2h0KSA/IHRoaXMuaGVpZ2h0IDogdGhpcy5oZWlnaHQgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZFRyYW5zZm9ybTogZnVuY3Rpb24gY2FsY3VsYXRlZFRyYW5zZm9ybSgpIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHRoaXMucmlnaHQgPyB0aGlzLmNhbGN1bGF0ZWRXaWR0aCA6IC10aGlzLmNhbGN1bGF0ZWRXaWR0aDtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZWRXaWR0aDogZnVuY3Rpb24gY2FsY3VsYXRlZFdpZHRoKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWluaVZhcmlhbnQgPyB0aGlzLm1pbmlWYXJpYW50V2lkdGggOiB0aGlzLndpZHRoO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlcic6IHRydWUsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLWNsaXBwZWQnOiB0aGlzLmNsaXBwZWQsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0tY2xvc2UnOiAhdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1maXhlZCc6ICF0aGlzLmFic29sdXRlICYmICh0aGlzLmFwcCB8fCB0aGlzLmZpeGVkKSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1mbG9hdGluZyc6IHRoaXMuZmxvYXRpbmcsXG4gICAgICAgICduYXZpZ2F0aW9uLWRyYXdlci0taXMtbW9iaWxlJzogdGhpcy5pc01vYmlsZSxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS1taW5pLXZhcmlhbnQnOiB0aGlzLm1pbmlWYXJpYW50LFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLW9wZW4nOiB0aGlzLmlzQWN0aXZlLFxuICAgICAgICAnbmF2aWdhdGlvbi1kcmF3ZXItLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ25hdmlnYXRpb24tZHJhd2VyLS10ZW1wb3JhcnknOiB0aGlzLnRlbXBvcmFyeSxcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9LFxuICAgIGlzTW9iaWxlOiBmdW5jdGlvbiBpc01vYmlsZSgpIHtcbiAgICAgIHJldHVybiAhdGhpcy5zdGF0ZWxlc3MgJiYgIXRoaXMucGVybWFuZW50ICYmICF0aGlzLnRlbXBvcmFyeSAmJiB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQud2lkdGggPCBwYXJzZUludCh0aGlzLm1vYmlsZUJyZWFrUG9pbnQsIDEwKTtcbiAgICB9LFxuICAgIG1hcmdpblRvcDogZnVuY3Rpb24gbWFyZ2luVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuIDA7XG4gICAgICB2YXIgbWFyZ2luVG9wID0gdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5iYXI7XG5cbiAgICAgIG1hcmdpblRvcCArPSB0aGlzLmNsaXBwZWQgPyB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnRvcCA6IDA7XG5cbiAgICAgIHJldHVybiBtYXJnaW5Ub3A7XG4gICAgfSxcbiAgICBtYXhIZWlnaHQ6IGZ1bmN0aW9uIG1heEhlaWdodCgpIHtcbiAgICAgIGlmICghdGhpcy5hcHApIHJldHVybiAnMTAwJSc7XG5cbiAgICAgIHJldHVybiB0aGlzLmNsaXBwZWQgPyB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnRvcCArIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24uYm90dG9tIDogdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi5ib3R0b207XG4gICAgfSxcbiAgICByZWFjdHNUb0NsaWNrOiBmdW5jdGlvbiByZWFjdHNUb0NsaWNrKCkge1xuICAgICAgcmV0dXJuICF0aGlzLnN0YXRlbGVzcyAmJiAhdGhpcy5wZXJtYW5lbnQgJiYgKHRoaXMuaXNNb2JpbGUgfHwgdGhpcy50ZW1wb3JhcnkpO1xuICAgIH0sXG4gICAgcmVhY3RzVG9Nb2JpbGU6IGZ1bmN0aW9uIHJlYWN0c1RvTW9iaWxlKCkge1xuICAgICAgcmV0dXJuICF0aGlzLmRpc2FibGVSZXNpemVXYXRjaGVyICYmICF0aGlzLnN0YXRlbGVzcyAmJiAhdGhpcy5wZXJtYW5lbnQgJiYgIXRoaXMudGVtcG9yYXJ5O1xuICAgIH0sXG4gICAgcmVhY3RzVG9Sb3V0ZTogZnVuY3Rpb24gcmVhY3RzVG9Sb3V0ZSgpIHtcbiAgICAgIHJldHVybiAhdGhpcy5kaXNhYmxlUm91dGVXYXRjaGVyICYmICF0aGlzLnN0YXRlbGVzcyAmJiAodGhpcy50ZW1wb3JhcnkgfHwgdGhpcy5pc01vYmlsZSk7XG4gICAgfSxcbiAgICByZXNpemVJc0Rpc2FibGVkOiBmdW5jdGlvbiByZXNpemVJc0Rpc2FibGVkKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZVJlc2l6ZVdhdGNoZXIgfHwgdGhpcy5zdGF0ZWxlc3M7XG4gICAgfSxcbiAgICBzaG93T3ZlcmxheTogZnVuY3Rpb24gc2hvd092ZXJsYXkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSAmJiAodGhpcy5pc01vYmlsZSB8fCB0aGlzLnRlbXBvcmFyeSk7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uIHN0eWxlcygpIHtcbiAgICAgIHZhciBzdHlsZXMgPSB7XG4gICAgICAgIGhlaWdodDogdGhpcy5jYWxjdWxhdGVkSGVpZ2h0LFxuICAgICAgICBtYXJnaW5Ub3A6IHRoaXMubWFyZ2luVG9wICsgJ3B4JyxcbiAgICAgICAgbWF4SGVpZ2h0OiAnY2FsYygxMDAlIC0gJyArIHRoaXMubWF4SGVpZ2h0ICsgJ3B4KScsXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoJyArIHRoaXMuY2FsY3VsYXRlZFRyYW5zZm9ybSArICdweCknLFxuICAgICAgICB3aWR0aDogdGhpcy5jYWxjdWxhdGVkV2lkdGggKyAncHgnXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gc3R5bGVzO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgICRyb3V0ZTogZnVuY3Rpb24gJHJvdXRlKCkge1xuICAgICAgaWYgKHRoaXMucmVhY3RzVG9Sb3V0ZSAmJiB0aGlzLmNsb3NlQ29uZGl0aW9uYWwoKSkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUodmFsKSB7XG4gICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbCk7XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogV2hlbiBtb2JpbGUgY2hhbmdlcywgYWRqdXN0XG4gICAgICogdGhlIGFjdGl2ZSBzdGF0ZSBvbmx5IHdoZW5cbiAgICAgKiB0aGVyZSBoYXMgYmVlbiBhIHByZXZpb3VzXG4gICAgICogdmFsdWVcbiAgICAgKi9cbiAgICBpc01vYmlsZTogZnVuY3Rpb24gaXNNb2JpbGUodmFsLCBwcmV2KSB7XG4gICAgICAhdmFsICYmIHRoaXMuaXNBY3RpdmUgJiYgIXRoaXMudGVtcG9yYXJ5ICYmIHRoaXMucmVtb3ZlT3ZlcmxheSgpO1xuXG4gICAgICBpZiAocHJldiA9PSBudWxsIHx8IHRoaXMucmVzaXplSXNEaXNhYmxlZCB8fCAhdGhpcy5yZWFjdHNUb01vYmlsZSkgcmV0dXJuO1xuXG4gICAgICB0aGlzLmlzQWN0aXZlID0gIXZhbDtcbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpO1xuICAgIH0sXG4gICAgcGVybWFuZW50OiBmdW5jdGlvbiBwZXJtYW5lbnQodmFsKSB7XG4gICAgICAvLyBJZiBlbmFibGluZyBwcm9wXG4gICAgICAvLyBlbmFibGUgdGhlIGRyYXdlclxuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpO1xuICAgIH0sXG4gICAgc2hvd092ZXJsYXk6IGZ1bmN0aW9uIHNob3dPdmVybGF5KHZhbCkge1xuICAgICAgaWYgKHZhbCkgdGhpcy5nZW5PdmVybGF5KCk7ZWxzZSB0aGlzLnJlbW92ZU92ZXJsYXkoKTtcbiAgICB9LFxuICAgIHRlbXBvcmFyeTogZnVuY3Rpb24gdGVtcG9yYXJ5KCkge1xuICAgICAgdGhpcy5jYWxsVXBkYXRlKCk7XG4gICAgfSxcbiAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUodmFsKSB7XG4gICAgICBpZiAodGhpcy5wZXJtYW5lbnQpIHJldHVybjtcblxuICAgICAgaWYgKHZhbCA9PSBudWxsKSByZXR1cm4gdGhpcy5pbml0KCk7XG5cbiAgICAgIGlmICh2YWwgIT09IHRoaXMuaXNBY3RpdmUpIHRoaXMuaXNBY3RpdmUgPSB2YWw7XG4gICAgfVxuICB9LFxuXG4gIGJlZm9yZU1vdW50OiBmdW5jdGlvbiBiZWZvcmVNb3VudCgpIHtcbiAgICB0aGlzLmluaXQoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjYWxjdWxhdGVUb3VjaEFyZWE6IGZ1bmN0aW9uIGNhbGN1bGF0ZVRvdWNoQXJlYSgpIHtcbiAgICAgIGlmICghdGhpcy4kZWwucGFyZW50Tm9kZSkgcmV0dXJuO1xuICAgICAgdmFyIHBhcmVudFJlY3QgPSB0aGlzLiRlbC5wYXJlbnROb2RlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICB0aGlzLnRvdWNoQXJlYSA9IHtcbiAgICAgICAgbGVmdDogcGFyZW50UmVjdC5sZWZ0ICsgNTAsXG4gICAgICAgIHJpZ2h0OiBwYXJlbnRSZWN0LnJpZ2h0IC0gNTBcbiAgICAgIH07XG4gICAgfSxcbiAgICBjbG9zZUNvbmRpdGlvbmFsOiBmdW5jdGlvbiBjbG9zZUNvbmRpdGlvbmFsKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgJiYgdGhpcy5yZWFjdHNUb0NsaWNrO1xuICAgIH0sXG4gICAgZ2VuRGlyZWN0aXZlczogZnVuY3Rpb24gZ2VuRGlyZWN0aXZlcygpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBkaXJlY3RpdmVzID0gW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IHtcbiAgICAgICAgICBjbG9zZUNvbmRpdGlvbmFsOiB0aGlzLmNsb3NlQ29uZGl0aW9uYWxcbiAgICAgICAgfVxuICAgICAgfV07XG5cbiAgICAgICF0aGlzLnRvdWNobGVzcyAmJiBkaXJlY3RpdmVzLnB1c2goe1xuICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIHBhcmVudDogdHJ1ZSxcbiAgICAgICAgICBsZWZ0OiB0aGlzLnN3aXBlTGVmdCxcbiAgICAgICAgICByaWdodDogdGhpcy5zd2lwZVJpZ2h0XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gZGlyZWN0aXZlcztcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogU2V0cyBzdGF0ZSBiZWZvcmUgbW91bnQgdG8gYXZvaWRcbiAgICAgKiBlbnRyeSB0cmFuc2l0aW9ucyBpbiBTU1JcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICovXG4gICAgaW5pdDogZnVuY3Rpb24gaW5pdCgpIHtcbiAgICAgIGlmICh0aGlzLnBlcm1hbmVudCkge1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0ZWxlc3MgfHwgdGhpcy52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0aGlzLnZhbHVlO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy50ZW1wb3JhcnkpIHtcbiAgICAgICAgdGhpcy5pc0FjdGl2ZSA9ICF0aGlzLmlzTW9iaWxlO1xuICAgICAgfVxuICAgIH0sXG4gICAgc3dpcGVSaWdodDogZnVuY3Rpb24gc3dpcGVSaWdodChlKSB7XG4gICAgICBpZiAodGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5yaWdodCkgcmV0dXJuO1xuICAgICAgdGhpcy5jYWxjdWxhdGVUb3VjaEFyZWEoKTtcblxuICAgICAgaWYgKE1hdGguYWJzKGUudG91Y2hlbmRYIC0gZS50b3VjaHN0YXJ0WCkgPCAxMDApIHJldHVybjtcbiAgICAgIGlmICghdGhpcy5yaWdodCAmJiBlLnRvdWNoc3RhcnRYIDw9IHRoaXMudG91Y2hBcmVhLmxlZnQpIHRoaXMuaXNBY3RpdmUgPSB0cnVlO2Vsc2UgaWYgKHRoaXMucmlnaHQgJiYgdGhpcy5pc0FjdGl2ZSkgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH0sXG4gICAgc3dpcGVMZWZ0OiBmdW5jdGlvbiBzd2lwZUxlZnQoZSkge1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUgJiYgdGhpcy5yaWdodCkgcmV0dXJuO1xuICAgICAgdGhpcy5jYWxjdWxhdGVUb3VjaEFyZWEoKTtcblxuICAgICAgaWYgKE1hdGguYWJzKGUudG91Y2hlbmRYIC0gZS50b3VjaHN0YXJ0WCkgPCAxMDApIHJldHVybjtcbiAgICAgIGlmICh0aGlzLnJpZ2h0ICYmIGUudG91Y2hzdGFydFggPj0gdGhpcy50b3VjaEFyZWEucmlnaHQpIHRoaXMuaXNBY3RpdmUgPSB0cnVlO2Vsc2UgaWYgKCF0aGlzLnJpZ2h0ICYmIHRoaXMuaXNBY3RpdmUpIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBhcHBsaWNhdGlvbiBsYXlvdXRcbiAgICAgKlxuICAgICAqIEByZXR1cm4ge251bWJlcn1cbiAgICAgKi9cbiAgICB1cGRhdGVBcHBsaWNhdGlvbjogZnVuY3Rpb24gdXBkYXRlQXBwbGljYXRpb24oKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNBY3RpdmUgfHwgdGhpcy50ZW1wb3JhcnkgfHwgdGhpcy5pc01vYmlsZSA/IDAgOiB0aGlzLmNhbGN1bGF0ZWRXaWR0aDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXMsXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICBkaXJlY3RpdmVzOiB0aGlzLmdlbkRpcmVjdGl2ZXMoKSxcbiAgICAgIG9uOiB7XG4gICAgICAgIGNsaWNrOiBmdW5jdGlvbiBjbGljaygpIHtcbiAgICAgICAgICBpZiAoIV90aGlzMi5taW5pVmFyaWFudCkgcmV0dXJuO1xuXG4gICAgICAgICAgX3RoaXMyLiRlbWl0KCd1cGRhdGU6bWluaVZhcmlhbnQnLCBmYWxzZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYW5zaXRpb25lbmQ6IGZ1bmN0aW9uIHRyYW5zaXRpb25lbmQoZSkge1xuICAgICAgICAgIF90aGlzMi4kZW1pdCgndHJhbnNpdGlvbmVuZCcsIGUpO1xuICAgICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgncmVzaXplJykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIHJldHVybiBoKCdhc2lkZScsIGRhdGEsIFt0aGlzLiRzbG90cy5kZWZhdWx0LCBoKCdkaXYnLCB7ICdjbGFzcyc6ICduYXZpZ2F0aW9uLWRyYXdlcl9fYm9yZGVyJyB9KV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMDIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMDMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFnaW5hdGlvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDQpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYWdpbmF0aW9uX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFnaW5hdGlvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhZ2luYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhZ2luYXRpb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjA0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFnaW5hdGlvbl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIwNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19wYWdpbmF0aW9uX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFnaW5hdGlvbl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19kaXJlY3RpdmVzX3Jlc2l6ZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikgeyBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSB7IGZvciAodmFyIGkgPSAwLCBhcnIyID0gQXJyYXkoYXJyLmxlbmd0aCk7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsgYXJyMltpXSA9IGFycltpXTsgfSByZXR1cm4gYXJyMjsgfSBlbHNlIHsgcmV0dXJuIEFycmF5LmZyb20oYXJyKTsgfSB9XG5cblxuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcGFnaW5hdGlvbicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX2RpcmVjdGl2ZXNfcmVzaXplX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBtYXhCdXR0b25zOiAwLFxuICAgICAgZGVmYXVsdENvbG9yOiAncHJpbWFyeSdcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBjaXJjbGU6IEJvb2xlYW4sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgbGVuZ3RoOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAwLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiB2YWwgJSAxID09PSAwO1xuICAgICAgfVxuICAgIH0sXG4gICAgdG90YWxWaXNpYmxlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgdmFsdWU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3BhZ2luYXRpb24nOiB0cnVlLFxuICAgICAgICAncGFnaW5hdGlvbi0tY2lyY2xlJzogdGhpcy5jaXJjbGUsXG4gICAgICAgICdwYWdpbmF0aW9uLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWRcbiAgICAgIH07XG4gICAgfSxcbiAgICBpdGVtczogZnVuY3Rpb24gaXRlbXMoKSB7XG4gICAgICB2YXIgbWF4TGVuZ3RoID0gdGhpcy50b3RhbFZpc2libGUgfHwgdGhpcy5tYXhCdXR0b25zO1xuICAgICAgaWYgKHRoaXMubGVuZ3RoIDw9IG1heExlbmd0aCkge1xuICAgICAgICByZXR1cm4gdGhpcy5yYW5nZSgxLCB0aGlzLmxlbmd0aCk7XG4gICAgICB9XG5cbiAgICAgIHZhciBldmVuID0gbWF4TGVuZ3RoICUgMiA9PT0gMCA/IDEgOiAwO1xuICAgICAgdmFyIGxlZnQgPSBNYXRoLmZsb29yKG1heExlbmd0aCAvIDIpO1xuICAgICAgdmFyIHJpZ2h0ID0gdGhpcy5sZW5ndGggLSBsZWZ0ICsgMSArIGV2ZW47XG5cbiAgICAgIGlmICh0aGlzLnZhbHVlID49IGxlZnQgJiYgdGhpcy52YWx1ZSA8PSByaWdodCkge1xuICAgICAgICB2YXIgc3RhcnQgPSB0aGlzLnZhbHVlIC0gbGVmdCArIDI7XG4gICAgICAgIHZhciBlbmQgPSB0aGlzLnZhbHVlICsgbGVmdCAtIDIgLSBldmVuO1xuXG4gICAgICAgIHJldHVybiBbMSwgJy4uLiddLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGhpcy5yYW5nZShzdGFydCwgZW5kKSksIFsnLi4uJywgdGhpcy5sZW5ndGhdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KHRoaXMucmFuZ2UoMSwgbGVmdCkpLCBbJy4uLiddLCBfdG9Db25zdW1hYmxlQXJyYXkodGhpcy5yYW5nZSh0aGlzLmxlbmd0aCAtIGxlZnQgKyAxICsgZXZlbiwgdGhpcy5sZW5ndGgpKSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgdGhpcy5pbml0KCk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5pbml0KCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgaW5pdDogZnVuY3Rpb24gaW5pdCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBudWxsO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayh0aGlzLm9uUmVzaXplKTtcbiAgICAgIC8vIFRPRE86IENoYW5nZSB0aGlzIChmNzVkZWUzYSwgY2JkZjdjYWEpXG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLnNlbGVjdGVkID0gX3RoaXMudmFsdWU7XG4gICAgICB9LCAxMDApO1xuICAgIH0sXG4gICAgb25SZXNpemU6IGZ1bmN0aW9uIG9uUmVzaXplKCkge1xuICAgICAgdmFyIHdpZHRoID0gdGhpcy4kZWwgJiYgdGhpcy4kZWwucGFyZW50Tm9kZSA/IHRoaXMuJGVsLnBhcmVudE5vZGUuY2xpZW50V2lkdGggOiB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgdGhpcy5tYXhCdXR0b25zID0gTWF0aC5mbG9vcigod2lkdGggLSA5NikgLyA0Mik7XG4gICAgfSxcbiAgICBuZXh0OiBmdW5jdGlvbiBuZXh0KGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy52YWx1ZSArIDEpO1xuICAgICAgdGhpcy4kZW1pdCgnbmV4dCcpO1xuICAgIH0sXG4gICAgcHJldmlvdXM6IGZ1bmN0aW9uIHByZXZpb3VzKGUpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy52YWx1ZSAtIDEpO1xuICAgICAgdGhpcy4kZW1pdCgncHJldmlvdXMnKTtcbiAgICB9LFxuICAgIHJhbmdlOiBmdW5jdGlvbiByYW5nZShmcm9tLCB0bykge1xuICAgICAgdmFyIHJhbmdlID0gW107XG5cbiAgICAgIGZyb20gPSBmcm9tID4gMCA/IGZyb20gOiAxO1xuXG4gICAgICBmb3IgKHZhciBpID0gZnJvbTsgaSA8PSB0bzsgaSsrKSB7XG4gICAgICAgIHJhbmdlLnB1c2goaSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByYW5nZTtcbiAgICB9LFxuICAgIGdlbkljb246IGZ1bmN0aW9uIGdlbkljb24oaCwgaWNvbiwgZGlzYWJsZWQsIGZuKSB7XG4gICAgICByZXR1cm4gaCgnbGknLCBbaCgnYnV0dG9uJywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3BhZ2luYXRpb25fX25hdmlnYXRpb24nLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICdwYWdpbmF0aW9uX19uYXZpZ2F0aW9uLS1kaXNhYmxlZCc6IGRpc2FibGVkXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiBkaXNhYmxlZCA/IHt9IDogeyBjbGljazogZm4gfVxuICAgICAgfSwgW2goX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBbaWNvbl0pXSldKTtcbiAgICB9LFxuICAgIGdlbkl0ZW06IGZ1bmN0aW9uIGdlbkl0ZW0oaCwgaSkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHJldHVybiBoKCdidXR0b24nLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAncGFnaW5hdGlvbl9faXRlbScsXG4gICAgICAgIGNsYXNzOiBpID09PSB0aGlzLnZhbHVlID8gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICAgJ3BhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSc6IHRydWVcbiAgICAgICAgfSkgOiB7fSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogZnVuY3Rpb24gY2xpY2soKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMyLiRlbWl0KCdpbnB1dCcsIGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgW2ldKTtcbiAgICB9LFxuICAgIGdlbkl0ZW1zOiBmdW5jdGlvbiBnZW5JdGVtcyhoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKGZ1bmN0aW9uIChpLCBpbmRleCkge1xuICAgICAgICByZXR1cm4gaCgnbGknLCB7IGtleTogaW5kZXggfSwgW2lzTmFOKGkpID8gaCgnc3BhbicsIHsgY2xhc3M6ICdwYWdpbmF0aW9uX19tb3JlJyB9LCBbaV0pIDogX3RoaXMzLmdlbkl0ZW0oaCwgaSldKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGNoaWxkcmVuID0gW3RoaXMuZ2VuSWNvbihoLCB0aGlzLnByZXZJY29uLCB0aGlzLnZhbHVlIDw9IDEsIHRoaXMucHJldmlvdXMpLCB0aGlzLmdlbkl0ZW1zKGgpLCB0aGlzLmdlbkljb24oaCwgdGhpcy5uZXh0SWNvbiwgdGhpcy52YWx1ZSA+PSB0aGlzLmxlbmd0aCwgdGhpcy5uZXh0KV07XG5cbiAgICByZXR1cm4gaCgndWwnLCB7XG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBtb2RpZmllcnM6IHsgcXVpZXQ6IHRydWUgfSxcbiAgICAgICAgbmFtZTogJ3Jlc2l6ZScsXG4gICAgICAgIHZhbHVlOiB0aGlzLm9uUmVzaXplXG4gICAgICB9XSxcbiAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXNcbiAgICB9LCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIwNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDIwNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYXJhbGxheF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMDcpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZQYXJhbGxheF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhcmFsbGF4X19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUGFyYWxsYXhfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlBhcmFsbGF4X19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIwNyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BhcmFsbGF4X3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjA4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3BhcmFsbGF4X3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfcGFyYWxsYXhfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190cmFuc2xhdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjA5KTtcblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXBhcmFsbGF4JyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190cmFuc2xhdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNCb290ZWQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYWx0OiBTdHJpbmcsXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBOdW1iZXJdLFxuICAgICAgZGVmYXVsdDogNTAwXG4gICAgfSxcbiAgICBzcmM6IFN0cmluZ1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICBvcGFjaXR5OiB0aGlzLmlzQm9vdGVkID8gMSA6IDAsXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZSgtNTAlLCAnICsgdGhpcy5wYXJhbGxheCArICdweCknXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIHBhcmFsbGF4OiBmdW5jdGlvbiBwYXJhbGxheCgpIHtcbiAgICAgIHRoaXMuaXNCb290ZWQgPSB0cnVlO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGluaXQ6IGZ1bmN0aW9uIGluaXQoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAoIXRoaXMuJHJlZnMuaW1nKSByZXR1cm47XG5cbiAgICAgIGlmICh0aGlzLiRyZWZzLmltZy5jb21wbGV0ZSkge1xuICAgICAgICB0aGlzLnRyYW5zbGF0ZSgpO1xuICAgICAgICB0aGlzLmxpc3RlbmVycygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4kcmVmcy5pbWcuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBfdGhpcy50cmFuc2xhdGUoKTtcbiAgICAgICAgICBfdGhpcy5saXN0ZW5lcnMoKTtcbiAgICAgICAgfSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb2JqSGVpZ2h0OiBmdW5jdGlvbiBvYmpIZWlnaHQoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kcmVmcy5pbWcubmF0dXJhbEhlaWdodDtcbiAgICB9LFxuICAgIGVsT2Zmc2V0VG9wOiBmdW5jdGlvbiBlbE9mZnNldFRvcCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRlbC5vZmZzZXRUb3A7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgaW1nRGF0YSA9IHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncGFyYWxsYXhfX2ltYWdlJyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHNyYzogdGhpcy5zcmNcbiAgICAgIH0sXG4gICAgICByZWY6ICdpbWcnXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmFsdCkgaW1nRGF0YS5hdHRycy5hbHQgPSB0aGlzLmFsdDtcblxuICAgIHZhciBjb250YWluZXIgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3BhcmFsbGF4X19pbWFnZS1jb250YWluZXInXG4gICAgfSwgW2goJ2ltZycsIGltZ0RhdGEpXSk7XG5cbiAgICB2YXIgY29udGVudCA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAncGFyYWxsYXhfX2NvbnRlbnQnXG4gICAgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG5cbiAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdwYXJhbGxheCcsXG4gICAgICBzdHlsZToge1xuICAgICAgICBoZWlnaHQ6IHRoaXMubm9ybWFsaXplZEhlaWdodCArICdweCdcbiAgICAgIH0sXG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2NvbnRhaW5lciwgY29udGVudF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3RyYW5zbGF0YWJsZScsXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGFyYWxsYXg6IG51bGwsXG4gICAgICBwYXJhbGxheERpc3Q6IG51bGwsXG4gICAgICBwZXJjZW50U2Nyb2xsZWQ6IG51bGwsXG4gICAgICBzY3JvbGxUb3A6IG51bGwsXG4gICAgICB3aW5kb3dIZWlnaHQ6IG51bGwsXG4gICAgICB3aW5kb3dCb3R0b206IG51bGxcbiAgICB9O1xuICB9LFxuXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBub3JtYWxpemVkSGVpZ2h0OiBmdW5jdGlvbiBub3JtYWxpemVkSGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMuanVtYm90cm9uKSB7XG4gICAgICAgIHJldHVybiBpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLmhlaWdodCA6IHRoaXMuaGVpZ2h0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLmhlaWdodC50b1N0cmluZygpLnJlcGxhY2UoLyheWzAtOV0qJCkvLCAnJDEnKSk7XG4gICAgfSxcbiAgICBpbWdIZWlnaHQ6IGZ1bmN0aW9uIGltZ0hlaWdodCgpIHtcbiAgICAgIHJldHVybiB0aGlzLm9iakhlaWdodCgpO1xuICAgIH1cbiAgfSxcblxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnRyYW5zbGF0ZSwgZmFsc2UpO1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCB0aGlzLnRyYW5zbGF0ZSwgZmFsc2UpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIGxpc3RlbmVyczogZnVuY3Rpb24gbGlzdGVuZXJzKCkge1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMudHJhbnNsYXRlLCBmYWxzZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgdGhpcy50cmFuc2xhdGUsIGZhbHNlKTtcbiAgICB9LFxuICAgIHRyYW5zbGF0ZTogZnVuY3Rpb24gdHJhbnNsYXRlKCkge1xuICAgICAgdGhpcy5jYWxjRGltZW5zaW9ucygpO1xuXG4gICAgICB0aGlzLnBlcmNlbnRTY3JvbGxlZCA9ICh0aGlzLndpbmRvd0JvdHRvbSAtIHRoaXMuZWxPZmZzZXRUb3ApIC8gKHRoaXMubm9ybWFsaXplZEhlaWdodCArIHRoaXMud2luZG93SGVpZ2h0KTtcblxuICAgICAgdGhpcy5wYXJhbGxheCA9IE1hdGgucm91bmQodGhpcy5wYXJhbGxheERpc3QgKiB0aGlzLnBlcmNlbnRTY3JvbGxlZCk7XG5cbiAgICAgIGlmICh0aGlzLnRyYW5zbGF0ZWQpIHtcbiAgICAgICAgdGhpcy50cmFuc2xhdGVkKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBjYWxjRGltZW5zaW9uczogZnVuY3Rpb24gY2FsY0RpbWVuc2lvbnMoKSB7XG4gICAgICB2YXIgb2Zmc2V0ID0gdGhpcy4kZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgIHRoaXMuc2Nyb2xsVG9wID0gd2luZG93LnBhZ2VZT2Zmc2V0O1xuICAgICAgdGhpcy5wYXJhbGxheERpc3QgPSB0aGlzLmltZ0hlaWdodCAtIHRoaXMubm9ybWFsaXplZEhlaWdodDtcbiAgICAgIHRoaXMuZWxPZmZzZXRUb3AgPSBvZmZzZXQudG9wICsgdGhpcy5zY3JvbGxUb3A7XG4gICAgICB0aGlzLndpbmRvd0hlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgIHRoaXMud2luZG93Qm90dG9tID0gdGhpcy5zY3JvbGxUb3AgKyB0aGlzLndpbmRvd0hlaWdodDtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIxMCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZSYWRpb0dyb3VwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WUmFkaW9fXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEzKTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZSYWRpb0dyb3VwICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWUmFkaW8gKi9cblxuXG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WUmFkaW9Hcm91cF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlJhZGlvR3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZSYWRpb0dyb3VwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlJhZGlvX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WUmFkaW9fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlJhZGlvR3JvdXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjExICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfaW5wdXRfZ3JvdXBzX3N0eWxfXyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c19zZWxlY3Rpb25fY29udHJvbHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3JhZGlvX2dyb3VwX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3JhZGlvX2dyb3VwX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfcmFkaW9fZ3JvdXBfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfcmVnaXN0cmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNCk7XG4vLyBTdHlsZXNcblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcmFkaW8tZ3JvdXAnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2lucHV0X19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgncmFkaW8nKV0sXG5cbiAgbW9kZWw6IHtcbiAgICBwcm9wOiAnaW5wdXRWYWx1ZScsXG4gICAgZXZlbnQ6ICdjaGFuZ2UnXG4gIH0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGlzTWFuZGF0b3J5OiBmdW5jdGlvbiBpc01hbmRhdG9yeSgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLm1hbmRhdG9yeTtcbiAgICAgIH0sXG4gICAgICBuYW1lOiBmdW5jdGlvbiBuYW1lKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMubmFtZTtcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW50ZXJuYWxUYWJJbmRleDogLTEsXG4gICAgICByYWRpb3M6IFtdXG4gICAgfTtcbiAgfSxcblxuICBwcm9wczoge1xuICAgIGNvbHVtbjoge1xuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9LFxuICAgIGlucHV0VmFsdWU6IG51bGwsXG4gICAgbWFuZGF0b3J5OiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgbmFtZTogU3RyaW5nLFxuICAgIHJvdzogQm9vbGVhblxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaGFzRXJyb3I6IGZ1bmN0aW9uIGhhc0Vycm9yKHZhbCkge1xuICAgICAgZm9yICh2YXIgaW5kZXggPSB0aGlzLnJhZGlvcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5yYWRpb3NbaW5kZXhdLnBhcmVudEVycm9yID0gdmFsO1xuICAgICAgfVxuICAgIH0sXG4gICAgaW5wdXRWYWx1ZTogZnVuY3Rpb24gaW5wdXRWYWx1ZSh2YWwpIHtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5yYWRpb3MubGVuZ3RoOyAtLWluZGV4ID49IDA7KSB7XG4gICAgICAgIHZhciByYWRpbyA9IHRoaXMucmFkaW9zW2luZGV4XTtcbiAgICAgICAgcmFkaW8uaXNBY3RpdmUgPSB2YWwgPT09IHJhZGlvLnZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAncmFkaW8tZ3JvdXAnOiB0cnVlLFxuICAgICAgICAncmFkaW8tZ3JvdXAtLWNvbHVtbic6IHRoaXMuY29sdW1uICYmICF0aGlzLnJvdyxcbiAgICAgICAgJ3JhZGlvLWdyb3VwLS1yb3cnOiB0aGlzLnJvdyxcbiAgICAgICAgJ2Vycm9yLS10ZXh0JzogdGhpcy5oYXNFcnJvclxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHRvZ2dsZVJhZGlvOiBmdW5jdGlvbiB0b2dnbGVSYWRpbyh2YWx1ZSkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zaG91bGRWYWxpZGF0ZSA9IHRydWU7XG4gICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB2YWx1ZSk7XG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpczIudmFsaWRhdGUoKTtcbiAgICAgIH0pO1xuXG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMucmFkaW9zLmxlbmd0aDsgLS1pbmRleCA+PSAwOykge1xuICAgICAgICB2YXIgcmFkaW8gPSB0aGlzLnJhZGlvc1tpbmRleF07XG4gICAgICAgIGlmIChyYWRpby52YWx1ZSAhPT0gdmFsdWUpIHJhZGlvLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSxcbiAgICByYWRpb0JsdXI6IGZ1bmN0aW9uIHJhZGlvQmx1cihlKSB7XG4gICAgICBpZiAoIWUucmVsYXRlZFRhcmdldCB8fCAhZS5yZWxhdGVkVGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygncmFkaW8nKSkge1xuICAgICAgICB0aGlzLnNob3VsZFZhbGlkYXRlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy4kZW1pdCgnYmx1cicsIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICByZWdpc3RlcjogZnVuY3Rpb24gcmVnaXN0ZXIocmFkaW8pIHtcbiAgICAgIHJhZGlvLmlzQWN0aXZlID0gdGhpcy5pbnB1dFZhbHVlID09PSByYWRpby52YWx1ZTtcbiAgICAgIHJhZGlvLiRlbC50YWJJbmRleCA9IHJhZGlvLiRlbC50YWJJbmRleCA+IDAgPyByYWRpby4kZWwudGFiSW5kZXggOiAwO1xuICAgICAgcmFkaW8uJG9uKCdjaGFuZ2UnLCB0aGlzLnRvZ2dsZVJhZGlvKTtcbiAgICAgIHJhZGlvLiRvbignYmx1cicsIHRoaXMucmFkaW9CbHVyKTtcbiAgICAgIHJhZGlvLiRvbignZm9jdXMnLCB0aGlzLnJhZGlvRm9jdXMpO1xuICAgICAgdGhpcy5yYWRpb3MucHVzaChyYWRpbyk7XG4gICAgfSxcbiAgICB1bnJlZ2lzdGVyOiBmdW5jdGlvbiB1bnJlZ2lzdGVyKHJhZGlvKSB7XG4gICAgICByYWRpby4kb2ZmKCdjaGFuZ2UnLCB0aGlzLnRvZ2dsZVJhZGlvKTtcbiAgICAgIHJhZGlvLiRvZmYoJ2JsdXInLCB0aGlzLnJhZGlvQmx1cik7XG4gICAgICByYWRpby4kb2ZmKCdmb2N1cycsIHRoaXMucmFkaW9Gb2N1cyk7XG5cbiAgICAgIHZhciBpbmRleCA9IHRoaXMucmFkaW9zLmZpbmRJbmRleChmdW5jdGlvbiAocikge1xuICAgICAgICByZXR1cm4gciA9PT0gcmFkaW87XG4gICAgICB9KTtcblxuICAgICAgaWYgKGluZGV4ID4gLTEpIHRoaXMucmFkaW9zLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHJvbGU6ICdyYWRpb2dyb3VwJ1xuICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cCh0aGlzLiRzbG90cy5kZWZhdWx0LCBkYXRhKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjEyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjEzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdHJhbnNpdGlvbnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGFiX2ZvY3VzYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbnZhciBfdHlwZW9mID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIgPyBmdW5jdGlvbiAob2JqKSB7IHJldHVybiB0eXBlb2Ygb2JqOyB9IDogZnVuY3Rpb24gKG9iaikgeyByZXR1cm4gb2JqICYmIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvYmogIT09IFN5bWJvbC5wcm90b3R5cGUgPyBcInN5bWJvbFwiIDogdHlwZW9mIG9iajsgfTtcblxuLy8gQ29tcG9uZW50c1xuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtcmFkaW8nLFxuXG4gIGluaGVyaXRBdHRyczogZmFsc2UsXG5cbiAgaW5qZWN0OiBbJ2lzTWFuZGF0b3J5JywgJ25hbWUnXSxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfcmVnaXN0cmFibGVfX1tcImFcIiAvKiBpbmplY3QgKi9dKSgncmFkaW8nLCAndi1yYWRpbycsICd2LXJhZGlvLWdyb3VwJyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RhYl9mb2N1c2FibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlZmF1bHRDb2xvcjogJ2FjY2VudCcsXG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICBwYXJlbnRFcnJvcjogZmFsc2VcbiAgICB9O1xuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgdmFsdWU6IG51bGwsXG4gICAgbGFiZWw6IFN0cmluZ1xuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHZhciBjbGFzc2VzID0ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9scyc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGFiLWZvY3VzZWQnOiB0aGlzLnRhYkZvY3VzZWQsXG4gICAgICAgICdyYWRpbyc6IHRydWUsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH07XG5cbiAgICAgIGlmICghdGhpcy5wYXJlbnRFcnJvcikge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBpY29uOiBmdW5jdGlvbiBpY29uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNBY3RpdmUgPyAncmFkaW9fYnV0dG9uX2NoZWNrZWQnIDogJ3JhZGlvX2J1dHRvbl91bmNoZWNrZWQnO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuSW5wdXQ6IGZ1bmN0aW9uIGdlbklucHV0KHJhZGlvKSB7XG4gICAgICB2YXIgdmFsdWUgPSBbJ3N0cmluZycsICdudW1iZXInXS5pbmNsdWRlcyhfdHlwZW9mKHRoaXMudmFsdWUpKSA/IHRoaXMudmFsdWUgOiBKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKTtcbiAgICAgIHZhciBpbnB1dCA9IHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2lucHV0Jywge1xuICAgICAgICByZWY6ICdpbnB1dCcsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgZGlzcGxheTogJ25vbmUnXG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUgJiYgdGhpcy5uYW1lKCksXG4gICAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgICAgdHlwZTogJ3JhZGlvJyxcbiAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSwgdGhpcy4kYXR0cnMpXG4gICAgICB9LCBbdmFsdWVdKTtcblxuICAgICAgcmFkaW8ucHVzaChpbnB1dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIGNsYXNzOiAnaW5wdXQtZ3JvdXBfX2lucHV0J1xuICAgICAgfSwgcmFkaW8pO1xuICAgIH0sXG4gICAgZ2VuV3JhcHBlcjogZnVuY3Rpb24gZ2VuV3JhcHBlcihyYWRpbykge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIGNoaWxkcmVuID0gW107XG5cbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5MYWJlbCgpKTtcbiAgICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5JbnB1dChyYWRpbykpO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIHJvbGU6ICdyYWRpbycsXG4gICAgICAgICAgJ2FyaWEtY2hlY2tlZCc6IHRoaXMuaXNBY3RpdmUgPyAndHJ1ZScgOiAnZmFsc2UnLFxuICAgICAgICAgICdhcmlhLWxhYmVsJzogdGhpcy5sYWJlbFxuICAgICAgICB9LFxuICAgICAgICBvbjoge1xuICAgICAgICAgIGtleWRvd246IGZ1bmN0aW9uIGtleWRvd24oZSkge1xuICAgICAgICAgICAgaWYgKFsxMywgMzJdLmluY2x1ZGVzKGUua2V5Q29kZSkpIHtcbiAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICBfdGhpcy50b2dnbGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIGJsdXI6IGZ1bmN0aW9uIGJsdXIoZSkge1xuICAgICAgICAgICAgX3RoaXMuJGVtaXQoJ2JsdXInLCBlKTtcbiAgICAgICAgICAgIF90aGlzLnRhYkZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sIGNoaWxkcmVuKTtcbiAgICB9LFxuICAgIGdlbkxhYmVsOiBmdW5jdGlvbiBnZW5MYWJlbCgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdsYWJlbCcsIHtcbiAgICAgICAgb246IHtcbiAgICAgICAgICBjbGljazogdGhpcy50b2dnbGVcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy4kc2xvdHMubGFiZWwgfHwgdGhpcy5sYWJlbCk7XG4gICAgfSxcbiAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSgpIHtcbiAgICAgIHZhciBtYW5kYXRvcnkgPSAhIXRoaXMuaXNNYW5kYXRvcnkgJiYgdGhpcy5pc01hbmRhdG9yeSgpO1xuXG4gICAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgKCF0aGlzLmlzQWN0aXZlIHx8ICFtYW5kYXRvcnkpKSB7XG4gICAgICAgIHRoaXMuJHJlZnMuaW5wdXQuY2hlY2tlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLiRlbWl0KCdjaGFuZ2UnLCB0aGlzLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnJhZGlvLnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMucmFkaW8udW5yZWdpc3Rlcih0aGlzKTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHZhciB0cmFuc2l0aW9uID0gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJiXCIgLyogVkZhZGVUcmFuc2l0aW9uICovXSwge30sIFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgc3RhdGljQ2xhc3M6ICdpY29uLS1zZWxlY3Rpb24tY29udHJvbCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdpY29uLS1yYWRpbyc6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH0sXG4gICAgICBrZXk6IHRoaXMuaWNvbixcbiAgICAgIG9uOiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgY2xpY2s6IHRoaXMudG9nZ2xlXG4gICAgICB9LCB0aGlzLiRsaXN0ZW5lcnMpXG4gICAgfSwgdGhpcy5pY29uKV0pO1xuXG4gICAgdmFyIHJpcHBsZSA9IHRoaXMucmlwcGxlID8gdGhpcy5nZW5SaXBwbGUoKSA6IG51bGw7XG5cbiAgICByZXR1cm4gdGhpcy5nZW5XcmFwcGVyKFt0cmFuc2l0aW9uLCByaXBwbGVdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjE0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd0YWItZm9jdXNhYmxlJyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0YWJGb2N1c2VkOiBmYWxzZVxuICAgIH07XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIxNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbGlkZXJfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjE2KTtcblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjE2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc2xpZGVyc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19zbGlkZXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc2xpZGVyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9oZWxwZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX3V0aWxfY29uc29sZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg1KTtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXNsaWRlcicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2lucHV0X19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgQ2xpY2tPdXRzaWRlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX2RpcmVjdGl2ZXNfY2xpY2tfb3V0c2lkZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYXBwOiB7fSxcbiAgICAgIGRlZmF1bHRDb2xvcjogJ3ByaW1hcnknLFxuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAga2V5UHJlc3NlZDogMFxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIG1pbjoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIG1heDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDEwMFxuICAgIH0sXG4gICAgc3RlcDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDFcbiAgICB9LFxuICAgIHRpY2tzOiBCb29sZWFuLFxuICAgIHRodW1iQ29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6IG51bGxcbiAgICB9LFxuICAgIHRodW1iTGFiZWw6IEJvb2xlYW4sXG4gICAgdHJhY2tDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH0sXG4gICAgdmFsdWU6IFtOdW1iZXIsIFN0cmluZ11cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNsaWRlcic6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1kaXJ0eSc6IHRoaXMuaW5wdXRXaWR0aCA+IDAsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXRpY2tzJzogIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5zdGVwTnVtZXJpYyAmJiB0aGlzLnRpY2tzXG4gICAgICB9O1xuICAgIH0sXG4gICAgY29tcHV0ZWRDb2xvcjogZnVuY3Rpb24gY29tcHV0ZWRDb2xvcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gbnVsbCA6IHRoaXMuY29sb3IgfHwgdGhpcy5kZWZhdWx0Q29sb3I7XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYWNrQ29sb3I6IGZ1bmN0aW9uIGNvbXB1dGVkVHJhY2tDb2xvcigpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gbnVsbCA6IHRoaXMudHJhY2tDb2xvciB8fCBudWxsO1xuICAgIH0sXG4gICAgY29tcHV0ZWRUaHVtYkNvbG9yOiBmdW5jdGlvbiBjb21wdXRlZFRodW1iQ29sb3IoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5pbnB1dFdpZHRoID8gbnVsbCA6IHRoaXMudGh1bWJDb2xvciB8fCB0aGlzLmNvbG9yIHx8IHRoaXMuZGVmYXVsdENvbG9yO1xuICAgIH0sXG4gICAgc3RlcE51bWVyaWM6IGZ1bmN0aW9uIHN0ZXBOdW1lcmljKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RlcCA+IDAgPyBwYXJzZUZsb2F0KHRoaXMuc3RlcCkgOiAwO1xuICAgIH0sXG5cbiAgICBpbnB1dFZhbHVlOiB7XG4gICAgICBnZXQ6IGZ1bmN0aW9uIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgICB9LFxuICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsKSB7XG4gICAgICAgIHZhciBtaW4gPSB0aGlzLm1pbixcbiAgICAgICAgICAgIG1heCA9IHRoaXMubWF4O1xuXG4gICAgICAgIHZhbCA9IE1hdGgubWluKE1hdGgubWF4KHZhbCwgbWluKSwgbWF4KTtcblxuICAgICAgICAvLyBSb3VuZCB2YWx1ZSB0byBlbnN1cmUgdGhlXG4gICAgICAgIC8vIGVudGlyZSBzbGlkZXIgcmFuZ2UgY2FuXG4gICAgICAgIC8vIGJlIHNlbGVjdGVkIHdpdGggc3RlcFxuICAgICAgICB2YXIgdmFsdWUgPSB0aGlzLnJvdW5kVmFsdWUodmFsKTtcbiAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWx1ZTtcblxuICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMudmFsdWUpIHtcbiAgICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgaW50ZXJ2YWw6IGZ1bmN0aW9uIGludGVydmFsKCkge1xuICAgICAgcmV0dXJuIDEwMCAvICh0aGlzLm1heCAtIHRoaXMubWluKSAqIHRoaXMuc3RlcE51bWVyaWM7XG4gICAgfSxcbiAgICB0aHVtYlN0eWxlczogZnVuY3Rpb24gdGh1bWJTdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2l0aW9uOiB0aGlzLmtleVByZXNzZWQgPj0gMiA/ICdub25lJyA6ICcnLFxuICAgICAgICBsZWZ0OiB0aGlzLmlucHV0V2lkdGggKyAnJSdcbiAgICAgIH07XG4gICAgfSxcbiAgICB0aWNrQ29udGFpbmVyU3R5bGVzOiBmdW5jdGlvbiB0aWNrQ29udGFpbmVyU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKDAsIC01MCUpJ1xuICAgICAgfTtcbiAgICB9LFxuICAgIHRyYWNrUGFkZGluZzogZnVuY3Rpb24gdHJhY2tQYWRkaW5nKCkge1xuICAgICAgaWYgKHRoaXMudGh1bWJMYWJlbCAmJiB0aGlzLmlzQWN0aXZlKSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIDYgKyAodGhpcy5pc0FjdGl2ZSAmJiAhdGhpcy5kaXNhYmxlZCA/IDMgOiAwKTtcbiAgICB9LFxuICAgIHRyYWNrU3R5bGVzOiBmdW5jdGlvbiB0cmFja1N0eWxlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRoaXMua2V5UHJlc3NlZCA+PSAyID8gJ25vbmUnIDogJycsXG4gICAgICAgIGxlZnQ6ICdjYWxjKCcgKyB0aGlzLmlucHV0V2lkdGggKyAnJSArICcgKyB0aGlzLnRyYWNrUGFkZGluZyArICdweCknLFxuICAgICAgICB3aWR0aDogJ2NhbGMoJyArICgxMDAgLSB0aGlzLmlucHV0V2lkdGgpICsgJyUgLSAnICsgdGhpcy50cmFja1BhZGRpbmcgKyAncHgpJ1xuICAgICAgfTtcbiAgICB9LFxuICAgIHRyYWNrRmlsbFN0eWxlczogZnVuY3Rpb24gdHJhY2tGaWxsU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy5rZXlQcmVzc2VkID49IDIgPyAnbm9uZScgOiAnJyxcbiAgICAgICAgd2lkdGg6ICdjYWxjKCcgKyB0aGlzLmlucHV0V2lkdGggKyAnJSAtICcgKyB0aGlzLnRyYWNrUGFkZGluZyArICdweCknXG4gICAgICB9O1xuICAgIH0sXG4gICAgbnVtVGlja3M6IGZ1bmN0aW9uIG51bVRpY2tzKCkge1xuICAgICAgcmV0dXJuIE1hdGguY2VpbCgodGhpcy5tYXggLSB0aGlzLm1pbikgLyB0aGlzLnN0ZXBOdW1lcmljKTtcbiAgICB9LFxuICAgIGlucHV0V2lkdGg6IGZ1bmN0aW9uIGlucHV0V2lkdGgoKSB7XG4gICAgICByZXR1cm4gKHRoaXMucm91bmRWYWx1ZSh0aGlzLmlucHV0VmFsdWUpIC0gdGhpcy5taW4pIC8gKHRoaXMubWF4IC0gdGhpcy5taW4pICogMTAwO1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSh2YWwpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdmFsO1xuICAgIH0sXG4gICAgbWluOiBmdW5jdGlvbiBtaW4odmFsKSB7XG4gICAgICB2YWwgPiB0aGlzLmlucHV0VmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCBwYXJzZUZsb2F0KHZhbCkpO1xuICAgIH0sXG4gICAgbWF4OiBmdW5jdGlvbiBtYXgodmFsKSB7XG4gICAgICB2YWwgPCB0aGlzLmlucHV0VmFsdWUgJiYgdGhpcy4kZW1pdCgnaW5wdXQnLCBwYXJzZUZsb2F0KHZhbCkpO1xuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gcGFyc2VGbG9hdCh2YWwpO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICAvLyBXaXRob3V0IGEgdi1hcHAsIGlPUyBkb2VzIG5vdCB3b3JrIHdpdGggYm9keSBzZWxlY3RvcnNcbiAgICB0aGlzLmFwcCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWFwcF0nKSB8fCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X191dGlsX2NvbnNvbGVfX1tcImJcIiAvKiBjb25zb2xlV2FybiAqL10pKCdNaXNzaW5nIHYtYXBwIG9yIGEgbm9uLWJvZHkgd3JhcHBpbmcgZWxlbWVudCB3aXRoIHRoZSBbZGF0YS1hcHBdIGF0dHJpYnV0ZScsIHRoaXMpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uTW91c2VEb3duOiBmdW5jdGlvbiBvbk1vdXNlRG93bihlKSB7XG4gICAgICB0aGlzLmtleVByZXNzZWQgPSAyO1xuICAgICAgdmFyIG9wdGlvbnMgPSB7IHBhc3NpdmU6IHRydWUgfTtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuXG4gICAgICBpZiAoJ3RvdWNoZXMnIGluIGUpIHtcbiAgICAgICAgdGhpcy5hcHAuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5vbk1vdXNlTW92ZSwgb3B0aW9ucyk7XG4gICAgICAgIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3V0aWxfaGVscGVyc19fW1wiYVwiIC8qIGFkZE9uY2VFdmVudExpc3RlbmVyICovXSkodGhpcy5hcHAsICd0b3VjaGVuZCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYXBwLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25Nb3VzZU1vdmUsIG9wdGlvbnMpO1xuICAgICAgICBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX191dGlsX2hlbHBlcnNfX1tcImFcIiAvKiBhZGRPbmNlRXZlbnRMaXN0ZW5lciAqL10pKHRoaXMuYXBwLCAnbW91c2V1cCcsIHRoaXMub25Nb3VzZVVwKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uTW91c2VVcDogZnVuY3Rpb24gb25Nb3VzZVVwKCkge1xuICAgICAgdGhpcy5rZXlQcmVzc2VkID0gMDtcbiAgICAgIHZhciBvcHRpb25zID0geyBwYXNzaXZlOiB0cnVlIH07XG4gICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB0aGlzLmFwcC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLm9uTW91c2VNb3ZlLCBvcHRpb25zKTtcbiAgICAgIHRoaXMuYXBwLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25Nb3VzZU1vdmUsIG9wdGlvbnMpO1xuICAgIH0sXG4gICAgb25Nb3VzZU1vdmU6IGZ1bmN0aW9uIG9uTW91c2VNb3ZlKGUpIHtcbiAgICAgIHZhciBfJHJlZnMkdHJhY2skZ2V0Qm91bmQgPSB0aGlzLiRyZWZzLnRyYWNrLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgICAgIG9mZnNldExlZnQgPSBfJHJlZnMkdHJhY2skZ2V0Qm91bmQubGVmdCxcbiAgICAgICAgICB0cmFja1dpZHRoID0gXyRyZWZzJHRyYWNrJGdldEJvdW5kLndpZHRoO1xuXG4gICAgICB2YXIgY2xpZW50WCA9ICd0b3VjaGVzJyBpbiBlID8gZS50b3VjaGVzWzBdLmNsaWVudFggOiBlLmNsaWVudFg7XG4gICAgICB2YXIgbGVmdCA9IE1hdGgubWluKE1hdGgubWF4KChjbGllbnRYIC0gb2Zmc2V0TGVmdCkgLyB0cmFja1dpZHRoLCAwKSwgMSk7XG5cbiAgICAgIGlmIChjbGllbnRYID49IG9mZnNldExlZnQgLSA4ICYmIGNsaWVudFggPD0gb2Zmc2V0TGVmdCArIHRyYWNrV2lkdGggKyA4KSB7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHBhcnNlRmxvYXQodGhpcy5taW4pICsgbGVmdCAqICh0aGlzLm1heCAtIHRoaXMubWluKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG9uS2V5RG93bjogZnVuY3Rpb24gb25LZXlEb3duKGUpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8ICFbMzMsIDM0LCAzNSwgMzYsIDM3LCAzOV0uaW5jbHVkZXMoZS5rZXlDb2RlKSkgcmV0dXJuO1xuXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB2YXIgc3RlcCA9IHRoaXMuc3RlcE51bWVyaWMgfHwgMTtcbiAgICAgIHZhciBzdGVwcyA9ICh0aGlzLm1heCAtIHRoaXMubWluKSAvIHN0ZXA7XG4gICAgICBpZiAoZS5rZXlDb2RlID09PSAzNyB8fCBlLmtleUNvZGUgPT09IDM5KSB7XG4gICAgICAgIC8vIExlZnQvcmlnaHRcbiAgICAgICAgdGhpcy5rZXlQcmVzc2VkICs9IDE7XG5cbiAgICAgICAgdmFyIGRpcmVjdGlvbiA9IGUua2V5Q29kZSA9PT0gMzcgPyAtMSA6IDE7XG4gICAgICAgIHZhciBtdWx0aXBsaWVyID0gZS5zaGlmdEtleSA/IDMgOiBlLmN0cmxLZXkgPyAyIDogMTtcblxuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmlucHV0VmFsdWUgKyBkaXJlY3Rpb24gKiBzdGVwICogbXVsdGlwbGllcjtcbiAgICAgIH0gZWxzZSBpZiAoZS5rZXlDb2RlID09PSAzNikge1xuICAgICAgICAvLyBIb21lXG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHBhcnNlRmxvYXQodGhpcy5taW4pO1xuICAgICAgfSBlbHNlIGlmIChlLmtleUNvZGUgPT09IDM1KSB7XG4gICAgICAgIC8vIEVuZFxuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSBwYXJzZUZsb2F0KHRoaXMubWF4KTtcbiAgICAgIH0gZWxzZSAvKiBpZiAoZS5rZXlDb2RlID09PSAzMyB8fCBlLmtleUNvZGUgPT09IDM0KSAqL3tcbiAgICAgICAgICAvLyBQYWdlIHVwL2Rvd25cbiAgICAgICAgICB2YXIgX2RpcmVjdGlvbiA9IGUua2V5Q29kZSA9PT0gMzQgPyAtMSA6IDE7XG4gICAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5pbnB1dFZhbHVlIC0gX2RpcmVjdGlvbiAqIHN0ZXAgKiAoc3RlcHMgPiAxMDAgPyBzdGVwcyAvIDEwIDogMTApO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBvbktleVVwOiBmdW5jdGlvbiBvbktleVVwKGUpIHtcbiAgICAgIHRoaXMua2V5UHJlc3NlZCA9IDA7XG4gICAgfSxcbiAgICBzbGlkZXJNb3ZlOiBmdW5jdGlvbiBzbGlkZXJNb3ZlKGUpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSkge1xuICAgICAgICB0aGlzLm9uTW91c2VNb3ZlKGUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2VuVGh1bWJMYWJlbDogZnVuY3Rpb24gZ2VuVGh1bWJMYWJlbChoKSB7XG4gICAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX3RyYW5zaXRpb25zX19bXCJjXCIgLyogVlNjYWxlVHJhbnNpdGlvbiAqL10sIHtcbiAgICAgICAgcHJvcHM6IHsgb3JpZ2luOiAnYm90dG9tIGNlbnRlcicgfVxuICAgICAgfSwgW2goJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RodW1iLS1sYWJlbF9fY29udGFpbmVyJyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAnc2hvdycsXG4gICAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgICAgfV1cbiAgICAgIH0sIFtoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190aHVtYi0tbGFiZWwnLFxuICAgICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHt9LCB0aGlzLmNvbXB1dGVkVGh1bWJDb2xvcilcbiAgICAgIH0sIFtoKCdzcGFuJywge30sIHRoaXMuaW5wdXRWYWx1ZSldKV0pXSk7XG4gICAgfSxcbiAgICByb3VuZFZhbHVlOiBmdW5jdGlvbiByb3VuZFZhbHVlKHZhbHVlKSB7XG4gICAgICBpZiAoIXRoaXMuc3RlcE51bWVyaWMpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGb3JtYXQgaW5wdXQgdmFsdWUgdXNpbmcgdGhlIHNhbWUgbnVtYmVyXG4gICAgICAvLyBvZiBkZWNpbWFscyBwbGFjZXMgYXMgaW4gdGhlIHN0ZXAgcHJvcFxuICAgICAgdmFyIHRyaW1tZWRTdGVwID0gdGhpcy5zdGVwLnRvU3RyaW5nKCkudHJpbSgpO1xuICAgICAgdmFyIGRlY2ltYWxzID0gdHJpbW1lZFN0ZXAuaW5kZXhPZignLicpID4gLTEgPyB0cmltbWVkU3RlcC5sZW5ndGggLSB0cmltbWVkU3RlcC5pbmRleE9mKCcuJykgLSAxIDogMDtcbiAgICAgIHJldHVybiAxICogKE1hdGgucm91bmQodmFsdWUgLyB0aGlzLnN0ZXBOdW1lcmljKSAqIHRoaXMuc3RlcE51bWVyaWMpLnRvRml4ZWQoZGVjaW1hbHMpO1xuICAgIH0sXG4gICAgZ2VuVGh1bWJDb250YWluZXI6IGZ1bmN0aW9uIGdlblRodW1iQ29udGFpbmVyKGgpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgICAgY2hpbGRyZW4ucHVzaChoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190aHVtYicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe30sIHRoaXMuY29tcHV0ZWRUaHVtYkNvbG9yKVxuICAgICAgfSkpO1xuXG4gICAgICB0aGlzLnRodW1iTGFiZWwgJiYgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRodW1iTGFiZWwoaCkpO1xuXG4gICAgICByZXR1cm4gaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdGh1bWItY29udGFpbmVyJyxcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdzbGlkZXJfX3RodW1iLWNvbnRhaW5lci0tbGFiZWwnOiB0aGlzLnRodW1iTGFiZWxcbiAgICAgICAgfSxcbiAgICAgICAgc3R5bGU6IHRoaXMudGh1bWJTdHlsZXMsXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgdG91Y2hzdGFydDogdGhpcy5vbk1vdXNlRG93bixcbiAgICAgICAgICBtb3VzZWRvd246IHRoaXMub25Nb3VzZURvd25cbiAgICAgICAgfSxcbiAgICAgICAgcmVmOiAndGh1bWInXG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfSxcbiAgICBnZW5TdGVwczogZnVuY3Rpb24gZ2VuU3RlcHMoaCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgdmFyIHRpY2tzID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSh0aGlzLm51bVRpY2tzICsgMSkubWFwKGZ1bmN0aW9uIChpKSB7XG4gICAgICAgIHZhciBzcGFuID0gaCgnc3BhbicsIHtcbiAgICAgICAgICBrZXk6IGksXG4gICAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RpY2snLFxuICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBsZWZ0OiBpICogKDEwMCAvIF90aGlzLm51bVRpY2tzKSArICclJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHNwYW47XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXJfX3RpY2tzLWNvbnRhaW5lcicsXG4gICAgICAgIHN0eWxlOiB0aGlzLnRpY2tDb250YWluZXJTdHlsZXNcbiAgICAgIH0sIHRpY2tzKTtcbiAgICB9LFxuICAgIGdlblRyYWNrQ29udGFpbmVyOiBmdW5jdGlvbiBnZW5UcmFja0NvbnRhaW5lcihoKSB7XG4gICAgICB2YXIgY2hpbGRyZW4gPSBbaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdHJhY2snLFxuICAgICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKHt9LCB0aGlzLmNvbXB1dGVkVHJhY2tDb2xvciksXG4gICAgICAgIHN0eWxlOiB0aGlzLnRyYWNrU3R5bGVzXG4gICAgICB9KSwgaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NsaWRlcl9fdHJhY2stZmlsbCcsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoKSxcbiAgICAgICAgc3R5bGU6IHRoaXMudHJhY2tGaWxsU3R5bGVzXG4gICAgICB9KV07XG5cbiAgICAgIHJldHVybiBoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc2xpZGVyX190cmFja19fY29udGFpbmVyJyxcbiAgICAgICAgcmVmOiAndHJhY2snXG4gICAgICB9LCBjaGlsZHJlbik7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuXG4gICAgY2hpbGRyZW4ucHVzaCh0aGlzLmdlblRyYWNrQ29udGFpbmVyKGgpKTtcbiAgICB0aGlzLnN0ZXAgJiYgdGhpcy50aWNrcyAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuU3RlcHMoaCkpO1xuICAgIGNoaWxkcmVuLnB1c2godGhpcy5nZW5UaHVtYkNvbnRhaW5lcihoKSk7XG5cbiAgICB2YXIgc2xpZGVyID0gaCgnZGl2Jywge1xuICAgICAgc3RhdGljQ2xhc3M6ICdzbGlkZXInXG4gICAgfSwgY2hpbGRyZW4pO1xuXG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cChbc2xpZGVyXSwge1xuICAgICAgYXR0cnM6IHtcbiAgICAgICAgcm9sZTogJ3NsaWRlcicsXG4gICAgICAgIHRhYmluZGV4OiB0aGlzLmRpc2FibGVkID8gLTEgOiB0aGlzLnRhYmluZGV4XG4gICAgICB9LFxuICAgICAgb246IE9iamVjdC5hc3NpZ24oe30sIHtcbiAgICAgICAgbW91c2V1cDogdGhpcy5zbGlkZXJNb3ZlLFxuICAgICAgICBrZXlkb3duOiB0aGlzLm9uS2V5RG93bixcbiAgICAgICAga2V5dXA6IHRoaXMub25LZXlVcFxuICAgICAgfSwgdGhpcy4kbGlzdGVuZXJzKSxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdjbGljay1vdXRzaWRlJyxcbiAgICAgICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpczIuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfV1cbiAgICB9KTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjE3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjE4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNuYWNrYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIxOSk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNuYWNrYmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU25hY2tiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTbmFja2Jhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU25hY2tiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjE5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc25hY2tiYXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjIwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NuYWNrYmFyc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NuYWNrYmFyc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMik7XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc25hY2tiYXInLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190b2dnbGVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19wb3NpdGlvbmFibGVfX1tcImJcIiAvKiBmYWN0b3J5ICovXSkoWydhYnNvbHV0ZScsICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnLCAncmlnaHQnXSldLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGl2ZVRpbWVvdXQ6IHt9XG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXV0b0hlaWdodDogQm9vbGVhbixcbiAgICBtdWx0aUxpbmU6IEJvb2xlYW4sXG4gICAgLy8gVE9ETzogY2hhbmdlIHRoaXMgdG8gY2xvc2VEZWxheSB0byBtYXRjaCBvdGhlciBBUEkgaW4gZGVsYXlhYmxlLmpzXG4gICAgdGltZW91dDoge1xuICAgICAgdHlwZTogTnVtYmVyLFxuICAgICAgZGVmYXVsdDogNjAwMFxuICAgIH0sXG4gICAgdmVydGljYWw6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnc25hY2stLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgICdzbmFjay0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAnc25hY2stLWF1dG8taGVpZ2h0JzogdGhpcy5hdXRvSGVpZ2h0LFxuICAgICAgICAnc25hY2stLWJvdHRvbSc6IHRoaXMuYm90dG9tIHx8ICF0aGlzLnRvcCxcbiAgICAgICAgJ3NuYWNrLS1sZWZ0JzogdGhpcy5sZWZ0LFxuICAgICAgICAnc25hY2stLW11bHRpLWxpbmUnOiB0aGlzLm11bHRpTGluZSAmJiAhdGhpcy52ZXJ0aWNhbCxcbiAgICAgICAgJ3NuYWNrLS1yaWdodCc6IHRoaXMucmlnaHQsXG4gICAgICAgICdzbmFjay0tdG9wJzogdGhpcy50b3AsXG4gICAgICAgICdzbmFjay0tdmVydGljYWwnOiB0aGlzLnZlcnRpY2FsXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlOiBmdW5jdGlvbiBpc0FjdGl2ZSgpIHtcbiAgICAgIHRoaXMuc2V0VGltZW91dCgpO1xuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgc2V0VGltZW91dDogZnVuY3Rpb24gKF9zZXRUaW1lb3V0KSB7XG4gICAgICBmdW5jdGlvbiBzZXRUaW1lb3V0KCkge1xuICAgICAgICByZXR1cm4gX3NldFRpbWVvdXQuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgIH1cblxuICAgICAgc2V0VGltZW91dC50b1N0cmluZyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF9zZXRUaW1lb3V0LnRvU3RyaW5nKCk7XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gc2V0VGltZW91dDtcbiAgICB9KGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmFjdGl2ZVRpbWVvdXQpO1xuXG4gICAgICBpZiAodGhpcy5pc0FjdGl2ZSAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgX3RoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgfSwgdGhpcy50aW1lb3V0KTtcbiAgICAgIH1cbiAgICB9KVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5zZXRUaW1lb3V0KCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcblxuICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICdzbmFjaycsXG4gICAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXMsXG4gICAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICAgIH0sIFtoKCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAnc25hY2tfX3dyYXBwZXInLFxuICAgICAgICBjbGFzczogdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcygpXG4gICAgICB9LCBbaCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3NuYWNrX19jb250ZW50J1xuICAgICAgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKV0pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaCgndHJhbnNpdGlvbicsIHtcbiAgICAgIGF0dHJzOiB7IG5hbWU6ICdzbmFjay10cmFuc2l0aW9uJyB9XG4gICAgfSwgY2hpbGRyZW4pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3BlZWREaWFsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyMik7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlNwZWVkRGlhbF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3BlZWREaWFsX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIyMiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NwZWVkX2RpYWxfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3BlZWRfZGlhbF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3NwZWVkX2RpYWxfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190b2dnbGVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDYpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3Bvc2l0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdHJhbnNpdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fZGlyZWN0aXZlc19jbGlja19vdXRzaWRlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDgpO1xuZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgeyBpZiAoa2V5IGluIG9iaikgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOyB9IGVsc2UgeyBvYmpba2V5XSA9IHZhbHVlOyB9IHJldHVybiBvYmo7IH1cblxuXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zcGVlZC1kaWFsJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19wb3NpdGlvbmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfdG9nZ2xlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc190cmFuc2l0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7IENsaWNrT3V0c2lkZTogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19kaXJlY3RpdmVzX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSB9LFxuXG4gIHByb3BzOiB7XG4gICAgZGlyZWN0aW9uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndG9wJyxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHZhbCkge1xuICAgICAgICByZXR1cm4gWyd0b3AnLCAncmlnaHQnLCAnYm90dG9tJywgJ2xlZnQnXS5pbmNsdWRlcyh2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb3Blbk9uSG92ZXI6IEJvb2xlYW4sXG4gICAgdHJhbnNpdGlvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3NjYWxlLXRyYW5zaXRpb24nXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiBfZGVmaW5lUHJvcGVydHkoe1xuICAgICAgICAnc3BlZWQtZGlhbCc6IHRydWUsXG4gICAgICAgICdzcGVlZC1kaWFsLS10b3AnOiB0aGlzLnRvcCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAnc3BlZWQtZGlhbC0tbGVmdCc6IHRoaXMubGVmdCxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWFic29sdXRlJzogdGhpcy5hYnNvbHV0ZSxcbiAgICAgICAgJ3NwZWVkLWRpYWwtLWZpeGVkJzogdGhpcy5maXhlZFxuICAgICAgfSwgJ3NwZWVkLWRpYWwtLWRpcmVjdGlvbi0nICsgdGhpcy5kaXJlY3Rpb24sIHRydWUpO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIHZhciBjaGlsZHJlbiA9IFtdO1xuICAgIHZhciBkYXRhID0ge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ2NsaWNrLW91dHNpZGUnLFxuICAgICAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUoKSB7XG4gICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1dLFxuICAgICAgb246IHtcbiAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgIHJldHVybiBfdGhpcy5pc0FjdGl2ZSA9ICFfdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5vcGVuT25Ib3Zlcikge1xuICAgICAgZGF0YS5vbi5tb3VzZWVudGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXMuaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgfTtcbiAgICAgIGRhdGEub24ubW91c2VsZWF2ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICBjaGlsZHJlbiA9ICh0aGlzLiRzbG90cy5kZWZhdWx0IHx8IFtdKS5tYXAoZnVuY3Rpb24gKGIsIGkpIHtcbiAgICAgICAgYi5rZXkgPSBpO1xuXG4gICAgICAgIHJldHVybiBiO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdmFyIGxpc3QgPSBoKCd0cmFuc2l0aW9uLWdyb3VwJywge1xuICAgICAgJ2NsYXNzJzogJ3NwZWVkLWRpYWxfX2xpc3QnLFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgbmFtZTogdGhpcy50cmFuc2l0aW9uLFxuICAgICAgICBtb2RlOiB0aGlzLm1vZGUsXG4gICAgICAgIG9yaWdpbjogdGhpcy5vcmlnaW4sXG4gICAgICAgIHRhZzogJ2RpdidcbiAgICAgIH1cbiAgICB9LCBjaGlsZHJlbik7XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgW3RoaXMuJHNsb3RzLmFjdGl2YXRvciwgbGlzdF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjMgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjQgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlN0ZXBwZXJIZWFkZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IGV4cG9ydCBWU3RlcHBlckl0ZW1zICovXG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WU3RlcHBlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMjUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlN0ZXBwZXJTdGVwX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIyNyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WU3RlcHBlckNvbnRlbnRfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjI4KTtcbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZTdGVwcGVyICovXG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWU3RlcHBlckNvbnRlbnQgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZTdGVwcGVyU3RlcCAqL1xuXG5cblxuXG5cbnZhciBWU3RlcHBlckhlYWRlciA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3RlcHBlcl9faGVhZGVyJyk7XG52YXIgVlN0ZXBwZXJJdGVtcyA9IE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fW1wiZVwiIC8qIGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgKi9dKSgnc3RlcHBlcl9faXRlbXMnKTtcblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZTdGVwcGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WU3RlcHBlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlN0ZXBwZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19WU3RlcHBlckNvbnRlbnRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZTdGVwcGVyQ29udGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZTdGVwcGVyU3RlcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlN0ZXBwZXJTdGVwX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZTdGVwcGVySGVhZGVyLm5hbWUsIFZTdGVwcGVySGVhZGVyKTtcbiAgVnVlLmNvbXBvbmVudChWU3RlcHBlckl0ZW1zLm5hbWUsIFZTdGVwcGVySXRlbXMpO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZTdGVwcGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIyNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N0ZXBwZXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjI2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N0ZXBwZXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3RlcHBlcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdGVwcGVyJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190aGVtZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgcHJvdmlkZTogZnVuY3Rpb24gcHJvdmlkZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RlcENsaWNrOiB0aGlzLnN0ZXBDbGlja1xuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0VmFsdWU6IG51bGwsXG4gICAgICBpc0Jvb3RlZDogZmFsc2UsXG4gICAgICBzdGVwczogW10sXG4gICAgICBjb250ZW50OiBbXSxcbiAgICAgIGlzUmV2ZXJzZTogZmFsc2VcbiAgICB9O1xuICB9LFxuXG5cbiAgcHJvcHM6IHtcbiAgICBub25MaW5lYXI6IEJvb2xlYW4sXG4gICAgYWx0TGFiZWxzOiBCb29sZWFuLFxuICAgIHZlcnRpY2FsOiBCb29sZWFuLFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3N0ZXBwZXInOiB0cnVlLFxuICAgICAgICAnc3RlcHBlci0taXMtYm9vdGVkJzogdGhpcy5pc0Jvb3RlZCxcbiAgICAgICAgJ3N0ZXBwZXItLXZlcnRpY2FsJzogdGhpcy52ZXJ0aWNhbCxcbiAgICAgICAgJ3N0ZXBwZXItLWFsdC1sYWJlbHMnOiB0aGlzLmFsdExhYmVscyxcbiAgICAgICAgJ3N0ZXBwZXItLW5vbi1saW5lYXInOiB0aGlzLm5vbkxpbmVhcixcbiAgICAgICAgJ3RoZW1lLS1kYXJrJzogdGhpcy5kYXJrLFxuICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpbnB1dFZhbHVlOiBmdW5jdGlvbiBpbnB1dFZhbHVlKHZhbCwgcHJldikge1xuICAgICAgdGhpcy5pc1JldmVyc2UgPSBOdW1iZXIodmFsKSA8IE51bWJlcihwcmV2KTtcbiAgICAgIGZvciAodmFyIGluZGV4ID0gdGhpcy5zdGVwcy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy5zdGVwc1tpbmRleF0udG9nZ2xlKHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgICB9XG4gICAgICBmb3IgKHZhciBfaW5kZXggPSB0aGlzLmNvbnRlbnQubGVuZ3RoOyAtLV9pbmRleCA+PSAwOykge1xuICAgICAgICB0aGlzLmNvbnRlbnRbX2luZGV4XS50b2dnbGUodGhpcy5pbnB1dFZhbHVlLCB0aGlzLmlzUmV2ZXJzZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuJGVtaXQoJ2lucHV0JywgdGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHByZXYgJiYgKHRoaXMuaXNCb290ZWQgPSB0cnVlKTtcbiAgICB9LFxuICAgIHZhbHVlOiBmdW5jdGlvbiB2YWx1ZSgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHRoaXMuZ2V0U3RlcHMoKTtcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzLmlucHV0VmFsdWUgPSBfdGhpcy52YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMuZ2V0U3RlcHMoKTtcblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMudmFsdWUgfHwgdGhpcy5zdGVwc1swXS5zdGVwIHx8IDE7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgZ2V0U3RlcHM6IGZ1bmN0aW9uIGdldFN0ZXBzKCkge1xuICAgICAgdGhpcy5zdGVwcyA9IFtdO1xuICAgICAgdGhpcy5jb250ZW50ID0gW107XG4gICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy4kY2hpbGRyZW4ubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIHZhciBjaGlsZCA9IHRoaXMuJGNoaWxkcmVuW2luZGV4XTtcbiAgICAgICAgLy8gVE9ETzogdXNlIHRoZSBjb21wb25lbnQgbmFtZSBpbnN0ZWFkIG9mIHRhZ1xuICAgICAgICBpZiAoY2hpbGQuJG9wdGlvbnMuX2NvbXBvbmVudFRhZyA9PT0gJ3Ytc3RlcHBlci1zdGVwJykge1xuICAgICAgICAgIHRoaXMuc3RlcHMucHVzaChjaGlsZCk7XG4gICAgICAgIH0gZWxzZSBpZiAoY2hpbGQuJG9wdGlvbnMuX2NvbXBvbmVudFRhZyA9PT0gJ3Ytc3RlcHBlci1jb250ZW50Jykge1xuICAgICAgICAgIGNoaWxkLmlzVmVydGljYWwgPSB0aGlzLnZlcnRpY2FsO1xuICAgICAgICAgIHRoaXMuY29udGVudC5wdXNoKGNoaWxkKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgc3RlcENsaWNrOiBmdW5jdGlvbiBzdGVwQ2xpY2soc3RlcCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHRoaXMuZ2V0U3RlcHMoKTtcbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5pbnB1dFZhbHVlID0gc3RlcDtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3Nlc1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMjcgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WSWNvbl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfcmlwcGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi1zdGVwcGVyLXN0ZXAnLFxuXG4gIGRpcmVjdGl2ZXM6IHsgUmlwcGxlOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2RpcmVjdGl2ZXNfcmlwcGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBpbmplY3Q6IFsnc3RlcENsaWNrJ10sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAgaXNJbmFjdGl2ZTogdHJ1ZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGNvbXBsZXRlOiBCb29sZWFuLFxuICAgIGNvbXBsZXRlSWNvbjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2NoZWNrJ1xuICAgIH0sXG4gICAgZWRpdEljb246IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdlZGl0J1xuICAgIH0sXG4gICAgZXJyb3JJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnd2FybmluZydcbiAgICB9LFxuICAgIGVkaXRhYmxlOiBCb29sZWFuLFxuICAgIHJ1bGVzOiB7XG4gICAgICB0eXBlOiBBcnJheSxcbiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgfSxcbiAgICBzdGVwOiBbTnVtYmVyLCBTdHJpbmddXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAnOiB0cnVlLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZSxcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAtLWVkaXRhYmxlJzogdGhpcy5lZGl0YWJsZSxcbiAgICAgICAgJ3N0ZXBwZXJfX3N0ZXAtLWluYWN0aXZlJzogdGhpcy5pc0luYWN0aXZlLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tZXJyb3InOiB0aGlzLmhhc0Vycm9yLFxuICAgICAgICAnc3RlcHBlcl9fc3RlcC0tY29tcGxldGUnOiB0aGlzLmNvbXBsZXRlLFxuICAgICAgICAnZXJyb3ItLXRleHQnOiB0aGlzLmhhc0Vycm9yXG4gICAgICB9O1xuICAgIH0sXG4gICAgaGFzRXJyb3I6IGZ1bmN0aW9uIGhhc0Vycm9yKCkge1xuICAgICAgcmV0dXJuIHRoaXMucnVsZXMuc29tZShmdW5jdGlvbiAoaSkge1xuICAgICAgICByZXR1cm4gaSgpICE9PSB0cnVlO1xuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgaWYgKHRoaXMuZWRpdGFibGUpIHtcbiAgICAgICAgdGhpcy5zdGVwQ2xpY2sodGhpcy5zdGVwKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHRvZ2dsZTogZnVuY3Rpb24gdG9nZ2xlKHN0ZXApIHtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSBzdGVwLnRvU3RyaW5nKCkgPT09IHRoaXMuc3RlcC50b1N0cmluZygpO1xuICAgICAgdGhpcy5pc0luYWN0aXZlID0gTnVtYmVyKHN0ZXApIDwgTnVtYmVyKHRoaXMuc3RlcCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdyaXBwbGUnLFxuICAgICAgICB2YWx1ZTogdGhpcy5lZGl0YWJsZVxuICAgICAgfV0sXG4gICAgICBvbjogeyBjbGljazogdGhpcy5jbGljayB9XG4gICAgfTtcbiAgICB2YXIgc3RlcENvbnRlbnQgPSB2b2lkIDA7XG5cbiAgICBpZiAodGhpcy5oYXNFcnJvcikge1xuICAgICAgc3RlcENvbnRlbnQgPSBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHt9LCB0aGlzLmVycm9ySWNvbildO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wbGV0ZSkge1xuICAgICAgaWYgKHRoaXMuZWRpdGFibGUpIHtcbiAgICAgICAgc3RlcENvbnRlbnQgPSBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHt9LCB0aGlzLmVkaXRJY29uKV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGVwQ29udGVudCA9IFtoKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge30sIHRoaXMuY29tcGxldGVJY29uKV07XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0ZXBDb250ZW50ID0gdGhpcy5zdGVwO1xuICAgIH1cblxuICAgIHZhciBzdGVwID0gaCgnc3BhbicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAnc3RlcHBlcl9fc3RlcF9fc3RlcCcsXG4gICAgICAnY2xhc3MnOiB7XG4gICAgICAgICdwcmltYXJ5JzogIXRoaXMuaGFzRXJyb3IgJiYgKHRoaXMuY29tcGxldGUgfHwgdGhpcy5pc0FjdGl2ZSlcbiAgICAgIH1cbiAgICB9LCBzdGVwQ29udGVudCk7XG5cbiAgICB2YXIgbGFiZWwgPSBoKCdkaXYnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3N0ZXBwZXJfX2xhYmVsJ1xuICAgIH0sIHRoaXMuJHNsb3RzLmRlZmF1bHQpO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIGRhdGEsIFtzdGVwLCBsYWJlbF0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMjggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3KTtcblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc3RlcHBlci1jb250ZW50JyxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWlnaHQ6IDAsXG4gICAgICAvLyBNdXN0IGJlIG51bGwgdG8gYWxsb3dcbiAgICAgIC8vIHByZXZpb3VzIGNvbXBhcmlzb25cbiAgICAgIGlzQWN0aXZlOiBudWxsLFxuICAgICAgaXNSZXZlcnNlOiBmYWxzZSxcbiAgICAgIGlzVmVydGljYWw6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgc3RlcDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgfVxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdzdGVwcGVyX19jb250ZW50JzogdHJ1ZVxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNSZXZlcnNlID8gX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX190cmFuc2l0aW9uc19fW1wiZVwiIC8qIFZUYWJSZXZlcnNlVHJhbnNpdGlvbiAqL10gOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3RyYW5zaXRpb25zX19bXCJmXCIgLyogVlRhYlRyYW5zaXRpb24gKi9dO1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbCkgcmV0dXJuIHt9O1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6ICFpc05hTih0aGlzLmhlaWdodCkgPyB0aGlzLmhlaWdodCArICdweCcgOiB0aGlzLmhlaWdodFxuICAgICAgfTtcbiAgICB9LFxuICAgIHdyYXBwZXJDbGFzc2VzOiBmdW5jdGlvbiB3cmFwcGVyQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdzdGVwcGVyX193cmFwcGVyJzogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoY3VycmVudCwgcHJldmlvdXMpIHtcbiAgICAgIC8vIElmIGFjdGl2ZSBhbmQgdGhlIHByZXZpb3VzIHN0YXRlXG4gICAgICAvLyB3YXMgbnVsbCwgaXMganVzdCBib290aW5nIHVwXG4gICAgICBpZiAoY3VycmVudCAmJiBwcmV2aW91cyA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhlaWdodCA9ICdhdXRvJztcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmlzVmVydGljYWwpIHJldHVybjtcblxuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUpIHRoaXMuZW50ZXIoKTtlbHNlIHRoaXMubGVhdmUoKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLiRyZWZzLndyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIHRoaXMub25UcmFuc2l0aW9uLCBmYWxzZSk7XG4gIH0sXG4gIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7XG4gICAgdGhpcy4kcmVmcy53cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCB0aGlzLm9uVHJhbnNpdGlvbiwgZmFsc2UpO1xuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uVHJhbnNpdGlvbjogZnVuY3Rpb24gb25UcmFuc2l0aW9uKGUpIHtcbiAgICAgIGlmICghdGhpcy5pc0FjdGl2ZSB8fCBlLnByb3BlcnR5TmFtZSAhPT0gJ2hlaWdodCcpIHJldHVybjtcblxuICAgICAgdGhpcy5oZWlnaHQgPSAnYXV0byc7XG4gICAgfSxcbiAgICBlbnRlcjogZnVuY3Rpb24gZW50ZXIoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICB2YXIgc2Nyb2xsSGVpZ2h0ID0gMDtcblxuICAgICAgLy8gUmVuZGVyIGJ1ZyB3aXRoIGhlaWdodFxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2Nyb2xsSGVpZ2h0ID0gX3RoaXMuJHJlZnMud3JhcHBlci5zY3JvbGxIZWlnaHQ7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5oZWlnaHQgPSAwO1xuXG4gICAgICAvLyBHaXZlIHRoZSBjb2xsYXBzaW5nIGVsZW1lbnQgdGltZSB0byBjb2xsYXBzZVxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBfdGhpcy5oZWlnaHQgPSBzY3JvbGxIZWlnaHQgfHwgJ2F1dG8nO1xuICAgICAgfSwgNDUwKTtcbiAgICB9LFxuICAgIGxlYXZlOiBmdW5jdGlvbiBsZWF2ZSgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB0aGlzLmhlaWdodCA9IHRoaXMuJHJlZnMud3JhcHBlci5jbGllbnRIZWlnaHQ7XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF90aGlzMi5oZWlnaHQgPSAwO1xuICAgICAgfSwgMTApO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoc3RlcCwgcmV2ZXJzZSkge1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHN0ZXAudG9TdHJpbmcoKSA9PT0gdGhpcy5zdGVwLnRvU3RyaW5nKCk7XG4gICAgICB0aGlzLmlzUmV2ZXJzZSA9IHJldmVyc2U7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY29udGVudERhdGEgPSB7XG4gICAgICAnY2xhc3MnOiB0aGlzLmNsYXNzZXNcbiAgICB9O1xuICAgIHZhciB3cmFwcGVyRGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMud3JhcHBlckNsYXNzZXMsXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICByZWY6ICd3cmFwcGVyJ1xuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbCkge1xuICAgICAgY29udGVudERhdGEuZGlyZWN0aXZlcyA9IFt7XG4gICAgICAgIG5hbWU6ICdzaG93JyxcbiAgICAgICAgdmFsdWU6IHRoaXMuaXNBY3RpdmVcbiAgICAgIH1dO1xuICAgIH1cblxuICAgIHZhciB3cmFwcGVyID0gaCgnZGl2Jywgd3JhcHBlckRhdGEsIFt0aGlzLiRzbG90cy5kZWZhdWx0XSk7XG4gICAgdmFyIGNvbnRlbnQgPSBoKCdkaXYnLCBjb250ZW50RGF0YSwgW3dyYXBwZXJdKTtcblxuICAgIHJldHVybiBoKHRoaXMuY29tcHV0ZWRUcmFuc2l0aW9uLCB7XG4gICAgICBvbjogdGhpcy4kbGlzdGVuZXJzXG4gICAgfSwgW2NvbnRlbnRdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjI5ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN3aXRjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzApO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZTd2l0Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN3aXRjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyMzAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3NlbGVjdGlvbl9jb250cm9sc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fc3R5bHVzX2NvbXBvbmVudHNfc3dpdGNoX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3N3aXRjaF9zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3N0eWx1c19jb21wb25lbnRzX3N3aXRjaF9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3JpcHBsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3NlbGVjdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDIpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG4vLyBEaXJlY3RpdmVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXN3aXRjaCcsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfcmlwcGxlYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zZWxlY3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgVG91Y2g6IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzIHN3aXRjaCc6IHRydWVcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICAgIGNsYXNzZXNbJ2Vycm9yLS10ZXh0J10gPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkVGV4dENvbG9yQ2xhc3NDaGVja3MoY2xhc3Nlcyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH0sXG4gICAgcmlwcGxlQ2xhc3NlczogZnVuY3Rpb24gcmlwcGxlQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19yaXBwbGUnOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fcmlwcGxlLS1hY3RpdmUnOiB0aGlzLmlzQWN0aXZlXG4gICAgICB9O1xuICAgIH0sXG4gICAgY29udGFpbmVyQ2xhc3NlczogZnVuY3Rpb24gY29udGFpbmVyQ2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXInOiB0cnVlLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fY29udGFpbmVyLS1saWdodCc6IHRoaXMubGlnaHQsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc2VsZWN0aW9uLWNvbnRyb2xzX19jb250YWluZXItLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfTtcbiAgICB9LFxuICAgIHRvZ2dsZUNsYXNzZXM6IGZ1bmN0aW9uIHRvZ2dsZUNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAnaW5wdXQtZ3JvdXAtLXNlbGVjdGlvbi1jb250cm9sc19fdG9nZ2xlJzogdHJ1ZSxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zZWxlY3Rpb24tY29udHJvbHNfX3RvZ2dsZS0tYWN0aXZlJzogdGhpcy5pc0FjdGl2ZVxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIG9uU3dpcGVMZWZ0OiBmdW5jdGlvbiBvblN3aXBlTGVmdCgpIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSB0aGlzLnRvZ2dsZSgpO1xuICAgIH0sXG4gICAgb25Td2lwZVJpZ2h0OiBmdW5jdGlvbiBvblN3aXBlUmlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNBY3RpdmUpIHRoaXMudG9nZ2xlKCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgY29udGFpbmVyID0gaCgnZGl2Jywge1xuICAgICAgJ2NsYXNzJzogdGhpcy5jb250YWluZXJDbGFzc2VzXG4gICAgfSwgW2goJ2RpdicsIHsgJ2NsYXNzJzogdGhpcy50b2dnbGVDbGFzc2VzIH0pLCB0aGlzLmdlblJpcHBsZSh7XG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICB2YWx1ZToge1xuICAgICAgICAgIGxlZnQ6IHRoaXMub25Td2lwZUxlZnQsXG4gICAgICAgICAgcmlnaHQ6IHRoaXMub25Td2lwZVJpZ2h0XG4gICAgICAgIH1cbiAgICAgIH1dXG4gICAgfSldKTtcblxuICAgIHJldHVybiB0aGlzLmdlbklucHV0R3JvdXAoW2NvbnRhaW5lcl0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMzEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyMzIgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3lzdGVtQmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzMyk7XG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlN5c3RlbUJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WU3lzdGVtQmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIzMyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N5c3RlbV9iYXJzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjM0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3N5c3RlbV9iYXJzX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfc3lzdGVtX2JhcnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19hcHBsaWNhdGlvbmFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTUpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc190aGVtZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMSk7XG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3Ytc3lzdGVtLWJhcicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSgnYmFyJywgWydoZWlnaHQnLCAnd2luZG93J10pLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIHByb3BzOiB7XG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGxpZ2h0c091dDogQm9vbGVhbixcbiAgICBzdGF0dXM6IEJvb2xlYW4sXG4gICAgd2luZG93OiBCb29sZWFuXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3MoT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICdzeXN0ZW0tYmFyLS1saWdodHMtb3V0JzogdGhpcy5saWdodHNPdXQsXG4gICAgICAgICdzeXN0ZW0tYmFyLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICdzeXN0ZW0tYmFyLS1maXhlZCc6ICF0aGlzLmFic29sdXRlICYmICh0aGlzLmFwcCB8fCB0aGlzLmZpeGVkKSxcbiAgICAgICAgJ3N5c3RlbS1iYXItLXN0YXR1cyc6IHRoaXMuc3RhdHVzLFxuICAgICAgICAnc3lzdGVtLWJhci0td2luZG93JzogdGhpcy53aW5kb3dcbiAgICAgIH0sIHRoaXMudGhlbWVDbGFzc2VzKSk7XG4gICAgfSxcbiAgICBjb21wdXRlZEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRIZWlnaHQoKSB7XG4gICAgICBpZiAodGhpcy5oZWlnaHQpIHJldHVybiBwYXJzZUludCh0aGlzLmhlaWdodCk7XG5cbiAgICAgIHJldHVybiB0aGlzLndpbmRvdyA/IDMyIDogMjQ7XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIGFwcGxpY2F0aW9uIGxheW91dFxuICAgICAqXG4gICAgICogQHJldHVybiB7bnVtYmVyfVxuICAgICAqL1xuICAgIHVwZGF0ZUFwcGxpY2F0aW9uOiBmdW5jdGlvbiB1cGRhdGVBcHBsaWNhdGlvbigpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkSGVpZ2h0O1xuICAgIH1cbiAgfSxcblxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3N5c3RlbS1iYXInLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmNvbXB1dGVkSGVpZ2h0ICsgJ3B4J1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDIzNCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDIzNSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzNik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGFiX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZUYWJJdGVtX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0NCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WVGFic1NsaWRlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2OCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWVGFicyAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRhYkl0ZW0gKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWJzSXRlbXMgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUYWJzU2xpZGVyICovXG5cblxuXG5cblxuXG5cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbl9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRhYnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGFic19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVGFic0l0ZW1zX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fVlRhYkl0ZW1fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX1ZUYWJJdGVtX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fVlRhYnNTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZUYWJzU2xpZGVyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xufTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9IChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUYWJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuXG4vKioqLyB9KSxcbi8qIDIzNiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYnNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMzcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdGFic19zdHlsX19fZGVmYXVsdCA9IF9fd2VicGFja19yZXF1aXJlX18ubihfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3N0eWx1c19jb21wb25lbnRzX3RhYnNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc190YWJzX2NvbXB1dGVkX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfdGFic19nZW5lcmF0b3JzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDIzOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGFic19wcm9wc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fbWl4aW5zX3RhYnNfdG91Y2hfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjQxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190YWJzX3dhdGNoZXJzX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV82X19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfN19fbWl4aW5zX3Nzcl9ib290YWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMyk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV84X19taXhpbnNfdGhlbWVhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOV9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMTBfX2RpcmVjdGl2ZXNfcmVzaXplX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDExKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX3RvdWNoX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDkpO1xuLy8gU3R5bGVzXG5cblxuLy8gQ29tcG9uZW50IGxldmVsIG1peGluc1xuXG5cblxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYnMnLFxuXG4gIG1peGluczogW09iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzlfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYlwiIC8qIHByb3ZpZGUgKi9dKSgndGFicycpLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzZfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV83X19taXhpbnNfc3NyX2Jvb3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3RhYnNfY29tcHV0ZWRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGFic19wcm9wc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc190YWJzX2dlbmVyYXRvcnNfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfdGFic190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc190YWJzX3dhdGNoZXJzX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfOF9fbWl4aW5zX3RoZW1lYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBkaXJlY3RpdmVzOiB7XG4gICAgUmVzaXplOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzEwX19kaXJlY3RpdmVzX3Jlc2l6ZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLFxuICAgIFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzExX19kaXJlY3RpdmVzX3RvdWNoX19bXCJhXCIgLyogZGVmYXVsdCAqL11cbiAgfSxcblxuICBwcm92aWRlOiBmdW5jdGlvbiBwcm92aWRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0YWJDbGljazogdGhpcy50YWJDbGljayxcbiAgICAgIHRhYlByb3h5OiB0aGlzLnRhYlByb3h5LFxuICAgICAgcmVnaXN0ZXJJdGVtczogdGhpcy5yZWdpc3Rlckl0ZW1zLFxuICAgICAgdW5yZWdpc3Rlckl0ZW1zOiB0aGlzLnVucmVnaXN0ZXJJdGVtc1xuICAgIH07XG4gIH0sXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJhcjogW10sXG4gICAgICBjb250ZW50OiBbXSxcbiAgICAgIGlzQm9vdGVkOiBmYWxzZSxcbiAgICAgIGlzT3ZlcmZsb3dpbmc6IGZhbHNlLFxuICAgICAgbGF6eVZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgbmV4dEljb25WaXNpYmxlOiBmYWxzZSxcbiAgICAgIHByZXZJY29uVmlzaWJsZTogZmFsc2UsXG4gICAgICByZXNpemVUaW1lb3V0OiBudWxsLFxuICAgICAgcmV2ZXJzZTogZmFsc2UsXG4gICAgICBzY3JvbGxPZmZzZXQ6IDAsXG4gICAgICBzbGlkZXJXaWR0aDogbnVsbCxcbiAgICAgIHNsaWRlckxlZnQ6IG51bGwsXG4gICAgICBzdGFydFg6IDAsXG4gICAgICB0YWJzQ29udGFpbmVyOiBudWxsLFxuICAgICAgdGFiczogW10sXG4gICAgICB0YWJJdGVtczogbnVsbCxcbiAgICAgIHRyYW5zaXRpb25UaW1lOiAzMDAsXG4gICAgICB3aWR0aHM6IHtcbiAgICAgICAgYmFyOiAwLFxuICAgICAgICBjb250YWluZXI6IDAsXG4gICAgICAgIHdyYXBwZXI6IDBcbiAgICAgIH1cbiAgICB9O1xuICB9LFxuXG5cbiAgd2F0Y2g6IHtcbiAgICB0YWJzOiAnb25SZXNpemUnXG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLmNoZWNrSWNvbnMoKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjaGVja0ljb25zOiBmdW5jdGlvbiBjaGVja0ljb25zKCkge1xuICAgICAgdGhpcy5wcmV2SWNvblZpc2libGUgPSB0aGlzLmNoZWNrUHJldkljb24oKTtcbiAgICAgIHRoaXMubmV4dEljb25WaXNpYmxlID0gdGhpcy5jaGVja05leHRJY29uKCk7XG4gICAgfSxcbiAgICBjaGVja1ByZXZJY29uOiBmdW5jdGlvbiBjaGVja1ByZXZJY29uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2Nyb2xsT2Zmc2V0ID4gMDtcbiAgICB9LFxuICAgIGNoZWNrTmV4dEljb246IGZ1bmN0aW9uIGNoZWNrTmV4dEljb24oKSB7XG4gICAgICAvLyBDaGVjayBvbmUgc2Nyb2xsIGFoZWFkIHRvIGtub3cgdGhlIHdpZHRoIG9mIHJpZ2h0LW1vc3QgaXRlbVxuICAgICAgcmV0dXJuIHRoaXMud2lkdGhzLmNvbnRhaW5lciA+IHRoaXMuc2Nyb2xsT2Zmc2V0ICsgdGhpcy53aWR0aHMud3JhcHBlcjtcbiAgICB9LFxuICAgIGNhbGxTbGlkZXI6IGZ1bmN0aW9uIGNhbGxTbGlkZXIoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICBpZiAodGhpcy5oaWRlU2xpZGVyIHx8ICF0aGlzLmFjdGl2ZVRhYikgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAvLyBHaXZlIHNjcmVlbiB0aW1lIHRvIHBhaW50XG4gICAgICB2YXIgYWN0aW9uID0gKHRoaXMuYWN0aXZlVGFiIHx8IHt9KS5hY3Rpb247XG4gICAgICB2YXIgYWN0aXZlVGFiID0gYWN0aW9uID09PSB0aGlzLmFjdGl2ZVRhYiA/IHRoaXMuYWN0aXZlVGFiIDogdGhpcy50YWJzLmZpbmQoZnVuY3Rpb24gKHRhYikge1xuICAgICAgICByZXR1cm4gdGFiLmFjdGlvbiA9PT0gYWN0aW9uO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKCFhY3RpdmVUYWIgfHwgIWFjdGl2ZVRhYi4kZWwpIHJldHVybjtcbiAgICAgICAgX3RoaXMuc2xpZGVyV2lkdGggPSBhY3RpdmVUYWIuJGVsLnNjcm9sbFdpZHRoO1xuICAgICAgICBfdGhpcy5zbGlkZXJMZWZ0ID0gYWN0aXZlVGFiLiRlbC5vZmZzZXRMZWZ0O1xuICAgICAgfSk7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFdoZW4gdi1uYXZpZ2F0aW9uLWRyYXdlciBjaGFuZ2VzIHRoZVxuICAgICAqIHdpZHRoIG9mIHRoZSBjb250YWluZXIsIGNhbGwgcmVzaXplXG4gICAgICogYWZ0ZXIgdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVcbiAgICAgKi9cbiAgICBvblJlc2l6ZTogZnVuY3Rpb24gb25SZXNpemUoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMuX2lzRGVzdHJveWVkKSByZXR1cm47XG5cbiAgICAgIHRoaXMuc2V0V2lkdGhzKCk7XG5cbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpO1xuICAgICAgdGhpcy5yZXNpemVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMi5jYWxsU2xpZGVyKCk7XG4gICAgICAgIF90aGlzMi5zY3JvbGxJbnRvVmlldygpO1xuICAgICAgICBfdGhpczIuY2hlY2tJY29ucygpO1xuICAgICAgfSwgdGhpcy50cmFuc2l0aW9uVGltZSk7XG4gICAgfSxcbiAgICBvdmVyZmxvd0NoZWNrOiBmdW5jdGlvbiBvdmVyZmxvd0NoZWNrKGUsIGZuKSB7XG4gICAgICB0aGlzLmlzT3ZlcmZsb3dpbmcgJiYgZm4oZSk7XG4gICAgfSxcbiAgICBzY3JvbGxUbzogZnVuY3Rpb24gc2Nyb2xsVG8oZGlyZWN0aW9uKSB7XG4gICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IHRoaXMubmV3T2Zmc2V0KGRpcmVjdGlvbik7XG4gICAgfSxcbiAgICBzZXRPdmVyZmxvdzogZnVuY3Rpb24gc2V0T3ZlcmZsb3coKSB7XG4gICAgICB0aGlzLmlzT3ZlcmZsb3dpbmcgPSB0aGlzLndpZHRocy5iYXIgPCB0aGlzLndpZHRocy5jb250YWluZXI7XG4gICAgfSxcbiAgICBzZXRXaWR0aHM6IGZ1bmN0aW9uIHNldFdpZHRocygpIHtcbiAgICAgIHZhciBiYXIgPSB0aGlzLiRyZWZzLmJhciA/IHRoaXMuJHJlZnMuYmFyLmNsaWVudFdpZHRoIDogMDtcbiAgICAgIHZhciBjb250YWluZXIgPSB0aGlzLiRyZWZzLmNvbnRhaW5lciA/IHRoaXMuJHJlZnMuY29udGFpbmVyLmNsaWVudFdpZHRoIDogMDtcbiAgICAgIHZhciB3cmFwcGVyID0gdGhpcy4kcmVmcy53cmFwcGVyID8gdGhpcy4kcmVmcy53cmFwcGVyLmNsaWVudFdpZHRoIDogMDtcblxuICAgICAgdGhpcy53aWR0aHMgPSB7IGJhcjogYmFyLCBjb250YWluZXI6IGNvbnRhaW5lciwgd3JhcHBlcjogd3JhcHBlciB9O1xuXG4gICAgICB0aGlzLnNldE92ZXJmbG93KCk7XG4gICAgfSxcbiAgICBmaW5kQWN0aXZlTGluazogZnVuY3Rpb24gZmluZEFjdGl2ZUxpbmsoKSB7XG4gICAgICB2YXIgX3RoaXMzID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLnRhYnMubGVuZ3RoIHx8IHRoaXMubGF6eVZhbHVlKSByZXR1cm47XG5cbiAgICAgIHZhciBhY3RpdmVJbmRleCA9IHRoaXMudGFicy5maW5kSW5kZXgoZnVuY3Rpb24gKHRhYkl0ZW0sIGluZGV4KSB7XG4gICAgICAgIHZhciBpZCA9IHRhYkl0ZW0uYWN0aW9uID09PSB0YWJJdGVtID8gaW5kZXgudG9TdHJpbmcoKSA6IHRhYkl0ZW0uYWN0aW9uO1xuICAgICAgICByZXR1cm4gaWQgPT09IF90aGlzMy5sYXp5VmFsdWUgfHwgdGFiSXRlbS4kZWwuZmlyc3RDaGlsZC5jbGFzc05hbWUuaW5kZXhPZihfdGhpczMuYWN0aXZlQ2xhc3MpID4gLTE7XG4gICAgICB9KTtcblxuICAgICAgdmFyIGluZGV4ID0gYWN0aXZlSW5kZXggPiAtMSA/IGFjdGl2ZUluZGV4IDogMDtcbiAgICAgIHZhciB0YWIgPSB0aGlzLnRhYnNbaW5kZXhdO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgLy8gVGhlcmUgaXMgbm90IGEgcmVsaWFibGUgd2F5IHRvIHRlc3RcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRhYi5hY3Rpb24gPT09IHRhYiA/IGluZGV4IDogdGFiLmFjdGlvbjtcbiAgICB9LFxuICAgIHBhcnNlTm9kZXM6IGZ1bmN0aW9uIHBhcnNlTm9kZXMoKSB7XG4gICAgICB2YXIgaXRlbSA9IFtdO1xuICAgICAgdmFyIGl0ZW1zID0gW107XG4gICAgICB2YXIgc2xpZGVyID0gW107XG4gICAgICB2YXIgdGFiID0gW107XG4gICAgICB2YXIgbGVuZ3RoID0gKHRoaXMuJHNsb3RzLmRlZmF1bHQgfHwgW10pLmxlbmd0aDtcblxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgdm5vZGUgPSB0aGlzLiRzbG90cy5kZWZhdWx0W2ldO1xuXG4gICAgICAgIGlmICh2bm9kZS5jb21wb25lbnRPcHRpb25zKSB7XG4gICAgICAgICAgc3dpdGNoICh2bm9kZS5jb21wb25lbnRPcHRpb25zLkN0b3Iub3B0aW9ucy5uYW1lKSB7XG4gICAgICAgICAgICBjYXNlICd2LXRhYnMtc2xpZGVyJzpcbiAgICAgICAgICAgICAgc2xpZGVyLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3YtdGFicy1pdGVtcyc6XG4gICAgICAgICAgICAgIGl0ZW1zLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3YtdGFiLWl0ZW0nOlxuICAgICAgICAgICAgICBpdGVtLnB1c2godm5vZGUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIC8vIGNhc2UgJ3YtdGFiJyAtIGludGVudGlvbmFsbHkgb21pdHRlZFxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgdGFiLnB1c2godm5vZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0YWIucHVzaCh2bm9kZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgdGFiOiB0YWIsIHNsaWRlcjogc2xpZGVyLCBpdGVtczogaXRlbXMsIGl0ZW06IGl0ZW0gfTtcbiAgICB9LFxuICAgIHJlZ2lzdGVyOiBmdW5jdGlvbiByZWdpc3RlcihvcHRpb25zKSB7XG4gICAgICB0aGlzLnRhYnMucHVzaChvcHRpb25zKTtcbiAgICB9LFxuICAgIHNjcm9sbEludG9WaWV3OiBmdW5jdGlvbiBzY3JvbGxJbnRvVmlldygpIHtcbiAgICAgIGlmICghdGhpcy5hY3RpdmVUYWIpIHJldHVybjtcbiAgICAgIGlmICghdGhpcy5pc092ZXJmbG93aW5nKSByZXR1cm4gdGhpcy5zY3JvbGxPZmZzZXQgPSAwO1xuXG4gICAgICB2YXIgdG90YWxXaWR0aCA9IHRoaXMud2lkdGhzLndyYXBwZXIgKyB0aGlzLnNjcm9sbE9mZnNldDtcbiAgICAgIHZhciBfYWN0aXZlVGFiJCRlbCA9IHRoaXMuYWN0aXZlVGFiLiRlbCxcbiAgICAgICAgICBjbGllbnRXaWR0aCA9IF9hY3RpdmVUYWIkJGVsLmNsaWVudFdpZHRoLFxuICAgICAgICAgIG9mZnNldExlZnQgPSBfYWN0aXZlVGFiJCRlbC5vZmZzZXRMZWZ0O1xuXG4gICAgICB2YXIgaXRlbU9mZnNldCA9IGNsaWVudFdpZHRoICsgb2Zmc2V0TGVmdDtcbiAgICAgIHZhciBhZGRpdGlvbmFsT2Zmc2V0ID0gY2xpZW50V2lkdGggKiAwLjM7XG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAob2Zmc2V0TGVmdCA8IHRoaXMuc2Nyb2xsT2Zmc2V0KSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsT2Zmc2V0ID0gTWF0aC5tYXgob2Zmc2V0TGVmdCAtIGFkZGl0aW9uYWxPZmZzZXQsIDApO1xuICAgICAgfSBlbHNlIGlmICh0b3RhbFdpZHRoIDwgaXRlbU9mZnNldCkge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCAtPSB0b3RhbFdpZHRoIC0gaXRlbU9mZnNldCAtIGFkZGl0aW9uYWxPZmZzZXQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB0YWJDbGljazogZnVuY3Rpb24gdGFiQ2xpY2sodGFiKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0YWIuYWN0aW9uID09PSB0YWIgPyB0aGlzLnRhYnMuaW5kZXhPZih0YWIpIDogdGFiLmFjdGlvbjtcbiAgICAgIHRoaXMuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgICB9LFxuICAgIHRhYlByb3h5OiBmdW5jdGlvbiB0YWJQcm94eSh2YWwpIHtcbiAgICAgIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuICAgIH0sXG4gICAgcmVnaXN0ZXJJdGVtczogZnVuY3Rpb24gcmVnaXN0ZXJJdGVtcyhmbikge1xuICAgICAgdGhpcy50YWJJdGVtcyA9IGZuO1xuICAgIH0sXG4gICAgdW5yZWdpc3Rlckl0ZW1zOiBmdW5jdGlvbiB1bnJlZ2lzdGVySXRlbXMoKSB7XG4gICAgICB0aGlzLnRhYkl0ZW1zID0gbnVsbDtcbiAgICB9LFxuICAgIHVucmVnaXN0ZXI6IGZ1bmN0aW9uIHVucmVnaXN0ZXIodGFiKSB7XG4gICAgICB0aGlzLnRhYnMgPSB0aGlzLnRhYnMuZmlsdGVyKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgIHJldHVybiBvICE9PSB0YWI7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHVwZGF0ZVRhYnM6IGZ1bmN0aW9uIHVwZGF0ZVRhYnMoKSB7XG4gICAgICBmb3IgKHZhciBpbmRleCA9IHRoaXMudGFicy5sZW5ndGg7IC0taW5kZXggPj0gMDspIHtcbiAgICAgICAgdGhpcy50YWJzW2luZGV4XS50b2dnbGUodGhpcy50YXJnZXQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldE92ZXJmbG93KCk7XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX3BhcnNlTm9kZXMgPSB0aGlzLnBhcnNlTm9kZXMoKSxcbiAgICAgICAgdGFiID0gX3BhcnNlTm9kZXMudGFiLFxuICAgICAgICBzbGlkZXIgPSBfcGFyc2VOb2Rlcy5zbGlkZXIsXG4gICAgICAgIGl0ZW1zID0gX3BhcnNlTm9kZXMuaXRlbXMsXG4gICAgICAgIGl0ZW0gPSBfcGFyc2VOb2Rlcy5pdGVtO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFicycsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAncmVzaXplJyxcbiAgICAgICAgYXJnOiA0MDAsXG4gICAgICAgIG1vZGlmaWVyczogeyBxdWlldDogdHJ1ZSB9LFxuICAgICAgICB2YWx1ZTogdGhpcy5vblJlc2l6ZVxuICAgICAgfV1cbiAgICB9LCBbdGhpcy5nZW5CYXIoW3RoaXMuaGlkZVNsaWRlciA/IG51bGwgOiB0aGlzLmdlblNsaWRlcihzbGlkZXIpLCB0YWJdKSwgdGhpcy5nZW5JdGVtcyhpdGVtcywgaXRlbSldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjM3ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBleHBvcnRzKSB7XG5cbi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cbi8qKiovIH0pLFxuLyogMjM4ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyoqXG4gKiBUYWJzIGNvbXB1dGVkXG4gKlxuICogQG1peGluXG4gKi9cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBjb21wdXRlZDoge1xuICAgIGFjdGl2ZUluZGV4OiBmdW5jdGlvbiBhY3RpdmVJbmRleCgpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLnRhYnMuZmluZEluZGV4KGZ1bmN0aW9uICh0YWIsIGluZGV4KSB7XG4gICAgICAgIHZhciBpZCA9IHRhYi5hY3Rpb24gPT09IHRhYiA/IGluZGV4LnRvU3RyaW5nKCkgOiB0YWIuYWN0aW9uO1xuICAgICAgICByZXR1cm4gaWQgPT09IF90aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgYWN0aXZlVGFiOiBmdW5jdGlvbiBhY3RpdmVUYWIoKSB7XG4gICAgICBpZiAoIXRoaXMudGFicy5sZW5ndGgpIHJldHVybiB1bmRlZmluZWQ7XG5cbiAgICAgIHJldHVybiB0aGlzLnRhYnNbdGhpcy5hY3RpdmVJbmRleF07XG4gICAgfSxcbiAgICBjb250YWluZXJTdHlsZXM6IGZ1bmN0aW9uIGNvbnRhaW5lclN0eWxlcygpIHtcbiAgICAgIHJldHVybiB0aGlzLmhlaWdodCA/IHtcbiAgICAgICAgaGVpZ2h0OiBwYXJzZUludCh0aGlzLmhlaWdodCwgMTApICsgJ3B4J1xuICAgICAgfSA6IG51bGw7XG4gICAgfSxcbiAgICBoYXNBcnJvd3M6IGZ1bmN0aW9uIGhhc0Fycm93cygpIHtcbiAgICAgIHJldHVybiAodGhpcy5zaG93QXJyb3dzIHx8ICF0aGlzLmlzTW9iaWxlKSAmJiB0aGlzLmlzT3ZlcmZsb3dpbmc7XG4gICAgfSxcblxuICAgIGlucHV0VmFsdWU6IHtcbiAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXp5VmFsdWU7XG4gICAgICB9LFxuICAgICAgc2V0OiBmdW5jdGlvbiBzZXQodmFsKSB7XG4gICAgICAgIC8vIEFsd2F5cyB1c2Ugc3RyaW5nc1xuICAgICAgICB2YWwgPSB2YWwudG9TdHJpbmcoKTtcblxuICAgICAgICB0aGlzLmxhenlWYWx1ZSA9IHZhbDtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB2YWwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgaXNNb2JpbGU6IGZ1bmN0aW9uIGlzTW9iaWxlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludC53aWR0aCA8IHRoaXMubW9iaWxlQnJlYWtQb2ludDtcbiAgICB9LFxuICAgIHNsaWRlclN0eWxlczogZnVuY3Rpb24gc2xpZGVyU3R5bGVzKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbGVmdDogdGhpcy5zbGlkZXJMZWZ0ICsgJ3B4JyxcbiAgICAgICAgdHJhbnNpdGlvbjogdGhpcy5zbGlkZXJMZWZ0ICE9IG51bGwgPyBudWxsIDogJ25vbmUnLFxuICAgICAgICB3aWR0aDogdGhpcy5zbGlkZXJXaWR0aCArICdweCdcbiAgICAgIH07XG4gICAgfSxcbiAgICB0YXJnZXQ6IGZ1bmN0aW9uIHRhcmdldCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmFjdGl2ZVRhYiA/IHRoaXMuYWN0aXZlVGFiLmFjdGlvbiA6IG51bGw7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyMzkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGFic0l0ZW1zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUYWJzU2xpZGVyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY4KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuXG5cblxuXG4vKipcbiAqIFRhYnMgZ2VuZXJhdG9yc1xuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIGdlbkJhcjogZnVuY3Rpb24gZ2VuQmFyKGl0ZW1zKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2JhcicsXG4gICAgICAgICdjbGFzcyc6IHRoaXMuYWRkQmFja2dyb3VuZENvbG9yQ2xhc3NDaGVja3Moe1xuICAgICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgICAndGhlbWUtLWxpZ2h0JzogdGhpcy5saWdodFxuICAgICAgICB9KSxcbiAgICAgICAgcmVmOiAnYmFyJ1xuICAgICAgfSwgW3RoaXMuZ2VuVHJhbnNpdGlvbigncHJldicpLCB0aGlzLmdlbldyYXBwZXIodGhpcy5nZW5Db250YWluZXIoaXRlbXMpKSwgdGhpcy5nZW5UcmFuc2l0aW9uKCduZXh0JyldKTtcbiAgICB9LFxuICAgIGdlbkNvbnRhaW5lcjogZnVuY3Rpb24gZ2VuQ29udGFpbmVyKGl0ZW1zKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2NvbnRhaW5lcicsXG4gICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tYWxpZ24td2l0aC10aXRsZSc6IHRoaXMuYWxpZ25XaXRoVGl0bGUsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tY2VudGVyZWQnOiB0aGlzLmNlbnRlcmVkLFxuICAgICAgICAgICd0YWJzX19jb250YWluZXItLWZpeGVkLXRhYnMnOiB0aGlzLmZpeGVkVGFicyxcbiAgICAgICAgICAndGFic19fY29udGFpbmVyLS1ncm93JzogdGhpcy5ncm93LFxuICAgICAgICAgICd0YWJzX19jb250YWluZXItLWljb25zLWFuZC10ZXh0JzogdGhpcy5pY29uc0FuZFRleHQsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tb3ZlcmZsb3cnOiB0aGlzLmlzT3ZlcmZsb3dpbmcsXG4gICAgICAgICAgJ3RhYnNfX2NvbnRhaW5lci0tcmlnaHQnOiB0aGlzLnJpZ2h0XG4gICAgICAgIH0sXG4gICAgICAgIHN0eWxlOiB0aGlzLmNvbnRhaW5lclN0eWxlcyxcbiAgICAgICAgcmVmOiAnY29udGFpbmVyJ1xuICAgICAgfSwgaXRlbXMpO1xuICAgIH0sXG4gICAgZ2VuSWNvbjogZnVuY3Rpb24gZ2VuSWNvbihkaXJlY3Rpb24pIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5oYXNBcnJvd3MgfHwgIXRoaXNbZGlyZWN0aW9uICsgJ0ljb25WaXNpYmxlJ10pIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZJY29uX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0YWJzX19pY29uIHRhYnNfX2ljb24tLScgKyBkaXJlY3Rpb24sXG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgZGlzYWJsZWQ6ICF0aGlzW2RpcmVjdGlvbiArICdJY29uVmlzaWJsZSddXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uIGNsaWNrKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLnNjcm9sbFRvKGRpcmVjdGlvbik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCB0aGlzW2RpcmVjdGlvbiArICdJY29uJ10pO1xuICAgIH0sXG4gICAgZ2VuSXRlbXM6IGZ1bmN0aW9uIGdlbkl0ZW1zKGl0ZW1zLCBpdGVtKSB7XG4gICAgICBpZiAoaXRlbXMubGVuZ3RoID4gMCkgcmV0dXJuIGl0ZW1zO1xuICAgICAgaWYgKCFpdGVtLmxlbmd0aCkgcmV0dXJuIG51bGw7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRhYnNJdGVtc19fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBpdGVtKTtcbiAgICB9LFxuICAgIGdlblRyYW5zaXRpb246IGZ1bmN0aW9uIGdlblRyYW5zaXRpb24oZGlyZWN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgndHJhbnNpdGlvbicsIHtcbiAgICAgICAgcHJvcHM6IHsgbmFtZTogJ2ZhZGUtdHJhbnNpdGlvbicgfVxuICAgICAgfSwgW3RoaXMuZ2VuSWNvbihkaXJlY3Rpb24pXSk7XG4gICAgfSxcbiAgICBnZW5XcmFwcGVyOiBmdW5jdGlvbiBnZW5XcmFwcGVyKGl0ZW1zKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0YWJzX193cmFwcGVyJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAndGFic19fd3JhcHBlci0tc2hvdy1hcnJvd3MnOiB0aGlzLmhhc0Fycm93c1xuICAgICAgICB9LFxuICAgICAgICByZWY6ICd3cmFwcGVyJyxcbiAgICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgICBuYW1lOiAndG91Y2gnLFxuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBzdGFydDogZnVuY3Rpb24gc3RhcnQoZSkge1xuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMyLm92ZXJmbG93Q2hlY2soZSwgX3RoaXMyLm9uVG91Y2hTdGFydCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW92ZTogZnVuY3Rpb24gbW92ZShlKSB7XG4gICAgICAgICAgICAgIHJldHVybiBfdGhpczIub3ZlcmZsb3dDaGVjayhlLCBfdGhpczIub25Ub3VjaE1vdmUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVuZDogZnVuY3Rpb24gZW5kKGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzMi5vdmVyZmxvd0NoZWNrKGUsIF90aGlzMi5vblRvdWNoRW5kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1dXG4gICAgICB9LCBbaXRlbXNdKTtcbiAgICB9LFxuICAgIGdlblNsaWRlcjogZnVuY3Rpb24gZ2VuU2xpZGVyKGl0ZW1zKSB7XG4gICAgICBpZiAoIWl0ZW1zLmxlbmd0aCkge1xuICAgICAgICBpdGVtcyA9IFt0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRhYnNTbGlkZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwge1xuICAgICAgICAgIHByb3BzOiB7IGNvbG9yOiB0aGlzLnNsaWRlckNvbG9yIH1cbiAgICAgICAgfSldO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX3NsaWRlci13cmFwcGVyJyxcbiAgICAgICAgc3R5bGU6IHRoaXMuc2xpZGVyU3R5bGVzXG4gICAgICB9LCBpdGVtcyk7XG4gICAgfVxuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNDAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKipcbiAqIFRhYnMgcHJvcHNcbiAqXG4gKiBAbWl4aW5cbiAqL1xuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIHByb3BzOiB7XG4gICAgYWxpZ25XaXRoVGl0bGU6IEJvb2xlYW4sXG4gICAgY2VudGVyZWQ6IEJvb2xlYW4sXG4gICAgZml4ZWRUYWJzOiBCb29sZWFuLFxuICAgIGdyb3c6IEJvb2xlYW4sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogdW5kZWZpbmVkLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIGhpZGVTbGlkZXI6IEJvb2xlYW4sXG4gICAgaWNvbnNBbmRUZXh0OiBCb29sZWFuLFxuICAgIG1vYmlsZUJyZWFrUG9pbnQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAxMjY0LFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iodikge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHBhcnNlSW50KHYpKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9yaWdodCdcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnY2hldnJvbl9sZWZ0J1xuICAgIH0sXG4gICAgcmlnaHQ6IEJvb2xlYW4sXG4gICAgc2hvd0Fycm93czogQm9vbGVhbixcbiAgICBzbGlkZXJDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2FjY2VudCdcbiAgICB9LFxuICAgIHZhbHVlOiBbTnVtYmVyLCBTdHJpbmddXG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0MSAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogVGFicyB0b3VjaFxuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbWV0aG9kczoge1xuICAgIG5ld09mZnNldDogZnVuY3Rpb24gbmV3T2Zmc2V0KGRpcmVjdGlvbikge1xuICAgICAgdmFyIGNsaWVudFdpZHRoID0gdGhpcy4kcmVmcy53cmFwcGVyLmNsaWVudFdpZHRoO1xuXG4gICAgICBpZiAoZGlyZWN0aW9uID09PSAncHJldicpIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KHRoaXMuc2Nyb2xsT2Zmc2V0IC0gY2xpZW50V2lkdGgsIDApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWluKHRoaXMuc2Nyb2xsT2Zmc2V0ICsgY2xpZW50V2lkdGgsIHRoaXMuJHJlZnMuY29udGFpbmVyLmNsaWVudFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgb25Ub3VjaFN0YXJ0OiBmdW5jdGlvbiBvblRvdWNoU3RhcnQoZSkge1xuICAgICAgdGhpcy5zdGFydFggPSB0aGlzLnNjcm9sbE9mZnNldCArIGUudG91Y2hzdGFydFg7XG4gICAgICB0aGlzLiRyZWZzLmNvbnRhaW5lci5zdHlsZS50cmFuc2l0aW9uID0gJ25vbmUnO1xuICAgICAgdGhpcy4kcmVmcy5jb250YWluZXIuc3R5bGUud2lsbENoYW5nZSA9ICd0cmFuc2Zvcm0nO1xuICAgIH0sXG4gICAgb25Ub3VjaE1vdmU6IGZ1bmN0aW9uIG9uVG91Y2hNb3ZlKGUpIHtcbiAgICAgIHRoaXMuc2Nyb2xsT2Zmc2V0ID0gdGhpcy5zdGFydFggLSBlLnRvdWNobW92ZVg7XG4gICAgfSxcbiAgICBvblRvdWNoRW5kOiBmdW5jdGlvbiBvblRvdWNoRW5kKCkge1xuICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuJHJlZnMuY29udGFpbmVyO1xuICAgICAgdmFyIHdyYXBwZXIgPSB0aGlzLiRyZWZzLndyYXBwZXI7XG4gICAgICB2YXIgbWF4U2Nyb2xsT2Zmc2V0ID0gY29udGFpbmVyLmNsaWVudFdpZHRoIC0gd3JhcHBlci5jbGllbnRXaWR0aDtcbiAgICAgIGNvbnRhaW5lci5zdHlsZS50cmFuc2l0aW9uID0gbnVsbDtcbiAgICAgIGNvbnRhaW5lci5zdHlsZS53aWxsQ2hhbmdlID0gbnVsbDtcblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmICh0aGlzLnNjcm9sbE9mZnNldCA8IDAgfHwgIXRoaXMuaXNPdmVyZmxvd2luZykge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IDA7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2Nyb2xsT2Zmc2V0ID49IG1heFNjcm9sbE9mZnNldCkge1xuICAgICAgICB0aGlzLnNjcm9sbE9mZnNldCA9IG1heFNjcm9sbE9mZnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0MiAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qKlxuICogVGFicyB3YXRjaGVyc1xuICpcbiAqIEBtaXhpblxuICovXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgd2F0Y2g6IHtcbiAgICBhY3RpdmVUYWI6IGZ1bmN0aW9uIGFjdGl2ZVRhYih0YWIsIHByZXYpIHtcbiAgICAgICFwcmV2ICYmIHRhYiAmJiB0aGlzLnVwZGF0ZVRhYnMoKTtcblxuICAgICAgc2V0VGltZW91dCh0aGlzLmNhbGxTbGlkZXIsIDApO1xuXG4gICAgICBpZiAoIXRhYikgcmV0dXJuO1xuXG4gICAgICB2YXIgYWN0aW9uID0gdGFiLmFjdGlvbjtcbiAgICAgIHRoaXMudGFiSXRlbXMgJiYgdGhpcy50YWJJdGVtcyhhY3Rpb24gPT09IHRhYiA/IHRoaXMudGFicy5pbmRleE9mKHRhYikudG9TdHJpbmcoKSA6IGFjdGlvbik7XG4gICAgfSxcblxuICAgIGFsaWduV2l0aFRpdGxlOiAnY2FsbFNsaWRlcicsXG4gICAgY2VudGVyZWQ6ICdjYWxsU2xpZGVyJyxcbiAgICBmaXhlZFRhYnM6ICdjYWxsU2xpZGVyJyxcbiAgICBoYXNBcnJvd3M6IGZ1bmN0aW9uIGhhc0Fycm93cyh2YWwpIHtcbiAgICAgIGlmICghdmFsKSB0aGlzLnNjcm9sbE9mZnNldCA9IDA7XG4gICAgfSxcblxuICAgIGlzQm9vdGVkOiAnZmluZEFjdGl2ZUxpbmsnLFxuICAgIGxhenlWYWx1ZTogJ3VwZGF0ZVRhYnMnLFxuICAgIHJpZ2h0OiAnY2FsbFNsaWRlcicsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG4gICAgfSxcblxuICAgICckdnVldGlmeS5hcHBsaWNhdGlvbi5sZWZ0JzogJ29uUmVzaXplJyxcbiAgICAnJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQnOiAnb25SZXNpemUnLFxuICAgIHNjcm9sbE9mZnNldDogZnVuY3Rpb24gc2Nyb2xsT2Zmc2V0KHZhbCkge1xuICAgICAgdGhpcy4kcmVmcy5jb250YWluZXIuc3R5bGUudHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoJyArIC12YWwgKyAncHgpJztcbiAgICAgIGlmICh0aGlzLmhhc0Fycm93cykge1xuICAgICAgICB0aGlzLnByZXZJY29uVmlzaWJsZSA9IHRoaXMuY2hlY2tQcmV2SWNvbigpO1xuICAgICAgICB0aGlzLm5leHRJY29uVmlzaWJsZSA9IHRoaXMuY2hlY2tOZXh0SWNvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQzICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDEzKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19yZWdpc3RyYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg0KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbmZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbi8vIE1peGluc1xuXG5cblxuLy8gVXRpbGl0aWVzXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRhYicsXG5cbiAgbWl4aW5zOiBbT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX3JlZ2lzdHJhYmxlX19bXCJhXCIgLyogaW5qZWN0ICovXSkoJ3RhYnMnLCAndi10YWInLCAndi10YWJzJyksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX3JvdXRhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGluamVjdDogWyd0YWJDbGljayddLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGFic19faXRlbS0tYWN0aXZlJ1xuICAgIH0sXG4gICAgcmlwcGxlOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6IHRydWVcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgcmV0dXJuIF9kZWZpbmVQcm9wZXJ0eSh7XG4gICAgICAgICd0YWJzX19pdGVtJzogdHJ1ZSxcbiAgICAgICAgJ3RhYnNfX2l0ZW0tLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZFxuICAgICAgfSwgdGhpcy5hY3RpdmVDbGFzcywgIXRoaXMudG8gJiYgdGhpcy5pc0FjdGl2ZSk7XG4gICAgfSxcbiAgICBhY3Rpb246IGZ1bmN0aW9uIGFjdGlvbigpIHtcbiAgICAgIHZhciB0byA9IHRoaXMudG8gfHwgdGhpcy5ocmVmO1xuXG4gICAgICBpZiAodGhpcy4kcm91dGVyICYmIHRoaXMudG8gPT09IE9iamVjdCh0aGlzLnRvKSkge1xuICAgICAgICB2YXIgcmVzb2x2ZSA9IHRoaXMuJHJvdXRlci5yZXNvbHZlKHRoaXMudG8sIHRoaXMuJHJvdXRlLCB0aGlzLmFwcGVuZCk7XG5cbiAgICAgICAgdG8gPSByZXNvbHZlLmhyZWY7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0eXBlb2YgdG8gPT09ICdzdHJpbmcnID8gdG8ucmVwbGFjZSgnIycsICcnKSA6IHRoaXM7XG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgJHJvdXRlOiAnb25Sb3V0ZUNoYW5nZSdcbiAgfSxcblxuICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge1xuICAgIHRoaXMudGFicy5yZWdpc3Rlcih0aGlzKTtcbiAgICB0aGlzLm9uUm91dGVDaGFuZ2UoKTtcbiAgfSxcbiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHtcbiAgICB0aGlzLnRhYnMudW5yZWdpc3Rlcih0aGlzKTtcbiAgfSxcblxuXG4gIG1ldGhvZHM6IHtcbiAgICBjbGljazogZnVuY3Rpb24gY2xpY2soZSkge1xuICAgICAgLy8gSWYgdXNlciBwcm92aWRlcyBhblxuICAgICAgLy8gYWN0dWFsIGxpbmssIGRvIG5vdFxuICAgICAgLy8gcHJldmVudCBkZWZhdWx0XG4gICAgICBpZiAodGhpcy5ocmVmICYmIHRoaXMuaHJlZi5pbmRleE9mKCcjJykgPiAtMSkgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICB0aGlzLiRlbWl0KCdjbGljaycsIGUpO1xuXG4gICAgICB0aGlzLnRvIHx8IHRoaXMudGFiQ2xpY2sodGhpcyk7XG4gICAgfSxcbiAgICBvblJvdXRlQ2hhbmdlOiBmdW5jdGlvbiBvblJvdXRlQ2hhbmdlKCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKCF0aGlzLnRvIHx8ICF0aGlzLiRyZWZzLmxpbmspIHJldHVybjtcblxuICAgICAgdmFyIHBhdGggPSAnX3Zub2RlLmRhdGEuY2xhc3MuJyArIHRoaXMuYWN0aXZlQ2xhc3M7XG5cbiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3V0aWxfaGVscGVyc19fW1wiaVwiIC8qIGdldE9iamVjdFZhbHVlQnlQYXRoICovXSkoX3RoaXMuJHJlZnMubGluaywgcGF0aCkpIHtcbiAgICAgICAgICBfdGhpcy50YWJDbGljayhfdGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sXG4gICAgdG9nZ2xlOiBmdW5jdGlvbiB0b2dnbGUoYWN0aW9uKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gYWN0aW9uID09PSB0aGlzIHx8IGFjdGlvbiA9PT0gdGhpcy5hY3Rpb247XG4gICAgfVxuICB9LFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgbGluayA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKTtcbiAgICB2YXIgZGF0YSA9IGxpbmsuZGF0YTtcblxuICAgIC8vIElmIGRpc2FibGVkLCB1c2UgZGl2IGFzIGFuY2hvciB0YWdzIGRvIG5vdCBzdXBwb3J0XG4gICAgLy8gYmVpbmcgZGlzYWJsZWRcblxuICAgIHZhciB0YWcgPSB0aGlzLmRpc2FibGVkID8gJ2RpdicgOiBsaW5rLnRhZztcblxuICAgIGRhdGEucmVmID0gJ2xpbmsnO1xuXG4gICAgcmV0dXJuIGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndGFic19fZGl2J1xuICAgIH0sIFtoKHRhZywgZGF0YSwgdGhpcy4kc2xvdHMuZGVmYXVsdCldKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQ0ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2Jvb3RhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE2KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3RyYW5zaXRpb25zX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3JlZ2lzdHJhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fZGlyZWN0aXZlc190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcblxuXG5cblxuXG5cblxuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKHtcbiAgbmFtZTogJ3YtdGFiLWl0ZW0nLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fbWl4aW5zX2Jvb3RhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19yZWdpc3RyYWJsZV9fW1wiYVwiIC8qIGluamVjdCAqL10pKCd0YWJzJywgJ3YtdGFiLWl0ZW0nLCAndi10YWJzLWl0ZW1zJyldLFxuXG4gIGNvbXBvbmVudHM6IHtcbiAgICBWVGFiVHJhbnNpdGlvbjogX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX190cmFuc2l0aW9uc19fW1wiZlwiIC8qIFZUYWJUcmFuc2l0aW9uICovXSxcbiAgICBWVGFiUmV2ZXJzZVRyYW5zaXRpb246IF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fdHJhbnNpdGlvbnNfX1tcImVcIiAvKiBWVGFiUmV2ZXJzZVRyYW5zaXRpb24gKi9dXG4gIH0sXG5cbiAgZGlyZWN0aXZlczoge1xuICAgIFRvdWNoOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX2RpcmVjdGl2ZXNfdG91Y2hfX1tcImFcIiAvKiBkZWZhdWx0ICovXVxuICB9LFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzQWN0aXZlOiBmYWxzZSxcbiAgICAgIHJldmVyc2U6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgaWQ6IFN0cmluZyxcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICd0YWItdHJhbnNpdGlvbidcbiAgICB9LFxuICAgIHJldmVyc2VUcmFuc2l0aW9uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICd0YWItcmV2ZXJzZS10cmFuc2l0aW9uJ1xuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmV2ZXJzZSA/IHRoaXMucmV2ZXJzZVRyYW5zaXRpb24gOiB0aGlzLnRyYW5zaXRpb247XG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICB0b2dnbGU6IGZ1bmN0aW9uIHRvZ2dsZSh0YXJnZXQsIHJldmVyc2UsIHNob3dUcmFuc2l0aW9uLCBpbmRleCkge1xuICAgICAgdGhpcy4kZWwuc3R5bGUudHJhbnNpdGlvbiA9ICFzaG93VHJhbnNpdGlvbiA/ICdub25lJyA6IG51bGw7XG4gICAgICB0aGlzLnJldmVyc2UgPSByZXZlcnNlO1xuICAgICAgdGhpcy5pc0FjdGl2ZSA9ICh0aGlzLmlkIHx8IGluZGV4LnRvU3RyaW5nKCkpID09PSB0YXJnZXQ7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy50YWJzLnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge1xuICAgIHRoaXMudGFicy51bnJlZ2lzdGVyKHRoaXMpO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlcihoKSB7XG4gICAgdmFyIGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3RhYnNfX2NvbnRlbnQnLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0FjdGl2ZVxuICAgICAgfV0sXG4gICAgICBkb21Qcm9wczogeyBpZDogdGhpcy5pZCB9LFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVyc1xuICAgIH07XG5cbiAgICB2YXIgZGl2ID0gaCgnZGl2JywgZGF0YSwgdGhpcy5zaG93TGF6eUNvbnRlbnQodGhpcy4kc2xvdHMuZGVmYXVsdCkpO1xuXG4gICAgaWYgKCF0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbikgcmV0dXJuIGRpdjtcblxuICAgIHJldHVybiBoKCd0cmFuc2l0aW9uJywge1xuICAgICAgcHJvcHM6IHsgbmFtZTogdGhpcy5jb21wdXRlZFRyYW5zaXRpb24gfVxuICAgIH0sIFtkaXZdKTtcbiAgfVxufSk7XG5cbi8qKiovIH0pLFxuLyogMjQ1ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRleHRGaWVsZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNDYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5pbnN0YWxsID0gZnVuY3Rpb24gaW5zdGFsbChWdWUpIHtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUZXh0RmllbGRfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRleHRGaWVsZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyNDYgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c19pbnB1dF9ncm91cHNfc3R5bF9fKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3N0eWx1c19jb21wb25lbnRzX3RleHRfZmllbGRzX3N0eWxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNDgpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fc3R5bHVzX2NvbXBvbmVudHNfdGV4dF9maWVsZHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19zdHlsdXNfY29tcG9uZW50c190ZXh0X2ZpZWxkc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxOSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfbWFza2FibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX3NvbG9hYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDUxKTtcbnZhciBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gKHRhcmdldCkgeyBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgeyB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOyBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7IGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7IHRhcmdldFtrZXldID0gc291cmNlW2tleV07IH0gfSB9IHJldHVybiB0YXJnZXQ7IH07XG5cbi8vIFN0eWxlc1xuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxudmFyIGRpcnR5VHlwZXMgPSBbJ2NvbG9yJywgJ2ZpbGUnLCAndGltZScsICdkYXRlJywgJ2RhdGV0aW1lLWxvY2FsJywgJ3dlZWsnLCAnbW9udGgnXTtcblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRleHQtZmllbGQnLFxuXG4gIG1peGluczogW19fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX21peGluc19pbnB1dF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19tYXNrYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX21peGluc19zb2xvYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dXSxcblxuICBpbmhlcml0QXR0cnM6IGZhbHNlLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluaXRpYWxWYWx1ZTogbnVsbCxcbiAgICAgIGlucHV0SGVpZ2h0OiBudWxsLFxuICAgICAgaW50ZXJuYWxDaGFuZ2U6IGZhbHNlLFxuICAgICAgYmFkSW5wdXQ6IGZhbHNlXG4gICAgfTtcbiAgfSxcblxuXG4gIHByb3BzOiB7XG4gICAgYXV0b2ZvY3VzOiBCb29sZWFuLFxuICAgIGF1dG9Hcm93OiBCb29sZWFuLFxuICAgIGJveDogQm9vbGVhbixcbiAgICBjbGVhcmFibGU6IEJvb2xlYW4sXG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5J1xuICAgIH0sXG4gICAgY291bnRlcjogW0Jvb2xlYW4sIE51bWJlciwgU3RyaW5nXSxcbiAgICBmdWxsV2lkdGg6IEJvb2xlYW4sXG4gICAgbXVsdGlMaW5lOiBCb29sZWFuLFxuICAgIG5vUmVzaXplOiBCb29sZWFuLFxuICAgIHBsYWNlaG9sZGVyOiBTdHJpbmcsXG4gICAgcHJlZml4OiBTdHJpbmcsXG4gICAgcm93SGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjQsXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VGbG9hdCh2KSk7XG4gICAgICB9XG4gICAgfSxcbiAgICByb3dzOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNSxcbiAgICAgIHZhbGlkYXRvcjogZnVuY3Rpb24gdmFsaWRhdG9yKHYpIHtcbiAgICAgICAgcmV0dXJuICFpc05hTihwYXJzZUludCh2LCAxMCkpO1xuICAgICAgfVxuICAgIH0sXG4gICAgc2luZ2xlTGluZTogQm9vbGVhbixcbiAgICBzdWZmaXg6IFN0cmluZyxcbiAgICB0ZXh0YXJlYTogQm9vbGVhbixcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndGV4dCdcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzOiBmdW5jdGlvbiBjbGFzc2VzKCkge1xuICAgICAgdmFyIGNsYXNzZXMgPSBfZXh0ZW5kcyh7fSwgdGhpcy5nZW5Tb2xvQ2xhc3NlcygpLCB7XG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dC1maWVsZCc6IHRydWUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dC1maWVsZC1ib3gnOiB0aGlzLmJveCxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1zaW5nbGUtbGluZSc6IHRoaXMuc2luZ2xlTGluZSB8fCB0aGlzLmlzU29sbyxcbiAgICAgICAgJ2lucHV0LWdyb3VwLS1tdWx0aS1saW5lJzogdGhpcy5tdWx0aUxpbmUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tZnVsbC13aWR0aCc6IHRoaXMuZnVsbFdpZHRoLFxuICAgICAgICAnaW5wdXQtZ3JvdXAtLW5vLXJlc2l6ZSc6IHRoaXMubm9SZXNpemVIYW5kbGUsXG4gICAgICAgICdpbnB1dC1ncm91cC0tcHJlZml4JzogdGhpcy5wcmVmaXgsXG4gICAgICAgICdpbnB1dC1ncm91cC0tc3VmZml4JzogdGhpcy5zdWZmaXgsXG4gICAgICAgICdpbnB1dC1ncm91cC0tdGV4dGFyZWEnOiB0aGlzLnRleHRhcmVhXG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMuaGFzRXJyb3IpIHtcbiAgICAgICAgY2xhc3Nlc1snZXJyb3ItLXRleHQnXSA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGRUZXh0Q29sb3JDbGFzc0NoZWNrcyhjbGFzc2VzKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNsYXNzZXM7XG4gICAgfSxcbiAgICBjb3VudDogZnVuY3Rpb24gY291bnQoKSB7XG4gICAgICB2YXIgaW5wdXRMZW5ndGggPSB2b2lkIDA7XG4gICAgICBpZiAodGhpcy5pbnB1dFZhbHVlKSBpbnB1dExlbmd0aCA9IHRoaXMuaW5wdXRWYWx1ZS50b1N0cmluZygpLmxlbmd0aDtlbHNlIGlucHV0TGVuZ3RoID0gMDtcblxuICAgICAgcmV0dXJuIGlucHV0TGVuZ3RoICsgJyAvICcgKyB0aGlzLmNvdW50ZXJMZW5ndGg7XG4gICAgfSxcbiAgICBjb3VudGVyTGVuZ3RoOiBmdW5jdGlvbiBjb3VudGVyTGVuZ3RoKCkge1xuICAgICAgdmFyIHBhcnNlZExlbmd0aCA9IHBhcnNlSW50KHRoaXMuY291bnRlciwgMTApO1xuICAgICAgcmV0dXJuIGlzTmFOKHBhcnNlZExlbmd0aCkgPyAyNSA6IHBhcnNlZExlbmd0aDtcbiAgICB9LFxuXG4gICAgaW5wdXRWYWx1ZToge1xuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhenlWYWx1ZTtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh2YWwpIHtcbiAgICAgICAgaWYgKHRoaXMubWFzaykge1xuICAgICAgICAgIHRoaXMubGF6eVZhbHVlID0gdGhpcy51bm1hc2tUZXh0KHRoaXMubWFza1RleHQodGhpcy51bm1hc2tUZXh0KHZhbCkpKTtcbiAgICAgICAgICB0aGlzLnNldFNlbGVjdGlvblJhbmdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sYXp5VmFsdWUgPSB2YWw7XG4gICAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCB0aGlzLmxhenlWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIGlzRGlydHk6IGZ1bmN0aW9uIGlzRGlydHkoKSB7XG4gICAgICByZXR1cm4gdGhpcy5sYXp5VmFsdWUgIT0gbnVsbCAmJiB0aGlzLmxhenlWYWx1ZS50b1N0cmluZygpLmxlbmd0aCA+IDAgfHwgdGhpcy5iYWRJbnB1dCB8fCBkaXJ0eVR5cGVzLmluY2x1ZGVzKHRoaXMudHlwZSk7XG4gICAgfSxcbiAgICBpc1RleHRhcmVhOiBmdW5jdGlvbiBpc1RleHRhcmVhKCkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlMaW5lIHx8IHRoaXMudGV4dGFyZWE7XG4gICAgfSxcbiAgICBub1Jlc2l6ZUhhbmRsZTogZnVuY3Rpb24gbm9SZXNpemVIYW5kbGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc1RleHRhcmVhICYmICh0aGlzLm5vUmVzaXplIHx8IHRoaXMuc2hvdWxkQXV0b0dyb3cpO1xuICAgIH0sXG4gICAgc2hvdWxkQXV0b0dyb3c6IGZ1bmN0aW9uIHNob3VsZEF1dG9Hcm93KCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNUZXh0YXJlYSAmJiB0aGlzLmF1dG9Hcm93O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzRm9jdXNlZDogZnVuY3Rpb24gaXNGb2N1c2VkKHZhbCkge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxWYWx1ZSA9IHRoaXMubGF6eVZhbHVlO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmluaXRpYWxWYWx1ZSAhPT0gdGhpcy5sYXp5VmFsdWUpIHtcbiAgICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdGhpcy5sYXp5VmFsdWUpO1xuICAgICAgfVxuICAgIH0sXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHZhbHVlKHZhbCkge1xuICAgICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgICAgaWYgKHRoaXMubWFzayAmJiAhdGhpcy5pbnRlcm5hbENoYW5nZSkge1xuICAgICAgICB2YXIgbWFza2VkID0gdGhpcy5tYXNrVGV4dCh0aGlzLnVubWFza1RleHQodmFsKSk7XG4gICAgICAgIHRoaXMubGF6eVZhbHVlID0gdGhpcy51bm1hc2tUZXh0KG1hc2tlZCk7XG5cbiAgICAgICAgLy8gRW1pdCB3aGVuIHRoZSBleHRlcm5hbGx5IHNldCB2YWx1ZSB3YXMgbW9kaWZpZWQgaW50ZXJuYWxseVxuICAgICAgICBTdHJpbmcodmFsKSAhPT0gdGhpcy5sYXp5VmFsdWUgJiYgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAgIF90aGlzLiRyZWZzLmlucHV0LnZhbHVlID0gbWFza2VkO1xuICAgICAgICAgIF90aGlzLiRlbWl0KCdpbnB1dCcsIF90aGlzLmxhenlWYWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHRoaXMubGF6eVZhbHVlID0gdmFsO1xuXG4gICAgICBpZiAodGhpcy5pbnRlcm5hbENoYW5nZSkgdGhpcy5pbnRlcm5hbENoYW5nZSA9IGZhbHNlO1xuXG4gICAgICAhdGhpcy52YWxpZGF0ZU9uQmx1ciAmJiB0aGlzLnZhbGlkYXRlKCk7XG4gICAgICB0aGlzLnNob3VsZEF1dG9Hcm93ICYmIHRoaXMuY2FsY3VsYXRlSW5wdXRIZWlnaHQoKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnNob3VsZEF1dG9Hcm93ICYmIHRoaXMuY2FsY3VsYXRlSW5wdXRIZWlnaHQoKTtcbiAgICB0aGlzLmF1dG9mb2N1cyAmJiB0aGlzLmZvY3VzKCk7XG4gIH0sXG5cblxuICBtZXRob2RzOiB7XG4gICAgY2FsY3VsYXRlSW5wdXRIZWlnaHQ6IGZ1bmN0aW9uIGNhbGN1bGF0ZUlucHV0SGVpZ2h0KCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHRoaXMuaW5wdXRIZWlnaHQgPSBudWxsO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBoZWlnaHQgPSBfdGhpczIuJHJlZnMuaW5wdXQgPyBfdGhpczIuJHJlZnMuaW5wdXQuc2Nyb2xsSGVpZ2h0IDogMDtcbiAgICAgICAgdmFyIG1pbkhlaWdodCA9IHBhcnNlSW50KF90aGlzMi5yb3dzLCAxMCkgKiBwYXJzZUZsb2F0KF90aGlzMi5yb3dIZWlnaHQpO1xuICAgICAgICBfdGhpczIuaW5wdXRIZWlnaHQgPSBNYXRoLm1heChtaW5IZWlnaHQsIGhlaWdodCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIG9uSW5wdXQ6IGZ1bmN0aW9uIG9uSW5wdXQoZSkge1xuICAgICAgdGhpcy5tYXNrICYmIHRoaXMucmVzZXRTZWxlY3Rpb25zKGUudGFyZ2V0KTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgICAgdGhpcy5iYWRJbnB1dCA9IGUudGFyZ2V0LnZhbGlkaXR5ICYmIGUudGFyZ2V0LnZhbGlkaXR5LmJhZElucHV0O1xuICAgICAgdGhpcy5zaG91bGRBdXRvR3JvdyAmJiB0aGlzLmNhbGN1bGF0ZUlucHV0SGVpZ2h0KCk7XG4gICAgfSxcbiAgICBibHVyOiBmdW5jdGlvbiBibHVyKGUpIHtcbiAgICAgIHZhciBfdGhpczMgPSB0aGlzO1xuXG4gICAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgLy8gUmVzZXQgaW50ZXJuYWxDaGFuZ2Ugc3RhdGVcbiAgICAgIC8vIHRvIGFsbG93IGV4dGVybmFsIGNoYW5nZVxuICAgICAgLy8gdG8gcGVyc2lzdFxuICAgICAgdGhpcy5pbnRlcm5hbENoYW5nZSA9IGZhbHNlO1xuXG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIF90aGlzMy52YWxpZGF0ZSgpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLiRlbWl0KCdibHVyJywgZSk7XG4gICAgfSxcbiAgICBmb2N1czogZnVuY3Rpb24gZm9jdXMoZSkge1xuICAgICAgaWYgKCF0aGlzLiRyZWZzLmlucHV0KSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSB0aGlzLiRyZWZzLmlucHV0KSB7XG4gICAgICAgIHRoaXMuJHJlZnMuaW5wdXQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuJGVtaXQoJ2ZvY3VzJywgZSk7XG4gICAgfSxcbiAgICBrZXlEb3duOiBmdW5jdGlvbiBrZXlEb3duKGUpIHtcbiAgICAgIC8vIFByZXZlbnRzIGNsb3Npbmcgb2YgYVxuICAgICAgLy8gZGlhbG9nIHdoZW4gcHJlc3NpbmdcbiAgICAgIC8vIGVudGVyXG4gICAgICBpZiAodGhpcy5pc1RleHRhcmVhICYmIHRoaXMuaXNGb2N1c2VkICYmIGUua2V5Q29kZSA9PT0gMTMpIHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pbnRlcm5hbENoYW5nZSA9IHRydWU7XG4gICAgfSxcbiAgICBnZW5Db3VudGVyOiBmdW5jdGlvbiBnZW5Db3VudGVyKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgJ2NsYXNzJzoge1xuICAgICAgICAgICdpbnB1dC1ncm91cF9fY291bnRlcic6IHRydWUsXG4gICAgICAgICAgJ2lucHV0LWdyb3VwX19jb3VudGVyLS1lcnJvcic6IHRoaXMuaGFzRXJyb3JcbiAgICAgICAgfVxuICAgICAgfSwgdGhpcy5jb3VudCk7XG4gICAgfSxcbiAgICBnZW5JbnB1dDogZnVuY3Rpb24gZ2VuSW5wdXQoKSB7XG4gICAgICB2YXIgdGFnID0gdGhpcy5pc1RleHRhcmVhID8gJ3RleHRhcmVhJyA6ICdpbnB1dCc7XG4gICAgICB2YXIgbGlzdGVuZXJzID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy4kbGlzdGVuZXJzKTtcbiAgICAgIGRlbGV0ZSBsaXN0ZW5lcnNbJ2NoYW5nZSddOyAvLyBDaGFuZ2Ugc2hvdWxkIG5vdCBiZSBib3VuZCBleHRlcm5hbGx5XG5cbiAgICAgIHZhciBkYXRhID0ge1xuICAgICAgICBzdHlsZToge30sXG4gICAgICAgIGRvbVByb3BzOiB7XG4gICAgICAgICAgdmFsdWU6IHRoaXMubWFza1RleHQodGhpcy5sYXp5VmFsdWUpXG4gICAgICAgIH0sXG4gICAgICAgIGF0dHJzOiBfZXh0ZW5kcyh7fSwgdGhpcy4kYXR0cnMsIHtcbiAgICAgICAgICBhdXRvZm9jdXM6IHRoaXMuYXV0b2ZvY3VzLFxuICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAgIHJlcXVpcmVkOiB0aGlzLnJlcXVpcmVkLFxuICAgICAgICAgIHJlYWRvbmx5OiB0aGlzLnJlYWRvbmx5LFxuICAgICAgICAgIHRhYmluZGV4OiB0aGlzLnRhYmluZGV4LFxuICAgICAgICAgICdhcmlhLWxhYmVsJzogKCF0aGlzLiRhdHRycyB8fCAhdGhpcy4kYXR0cnMuaWQpICYmIHRoaXMubGFiZWwgLy8gTGFiZWwgYGZvcmAgd2lsbCBiZSBzZXQgaWYgd2UgaGF2ZSBhbiBpZFxuICAgICAgICB9KSxcbiAgICAgICAgb246IE9iamVjdC5hc3NpZ24obGlzdGVuZXJzLCB7XG4gICAgICAgICAgYmx1cjogdGhpcy5ibHVyLFxuICAgICAgICAgIGlucHV0OiB0aGlzLm9uSW5wdXQsXG4gICAgICAgICAgZm9jdXM6IHRoaXMuZm9jdXMsXG4gICAgICAgICAga2V5ZG93bjogdGhpcy5rZXlEb3duXG4gICAgICAgIH0pLFxuICAgICAgICByZWY6ICdpbnB1dCdcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLnNob3VsZEF1dG9Hcm93KSB7XG4gICAgICAgIGRhdGEuc3R5bGUuaGVpZ2h0ID0gdGhpcy5pbnB1dEhlaWdodCAmJiB0aGlzLmlucHV0SGVpZ2h0ICsgJ3B4JztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIGRhdGEuYXR0cnMucGxhY2Vob2xkZXIgPSB0aGlzLnBsYWNlaG9sZGVyO1xuXG4gICAgICBpZiAoIXRoaXMuaXNUZXh0YXJlYSkge1xuICAgICAgICBkYXRhLmF0dHJzLnR5cGUgPSB0aGlzLnR5cGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkYXRhLmF0dHJzLnJvd3MgPSB0aGlzLnJvd3M7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLm1hc2spIHtcbiAgICAgICAgZGF0YS5hdHRycy5tYXhsZW5ndGggPSB0aGlzLm1hc2tlZC5sZW5ndGg7XG4gICAgICB9XG5cbiAgICAgIHZhciBjaGlsZHJlbiA9IFt0aGlzLiRjcmVhdGVFbGVtZW50KHRhZywgZGF0YSldO1xuXG4gICAgICB0aGlzLnByZWZpeCAmJiBjaGlsZHJlbi51bnNoaWZ0KHRoaXMuZ2VuRml4KCdwcmVmaXgnKSk7XG4gICAgICB0aGlzLnN1ZmZpeCAmJiBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuRml4KCdzdWZmaXgnKSk7XG5cbiAgICAgIHJldHVybiBjaGlsZHJlbjtcbiAgICB9LFxuICAgIGdlbkZpeDogZnVuY3Rpb24gZ2VuRml4KHR5cGUpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICAnY2xhc3MnOiAnaW5wdXQtZ3JvdXAtLXRleHQtZmllbGRfXycgKyB0eXBlXG4gICAgICB9LCB0aGlzW3R5cGVdKTtcbiAgICB9LFxuICAgIGNsZWFyYWJsZUNhbGxiYWNrOiBmdW5jdGlvbiBjbGVhcmFibGVDYWxsYmFjaygpIHtcbiAgICAgIHZhciBfdGhpczQgPSB0aGlzO1xuXG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gX3RoaXM0LiRyZWZzLmlucHV0LmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2VuSW5wdXRHcm91cCh0aGlzLmdlbklucHV0KCksIHsgYXR0cnM6IHsgdGFiaW5kZXg6IGZhbHNlIH0gfSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI0NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUaW1lUGlja2VyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI0OCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDcwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUaW1lUGlja2VyVGl0bGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNjkpO1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRpbWVQaWNrZXIgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUaW1lUGlja2VyQ2xvY2sgKi9cbi8qIHVudXNlZCBoYXJtb255IHJlZXhwb3J0IFZUaW1lUGlja2VyVGl0bGUgKi9cblxuXG5cblxuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUaW1lUGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRpbWVQaWNrZXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10ubmFtZSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn07XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcblxuLyoqKi8gfSksXG4vKiAyNDggKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVGltZVBpY2tlclRpdGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDY5KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUaW1lUGlja2VyQ2xvY2tfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX3BpY2tlcl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg2NSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMik7XG52YXIgX3NsaWNlZFRvQXJyYXkgPSBmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIHNsaWNlSXRlcmF0b3IoYXJyLCBpKSB7IHZhciBfYXJyID0gW107IHZhciBfbiA9IHRydWU7IHZhciBfZCA9IGZhbHNlOyB2YXIgX2UgPSB1bmRlZmluZWQ7IHRyeSB7IGZvciAodmFyIF9pID0gYXJyW1N5bWJvbC5pdGVyYXRvcl0oKSwgX3M7ICEoX24gPSAoX3MgPSBfaS5uZXh0KCkpLmRvbmUpOyBfbiA9IHRydWUpIHsgX2Fyci5wdXNoKF9zLnZhbHVlKTsgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOyB9IH0gY2F0Y2ggKGVycikgeyBfZCA9IHRydWU7IF9lID0gZXJyOyB9IGZpbmFsbHkgeyB0cnkgeyBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdKSBfaVtcInJldHVyblwiXSgpOyB9IGZpbmFsbHkgeyBpZiAoX2QpIHRocm93IF9lOyB9IH0gcmV0dXJuIF9hcnI7IH0gcmV0dXJuIGZ1bmN0aW9uIChhcnIsIGkpIHsgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgeyByZXR1cm4gYXJyOyB9IGVsc2UgaWYgKFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoYXJyKSkgeyByZXR1cm4gc2xpY2VJdGVyYXRvcihhcnIsIGkpOyB9IGVsc2UgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVwiKTsgfSB9OyB9KCk7XG5cbi8vIENvbXBvbmVudHNcblxuXG5cbi8vIE1peGluc1xuXG5cbi8vIFV0aWxzXG5cblxuXG52YXIgcmFuZ2VIb3VyczI0ID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSgyNCk7XG52YXIgcmFuZ2VIb3VyczEyYW0gPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX191dGlsX2hlbHBlcnNfX1tcImRcIiAvKiBjcmVhdGVSYW5nZSAqL10pKDEyKTtcbnZhciByYW5nZUhvdXJzMTJwbSA9IHJhbmdlSG91cnMxMmFtLm1hcChmdW5jdGlvbiAodikge1xuICByZXR1cm4gdiArIDEyO1xufSk7XG52YXIgcmFuZ2VNaW51dGVzID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fdXRpbF9oZWxwZXJzX19bXCJkXCIgLyogY3JlYXRlUmFuZ2UgKi9dKSg2MCk7XG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10aW1lLXBpY2tlcicsXG5cbiAgbWl4aW5zOiBbX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfcGlja2VyX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0SG91cjogbnVsbCxcbiAgICAgIGlucHV0TWludXRlOiBudWxsLFxuICAgICAgcGVyaW9kOiAnYW0nLFxuICAgICAgc2VsZWN0aW5nSG91cjogdHJ1ZVxuICAgIH07XG4gIH0sXG5cblxuICBwcm9wczoge1xuICAgIGFsbG93ZWRIb3VyczogRnVuY3Rpb24sXG4gICAgYWxsb3dlZE1pbnV0ZXM6IEZ1bmN0aW9uLFxuICAgIGZvcm1hdDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2FtcG0nLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3IodmFsKSB7XG4gICAgICAgIHJldHVybiBbJ2FtcG0nLCAnMjRociddLmluY2x1ZGVzKHZhbCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBtaW46IFN0cmluZyxcbiAgICBtYXg6IFN0cmluZyxcbiAgICBzY3JvbGxhYmxlOiBCb29sZWFuLFxuICAgIHZhbHVlOiBudWxsXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBpc0FsbG93ZWRIb3VyQ2I6IGZ1bmN0aW9uIGlzQWxsb3dlZEhvdXJDYigpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIGlmICghdGhpcy5taW4gJiYgIXRoaXMubWF4KSByZXR1cm4gdGhpcy5hbGxvd2VkSG91cnM7XG5cbiAgICAgIHZhciBtaW5Ib3VyID0gdGhpcy5taW4gPyB0aGlzLm1pbi5zcGxpdCgnOicpWzBdIDogMDtcbiAgICAgIHZhciBtYXhIb3VyID0gdGhpcy5tYXggPyB0aGlzLm1heC5zcGxpdCgnOicpWzBdIDogMjM7XG5cbiAgICAgIHJldHVybiBmdW5jdGlvbiAodmFsKSB7XG4gICAgICAgIHJldHVybiB2YWwgPj0gbWluSG91ciAqIDEgJiYgdmFsIDw9IG1heEhvdXIgKiAxICYmICghX3RoaXMuYWxsb3dlZEhvdXJzIHx8IF90aGlzLmFsbG93ZWRIb3Vycyh2YWwpKTtcbiAgICAgIH07XG4gICAgfSxcbiAgICBpc0FsbG93ZWRNaW51dGVDYjogZnVuY3Rpb24gaXNBbGxvd2VkTWludXRlQ2IoKSB7XG4gICAgICB2YXIgX3RoaXMyID0gdGhpcztcblxuICAgICAgdmFyIGlzSG91ckFsbG93ZWQgPSAhdGhpcy5hbGxvd2VkSG91cnMgfHwgdGhpcy5hbGxvd2VkSG91cnModGhpcy5pbnB1dEhvdXIpO1xuICAgICAgaWYgKCF0aGlzLm1pbiAmJiAhdGhpcy5tYXgpIHtcbiAgICAgICAgcmV0dXJuIGlzSG91ckFsbG93ZWQgPyB0aGlzLmFsbG93ZWRNaW51dGVzIDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgdmFyIF9yZWYgPSB0aGlzLm1pbiA/IHRoaXMubWluLnNwbGl0KCc6JykgOiBbMCwgMF0sXG4gICAgICAgICAgX3JlZjIgPSBfc2xpY2VkVG9BcnJheShfcmVmLCAyKSxcbiAgICAgICAgICBtaW5Ib3VyID0gX3JlZjJbMF0sXG4gICAgICAgICAgbWluTWludXRlID0gX3JlZjJbMV07XG5cbiAgICAgIHZhciBfcmVmMyA9IHRoaXMubWF4ID8gdGhpcy5tYXguc3BsaXQoJzonKSA6IFsyMywgNTldLFxuICAgICAgICAgIF9yZWY0ID0gX3NsaWNlZFRvQXJyYXkoX3JlZjMsIDIpLFxuICAgICAgICAgIG1heEhvdXIgPSBfcmVmNFswXSxcbiAgICAgICAgICBtYXhNaW51dGUgPSBfcmVmNFsxXTtcblxuICAgICAgdmFyIG1pblRpbWUgPSBtaW5Ib3VyICogNjAgKyBtaW5NaW51dGUgKiAxO1xuICAgICAgdmFyIG1heFRpbWUgPSBtYXhIb3VyICogNjAgKyBtYXhNaW51dGUgKiAxO1xuXG4gICAgICByZXR1cm4gZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICB2YXIgdGltZSA9IDYwICogX3RoaXMyLmlucHV0SG91ciArIHZhbDtcbiAgICAgICAgcmV0dXJuIHRpbWUgPj0gbWluVGltZSAmJiB0aW1lIDw9IG1heFRpbWUgJiYgaXNIb3VyQWxsb3dlZCAmJiAoIV90aGlzMi5hbGxvd2VkTWludXRlcyB8fCBfdGhpczIuYWxsb3dlZE1pbnV0ZXModmFsKSk7XG4gICAgICB9O1xuICAgIH0sXG4gICAgaXNBbVBtOiBmdW5jdGlvbiBpc0FtUG0oKSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQgPT09ICdhbXBtJztcbiAgICB9XG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICB2YWx1ZTogJ3NldElucHV0RGF0YSdcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZW1pdFZhbHVlOiBmdW5jdGlvbiBlbWl0VmFsdWUoKSB7XG4gICAgICBpZiAodGhpcy5pbnB1dEhvdXIgIT0gbnVsbCAmJiB0aGlzLmlucHV0TWludXRlICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy4kZW1pdCgnaW5wdXQnLCBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSh0aGlzLmlucHV0SG91cikgKyAnOicgKyBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19WRGF0ZVBpY2tlcl91dGlsX3BhZF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKSh0aGlzLmlucHV0TWludXRlKSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBzZXRQZXJpb2Q6IGZ1bmN0aW9uIHNldFBlcmlvZChwZXJpb2QpIHtcbiAgICAgIHRoaXMucGVyaW9kID0gcGVyaW9kO1xuICAgICAgaWYgKHRoaXMuaW5wdXRIb3VyICE9IG51bGwpIHtcbiAgICAgICAgdmFyIG5ld0hvdXIgPSB0aGlzLmlucHV0SG91ciArIChwZXJpb2QgPT09ICdhbScgPyAtMTIgOiAxMik7XG4gICAgICAgIHRoaXMuaW5wdXRIb3VyID0gdGhpcy5maXJzdEFsbG93ZWQoJ2hvdXInLCBuZXdIb3VyKTtcbiAgICAgICAgdGhpcy5lbWl0VmFsdWUoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHNldElucHV0RGF0YTogZnVuY3Rpb24gc2V0SW5wdXREYXRhKHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmlucHV0SG91ciA9IG51bGw7XG4gICAgICAgIHRoaXMuaW5wdXRNaW51dGUgPSBudWxsO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgdGhpcy5pbnB1dEhvdXIgPSB2YWx1ZS5nZXRIb3VycygpO1xuICAgICAgICB0aGlzLmlucHV0TWludXRlID0gdmFsdWUuZ2V0TWludXRlcygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIF9yZWY1ID0gdmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCkubWF0Y2goL14oXFxkKyk6KFxcZCspKDpcXGQrKT8oW2FwXW0pPyQvLCAnJykgfHwgW10sXG4gICAgICAgICAgICBfcmVmNiA9IF9zbGljZWRUb0FycmF5KF9yZWY1LCA1KSxcbiAgICAgICAgICAgIGhvdXIgPSBfcmVmNlsxXSxcbiAgICAgICAgICAgIG1pbnV0ZSA9IF9yZWY2WzJdLFxuICAgICAgICAgICAgcGVyaW9kID0gX3JlZjZbNF07XG5cbiAgICAgICAgdGhpcy5pbnB1dEhvdXIgPSBwZXJpb2QgPyB0aGlzLmNvbnZlcnQxMnRvMjQocGFyc2VJbnQoaG91ciwgMTApLCBwZXJpb2QpIDogcGFyc2VJbnQoaG91ciwgMTApO1xuICAgICAgICB0aGlzLmlucHV0TWludXRlID0gcGFyc2VJbnQobWludXRlLCAxMCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucGVyaW9kID0gdGhpcy5pbnB1dEhvdXIgPCAxMiA/ICdhbScgOiAncG0nO1xuICAgIH0sXG4gICAgY29udmVydDI0dG8xMjogZnVuY3Rpb24gY29udmVydDI0dG8xMihob3VyKSB7XG4gICAgICByZXR1cm4gaG91ciA/IChob3VyIC0gMSkgJSAxMiArIDEgOiAxMjtcbiAgICB9LFxuICAgIGNvbnZlcnQxMnRvMjQ6IGZ1bmN0aW9uIGNvbnZlcnQxMnRvMjQoaG91ciwgcGVyaW9kKSB7XG4gICAgICByZXR1cm4gaG91ciAlIDEyICsgKHBlcmlvZCA9PT0gJ3BtJyA/IDEyIDogMCk7XG4gICAgfSxcbiAgICBvbklucHV0OiBmdW5jdGlvbiBvbklucHV0KHZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RpbmdIb3VyKSB7XG4gICAgICAgIHRoaXMuaW5wdXRIb3VyID0gdGhpcy5pc0FtUG0gPyB0aGlzLmNvbnZlcnQxMnRvMjQodmFsdWUsIHRoaXMucGVyaW9kKSA6IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnB1dE1pbnV0ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgICAgdGhpcy5lbWl0VmFsdWUoKTtcbiAgICB9LFxuICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZSgpIHtcbiAgICAgIGlmICghdGhpcy5zZWxlY3RpbmdIb3VyKSB7XG4gICAgICAgIHRoaXMuJGVtaXQoJ2NoYW5nZScsIHRoaXMudmFsdWUpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlbGVjdGluZ0hvdXIgPSAhdGhpcy5zZWxlY3RpbmdIb3VyO1xuICAgIH0sXG4gICAgZmlyc3RBbGxvd2VkOiBmdW5jdGlvbiBmaXJzdEFsbG93ZWQodHlwZSwgdmFsdWUpIHtcbiAgICAgIHZhciBhbGxvd2VkRm4gPSB0eXBlID09PSAnaG91cicgPyB0aGlzLmlzQWxsb3dlZEhvdXJDYiA6IHRoaXMuaXNBbGxvd2VkTWludXRlQ2I7XG4gICAgICBpZiAoIWFsbG93ZWRGbikgcmV0dXJuIHZhbHVlO1xuXG4gICAgICAvLyBUT0RPOiBjbGVhbiB1cFxuICAgICAgdmFyIHJhbmdlID0gdHlwZSA9PT0gJ21pbnV0ZScgPyByYW5nZU1pbnV0ZXMgOiB0aGlzLmlzQW1QbSA/IHZhbHVlIDwgMTIgPyByYW5nZUhvdXJzMTJhbSA6IHJhbmdlSG91cnMxMnBtIDogcmFuZ2VIb3VyczI0O1xuICAgICAgdmFyIGZpcnN0ID0gcmFuZ2UuZmluZChmdW5jdGlvbiAodikge1xuICAgICAgICByZXR1cm4gYWxsb3dlZEZuKCh2ICsgdmFsdWUpICUgcmFuZ2UubGVuZ3RoICsgcmFuZ2VbMF0pO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gKChmaXJzdCB8fCAwKSArIHZhbHVlKSAlIHJhbmdlLmxlbmd0aCArIHJhbmdlWzBdO1xuICAgIH0sXG4gICAgZ2VuQ2xvY2s6IGZ1bmN0aW9uIGdlbkNsb2NrKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVGltZVBpY2tlckNsb2NrX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhbGxvd2VkVmFsdWVzOiB0aGlzLnNlbGVjdGluZ0hvdXIgPyB0aGlzLmlzQWxsb3dlZEhvdXJDYiA6IHRoaXMuaXNBbGxvd2VkTWludXRlQ2IsXG4gICAgICAgICAgY29sb3I6IHRoaXMuY29sb3IsXG4gICAgICAgICAgZGFyazogdGhpcy5kYXJrLFxuICAgICAgICAgIGRvdWJsZTogdGhpcy5zZWxlY3RpbmdIb3VyICYmICF0aGlzLmlzQW1QbSxcbiAgICAgICAgICBmb3JtYXQ6IHRoaXMuc2VsZWN0aW5nSG91ciA/IHRoaXMuaXNBbVBtID8gdGhpcy5jb252ZXJ0MjR0bzEyIDogZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgICB9IDogZnVuY3Rpb24gKHZhbCkge1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX1ZEYXRlUGlja2VyX3V0aWxfcGFkX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKHZhbCwgMik7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBtYXg6IHRoaXMuc2VsZWN0aW5nSG91ciA/IHRoaXMuaXNBbVBtICYmIHRoaXMucGVyaW9kID09PSAnYW0nID8gMTEgOiAyMyA6IDU5LFxuICAgICAgICAgIG1pbjogdGhpcy5zZWxlY3RpbmdIb3VyICYmIHRoaXMuaXNBbVBtICYmIHRoaXMucGVyaW9kID09PSAncG0nID8gMTIgOiAwLFxuICAgICAgICAgIHNjcm9sbGFibGU6IHRoaXMuc2Nyb2xsYWJsZSxcbiAgICAgICAgICBzaXplOiB0aGlzLndpZHRoIC0gKCF0aGlzLmZ1bGxXaWR0aCAmJiB0aGlzLmxhbmRzY2FwZSA/IDgwIDogMjApLFxuICAgICAgICAgIHN0ZXA6IHRoaXMuc2VsZWN0aW5nSG91ciA/IDEgOiA1LFxuICAgICAgICAgIHZhbHVlOiB0aGlzLnNlbGVjdGluZ0hvdXIgPyB0aGlzLmlucHV0SG91ciA6IHRoaXMuaW5wdXRNaW51dGVcbiAgICAgICAgfSxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBpbnB1dDogdGhpcy5vbklucHV0LFxuICAgICAgICAgIGNoYW5nZTogdGhpcy5vbkNoYW5nZVxuICAgICAgICB9LFxuICAgICAgICByZWY6ICdjbG9jaydcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyQm9keTogZnVuY3Rpb24gZ2VuUGlja2VyQm9keSgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndGltZS1waWNrZXItY2xvY2tfX2NvbnRhaW5lcicsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgd2lkdGg6IHRoaXMud2lkdGggKyAncHgnLFxuICAgICAgICAgIGhlaWdodDogdGhpcy53aWR0aCAtICghdGhpcy5mdWxsV2lkdGggJiYgdGhpcy5sYW5kc2NhcGUgPyA2MCA6IDApICsgJ3B4J1xuICAgICAgICB9LFxuICAgICAgICBrZXk6IHRoaXMuc2VsZWN0aW5nSG91clxuICAgICAgfSwgW3RoaXMuZ2VuQ2xvY2soKV0pO1xuICAgIH0sXG4gICAgZ2VuUGlja2VyVGl0bGU6IGZ1bmN0aW9uIGdlblBpY2tlclRpdGxlKCkge1xuICAgICAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRpbWVQaWNrZXJUaXRsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCB7XG4gICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgYW1wbTogdGhpcy5pc0FtUG0sXG4gICAgICAgICAgaG91cjogdGhpcy5pbnB1dEhvdXIsXG4gICAgICAgICAgbWludXRlOiB0aGlzLmlucHV0TWludXRlLFxuICAgICAgICAgIHBlcmlvZDogdGhpcy5wZXJpb2QsXG4gICAgICAgICAgc2VsZWN0aW5nSG91cjogdGhpcy5zZWxlY3RpbmdIb3VyXG4gICAgICAgIH0sXG4gICAgICAgIG9uOiB7XG4gICAgICAgICAgJ3VwZGF0ZTpzZWxlY3RpbmdIb3VyJzogZnVuY3Rpb24gdXBkYXRlU2VsZWN0aW5nSG91cih2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzMy5zZWxlY3RpbmdIb3VyID0gdmFsdWU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAndXBkYXRlOnBlcmlvZCc6IHRoaXMuc2V0UGVyaW9kXG4gICAgICAgIH0sXG4gICAgICAgIHJlZjogJ3RpdGxlJyxcbiAgICAgICAgc2xvdDogJ3RpdGxlJ1xuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7XG4gICAgdGhpcy5zZXRJbnB1dERhdGEodGhpcy52YWx1ZSk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICByZXR1cm4gdGhpcy5nZW5QaWNrZXIoJ3BpY2tlci0tdGltZScpO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNDkgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyNTAgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIGV4cG9ydHMpIHtcblxuLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuLyoqKi8gfSksXG4vKiAyNTEgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiB1bnVzZWQgaGFybW9ueSBleHBvcnQgVlRvb2xiYXJUaXRsZSAqL1xuLyogdW51c2VkIGhhcm1vbnkgZXhwb3J0IFZUb29sYmFySXRlbXMgKi9cbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX3V0aWxfaGVscGVyc19fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUb29sYmFyX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1Mik7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19WVG9vbGJhclNpZGVJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1NCk7XG4vKiB1bnVzZWQgaGFybW9ueSByZWV4cG9ydCBWVG9vbGJhciAqL1xuLyogdW51c2VkIGhhcm1vbnkgcmVleHBvcnQgVlRvb2xiYXJTaWRlSWNvbiAqL1xuXG5cblxuXG5cbnZhciBWVG9vbGJhclRpdGxlID0gT2JqZWN0KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fdXRpbF9oZWxwZXJzX19bXCJlXCIgLyogY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCAqL10pKCd0b29sYmFyX190aXRsZScpO1xudmFyIFZUb29sYmFySXRlbXMgPSBPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX191dGlsX2hlbHBlcnNfX1tcImVcIiAvKiBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsICovXSkoJ3Rvb2xiYXJfX2l0ZW1zJyk7XG5cblxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19WVG9vbGJhcl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLmluc3RhbGwgPSBmdW5jdGlvbiBpbnN0YWxsKFZ1ZSkge1xuICBWdWUuY29tcG9uZW50KF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRvb2xiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX1ZUb29sYmFyX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuY29tcG9uZW50KFZUb29sYmFySXRlbXMubmFtZSwgVlRvb2xiYXJJdGVtcyk7XG4gIFZ1ZS5jb21wb25lbnQoVlRvb2xiYXJUaXRsZS5uYW1lLCBWVG9vbGJhclRpdGxlKTtcbiAgVnVlLmNvbXBvbmVudChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUb29sYmFyU2lkZUljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXS5uYW1lLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX1ZUb29sYmFyU2lkZUljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fVlRvb2xiYXJfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjUyICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbGJhcl9zdHlsX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDI1Myk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190b29sYmFyX3N0eWxfX19kZWZhdWx0ID0gX193ZWJwYWNrX3JlcXVpcmVfXy5uKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbGJhcl9zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2FwcGxpY2F0aW9uYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfY29sb3JhYmxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDApO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX3RoZW1lYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zc3JfYm9vdGFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMjMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fZGlyZWN0aXZlc19zY3JvbGxfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNzEpO1xuLy8gU3R5bGVzXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuLy8gRGlyZWN0aXZlc1xuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10b29sYmFyJyxcblxuICBtaXhpbnM6IFtPYmplY3QoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19taXhpbnNfYXBwbGljYXRpb25hYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pKCd0b3AnLCBbJ2NsaXBwZWRMZWZ0JywgJ2NsaXBwZWRSaWdodCcsICdjb21wdXRlZEhlaWdodCcsICdpbnZlcnRlZFNjcm9sbCcsICdtYW51YWxTY3JvbGwnXSksIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fbWl4aW5zX2NvbG9yYWJsZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19zc3JfYm9vdGFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19taXhpbnNfdGhlbWVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL11dLFxuXG4gIGRpcmVjdGl2ZXM6IHsgU2Nyb2xsOiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzVfX2RpcmVjdGl2ZXNfc2Nyb2xsX19bXCJhXCIgLyogZGVmYXVsdCAqL10gfSxcblxuICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICBhY3RpdmVUaW1lb3V0OiBudWxsLFxuICAgICAgY3VycmVudFNjcm9sbDogMCxcbiAgICAgIGhlaWdodHM6IHtcbiAgICAgICAgbW9iaWxlTGFuZHNjYXBlOiA0OCxcbiAgICAgICAgbW9iaWxlOiA1NixcbiAgICAgICAgZGVza3RvcDogNjQsXG4gICAgICAgIGRlbnNlOiA0OFxuICAgICAgfSxcbiAgICAgIGlzQWN0aXZlOiB0cnVlLFxuICAgICAgaXNFeHRlbmRlZDogZmFsc2UsXG4gICAgICBpc1Njcm9sbGluZ1VwOiBmYWxzZSxcbiAgICAgIHByZXZpb3VzU2Nyb2xsOiBudWxsLFxuICAgICAgcHJldmlvdXNTY3JvbGxEaXJlY3Rpb246IG51bGwsXG4gICAgICBzYXZlZFNjcm9sbDogMCxcbiAgICAgIHRhcmdldDogbnVsbFxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBjYXJkOiBCb29sZWFuLFxuICAgIGNsaXBwZWRMZWZ0OiBCb29sZWFuLFxuICAgIGNsaXBwZWRSaWdodDogQm9vbGVhbixcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBleHRlbmRlZDogQm9vbGVhbixcbiAgICBleHRlbnNpb25IZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBmbG9hdGluZzogQm9vbGVhbixcbiAgICBoZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICB2YWxpZGF0b3I6IGZ1bmN0aW9uIHZhbGlkYXRvcih2KSB7XG4gICAgICAgIHJldHVybiAhaXNOYU4ocGFyc2VJbnQodikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgaW52ZXJ0ZWRTY3JvbGw6IEJvb2xlYW4sXG4gICAgbWFudWFsU2Nyb2xsOiBCb29sZWFuLFxuICAgIHByb21pbmVudDogQm9vbGVhbixcbiAgICBzY3JvbGxPZmZTY3JlZW46IEJvb2xlYW4sXG4gICAgc2Nyb2xsVGFyZ2V0OiBTdHJpbmcsXG4gICAgc2Nyb2xsVGhyZXNob2xkOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAzMDBcbiAgICB9LFxuICAgIHRhYnM6IEJvb2xlYW5cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvbXB1dGVkQ29udGVudEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRDb250ZW50SGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMuaGVpZ2h0KSByZXR1cm4gcGFyc2VJbnQodGhpcy5oZWlnaHQpO1xuICAgICAgaWYgKHRoaXMuZGVuc2UpIHJldHVybiB0aGlzLmhlaWdodHMuZGVuc2U7XG5cbiAgICAgIGlmICh0aGlzLnByb21pbmVudCB8fCB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQubWRBbmRVcCkgcmV0dXJuIHRoaXMuaGVpZ2h0cy5kZXNrdG9wO1xuXG4gICAgICBpZiAodGhpcy4kdnVldGlmeS5icmVha3BvaW50LndpZHRoID4gdGhpcy4kdnVldGlmeS5icmVha3BvaW50LmhlaWdodCkgcmV0dXJuIHRoaXMuaGVpZ2h0cy5tb2JpbGVMYW5kc2NhcGU7XG5cbiAgICAgIHJldHVybiB0aGlzLmhlaWdodHMubW9iaWxlO1xuICAgIH0sXG4gICAgY29tcHV0ZWRFeHRlbnNpb25IZWlnaHQ6IGZ1bmN0aW9uIGNvbXB1dGVkRXh0ZW5zaW9uSGVpZ2h0KCkge1xuICAgICAgaWYgKHRoaXMudGFicykgcmV0dXJuIDQ4O1xuICAgICAgaWYgKHRoaXMuZXh0ZW5zaW9uSGVpZ2h0KSByZXR1cm4gcGFyc2VJbnQodGhpcy5leHRlbnNpb25IZWlnaHQpO1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZENvbnRlbnRIZWlnaHQ7XG4gICAgfSxcbiAgICBjb21wdXRlZEhlaWdodDogZnVuY3Rpb24gY29tcHV0ZWRIZWlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuaXNFeHRlbmRlZCkgcmV0dXJuIHRoaXMuY29tcHV0ZWRDb250ZW50SGVpZ2h0O1xuXG4gICAgICByZXR1cm4gdGhpcy5jb21wdXRlZENvbnRlbnRIZWlnaHQgKyB0aGlzLmNvbXB1dGVkRXh0ZW5zaW9uSGVpZ2h0O1xuICAgIH0sXG4gICAgY29tcHV0ZWRNYXJnaW5Ub3A6IGZ1bmN0aW9uIGNvbXB1dGVkTWFyZ2luVG9wKCkge1xuICAgICAgaWYgKCF0aGlzLmFwcCkgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmJhcjtcbiAgICB9LFxuICAgIGNsYXNzZXM6IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGRCYWNrZ3JvdW5kQ29sb3JDbGFzc0NoZWNrcyh7XG4gICAgICAgICd0b29sYmFyJzogdHJ1ZSxcbiAgICAgICAgJ2VsZXZhdGlvbi0wJzogdGhpcy5mbGF0IHx8ICF0aGlzLmlzQWN0aXZlICYmICF0aGlzLnRhYnMsXG4gICAgICAgICd0b29sYmFyLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICd0b29sYmFyLS1jYXJkJzogdGhpcy5jYXJkLFxuICAgICAgICAndG9vbGJhci0tY2xpcHBlZCc6IHRoaXMuY2xpcHBlZExlZnQgfHwgdGhpcy5jbGlwcGVkUmlnaHQsXG4gICAgICAgICd0b29sYmFyLS1kZW5zZSc6IHRoaXMuZGVuc2UsXG4gICAgICAgICd0b29sYmFyLS1leHRlbmRlZCc6IHRoaXMuaXNFeHRlbmRlZCxcbiAgICAgICAgJ3Rvb2xiYXItLWZpeGVkJzogIXRoaXMuYWJzb2x1dGUgJiYgKHRoaXMuYXBwIHx8IHRoaXMuZml4ZWQpLFxuICAgICAgICAndG9vbGJhci0tZmxvYXRpbmcnOiB0aGlzLmZsb2F0aW5nLFxuICAgICAgICAndG9vbGJhci0tcHJvbWluZW50JzogdGhpcy5wcm9taW5lbnQsXG4gICAgICAgICd0aGVtZS0tZGFyayc6IHRoaXMuZGFyayxcbiAgICAgICAgJ3RoZW1lLS1saWdodCc6IHRoaXMubGlnaHRcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgY29tcHV0ZWRQYWRkaW5nTGVmdDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nTGVmdCgpIHtcbiAgICAgIGlmICghdGhpcy5hcHAgfHwgdGhpcy5jbGlwcGVkTGVmdCkgcmV0dXJuIDA7XG5cbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLmxlZnQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFBhZGRpbmdSaWdodDogZnVuY3Rpb24gY29tcHV0ZWRQYWRkaW5nUmlnaHQoKSB7XG4gICAgICBpZiAoIXRoaXMuYXBwIHx8IHRoaXMuY2xpcHBlZFJpZ2h0KSByZXR1cm4gMDtcblxuICAgICAgcmV0dXJuIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmlnaHQ7XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYW5zZm9ybTogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2Zvcm0oKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNBY3RpdmUgPyAtdGhpcy5jb21wdXRlZEhlaWdodCA6IDA7XG4gICAgfSxcbiAgICBjdXJyZW50VGhyZXNob2xkOiBmdW5jdGlvbiBjdXJyZW50VGhyZXNob2xkKCkge1xuICAgICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuY3VycmVudFNjcm9sbCAtIHRoaXMuc2F2ZWRTY3JvbGwpO1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtYXJnaW5Ub3A6IHRoaXMuY29tcHV0ZWRNYXJnaW5Ub3AgKyAncHgnLFxuICAgICAgICBwYWRkaW5nUmlnaHQ6IHRoaXMuY29tcHV0ZWRQYWRkaW5nUmlnaHQgKyAncHgnLFxuICAgICAgICBwYWRkaW5nTGVmdDogdGhpcy5jb21wdXRlZFBhZGRpbmdMZWZ0ICsgJ3B4JyxcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgnICsgdGhpcy5jb21wdXRlZFRyYW5zZm9ybSArICdweCknXG4gICAgICB9O1xuICAgIH1cbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGN1cnJlbnRUaHJlc2hvbGQ6IGZ1bmN0aW9uIGN1cnJlbnRUaHJlc2hvbGQodmFsKSB7XG4gICAgICBpZiAodGhpcy5pbnZlcnRlZFNjcm9sbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FjdGl2ZSA9IHRoaXMuY3VycmVudFNjcm9sbCA+IHRoaXMuc2Nyb2xsVGhyZXNob2xkO1xuICAgICAgfVxuXG4gICAgICBpZiAodmFsIDwgdGhpcy5zY3JvbGxUaHJlc2hvbGQgfHwgIXRoaXMuaXNCb290ZWQpIHJldHVybjtcblxuICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMuaXNTY3JvbGxpbmdVcDtcbiAgICAgIHRoaXMuc2F2ZWRTY3JvbGwgPSB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfSxcbiAgICBpc0FjdGl2ZTogZnVuY3Rpb24gaXNBY3RpdmUoKSB7XG4gICAgICB0aGlzLnNhdmVkU2Nyb2xsID0gMDtcbiAgICB9LFxuICAgIGludmVydGVkU2Nyb2xsOiBmdW5jdGlvbiBpbnZlcnRlZFNjcm9sbCh2YWwpIHtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdmFsO1xuICAgIH0sXG4gICAgbWFudWFsU2Nyb2xsOiBmdW5jdGlvbiBtYW51YWxTY3JvbGwodmFsKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gIXZhbDtcbiAgICB9LFxuICAgIGlzU2Nyb2xsaW5nVXA6IGZ1bmN0aW9uIGlzU2Nyb2xsaW5nVXAodmFsKSB7XG4gICAgICB0aGlzLnNhdmVkU2Nyb2xsID0gdGhpcy5zYXZlZFNjcm9sbCB8fCB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfVxuICB9LFxuXG4gIGNyZWF0ZWQ6IGZ1bmN0aW9uIGNyZWF0ZWQoKSB7XG4gICAgaWYgKHRoaXMuaW52ZXJ0ZWRTY3JvbGwgfHwgdGhpcy5tYW51YWxTY3JvbGwpIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgfSxcbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICBpZiAodGhpcy5zY3JvbGxUYXJnZXQpIHtcbiAgICAgIHRoaXMudGFyZ2V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLnNjcm9sbFRhcmdldCk7XG4gICAgfVxuICB9LFxuXG5cbiAgbWV0aG9kczoge1xuICAgIG9uU2Nyb2xsOiBmdW5jdGlvbiBvblNjcm9sbCgpIHtcbiAgICAgIGlmICghdGhpcy5zY3JvbGxPZmZTY3JlZW4gfHwgdGhpcy5tYW51YWxTY3JvbGwgfHwgdHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybjtcblxuICAgICAgdmFyIHRhcmdldCA9IHRoaXMudGFyZ2V0IHx8IHdpbmRvdztcblxuICAgICAgdGhpcy5jdXJyZW50U2Nyb2xsID0gdGhpcy5zY3JvbGxUYXJnZXQgPyB0YXJnZXQuc2Nyb2xsVG9wIDogdGFyZ2V0LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A7XG5cbiAgICAgIHRoaXMuaXNTY3JvbGxpbmdVcCA9IHRoaXMuY3VycmVudFNjcm9sbCA8IHRoaXMucHJldmlvdXNTY3JvbGw7XG5cbiAgICAgIHRoaXMucHJldmlvdXNTY3JvbGwgPSB0aGlzLmN1cnJlbnRTY3JvbGw7XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgYXBwbGljYXRpb24gbGF5b3V0XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtudW1iZXJ9XG4gICAgICovXG4gICAgdXBkYXRlQXBwbGljYXRpb246IGZ1bmN0aW9uIHVwZGF0ZUFwcGxpY2F0aW9uKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW52ZXJ0ZWRTY3JvbGwgfHwgdGhpcy5tYW51YWxTY3JvbGwgPyAwIDogdGhpcy5jb21wdXRlZEhlaWdodDtcbiAgICB9XG4gIH0sXG5cbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCkge1xuICAgIHRoaXMuaXNFeHRlbmRlZCA9IHRoaXMuZXh0ZW5kZWQgfHwgISF0aGlzLiRzbG90cy5leHRlbnNpb247XG5cbiAgICB2YXIgY2hpbGRyZW4gPSBbXTtcbiAgICB2YXIgZGF0YSA9IHtcbiAgICAgICdjbGFzcyc6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnNcbiAgICB9O1xuXG4gICAgZGF0YS5kaXJlY3RpdmVzID0gW3tcbiAgICAgIGFyZzogdGhpcy5zY3JvbGxUYXJnZXQsXG4gICAgICBuYW1lOiAnc2Nyb2xsJyxcbiAgICAgIHZhbHVlOiB0aGlzLm9uU2Nyb2xsXG4gICAgfV07XG5cbiAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndG9vbGJhcl9fY29udGVudCcsXG4gICAgICBzdHlsZTogeyBoZWlnaHQ6IHRoaXMuY29tcHV0ZWRDb250ZW50SGVpZ2h0ICsgJ3B4JyB9LFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KSk7XG5cbiAgICBpZiAodGhpcy5pc0V4dGVuZGVkKSB7XG4gICAgICBjaGlsZHJlbi5wdXNoKGgoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd0b29sYmFyX19leHRlbnNpb24nLFxuICAgICAgICBzdHlsZTogeyBoZWlnaHQ6IHRoaXMuY29tcHV0ZWRFeHRlbnNpb25IZWlnaHQgKyAncHgnIH1cbiAgICAgIH0sIHRoaXMuJHNsb3RzLmV4dGVuc2lvbikpO1xuICAgIH1cblxuICAgIHJldHVybiBoKCduYXYnLCBkYXRhLCBjaGlsZHJlbik7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1MyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDI1NCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygxMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19jb21wb25lbnRzX1ZJY29uX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDMpO1xuXG5cblxuLyogaGFybW9ueSBkZWZhdWx0IGV4cG9ydCAqLyBfX3dlYnBhY2tfZXhwb3J0c19fW1wiYVwiXSA9ICh7XG4gIG5hbWU6ICd2LXRvb2xiYXItc2lkZS1pY29uJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIF9yZWYpIHtcbiAgICB2YXIgc2xvdHMgPSBfcmVmLnNsb3RzLFxuICAgICAgICBsaXN0ZW5lcnMgPSBfcmVmLmxpc3RlbmVycyxcbiAgICAgICAgcHJvcHMgPSBfcmVmLnByb3BzLFxuICAgICAgICBkYXRhID0gX3JlZi5kYXRhO1xuXG4gICAgdmFyIGNsYXNzZXMgPSBkYXRhLnN0YXRpY0NsYXNzID8gZGF0YS5zdGF0aWNDbGFzcyArICcgdG9vbGJhcl9fc2lkZS1pY29uJyA6ICd0b29sYmFyX19zaWRlLWljb24nO1xuXG4gICAgdmFyIGQgPSBPYmplY3QuYXNzaWduKGRhdGEsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiBjbGFzc2VzLFxuICAgICAgcHJvcHM6IE9iamVjdC5hc3NpZ24ocHJvcHMsIHtcbiAgICAgICAgaWNvbjogdHJ1ZVxuICAgICAgfSksXG4gICAgICBvbjogbGlzdGVuZXJzXG4gICAgfSk7XG5cbiAgICB2YXIgZGVmYXVsdFNsb3QgPSBzbG90cygpLmRlZmF1bHQ7XG5cbiAgICByZXR1cm4gaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NvbXBvbmVudHNfVkJ0bl9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBkLCBkZWZhdWx0U2xvdCB8fCBbaChfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX2NvbXBvbmVudHNfVkljb25fX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgJ21lbnUnKV0pO1xuICB9XG59KTtcblxuLyoqKi8gfSksXG4vKiAyNTUgKi9cbi8qKiovIChmdW5jdGlvbihtb2R1bGUsIF9fd2VicGFja19leHBvcnRzX18sIF9fd2VicGFja19yZXF1aXJlX18pIHtcblxuXCJ1c2Ugc3RyaWN0XCI7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVG9vbHRpcF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTYpO1xuXG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5fX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX1ZUb29sdGlwX19bXCJhXCIgLyogZGVmYXVsdCAqL10uaW5zdGFsbCA9IGZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5jb21wb25lbnQoX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19WVG9vbHRpcF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLm5hbWUsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRvb2x0aXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG59O1xuXG4vKiBoYXJtb255IGRlZmF1bHQgZXhwb3J0ICovIF9fd2VicGFja19leHBvcnRzX19bXCJhXCJdID0gKF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fVlRvb2x0aXBfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG5cbi8qKiovIH0pLFxuLyogMjU2ICovXG4vKioqLyAoZnVuY3Rpb24obW9kdWxlLCBfX3dlYnBhY2tfZXhwb3J0c19fLCBfX3dlYnBhY2tfcmVxdWlyZV9fKSB7XG5cblwidXNlIHN0cmljdFwiO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbHRpcHNfc3R5bF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNTcpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fc3R5bHVzX2NvbXBvbmVudHNfdG9vbHRpcHNfc3R5bF9fX2RlZmF1bHQgPSBfX3dlYnBhY2tfcmVxdWlyZV9fLm4oX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8wX19zdHlsdXNfY29tcG9uZW50c190b29sdGlwc19zdHlsX18pO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMV9fbWl4aW5zX2NvbG9yYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygwKTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX21peGluc19kZWxheWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTMpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RlcGVuZGVudF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyMCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X19taXhpbnNfZGV0YWNoYWJsZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfXygyNSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV81X19taXhpbnNfbWVudWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNTQpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oNik7XG5mdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7IGlmIChrZXkgaW4gb2JqKSB7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7IH0gZWxzZSB7IG9ialtrZXldID0gdmFsdWU7IH0gcmV0dXJuIG9iajsgfVxuXG5cblxuLy8gTWl4aW5zXG5cblxuXG5cblxuXG5cbi8qIGhhcm1vbnkgZGVmYXVsdCBleHBvcnQgKi8gX193ZWJwYWNrX2V4cG9ydHNfX1tcImFcIl0gPSAoe1xuICBuYW1lOiAndi10b29sdGlwJyxcblxuICBtaXhpbnM6IFtfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX21peGluc19jb2xvcmFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSwgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8yX19taXhpbnNfZGVsYXlhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfM19fbWl4aW5zX2RlcGVuZGVudF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzRfX21peGluc19kZXRhY2hhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNV9fbWl4aW5zX21lbnVhYmxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10sIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNl9fbWl4aW5zX3RvZ2dsZWFibGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXV0sXG5cbiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2FsY3VsYXRlZE1pbldpZHRoOiAwLFxuICAgICAgY2xvc2VEZXBlbmRlbnRzOiBmYWxzZVxuICAgIH07XG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkZWJvdW5jZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDBcbiAgICB9LFxuICAgIGRpc2FibGVkOiBCb29sZWFuLFxuICAgIGZpeGVkOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgIH0sXG4gICAgb3BlbkRlbGF5OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMjAwXG4gICAgfSxcbiAgICB0YWc6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdzcGFuJ1xuICAgIH0sXG4gICAgdHJhbnNpdGlvbjogU3RyaW5nLFxuICAgIHpJbmRleDoge1xuICAgICAgZGVmYXVsdDogbnVsbFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNhbGN1bGF0ZWRMZWZ0OiBmdW5jdGlvbiBjYWxjdWxhdGVkTGVmdCgpIHtcbiAgICAgIHZhciBfZGltZW5zaW9ucyA9IHRoaXMuZGltZW5zaW9ucyxcbiAgICAgICAgICBhY3RpdmF0b3IgPSBfZGltZW5zaW9ucy5hY3RpdmF0b3IsXG4gICAgICAgICAgY29udGVudCA9IF9kaW1lbnNpb25zLmNvbnRlbnQ7XG5cbiAgICAgIHZhciB1bmtub3duID0gIXRoaXMuYm90dG9tICYmICF0aGlzLmxlZnQgJiYgIXRoaXMudG9wICYmICF0aGlzLnJpZ2h0O1xuICAgICAgdmFyIGxlZnQgPSAwO1xuXG4gICAgICBpZiAodGhpcy50b3AgfHwgdGhpcy5ib3R0b20gfHwgdW5rbm93bikge1xuICAgICAgICBsZWZ0ID0gYWN0aXZhdG9yLmxlZnQgKyBhY3RpdmF0b3Iud2lkdGggLyAyIC0gY29udGVudC53aWR0aCAvIDI7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMubGVmdCB8fCB0aGlzLnJpZ2h0KSB7XG4gICAgICAgIGxlZnQgPSBhY3RpdmF0b3IubGVmdCArICh0aGlzLnJpZ2h0ID8gYWN0aXZhdG9yLndpZHRoIDogLWNvbnRlbnQud2lkdGgpICsgKHRoaXMucmlnaHQgPyAxMCA6IC0xMCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNYT3ZlcmZsb3cobGVmdCkgKyAncHgnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlZFRvcDogZnVuY3Rpb24gY2FsY3VsYXRlZFRvcCgpIHtcbiAgICAgIHZhciBfZGltZW5zaW9uczIgPSB0aGlzLmRpbWVuc2lvbnMsXG4gICAgICAgICAgYWN0aXZhdG9yID0gX2RpbWVuc2lvbnMyLmFjdGl2YXRvcixcbiAgICAgICAgICBjb250ZW50ID0gX2RpbWVuc2lvbnMyLmNvbnRlbnQ7XG5cbiAgICAgIHZhciB0b3AgPSAwO1xuXG4gICAgICBpZiAodGhpcy50b3AgfHwgdGhpcy5ib3R0b20pIHtcbiAgICAgICAgdG9wID0gYWN0aXZhdG9yLnRvcCArICh0aGlzLmJvdHRvbSA/IGFjdGl2YXRvci5oZWlnaHQgOiAtY29udGVudC5oZWlnaHQpICsgKHRoaXMuYm90dG9tID8gMTAgOiAtMTApO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmxlZnQgfHwgdGhpcy5yaWdodCkge1xuICAgICAgICB0b3AgPSBhY3RpdmF0b3IudG9wICsgYWN0aXZhdG9yLmhlaWdodCAvIDIgLSBjb250ZW50LmhlaWdodCAvIDI7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNhbGNZT3ZlcmZsb3codG9wICsgdGhpcy5wYWdlWU9mZnNldCkgKyAncHgnO1xuICAgIH0sXG4gICAgY2xhc3NlczogZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd0b29sdGlwLS10b3AnOiB0aGlzLnRvcCxcbiAgICAgICAgJ3Rvb2x0aXAtLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ3Rvb2x0aXAtLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAndG9vbHRpcC0tbGVmdCc6IHRoaXMubGVmdFxuICAgICAgfTtcbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbjogZnVuY3Rpb24gY29tcHV0ZWRUcmFuc2l0aW9uKCkge1xuICAgICAgaWYgKHRoaXMudHJhbnNpdGlvbikgcmV0dXJuIHRoaXMudHJhbnNpdGlvbjtcbiAgICAgIGlmICh0aGlzLnRvcCkgcmV0dXJuICdzbGlkZS15LXJldmVyc2UtdHJhbnNpdGlvbic7XG4gICAgICBpZiAodGhpcy5yaWdodCkgcmV0dXJuICdzbGlkZS14LXRyYW5zaXRpb24nO1xuICAgICAgaWYgKHRoaXMuYm90dG9tKSByZXR1cm4gJ3NsaWRlLXktdHJhbnNpdGlvbic7XG4gICAgICBpZiAodGhpcy5sZWZ0KSByZXR1cm4gJ3NsaWRlLXgtcmV2ZXJzZS10cmFuc2l0aW9uJztcbiAgICB9LFxuICAgIG9mZnNldFk6IGZ1bmN0aW9uIG9mZnNldFkoKSB7XG4gICAgICByZXR1cm4gdGhpcy50b3AgfHwgdGhpcy5ib3R0b207XG4gICAgfSxcbiAgICBvZmZzZXRYOiBmdW5jdGlvbiBvZmZzZXRYKCkge1xuICAgICAgcmV0dXJuIHRoaXMubGVmdCB8fCB0aGlzLnJpZ2h0O1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbiBzdHlsZXMoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBsZWZ0OiB0aGlzLmNhbGN1bGF0ZWRMZWZ0LFxuICAgICAgICBtYXhXaWR0aDogaXNOYU4odGhpcy5tYXhXaWR0aCkgPyB0aGlzLm1heFdpZHRoIDogdGhpcy5tYXhXaWR0aCArICdweCcsXG4gICAgICAgIG9wYWNpdHk6IHRoaXMuaXNBY3RpdmUgPyAwLjkgOiAwLFxuICAgICAgICB0b3A6IHRoaXMuY2FsY3VsYXRlZFRvcCxcbiAgICAgICAgekluZGV4OiB0aGlzLnpJbmRleCB8fCB0aGlzLmFjdGl2ZVpJbmRleFxuICAgICAgfTtcbiAgICB9XG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGFjdGl2YXRlOiBmdW5jdGlvbiBhY3RpdmF0ZSgpIHtcbiAgICAgIC8vIFVwZGF0ZSBjb29yZGluYXRlcyBhbmQgZGltZW5zaW9ucyBvZiBtZW51XG4gICAgICAvLyBhbmQgaXRzIGFjdGl2YXRvclxuICAgICAgdGhpcy51cGRhdGVEaW1lbnNpb25zKCk7XG4gICAgICAvLyBTdGFydCB0aGUgdHJhbnNpdGlvblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHRoaXMuc3RhcnRUcmFuc2l0aW9uKTtcbiAgICB9XG4gIH0sXG5cbiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHtcbiAgICB0aGlzLnZhbHVlICYmIHRoaXMuY2FsbEFjdGl2YXRlKCk7XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgpIHtcbiAgICB2YXIgX2FkZEJhY2tncm91bmRDb2xvckNsLFxuICAgICAgICBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgdG9vbHRpcCA9IGgoJ2RpdicsIHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndG9vbHRpcF9fY29udGVudCcsXG4gICAgICAnY2xhc3MnOiB0aGlzLmFkZEJhY2tncm91bmRDb2xvckNsYXNzQ2hlY2tzKChfYWRkQmFja2dyb3VuZENvbG9yQ2wgPSB7fSwgX2RlZmluZVByb3BlcnR5KF9hZGRCYWNrZ3JvdW5kQ29sb3JDbCwgdGhpcy5jb250ZW50Q2xhc3MsIHRydWUpLCBfZGVmaW5lUHJvcGVydHkoX2FkZEJhY2tncm91bmRDb2xvckNsLCAnbWVudWFibGVfX2NvbnRlbnRfX2FjdGl2ZScsIHRoaXMuaXNBY3RpdmUpLCBfYWRkQmFja2dyb3VuZENvbG9yQ2wpKSxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIGF0dHJzOiB0aGlzLmF0dHJzLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ3Nob3cnLFxuICAgICAgICB2YWx1ZTogdGhpcy5pc0NvbnRlbnRBY3RpdmVcbiAgICAgIH1dLFxuICAgICAgcmVmOiAnY29udGVudCdcbiAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KTtcblxuICAgIHJldHVybiBoKHRoaXMudGFnLCB7XG4gICAgICBzdGF0aWNDbGFzczogJ3Rvb2x0aXAnLFxuICAgICAgJ2NsYXNzJzogdGhpcy5jbGFzc2VzXG4gICAgfSwgW2goJ3RyYW5zaXRpb24nLCB7XG4gICAgICBwcm9wczoge1xuICAgICAgICBuYW1lOiB0aGlzLmNvbXB1dGVkVHJhbnNpdGlvblxuICAgICAgfVxuICAgIH0sIFt0b29sdGlwXSksIGgoJ3NwYW4nLCB7XG4gICAgICBvbjogdGhpcy5kaXNhYmxlZCA/IHt9IDoge1xuICAgICAgICBtb3VzZWVudGVyOiBmdW5jdGlvbiBtb3VzZWVudGVyKCkge1xuICAgICAgICAgIF90aGlzLnJ1bkRlbGF5KCdvcGVuJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIF90aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgbW91c2VsZWF2ZTogZnVuY3Rpb24gbW91c2VsZWF2ZSgpIHtcbiAgICAgICAgICBfdGhpcy5ydW5EZWxheSgnY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gX3RoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHJlZjogJ2FjdGl2YXRvcidcbiAgICB9LCB0aGlzLiRzbG90cy5hY3RpdmF0b3IpXSk7XG4gIH1cbn0pO1xuXG4vKioqLyB9KSxcbi8qIDI1NyAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgZXhwb3J0cykge1xuXG4vLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG4vKioqLyB9KSxcbi8qIDI1OCAqL1xuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSwgX193ZWJwYWNrX2V4cG9ydHNfXywgX193ZWJwYWNrX3JlcXVpcmVfXykge1xuXG5cInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShfX3dlYnBhY2tfZXhwb3J0c19fLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbi8qIGhhcm1vbnkgZXhwb3J0IChpbW11dGFibGUpICovIF9fd2VicGFja19leHBvcnRzX19bXCJkZWZhdWx0XCJdID0gaW5zdGFsbDtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NsaWNrX291dHNpZGVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oOCk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8xX19yZXNpemVfXyA9IF9fd2VicGFja19yZXF1aXJlX18oMTEpO1xuLyogaGFybW9ueSBpbXBvcnQgKi8gdmFyIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcmlwcGxlX18gPSBfX3dlYnBhY2tfcmVxdWlyZV9fKDE3KTtcbi8qIGhhcm1vbnkgaW1wb3J0ICovIHZhciBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3Njcm9sbF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg3MSk7XG4vKiBoYXJtb255IGltcG9ydCAqLyB2YXIgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190b3VjaF9fID0gX193ZWJwYWNrX3JlcXVpcmVfXyg5KTtcbi8qIGhhcm1vbnkgcmVleHBvcnQgKGJpbmRpbmcpICovIF9fd2VicGFja19yZXF1aXJlX18uZChfX3dlYnBhY2tfZXhwb3J0c19fLCBcIkNsaWNrT3V0c2lkZVwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMF9fY2xpY2tfb3V0c2lkZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJSaXBwbGVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzJfX3JpcHBsZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJSZXNpemVcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3Jlc2l6ZV9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJTY3JvbGxcIiwgZnVuY3Rpb24oKSB7IHJldHVybiBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzNfX3Njcm9sbF9fW1wiYVwiXTsgfSk7XG4vKiBoYXJtb255IHJlZXhwb3J0IChiaW5kaW5nKSAqLyBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoX193ZWJwYWNrX2V4cG9ydHNfXywgXCJUb3VjaFwiLCBmdW5jdGlvbigpIHsgcmV0dXJuIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfNF9fdG91Y2hfX1tcImFcIl07IH0pO1xuXG5cblxuXG5cblxuXG5cbmZ1bmN0aW9uIGluc3RhbGwoVnVlKSB7XG4gIFZ1ZS5kaXJlY3RpdmUoJ2NsaWNrLW91dHNpZGUnLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzBfX2NsaWNrX291dHNpZGVfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5kaXJlY3RpdmUoJ3JpcHBsZScsIF9fV0VCUEFDS19JTVBPUlRFRF9NT0RVTEVfMl9fcmlwcGxlX19bXCJhXCIgLyogZGVmYXVsdCAqL10pO1xuICBWdWUuZGlyZWN0aXZlKCdyZXNpemUnLCBfX1dFQlBBQ0tfSU1QT1JURURfTU9EVUxFXzFfX3Jlc2l6ZV9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbiAgVnVlLmRpcmVjdGl2ZSgnc2Nyb2xsJywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV8zX19zY3JvbGxfX1tcImFcIiAvKiBkZWZhdWx0ICovXSk7XG4gIFZ1ZS5kaXJlY3RpdmUoJ3RvdWNoJywgX19XRUJQQUNLX0lNUE9SVEVEX01PRFVMRV80X190b3VjaF9fW1wiYVwiIC8qIGRlZmF1bHQgKi9dKTtcbn1cblxuLyoqKi8gfSlcbi8qKioqKiovIF0pW1wiZGVmYXVsdFwiXTtcbn0pO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dnVldGlmeS5qcy5tYXBcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy92dWV0aWZ5L2Rpc3QvdnVldGlmeS5qc1xuLy8gbW9kdWxlIGlkID0gLi9ub2RlX21vZHVsZXMvdnVldGlmeS9kaXN0L3Z1ZXRpZnkuanNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/vuetify/dist/vuetify.js\n"); - -/***/ }), - -/***/ "./node_modules/vuetify/dist/vuetify.min.css": -/***/ (function(module, exports, __webpack_require__) { - -eval("// style-loader: Adds some css to the DOM by adding a \ No newline at end of file diff --git a/src/assets/logo.png b/src/assets/logo.png deleted file mode 100644 index f3d2503fc2a44b5053b0837ebea6e87a2d339a43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6849 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 Date: Mon, 7 May 2018 10:29:43 +0800 Subject: [PATCH 020/113] Add Post Request for Backend --- auction/urls.py | 2 +- login/urls.py | 5 +++-- login/views.py | 57 +++++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 54 insertions(+), 10 deletions(-) diff --git a/auction/urls.py b/auction/urls.py index f5016185..8acd84ac 100644 --- a/auction/urls.py +++ b/auction/urls.py @@ -19,6 +19,6 @@ from django.urls import path, include urlpatterns = [ - path('login/', include('login.urls')), + path('login/', include('login.urls')), path('admin/', admin.site.urls), ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) diff --git a/login/urls.py b/login/urls.py index c5b22556..429d7082 100644 --- a/login/urls.py +++ b/login/urls.py @@ -5,6 +5,7 @@ app_name = 'login' urlpatterns = [ - # path('', views.index, name='index'), - path('', views.index, name='login-page'), + # path('', views.index, name='index'), + path('', views.IndexView.as_view(), name='login-page'), + path('accounts/', views.IndexPost, name='login-post'), ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index 14e9d1d4..de95689c 100644 --- a/login/views.py +++ b/login/views.py @@ -1,16 +1,59 @@ import json from django.shortcuts import render, get_object_or_404 -from django.http import HttpResponse, Http404, HttpResponseRedirect +from django.http import HttpResponse, HttpResponseRedirect, HttpResponseBadRequest from django.template import loader from django.urls import reverse -from django.views.generic import TemplateView +from django.views.generic import TemplateView, View +from django.contrib.auth.views import LoginView from django.views.decorators.csrf import ensure_csrf_cookie +from django.contrib.auth import authenticate +from django.contrib.auth.models import User -@ensure_csrf_cookie -def index(request): - return render(request, 'index.html') +# @ensure_csrf_cookie +# def index(request): +# return render(request, 'index.html') -class LoginView(TemplateView): - template_name = 'index.html' +# class LoginView(TemplateView): +# template_name = 'index.html' + + +class IndexView(LoginView): + template_name = '../templates/index.html' + + def get(self, request, *args, **kwargs): + return render(request, 'index.html') + + +def IndexPost(request): + print(request.method) + if request.method == 'POST': + username = request.POST.get('username') + password = request.POST.get('password') + isValid = False + + if User.objects.filter(username) is True and User.objects.filter(password) is True: + isValid = True + return HttpResponse(json.dumps({'isValid': isValid})) + else: + return HttpResponseBadRequest() + else: + return HttpResponseBadRequest() + + """ +# class IndexViewPost(View): + # @ensure_csrf_cookie + # def post(self, request, *args, **kwargs): + # user = authenticate(username=request.POST.get('username'), + # password=request.POST.get('password')) + # if user is not None: + # isValid = True + # context = { + # 'isValid': isValid + # } + # else: + # return HttpResponseBadRequest() + + # return HttpResponse(json.dumps(context)) + """ From e17989ce2aecc6dd5e10860a8120415587c04068 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Mon, 7 May 2018 10:46:50 +0800 Subject: [PATCH 021/113] Fixed post call error --- src/assets/js/Request.js | 4 ++-- src/components/VLoginForm.vue | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/assets/js/Request.js b/src/assets/js/Request.js index 1b002720..3c4b83ff 100644 --- a/src/assets/js/Request.js +++ b/src/assets/js/Request.js @@ -17,10 +17,10 @@ export default class Request { } post(baseurl, url, data){ - send('post',baseurl, url, data); + this.send('post',baseurl, url, data); } get(baseurl, url, data){ - send('get',baseurl, url, data); + this.send('get',baseurl, url, data); } } \ No newline at end of file diff --git a/src/components/VLoginForm.vue b/src/components/VLoginForm.vue index 2945ac0e..657e6761 100644 --- a/src/components/VLoginForm.vue +++ b/src/components/VLoginForm.vue @@ -35,7 +35,9 @@ username: this.name, password: this.password, } - let response = Request.post('http://localhost:8000/login/','accounts/',user); + let request = new Request(); + + let response = request.post('http://localhost:8000/login/','accounts/',user); console.log(response); } } From 08fdfab393f00814aa4e4ef1e7f7f930fecf3626 Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Mon, 7 May 2018 11:15:36 +0800 Subject: [PATCH 022/113] Add Post Request fixing bugs --- login/urls.py | 2 +- login/views.py | 44 +++++++++++++++++++++++--------------------- 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/login/urls.py b/login/urls.py index 429d7082..2fe30b7d 100644 --- a/login/urls.py +++ b/login/urls.py @@ -7,5 +7,5 @@ urlpatterns = [ # path('', views.index, name='index'), path('', views.IndexView.as_view(), name='login-page'), - path('accounts/', views.IndexPost, name='login-post'), + path('accounts/', views.IndexViewPost.as_view(), name='login-post'), ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index de95689c..b146feb8 100644 --- a/login/views.py +++ b/login/views.py @@ -5,7 +5,8 @@ from django.urls import reverse from django.views.generic import TemplateView, View from django.contrib.auth.views import LoginView -from django.views.decorators.csrf import ensure_csrf_cookie +from django.views.decorators.csrf import ensure_csrf_cookie, csrf_exempt +from django.utils.decorators import method_decorator from django.contrib.auth import authenticate from django.contrib.auth.models import User @@ -33,27 +34,28 @@ def IndexPost(request): password = request.POST.get('password') isValid = False - if User.objects.filter(username) is True and User.objects.filter(password) is True: + if User.objects.filter(username=username, + password=password).exists() is True: isValid = True return HttpResponse(json.dumps({'isValid': isValid})) else: return HttpResponseBadRequest() - else: - return HttpResponseBadRequest() - - """ -# class IndexViewPost(View): - # @ensure_csrf_cookie - # def post(self, request, *args, **kwargs): - # user = authenticate(username=request.POST.get('username'), - # password=request.POST.get('password')) - # if user is not None: - # isValid = True - # context = { - # 'isValid': isValid - # } - # else: - # return HttpResponseBadRequest() - - # return HttpResponse(json.dumps(context)) - """ + # else: + # return HttpResponseBadRequest() + + +@method_decorator(csrf_exempt, name='dispatch') +class IndexViewPost(View): + def post(self, request): + print(request.method) + if request.method == 'POST': + username = request.POST.get('username') + password = request.POST.get('password') + isValid = False + print(password) + if User.objects.filter(username=username, + password=password).exists() is True: + isValid = True + return HttpResponse(json.dumps({'isValid': isValid})) + else: + return HttpResponse(json.dumps({'username': username})) From c6add19796213f5c7243ff9e1d93bd851e1744a1 Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Mon, 7 May 2018 11:25:21 +0800 Subject: [PATCH 023/113] Add new header --- src/assets/js/Request.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/assets/js/Request.js b/src/assets/js/Request.js index 3c4b83ff..8f3fcbac 100644 --- a/src/assets/js/Request.js +++ b/src/assets/js/Request.js @@ -8,7 +8,8 @@ export default class Request { method: method, baseURL: baseurl, headers: { - 'X-CSRFToken': Cookies.get('csrftoken') + 'X-CSRFToken': Cookies.get('csrftoken'), + 'Access-Control-Allow-Origin': 'http://localhost:8000', }, data: data, }) From a7c62e9503ae79693965733d1ffa863c2f2e30d6 Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Mon, 7 May 2018 13:52:31 +0800 Subject: [PATCH 024/113] Authentication for log-in --- auction/settings.py | 12 +++++++ login/urls.py | 2 +- login/views.py | 63 ++++++++++++++++++++--------------- src/assets/js/Request.js | 2 +- src/components/VLoginForm.vue | 3 +- 5 files changed, 51 insertions(+), 31 deletions(-) diff --git a/auction/settings.py b/auction/settings.py index 33411ef3..c6ec1c45 100644 --- a/auction/settings.py +++ b/auction/settings.py @@ -32,6 +32,7 @@ INSTALLED_APPS = [ 'login', + 'corsheaders', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -48,6 +49,8 @@ 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', + 'corsheaders.middleware.CorsMiddleware', + 'django.middleware.common.CommonMiddleware', ] ROOT_URLCONF = 'auction.urls' @@ -68,6 +71,15 @@ }, ] +CORS_ORIGIN_ALLOW_ALL = True +CORS_ALLOW_CREDENTIALS = True +CORS_ORIGIN_WHITELIST = ( + 'localhost:3030', +) +CORS_ORIGIN_REGEX_WHITELIST = ( + 'localhost:3030', +) + WSGI_APPLICATION = 'auction.wsgi.application' diff --git a/login/urls.py b/login/urls.py index 2fe30b7d..1d934064 100644 --- a/login/urls.py +++ b/login/urls.py @@ -6,6 +6,6 @@ app_name = 'login' urlpatterns = [ # path('', views.index, name='index'), - path('', views.IndexView.as_view(), name='login-page'), + path('', views.IndexView, name='login-page'), path('accounts/', views.IndexViewPost.as_view(), name='login-post'), ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index b146feb8..a023e353 100644 --- a/login/views.py +++ b/login/views.py @@ -20,42 +20,51 @@ # template_name = 'index.html' -class IndexView(LoginView): - template_name = '../templates/index.html' - - def get(self, request, *args, **kwargs): - return render(request, 'index.html') - - -def IndexPost(request): - print(request.method) - if request.method == 'POST': - username = request.POST.get('username') - password = request.POST.get('password') - isValid = False - - if User.objects.filter(username=username, - password=password).exists() is True: - isValid = True - return HttpResponse(json.dumps({'isValid': isValid})) - else: - return HttpResponseBadRequest() +# class IndexView(LoginView): +# template_name = '../templates/index.html' + +# def get(self, request, *args, **kwargs): +# return render(request, 'index.html') +# @ensure_csrf_cookie +def IndexView(request): + return render(request, 'index.html', {'isValid': True}) + +# @ensure_csrf_cookie +# def IndexPost(request): +# print(request.method) +# if request.method == 'POST': +# username = request.POST.get('username') +# password = request.POST.get('password') +# isValid = False + +# if User.objects.filter(username=username, +# password=password).exists() is True: +# isValid = True +# return HttpResponse(json.dumps({'isValid': isValid})) +# else: +# return HttpResponseBadRequest() # else: # return HttpResponseBadRequest() -@method_decorator(csrf_exempt, name='dispatch') +# @method_decorator(csrf_exempt, name='dispatch') class IndexViewPost(View): + # @ensure_csrf_cookie def post(self, request): print(request.method) if request.method == 'POST': - username = request.POST.get('username') - password = request.POST.get('password') + body_unicode = request.body.decode('utf-8') + body = json.loads(body_unicode) + username = body['username'] + password = body['password'] isValid = False - print(password) - if User.objects.filter(username=username, - password=password).exists() is True: + print(username, password) + user = authenticate(username=username, password=password) + + if user is not None: isValid = True + print("Success") return HttpResponse(json.dumps({'isValid': isValid})) else: - return HttpResponse(json.dumps({'username': username})) + print("Access Denied") + return HttpResponseBadRequest() diff --git a/src/assets/js/Request.js b/src/assets/js/Request.js index 8f3fcbac..1a1889e2 100644 --- a/src/assets/js/Request.js +++ b/src/assets/js/Request.js @@ -9,7 +9,7 @@ export default class Request { baseURL: baseurl, headers: { 'X-CSRFToken': Cookies.get('csrftoken'), - 'Access-Control-Allow-Origin': 'http://localhost:8000', + 'Access-Control-Allow-Origin': '*', }, data: data, }) diff --git a/src/components/VLoginForm.vue b/src/components/VLoginForm.vue index 657e6761..9ac1a77a 100644 --- a/src/components/VLoginForm.vue +++ b/src/components/VLoginForm.vue @@ -37,8 +37,7 @@ } let request = new Request(); - let response = request.post('http://localhost:8000/login/','accounts/',user); - console.log(response); + let response = request.post('http://localhost:8000/login/','accounts/',user); } } } From 8ccd1b721b28e992d07a22dffbad26d4637e0b60 Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Mon, 7 May 2018 14:27:07 +0800 Subject: [PATCH 025/113] Remove unnecessary files --- auction/settings.py | 12 ------- login/urls.py | 2 +- login/views.py | 80 +++++++++++++-------------------------------- 3 files changed, 23 insertions(+), 71 deletions(-) diff --git a/auction/settings.py b/auction/settings.py index c6ec1c45..33411ef3 100644 --- a/auction/settings.py +++ b/auction/settings.py @@ -32,7 +32,6 @@ INSTALLED_APPS = [ 'login', - 'corsheaders', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -49,8 +48,6 @@ 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', - 'corsheaders.middleware.CorsMiddleware', - 'django.middleware.common.CommonMiddleware', ] ROOT_URLCONF = 'auction.urls' @@ -71,15 +68,6 @@ }, ] -CORS_ORIGIN_ALLOW_ALL = True -CORS_ALLOW_CREDENTIALS = True -CORS_ORIGIN_WHITELIST = ( - 'localhost:3030', -) -CORS_ORIGIN_REGEX_WHITELIST = ( - 'localhost:3030', -) - WSGI_APPLICATION = 'auction.wsgi.application' diff --git a/login/urls.py b/login/urls.py index 1d934064..2fe30b7d 100644 --- a/login/urls.py +++ b/login/urls.py @@ -6,6 +6,6 @@ app_name = 'login' urlpatterns = [ # path('', views.index, name='index'), - path('', views.IndexView, name='login-page'), + path('', views.IndexView.as_view(), name='login-page'), path('accounts/', views.IndexViewPost.as_view(), name='login-post'), ] \ No newline at end of file diff --git a/login/views.py b/login/views.py index a023e353..758132a0 100644 --- a/login/views.py +++ b/login/views.py @@ -1,70 +1,34 @@ import json -from django.shortcuts import render, get_object_or_404 -from django.http import HttpResponse, HttpResponseRedirect, HttpResponseBadRequest -from django.template import loader -from django.urls import reverse -from django.views.generic import TemplateView, View +from django.shortcuts import render +from django.http import HttpResponse, HttpResponseBadRequest +from django.views.generic import View from django.contrib.auth.views import LoginView -from django.views.decorators.csrf import ensure_csrf_cookie, csrf_exempt -from django.utils.decorators import method_decorator from django.contrib.auth import authenticate -from django.contrib.auth.models import User -# @ensure_csrf_cookie -# def index(request): -# return render(request, 'index.html') +class IndexView(LoginView): + template_name = '../templates/index.html' + def post(self, request, *args, **kwargs): + return render(request, 'index.html') -# class LoginView(TemplateView): -# template_name = 'index.html' - -# class IndexView(LoginView): -# template_name = '../templates/index.html' - -# def get(self, request, *args, **kwargs): -# return render(request, 'index.html') -# @ensure_csrf_cookie -def IndexView(request): - return render(request, 'index.html', {'isValid': True}) - -# @ensure_csrf_cookie -# def IndexPost(request): -# print(request.method) -# if request.method == 'POST': -# username = request.POST.get('username') -# password = request.POST.get('password') -# isValid = False - -# if User.objects.filter(username=username, -# password=password).exists() is True: -# isValid = True -# return HttpResponse(json.dumps({'isValid': isValid})) -# else: -# return HttpResponseBadRequest() - # else: - # return HttpResponseBadRequest() - - -# @method_decorator(csrf_exempt, name='dispatch') class IndexViewPost(View): # @ensure_csrf_cookie def post(self, request): print(request.method) - if request.method == 'POST': - body_unicode = request.body.decode('utf-8') - body = json.loads(body_unicode) - username = body['username'] - password = body['password'] - isValid = False - print(username, password) - user = authenticate(username=username, password=password) - - if user is not None: - isValid = True - print("Success") - return HttpResponse(json.dumps({'isValid': isValid})) - else: - print("Access Denied") - return HttpResponseBadRequest() + username = request.POST.get('username', '') + body_unicode = request.body.decode('utf-8') + body = json.loads(body_unicode) + username = body['username'] + password = body['password'] + isValid = False + user = authenticate(username=username, password=password) + + if user is not None: + isValid = True + print("Success") + return HttpResponse(json.dumps({'isValid': isValid})) + else: + print("Access Denied") + return HttpResponseBadRequest() From 12f3d4c726f4fb2d537e8e89f98ef4b84131a281 Mon Sep 17 00:00:00 2001 From: Gavin Mcrey Canete Date: Tue, 8 May 2018 00:45:13 +0800 Subject: [PATCH 026/113] initial commit --- auction/settings.py | 1 + auction/urls.py | 1 + livestream/__init__.py | 0 livestream/admin.py | 8 +++ livestream/apps.py | 5 ++ livestream/migrations/0001_initial.py | 28 ++++++++ livestream/migrations/__init__.py | 0 livestream/models.py | 17 +++++ livestream/static/auctioneer.js | 63 +++++++++++++++++ livestream/static/bidder.js | 64 +++++++++++++++++ livestream/tests.py | 3 + livestream/urls.py | 12 ++++ livestream/views.py | 82 ++++++++++++++++++++++ templates/video_stream/auctioneerPage.html | 16 +++++ templates/video_stream/bidderPage.html | 18 +++++ templates/video_stream/selection.html | 12 ++++ 16 files changed, 330 insertions(+) create mode 100644 livestream/__init__.py create mode 100644 livestream/admin.py create mode 100644 livestream/apps.py create mode 100644 livestream/migrations/0001_initial.py create mode 100644 livestream/migrations/__init__.py create mode 100644 livestream/models.py create mode 100644 livestream/static/auctioneer.js create mode 100644 livestream/static/bidder.js create mode 100644 livestream/tests.py create mode 100644 livestream/urls.py create mode 100644 livestream/views.py create mode 100644 templates/video_stream/auctioneerPage.html create mode 100644 templates/video_stream/bidderPage.html create mode 100644 templates/video_stream/selection.html diff --git a/auction/settings.py b/auction/settings.py index 33411ef3..071854e2 100644 --- a/auction/settings.py +++ b/auction/settings.py @@ -32,6 +32,7 @@ INSTALLED_APPS = [ 'login', + 'livestream', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', diff --git a/auction/urls.py b/auction/urls.py index f5016185..0c323232 100644 --- a/auction/urls.py +++ b/auction/urls.py @@ -20,5 +20,6 @@ urlpatterns = [ path('login/', include('login.urls')), + path('livestream/', include('livestream.urls')), path('admin/', admin.site.urls), ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) diff --git a/livestream/__init__.py b/livestream/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/livestream/admin.py b/livestream/admin.py new file mode 100644 index 00000000..0a8e1f7e --- /dev/null +++ b/livestream/admin.py @@ -0,0 +1,8 @@ +from django.contrib import admin + +from .models import Session, Archive + +admin.site.register(Session) +admin.site.register(Archive) + +# Register your models here. diff --git a/livestream/apps.py b/livestream/apps.py new file mode 100644 index 00000000..e5a6c15b --- /dev/null +++ b/livestream/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class LvsConfig(AppConfig): + name = 'lvs' diff --git a/livestream/migrations/0001_initial.py b/livestream/migrations/0001_initial.py new file mode 100644 index 00000000..acd8fac2 --- /dev/null +++ b/livestream/migrations/0001_initial.py @@ -0,0 +1,28 @@ +# Generated by Django 2.0.4 on 2018-05-07 16:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Archive', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('archive_id', models.CharField(max_length=1000)), + ], + ), + migrations.CreateModel( + name='Session', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('session_id', models.CharField(max_length=1000)), + ], + ), + ] diff --git a/livestream/migrations/__init__.py b/livestream/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/livestream/models.py b/livestream/models.py new file mode 100644 index 00000000..50b4674a --- /dev/null +++ b/livestream/models.py @@ -0,0 +1,17 @@ +from django.db import models + +# Stores newly generated session id +class Session(models.Model): + session_id = models.CharField(max_length=1000) + + def __str__(self): + return self.session_id + +# Stores newly generated arhive id +class Archive(models.Model): + archive_id = models.CharField(max_length=1000) + + def __str__(self): + return self.archive_id + +# Create your models here. diff --git a/livestream/static/auctioneer.js b/livestream/static/auctioneer.js new file mode 100644 index 00000000..bd52cd5e --- /dev/null +++ b/livestream/static/auctioneer.js @@ -0,0 +1,63 @@ + +// Display the session id and token of the auctioneer +console.log('Session ID: ' + sessionId); +console.log('Token: ' + token); + +var session, publisher; +var hasPublish = false; + +if(OT.checkSystemRequirements() == 1){ // Check if this browser supports WebRTC. + console.log('This browser supports WebRTC.'); + session = OT.initSession(apiKey, sessionId); + + session.connect(token, function(error) { // Check if the client has successfully connected to the session. + if(error) + console.log('Cannot connect to the session.'); + else{ + console.log('Connected to the session.'); + + // Create a publisher for exposing the video to other client who is also connected to the same session. + publisher = OT.initPublisher('publisher', {insertMode: "append"}); + + var btnStart = document.getElementById("1"); + var btnStop = document.getElementById("2"); + + dispatchStartVideo(btnStart); + dispatchEndVideo(btnStop); + } + }); +} +else + console.log('This browser does not support WebRTC.'); + + +function dispatchStartVideo(btnStart) { + + // Dispatch for start auction + btnStart.addEventListener("click", function() { + + if(!hasPublish){ + session.publish(publisher); + alert('Starting to publish.'); + hasPublish = true; + } + else + alert('On going streaming.'); + }); +} + +function dispatchEndVideo(btnStop) { + + // Dispatch for end auction + btnStop.addEventListener("click", function() { + + if(hasPublish){ + session.unpublish(publisher); + alert('End the publish.'); + hasPublish = false; + publisher = OT.initPublisher('publisher', {insertMode: "append"}); + } + else + alert('No publish has occured.'); + }); +} diff --git a/livestream/static/bidder.js b/livestream/static/bidder.js new file mode 100644 index 00000000..e7d9305f --- /dev/null +++ b/livestream/static/bidder.js @@ -0,0 +1,64 @@ + +console.log('Session ID: ' + sessionId); +console.log('Token: ' + token); + + +var session; +var xhttprequest; + +var errorMessage = document.querySelector('h1'); // create a message when the stream is destroyed. +var successMessage = document.querySelector('h2'); // create a message when the stream is created. + + +if(OT.checkSystemRequirements() == 1){ // Check if this browser supports WebRTC. + console.log('This browser supports WebRTC.'); + session = OT.initSession(apiKey, sessionId); + + session.connect(token, function(error) { // Check if this client is connected to the session. + if(error) + console.log('Cannot connect to the session.'); // Display Message: client has successfully connected to the session. + else + console.log('Connected to the session'); // Display Message: client has failed connect to the session. + }); + + session.on("streamCreated", function(event) { // Check if the stream has created in a certain session. + + // Accept the exposed video who is connected to the same session. + session.subscribe(event.stream, 'subscriber', {inserMode:'append', width:'50%', height:'50%'}); + console.log('Successfully subscribe'); + successMessage.textContent = 'Live'; + errorMessage.textContent = ''; + + + xhttprequest = new XMLHttpRequest(); + xhttprequest.onreadystatechange = function() { + if(this.readyState == 4 && this.status == 200){ + alert(this.responseText); + } + } + + xhttprequest.open("GET", "/livestream/start_archive/", true); // Request for start recording the video. + xhttprequest.send(); + }); + + + session.on("streamDestroyed", function(event) { + + xhttprequest = new XMLHttpRequest(); + xhttprequest.onreadystatechange = function() { + if(this.readyState == 4 && this.status == 200){ + alert(this.responseText); + } + } + + xhttprequest.open("GET", "/livestream/end_archive/", true); // Request for stop recording the video. + xhttprequest.send(); + + + console.log('Failed to subscribe'); + successMessage.textContent = ''; + errorMessage.textContent = 'No Auction event is available'; + }); +} +else // Failed to launch the livestream. + console.log('This browser does not support WebRTC.'); \ No newline at end of file diff --git a/livestream/tests.py b/livestream/tests.py new file mode 100644 index 00000000..7ce503c2 --- /dev/null +++ b/livestream/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/livestream/urls.py b/livestream/urls.py new file mode 100644 index 00000000..10a46f54 --- /dev/null +++ b/livestream/urls.py @@ -0,0 +1,12 @@ +from django.urls import path +from . import views +from livestream.views import AuctioneerView, BidderView + +app_name = 'livestream' +urlpatterns = [ + path('', views.index, name = 'home'), # Location for main page + path('auctioneer/', AuctioneerView.as_view(), name = 'auctioneer'), # Location for auctioneer page. + path('bidder/', BidderView.as_view(), name = 'bidder'), # Location for bidder page. + path('start_archive/', views.start_archive, name = 'start_archive'), # Location for start recording the video. + path('end_archive/', views.end_archive, name = 'end_archive'), # Location for end recording the video. +] \ No newline at end of file diff --git a/livestream/views.py b/livestream/views.py new file mode 100644 index 00000000..ab087a13 --- /dev/null +++ b/livestream/views.py @@ -0,0 +1,82 @@ +from django.shortcuts import render +from opentok import OpenTok, MediaModes, Roles, OutputModes +from .models import Session, Archive + +from django.http import HttpResponse +from django.views import View + +# Static API attributes (TokBox Account) +api_key = "46108532" +api_secret = "e6d4e6a15044b30c45e55637c58eae77d7e84019" + +# Static OpenTok cloud +opentok_cloud = OpenTok(api_key, api_secret) + +session_address = "127.0.0.1" # Location of the server + +# This class will create a unique session id for newly created session(room). +class AuctionView(View): + session = opentok_cloud.create_session(session_address, media_mode = MediaModes.routed) # A session that gives more flexibility for more than two clients. + + if(not Session.objects.all()): # Check if there exist a session. + # Store the new session id. + sessions = Session(session_id = session.session_id) + sessions.save() + + session_id = Session.objects.get(pk = 1).session_id + + +def index(request): # Main page (allows the user to choose between auctioneer and bidder). + return render(request, 'video_stream/selection.html') + + +class AuctioneerView(AuctionView): # This class will generate a token from the generated session id for the auctioneer. + + token = None + context = {} + + def get(self, request): + + self.token = opentok_cloud.generate_token(self.session_id) + self.context = { + 'api_key':api_key, + 'session_id':self.session_id, + 'token':self.token, + } + + return render(request, 'video_stream/auctioneerPage.html', self.context) + + + +class BidderView(AuctionView): # This class will generate a token from the generated session id for the bidder. + + token = None + context = {} + + def get(self, request): + + self.token = opentok_cloud.generate_token(self.session_id, role = Roles.subscriber) + self.context = { + 'api_key':api_key, + 'session_id':self.session_id, + 'token':self.token, + } + return render(request, 'video_stream/bidderPage.html', self.context) + + +def start_archive(request): # start to record the video. + sessionId = Session.objects.get(pk=1).session_id + + archive = opentok_cloud.start_archive(sessionId, has_video=True, name='Test', output_mode=OutputModes.individual) # Start recording the video. + archives = Archive(archive_id=archive.id) + archives.save() + + return HttpResponse('Start recording') + + +def end_archive(request): # stop the video recording. + archive_id = Archive.objects.get(pk=Archive.objects.count()).archive_id # get the id of the last archive object from Archive collections. + opentok_cloud.stop_archive(archive_id) # Stop recording the video. + return HttpResponse('Stop recording') + +# Create your views here. diff --git a/templates/video_stream/auctioneerPage.html b/templates/video_stream/auctioneerPage.html new file mode 100644 index 00000000..f23b9646 --- /dev/null +++ b/templates/video_stream/auctioneerPage.html @@ -0,0 +1,16 @@ +{% load static %} + + + Auctoneer + + + + + + + + diff --git a/templates/video_stream/bidderPage.html b/templates/video_stream/bidderPage.html new file mode 100644 index 00000000..a8fe87f2 --- /dev/null +++ b/templates/video_stream/bidderPage.html @@ -0,0 +1,18 @@ +{% load static %} + + + Bidder + + + + +

+

+ + + + diff --git a/templates/video_stream/selection.html b/templates/video_stream/selection.html new file mode 100644 index 00000000..2f3236e7 --- /dev/null +++ b/templates/video_stream/selection.html @@ -0,0 +1,12 @@ + + + + Welcome to eAuction + + +

Roles

+
+ From ffa669506de20aedd2356d18560210a6b28d2346 Mon Sep 17 00:00:00 2001 From: Zairiel Sarausad Date: Wed, 9 May 2018 10:07:43 +0800 Subject: [PATCH 027/113] Fix Minor Edits. --- auction/settings.py | 4 ++-- login/urls.py | 3 +-- login/views.py | 17 ++++++----------- src/assets/js/Request.js | 14 +++++++++++--- 4 files changed, 20 insertions(+), 18 deletions(-) diff --git a/auction/settings.py b/auction/settings.py index 33411ef3..0acf1936 100644 --- a/auction/settings.py +++ b/auction/settings.py @@ -55,7 +55,7 @@ TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [os.path.join(BASE_DIR, 'templates'),], + 'DIRS': [os.path.join(BASE_DIR, 'templates'), ], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ @@ -123,4 +123,4 @@ STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'build'), os.path.join(BASE_DIR, 'assets'), -] \ No newline at end of file +] diff --git a/login/urls.py b/login/urls.py index 2fe30b7d..d1a66a03 100644 --- a/login/urls.py +++ b/login/urls.py @@ -5,7 +5,6 @@ app_name = 'login' urlpatterns = [ - # path('', views.index, name='index'), path('', views.IndexView.as_view(), name='login-page'), path('accounts/', views.IndexViewPost.as_view(), name='login-post'), -] \ No newline at end of file +] diff --git a/login/views.py b/login/views.py index 758132a0..de02da0b 100644 --- a/login/views.py +++ b/login/views.py @@ -9,26 +9,21 @@ class IndexView(LoginView): template_name = '../templates/index.html' - def post(self, request, *args, **kwargs): - return render(request, 'index.html') + # def post(self, request, *args, **kwargs): + # return render(request, 'index.html') class IndexViewPost(View): - # @ensure_csrf_cookie def post(self, request): - print(request.method) username = request.POST.get('username', '') - body_unicode = request.body.decode('utf-8') - body = json.loads(body_unicode) - username = body['username'] - password = body['password'] - isValid = False + password = request.POST.get('password', '') user = authenticate(username=username, password=password) + print(request.POST) + if user is not None: - isValid = True print("Success") - return HttpResponse(json.dumps({'isValid': isValid})) + return HttpResponse(json.dumps({'isValid': True})) else: print("Access Denied") return HttpResponseBadRequest() diff --git a/src/assets/js/Request.js b/src/assets/js/Request.js index 1a1889e2..fe5bbf01 100644 --- a/src/assets/js/Request.js +++ b/src/assets/js/Request.js @@ -3,20 +3,28 @@ import Cookies from 'js-cookie' export default class Request { send(method, baseurl, url, data){ + axios({ url: url, method: method, baseURL: baseurl, + // NOTE: do no do it like this + // headers: { + // 'X-CSRFToken': Cookies.get('csrftoken'), + // 'Access-Control-Allow-Origin': '*', + // }, headers: { - 'X-CSRFToken': Cookies.get('csrftoken'), - 'Access-Control-Allow-Origin': '*', + 'X-Requested-With': 'XMLHttpRequest' }, - data: data, + xsrfHeaderName: 'X-CSRFToken', + xsrfCookieName: 'csrftoken', + data: JSON.stringify(data), //must stringify }) .then((response)=>{return response}) .catch((error)=>{return error}) } + // must revise this part. POST and GET shouldn't expect same params post(baseurl, url, data){ this.send('post',baseurl, url, data); } From 2ff930ef1f39dd95a4225add4f2e29657c10f86a Mon Sep 17 00:00:00 2001 From: bojoluis21798 Date: Wed, 9 May 2018 10:20:06 +0800 Subject: [PATCH 028/113] Refactor code to follow proper conventions --- src/components/LogIn.vue | 52 ++++++++++++++++++++--------------- src/components/VLoginForm.vue | 16 +++++------ 2 files changed, 37 insertions(+), 31 deletions(-) diff --git a/src/components/LogIn.vue b/src/components/LogIn.vue index 0cacb246..c2e6ae27 100644 --- a/src/components/LogIn.vue +++ b/src/components/LogIn.vue @@ -33,10 +33,10 @@ flat block :ripple="false" - @click="isRegister = false" - :class="{'amber darken-3': !isRegister, 'yellow darken-3': isRegister}" + @click="activeForm = 'VRegisterForm'" + :class="registerButtonStyle" > - Log In + Sign Up @@ -45,14 +45,14 @@ flat block :ripple="false" - @click="isRegister = true" - :class="{'amber darken-3': isRegister, 'yellow darken-3': !isRegister}" + @click="activeForm = 'VLoginForm'" + :class="loginButtonStyle" > - Register + Sign In - + @@ -66,28 +66,36 @@ export default { data(){ return { - email: "", - isRegister: false, - confirmMatch: true, - }; + activeForm: 'VRegisterForm', + } }, components: { VLoginForm, VRegisterForm }, computed: { - form: function(){ - if(this.isRegister){ - return VRegisterForm; - }else{ - return VLoginForm; + loginButtonStyle(){ + let style = { + 'amber darken-3' : false, + 'yellow darken-3': true, } + if(this.activeForm == 'VLoginForm'){ + style['amber darken-3'] = true; + style['yellow darken-3'] = false; + } + return style; + }, + registerButtonStyle(){ + let style = { + 'amber darken-3' : false, + 'yellow darken-3': true, + } + if(this.activeForm == 'VRegisterForm'){ + style['amber darken-3'] = true; + style['yellow darken-3'] = false; + } + return style; } - }, - watch: { - isRegister: function(){ - console.log(this.isRegister); - } - }, + } } diff --git a/src/components/VLoginForm.vue b/src/components/VLoginForm.vue index 9ac1a77a..9ecc0881 100644 --- a/src/components/VLoginForm.vue +++ b/src/components/VLoginForm.vue @@ -3,12 +3,12 @@ Date: Wed, 9 May 2018 11:44:14 +0800 Subject: [PATCH 029/113] Fix axios call --- src/assets/js/Request.js | 26 +++++++++----------------- src/components/VLoginForm.vue | 18 +++++++++++++++--- src/components/VRegisterForm.vue | 4 ++-- 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/src/assets/js/Request.js b/src/assets/js/Request.js index fe5bbf01..86c4b647 100644 --- a/src/assets/js/Request.js +++ b/src/assets/js/Request.js @@ -1,35 +1,27 @@ import axios from 'axios' -import Cookies from 'js-cookie' export default class Request { - send(method, baseurl, url, data){ - + send(method = "get", baseurl = "", url, data = {}, callback){ axios({ url: url, method: method, baseURL: baseurl, - // NOTE: do no do it like this - // headers: { - // 'X-CSRFToken': Cookies.get('csrftoken'), - // 'Access-Control-Allow-Origin': '*', - // }, headers: { - 'X-Requested-With': 'XMLHttpRequest' + 'X-Requested-With': 'XMLHttpRequest', }, xsrfHeaderName: 'X-CSRFToken', xsrfCookieName: 'csrftoken', - data: JSON.stringify(data), //must stringify + data: data, }) - .then((response)=>{return response}) - .catch((error)=>{return error}) + .then((response)=>callback(response)) + .catch((error)=>callback(error)) } - // must revise this part. POST and GET shouldn't expect same params - post(baseurl, url, data){ - this.send('post',baseurl, url, data); + post(baseurl, url, data, callback){ + this.send('post',baseurl, url, data, callback); } - get(baseurl, url, data){ - this.send('get',baseurl, url, data); + get(baseurl, url){ + this.send('get',baseurl, url, callback); } } \ No newline at end of file diff --git a/src/components/VLoginForm.vue b/src/components/VLoginForm.vue index 9ecc0881..386c384a 100644 --- a/src/components/VLoginForm.vue +++ b/src/components/VLoginForm.vue @@ -1,5 +1,5 @@ - diff --git a/src/router/index.js b/src/router/index.js index 13ff14bc..b4695a3f 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -31,13 +31,14 @@ export default new Router({ name: 'Profile', props: true, component: Profile - },{ + }, + ], + }, + { //temp path: '/auction/:id', name: 'Auction', component: Auction, }, - ], - }, { path: '*', name: '404',